-
Posts
102 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Strand
-
Battleground ' script_rid2sd: player not attached!
Strand replied to Strand's question in Scripting Support
Thanks @Emistry, Apparently, it is considering the same team as the loser. The team who lose does not get their points removed: I tried so many different ways as I could but the only one who receives and loses points is just one team. The team loser is not losing points at all. -
Battleground ' script_rid2sd: player not attached!
Strand replied to Strand's question in Scripting Support
Thanks @Emistry, you are such a monster! I have another question, how do I do to also recognize the team loser and lose points? atcommand "@addfame 2 -100"; -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
The Division is only in "char" but the other information I want to retrieve which is "points" is in "char_bg". -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
Hello @Zell, I do not know how to use two INNER JOINs correctly. How would I add it considering the Emistry script? The "Division" column is in the "char" table. Thanks! -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
Hello @Emistry, Thanks a lot! By the way, in regards to my last question: Is there any way that I can query another table to retrieve the info from the "Division" column in the same sentence? Including the inner join to retrieve the character name. -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
@Zell, I understand. Thanks for the help! By the way, since that column cannot be updated and saved, I´m thinking of creating a new column "Division" but in a different table, but, my question is: How can I do a query including another table name to search for the character Division? How can I do that? Or anything that I can add to show the Division name from another table in the Ranking List shown in the beginning of this post? -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
@Zell Yes, I did the bindatcmd but, want I am trying to say is this: When I manually update the colum "Division" and type in "Diamond" I click on save and it gets actually saved, like this: But, when I use the command @addfame 2 10 to add the character 10 more points, and then relog, the "Division" name for the character gets deleted. Do you happen to know why does it happen and how to fix it? -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
Here it is: I do not why I can´t update the char_bg colums manually and have them stored. /*========================================== * Fame Points *------------------------------------------*/ ACMD_FUNC(addfame) { int fame = 0, type = 0; nullpo_retr(-1, sd); if( !message || !*message || sscanf(message, "%d %d", &type, &fame) < 2 ) { clif_displaymessage(fd, "Usage: @addfame <type> <points>"); clif_displaymessage(fd, "- type : 0 Class (Alche/BS/TK) | 1 PK | 2 BG Ranked | 3 BG Regular"); return -1; } if( type < 0 || type > 3 ) { clif_displaymessage(fd, "Invalid type : 0 Class (Alche/BS/TK) | 1 PK | 2 BG Ranked | 3 BG Regular"); return -1; } pc_addfame(sd,fame,type); return 0; } -
Get playerName from Char ID from another SQL Table
Strand replied to Strand's question in Scripting Support
Hello @Zell, Thank you so much for the help! I have another question. When I try to update a column in the char_bg table, which is "Division" and I save it it can be reflected on the ranking script. But when I use a command which is @addfame 2 100 to update rank_points, the division name of the character gets deleted like if I cannot update any column manually. -
Hello community, I'm doing a ranking for BG and it is working, however, on the SQL table "char_bg" it is just showing char_id not "name" of the character, however, I want it to show the name of the character from another table based on the char_id of the table char_bg. Can you guys help me? set .@size, query_sql( "select char_id, rank_points, division from char_bg where rank_points > 0 order by rank_points desc limit "+ .top, .@name$, .@points, .@levelname$ ); for (set .@c, 0; .@c < .@size; set .@c, .@c + 1) dispbottom "[ #" +(.@c + 1) +" ] : " + .@name$[.@c] +" : " + .@levelname$[.@c] +" : [ " + .@points[.@c] +" ]", 0xe60000;
-
Battleground ' script_rid2sd: player not attached!
Strand replied to Strand's question in Scripting Support
Hello @Radian, I tried something different. I want for the team winner to earn points through "addfame" command, but, when triggering the OnGuillaumeWin event, the system says the player is not attached. Is there any way to attach the player? I've tried so many times but I just simply can't... Here is the full script: // ============================================================================== // BattleGround System - Flavius Capture the Flag // ============================================================================== // Battleground Flags // ********************************************************************* bat_b02,328,150,0 script Guillaume Crystal::Guillaume_Flag 1914,1,1,{ end; OnTouch: if( $@FlaviusCTF != 1 || HP < 1 ) end; if( getcharid(4) == $@FlaviusCTF_id2 && .Flag_Status < 2 ) { // Flag Captured set .Flag_Status, 2; // Taken set .Flag_Carrier, getcharid(0); sc_end SC_HIDING; sc_end SC_CLOAKING; sc_end SC_CHASEWALK; // Renewal invisibility sc_end SC_CLOAKINGEXCEED; sc_end SC_CAMOUFLAGE; sc_end SC__INVISIBILITY; pcblock 1,1; // Block Skills/Items mapannounce "bat_b02","Guillaume Crystal Taken by [ " + strcharinfo(0) + " ]",1,0xFF0000; bg_rankpoints "ctf_taken",1; disablenpc "Guillaume_Flag"; addtimer 2000, "Flavius_CTF::OnBlueFlash"; stopnpctimer; } else if( getcharid(4) == $@FlaviusCTF_id1 ) { if( .Flag_Status == 0 && getvariableofnpc(.Flag_Carrier,"Croix_Flag") == getcharid(0) ) { set getvariableofnpc(.Flag_Carrier,"Croix_Flag"),0; set .Flag_Carrier, 0; mapannounce "bat_b02","Croix Crystal Captured by [ " + strcharinfo(0) + " ]!!",1,0x0000FF; bg_rankpoints "ctf_captured",1; pcblock 1,0; // UnBlock Skills/Items stopnpctimer; donpcevent "Flavius_CTF::OnGuillaumeScore"; } else if( .Flag_Status == 1 ) { mapannounce "bat_b02","Guillaume Crystal Returned by [ " + strcharinfo(0) + " ]!!",1,0x0000FF; bg_rankpoints "fame",1; disablenpc "Guillaume_Flag"; sleep 2000; movenpc "Guillaume_Flag",328,150; // Back to Base set .Flag_Status, 0; initnpctimer; enablenpc "Guillaume_Flag"; } } end; OnTimer2000: stopnpctimer; if( .Flag_Status < 2 ) { getmapxy .@m$, .@x, .@y, 1; viewpointmap "bat_b02",1, .@x, .@y, 1, 0x0000FF; specialeffect 223; initnpctimer; } end; OnBase: movenpc "Guillaume_Flag",328,150; set .Flag_Status, 0; set .Flag_Carrier, 0; initnpctimer; enablenpc "Guillaume_Flag"; end; } bat_b02,62,150,0 script Croix Crystal::Croix_Flag 1915,1,1,{ end; OnTouch: if( $@FlaviusCTF != 1 || HP < 1 ) end; if( getcharid(4) == $@FlaviusCTF_id1 && .Flag_Status < 2 ) { // Flag Captured set .Flag_Status, 2; // Taken set .Flag_Carrier, getcharid(0); sc_end SC_HIDING; sc_end SC_CLOAKING; sc_end SC_CHASEWALK; // Renewal invisibility sc_end SC_CLOAKINGEXCEED; sc_end SC_CAMOUFLAGE; sc_end SC__INVISIBILITY; pcblock 1,1; // Block Skills/Items mapannounce "bat_b02","Croix Crystal Taken by [ " + strcharinfo(0) + " ]",1,0x0000FF; bg_rankpoints "ctf_taken",1; disablenpc "Croix_Flag"; addtimer 2000, "Flavius_CTF::OnRedFlash"; stopnpctimer; } else if( getcharid(4) == $@FlaviusCTF_id2 ) { if( .Flag_Status == 0 && getvariableofnpc(.Flag_Carrier,"Guillaume_Flag") == getcharid(0) ) { set getvariableofnpc(.Flag_Carrier,"Guillaume_Flag"),0; set .Flag_Carrier, 0; mapannounce "bat_b02","Guillaume Crystal Captured by [ " + strcharinfo(0) + " ]!!",1,0xFF0000; bg_rankpoints "ctf_captured",1; pcblock 1,0; // UnBlock Skills/Items stopnpctimer; donpcevent "Flavius_CTF::OnCroixScore"; } else if( .Flag_Status == 1 ) { mapannounce "bat_b02","Croix Crystal Returned by [ " + strcharinfo(0) + " ]!!",1,0xFF0000; bg_rankpoints "fame",1; disablenpc "Croix_Flag"; sleep 2000; movenpc "Croix_Flag",62,150; // Back to Base set .Flag_Status, 0; initnpctimer; enablenpc "Croix_Flag"; } } end; OnTimer2000: stopnpctimer; if( .Flag_Status < 2 ) { getmapxy .@m$, .@x, .@y, 1; viewpointmap "bat_b02",1, .@x, .@y, 2, 0xFF0000; specialeffect 223; initnpctimer; } end; OnBase: movenpc "Croix_Flag",62,150; set .Flag_Status, 0; set .Flag_Carrier, 0; initnpctimer; enablenpc "Croix_Flag"; end; } // Battleground Engine // ********************************************************************* - script Flavius_CTF -1,{ end; OnBlueFlash: if( getvariableofnpc(.Flag_Carrier,"Guillaume_Flag") == getcharid(0) && $@FlaviusCTF == 1 ) { getmapxy .@m$, .@x, .@y, 0; viewpointmap "bat_b02",1, .@x, .@y, 1, 0x0000FF; specialeffect2 73; emotion e_hlp,1; addtimer 2000, "Flavius_CTF::OnBlueFlash"; percentheal -5,-5; } end; OnRedFlash: if( getvariableofnpc(.Flag_Carrier,"Croix_Flag") == getcharid(0) && $@FlaviusCTF == 1 ) { getmapxy .@m$, .@x, .@y, 0; viewpointmap "bat_b02",1, .@x, .@y, 2, 0xFF0000; specialeffect2 73; emotion e_hlp,1; addtimer 2000, "Flavius_CTF::OnRedFlash"; percentheal -5,-5; } end; OnInit: disablenpc "Guillaume_Flag"; disablenpc "Croix_Flag"; end; OnGuillaumeQuit: OnCroixQuit: callfunc("bgsetwaittime","CTF",180); set @killer_bg_src, 0; if( $@FlaviusCTF != 0 ) donpcevent "Flavius_CTF::OnDoBalance"; OnGuillaumeDie: if( $@FlaviusCTF == 1 && getvariableofnpc(.Flag_Carrier,"Croix_Flag") == getcharid(0) ) { // Drop Flag set getvariableofnpc(.Flag_Carrier,"Croix_Flag"), 0; pcblock 1,0; // UnBlock Skills/Items getmapxy .@m$, .@x, .@y, 0; movenpc "Croix_Flag", .@x, .@y; mapannounce "bat_b02","Croix Flag Droped by [ " + strcharinfo(0) + " ]",1,0xFF0000; bg_rankpoints "ctf_droped",1; bg_rankpoints "fame",1,@killer_bg_src; set getvariableofnpc(.Flag_Status,"Croix_Flag"), 1; // OnFloor initnpctimer "Croix_Flag"; enablenpc "Croix_Flag"; } end; OnCroixDie: if( $@FlaviusCTF == 1 && getvariableofnpc(.Flag_Carrier,"Guillaume_Flag") == getcharid(0) ) { // Drop Flag set getvariableofnpc(.Flag_Carrier,"Guillaume_Flag"), 0; pcblock 1,0; // UnBlock Skills/Items getmapxy .@m$, .@x, .@y, 0; movenpc "Guillaume_Flag", .@x, .@y; mapannounce "bat_b02","Guillaume Flag Droped by [ " + strcharinfo(0) + " ]",1,0x0000FF; bg_rankpoints "ctf_droped",1; bg_rankpoints "fame",1,@killer_bg_src; set getvariableofnpc(.Flag_Status,"Guillaume_Flag"), 1; // OnFloor initnpctimer "Guillaume_Flag"; enablenpc "Guillaume_Flag"; } end; OnGuillaumeJoin: OnCroixJoin: if( $@FlaviusCTF == 0 ) donpcevent "Flavius_CTF::OnReadyCheck"; else donpcevent "Flavius_CTF::OnDoBalance"; end; OnDoBalance: if( $@FlaviusCTF != 1 ) end; set .@Guillaume, bg_get_data($@FlaviusCTF_id1, 0); set .@Croix, bg_get_data($@FlaviusCTF_id2, 0); if( .@Guillaume < .@Croix ) waitingroom2bg_single $@FlaviusCTF_id1,"bat_b02",311,224,"BGAZUL"; else if( .@Guillaume > .@Croix ) waitingroom2bg_single $@FlaviusCTF_id2,"bat_b02",87,75,"BGROJO"; else { set .@GuillaumeR, getwaitingroomstate(0,"BGAZUL"); set .@CroixR, getwaitingroomstate(0,"BGROJO"); if( .@GuillaumeR <= .@CroixR ) set .@Limit, .@GuillaumeR; else set .@Limit, .@CroixR; if( .@Limit + .@Guillaume > 35 ) set .@Limit, 35 - .@Guillaume; if( .@Limit <= 0 ) end; for( set .@i, 0; .@i < .@Limit; set .@i, .@i + 1 ) { waitingroom2bg_single $@FlaviusCTF_id1,"bat_b02",311,224,"BGAZUL"; waitingroom2bg_single $@FlaviusCTF_id2,"bat_b02",87,75,"BGROJO"; } set .@Guillaume, .@Guillaume + .@Limit; set .@Croix, .@Croix + .@Limit; mapannounce "arena_4","Battleground -- Flavius CTF [80-99] G: " + .@Guillaume + "/35, C: " + .@Croix + "/35 (Playing)",1,0xA0522D; } end; OnReadyCheck: if( $@FlaviusCTF || $CURRENTBG != 5 ) end; set .@Guillaume, getwaitingroomstate(0,"BGAZUL"); set .@Croix, getwaitingroomstate(0,"BGROJO"); if( .@Guillaume < ($MINBGLIMIT - 1) || .@Croix < ($MINBGLIMIT - 1) ) { if( .@Guillaume > 3 && .@Croix > 3 && !agitcheck() && $@FlaviusCTF_Flood < gettimetick(2) ) { announce "Battleground -- Flavius CTF [80-99] G: " + .@Guillaume + "/"+($MINBGLIMIT - 1)+", C: " + .@Croix + "/"+($MINBGLIMIT - 1),0,0xA0522D; set $@FlaviusCTF_Flood, gettimetick(2) + 15; } else mapannounce "arena_4","Battleground -- Flavius CTF [80-99] G: " + .@Guillaume + "/"+($MINBGLIMIT - 1)+", C: " + .@Croix + "/"+($MINBGLIMIT - 1),1,0xA0522D; end; } set $@FlaviusCTF, 1; initnpctimer; donpcevent "BGROJO::OnEnterBG"; donpcevent "BGAZUL::OnEnterBG"; // BG Variables set .Guillaume_Score, 0; set .Croix_Score, 0; announce "Battleground -- Flavius CTF [80-99] has started!",0,0xA0522D; sleep 2000; bg_warp $@FlaviusCTF_id1,"bat_b02",311,224; bg_warp $@FlaviusCTF_id2,"bat_b02",87,75; sleep 3000; // Respawn NPC's donpcevent "#guictf_respawn::OnBGStart"; donpcevent "#croctf_respawn::OnBGStart"; // Start Match!! donpcevent "Flavius_CTF::OnMatchStart"; end; OnMatchStart: if( $@FlaviusCTF != 1 ) end; // Flags2Base donpcevent "Guillaume_Flag::OnBase"; donpcevent "Croix_Flag::OnBase"; mapannounce "bat_b02","The Flags have been set to their Bases!!",8; end; OnGuillaumeScore: set .Guillaume_Score, .Guillaume_Score + 1; donpcevent "Flavius_CTF::OnMatchStop"; end; OnCroixScore: set .Croix_Score, .Croix_Score + 1; donpcevent "Flavius_CTF::OnMatchStop"; end; OnMatchStop: disablenpc "Guillaume_Flag"; disablenpc "Croix_Flag"; bg_updatescore "bat_b02",.Guillaume_Score,.Croix_Score; viewpointmap "bat_b02",2, 0, 0, 1, 0x0000FF; viewpointmap "bat_b02",2, 0, 0, 2, 0xFF0000; if( .Guillaume_Score > 2 ) { // Guillaume Won mapannounce "bat_b02","The Guillaume army has won the Battle of Flavius CTF!",1,0x0000FF; donpcevent "Flavius_CTF::OnMatchEnd"; } else if( .Croix_Score > 2 ) { // Croix Won mapannounce "bat_b02","The Croix army has won the Battle of Flavius CTF!",1,0xFF0000; donpcevent "Flavius_CTF::OnMatchEnd"; } else { // Keep Playing sleep 8000; donpcevent "Flavius_CTF::OnMatchStart"; } end; OnTimer600000: mapannounce "bat_b02","The Battle will ends in 5 minutes!!",1,0xA0522D; end; OnTimer840000: mapannounce "bat_b02","The Battle will ends in 1 minute!!",1,0xA0522D; end; OnTimer900000: disablenpc "Guillaume_Flag"; disablenpc "Croix_Flag"; viewpointmap "bat_b02",2, 0, 0, 1, 0x0000FF; viewpointmap "bat_b02",2, 0, 0, 2, 0xFF0000; if( .Guillaume_Score > .Croix_Score ) mapannounce "bat_b02","The Guillaume army has won the Battle of Flavius CTF!",1,0x0000FF; else if( .Guillaume_Score < .Croix_Score ) mapannounce "bat_b02","The Croix army has won the Battle of Flavius CTF!",1,0xFF0000; else mapannounce "bat_b02","The battle is over. This is a Tie...!",1,0xA0522D; donpcevent "Flavius_CTF::OnMatchEnd"; end; OnMatchEnd: stopnpctimer; disablenpc "Guillaume_Flag"; disablenpc "Croix_Flag"; donpcevent "#guictf_respawn::OnBGStop"; donpcevent "#croctf_respawn::OnBGStop"; set $@FlaviusCTF, 2; //bg_status //[Oboro] Rotacion de BG ChangeBG(); // ======================================================= // Team Rewards // ======================================================= if( .Guillaume_Score > .Croix_Score ) { // Ganó Guillaume bg_item($@FlaviusCTF_id1, 1); bg_item($@FlaviusCTF_id2, 0); donpcevent "Flavius_CTF::OnGuillaumeWin"; } else if( .Croix_Score > .Guillaume_Score ) { // Ganó Croix bg_item($@FlaviusCTF_id1, 0); bg_item($@FlaviusCTF_id2, 1); } else { // Empate, perdida ambos por default bg_item($@FlaviusCTF_id1, 0); bg_item($@FlaviusCTF_id2, 0); } mapannounce "bat_b02","Battle of Flavius CTF will start in 0 seconds!",1,0xA0522D; sleep 2000; bg_destroy $@FlaviusCTF_id1; bg_destroy $@FlaviusCTF_id2; set $@FlaviusCTF_id1, 0; set $@FlaviusCTF_id2, 0; mapwarp "bat_b02","arena_4",148,99; sleep 3000; initnpctimer; end; OnGuillaumeWin: atcommand "#addfame "+strcharinfo(0)" 2 100"; // atcommand "@addfame 2 100"; end; OnTimer10000: if( $@FlaviusCTF == 2 ) mapannounce "bat_b02","Battle of Flavius CTF will start in 5 seconds!",1,0xA0522D; end; OnTimer15000: if( $@FlaviusCTF != 2 ) end; OnReset: stopnpctimer; set .Guillaume_Score, 0; set .Croix_Score, 0; disablenpc "Guillaume_Flag"; disablenpc "Croix_Flag"; sleep 1000; mapwarp "bat_b02","arena_4",148,99; sleep 1000; maprespawnguildid "bat_b02",0,3; // Just in case someone else bg_updatescore "bat_b02",0,0; set $@FlaviusCTF, 0; donpcevent "Flavius_CTF::OnReadyCheck"; end; } // Battleground Therapist // ********************************************************************* bat_b02,390,13,5 script Therapist in battle#ctf1 95,{ percentheal 100,100; sc_start 32, 250000, 10; // Increase Agi sc_start 30, 250000, 10; // Blessing repairall; end; OnTouch: percentheal 100,100; sc_start 32, 250000, 10; // Increase Agi sc_start 30, 250000, 10; // Blessing repairall; end; } bat_b02,10,293,5 script Therapist in battle#ctf2 95,{ percentheal 100,100; sc_start 32, 250000, 10; // Increase Agi sc_start 30, 250000, 10; // Blessing repairall; end; OnTouch: percentheal 100,100; sc_start 32, 250000, 10; // Increase Agi sc_start 30, 250000, 10; // Blessing repairall; end; } // Battleground Respawn // ********************************************************************* bat_b02,390,10,0 script #guictf_respawn 139,{ end; OnBGStart: initnpctimer; end; OnBGStop: stopnpctimer; end; OnTimer24000: misceffect 83; end; OnTimer25000: areapercentheal "bat_b02",382,2,397,17,100,100; areawarp "bat_b02",382,2,397,17,"bat_b02",311,224; initnpctimer; end; } bat_b02,10,290,0 script #croctf_respawn 139,{ end; OnBGStart: initnpctimer; end; OnBGStop: stopnpctimer; end; OnTimer24000: misceffect 83; end; OnTimer25000: areapercentheal "bat_b02",2,282,17,297,100,100; areawarp "bat_b02",2,282,17,297,"bat_b02",87,75; initnpctimer; end; } // Flags // ********************************************************************* bat_b02,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat23 973 bat_b02,319,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat24 973 bat_b02,304,218,1 duplicate(Guillaume camp#bat) Guillaume camp#bat25 973 bat_b02,319,218,1 duplicate(Guillaume camp#bat) Guillaume camp#bat26 973 bat_b02,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat27 973 bat_b02,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat28 973 bat_b02,335,142,1 duplicate(Guillaume camp#bat) Guillaume camp#bat29 973 bat_b02,335,157,1 duplicate(Guillaume camp#bat) Guillaume camp#bat30 973 bat_b02,390,16,1 duplicate(Guillaume camp#bat) Guillaume camp#bat31 973 bat_b02,292,163,1 duplicate(Guillaume camp#bat) Guillaume camp#bat32 973 bat_b02,292,136,1 duplicate(Guillaume camp#bat) Guillaume camp#bat33 973 bat_b02,241,185,1 duplicate(Guillaume camp#bat) Guillaume camp#bat34 973 bat_b02,247,179,1 duplicate(Guillaume camp#bat) Guillaume camp#bat35 973 bat_b02,96,81,1 duplicate(Croix camp#bat) Croix camp#bat22 974 bat_b02,96,68,1 duplicate(Croix camp#bat) Croix camp#bat23 974 bat_b02,79,81,1 duplicate(Croix camp#bat) Croix camp#bat24 974 bat_b02,79,68,1 duplicate(Croix camp#bat) Croix camp#bat25 974 bat_b02,96,81,1 duplicate(Croix camp#bat) Croix camp#bat26 974 bat_b02,96,81,1 duplicate(Croix camp#bat) Croix camp#bat27 974 bat_b02,59,164,1 duplicate(Croix camp#bat) Croix camp#bat28 974 bat_b02,59,137,1 duplicate(Croix camp#bat) Croix camp#bat29 974 bat_b02,10,296,1 duplicate(Croix camp#bat) Croix camp#bat30 974 bat_b02,110,162,1 duplicate(Croix camp#bat) Croix camp#bat31 974 bat_b02,110,137,1 duplicate(Croix camp#bat) Croix camp#bat32 974 bat_b02,152,120,1 duplicate(Croix camp#bat) Croix camp#bat33 974 bat_b02,158,114,1 duplicate(Croix camp#bat) Croix camp#bat34 974 // MapFlags // ********************************************************************* bat_b02 mapflag battleground 2 bat_b02 mapflag nomemo bat_b02 mapflag nosave SavePoint bat_b02 mapflag noteleport bat_b02 mapflag nowarp bat_b02 mapflag nowarpto bat_b02 mapflag noreturn bat_b02 mapflag nobranch bat_b02 mapflag nopenalty bat_b02 mapflag noemergencycall Hello community, Is there anyone that could possibly help me on this? Thanks a lot in advance. -
Battleground ' script_rid2sd: player not attached!
Strand replied to Strand's question in Scripting Support
Hello @Radian Thanks for the observation. About the player not attached, do you know how to attach the player? It is a script not a NPC. -
Battleground ' script_rid2sd: player not attached!
Strand replied to Strand's question in Scripting Support
I updated my post. Do anyone has an idea how to fix it? -
I have this script for BG but what I want it to do is to add +1 point if Guillaume or Croix win at the end of the match. // ======================================================= // Team Rewards // ======================================================= if( .Guillaume_Score > .Croix_Score ) { // Ganó Guillaume bg_item($@FlaviusCTF_id1, 1); bg_item($@FlaviusCTF_id2, 0); doevent "Flavius_CTF::OnGuillaumeWin"; } else if( .Croix_Score > .Guillaume_Score ) { // Ganó Croix bg_item($@FlaviusCTF_id1, 0); bg_item($@FlaviusCTF_id2, 1); doevent "Flavius_CTF::OnCroixWin"; } else { // Empate, perdida ambos por default bg_item($@FlaviusCTF_id1, 0); bg_item($@FlaviusCTF_id2, 0); } mapannounce "bat_b02","Battle of Flavius CTF will start in 0 seconds!",1,0xA0522D; sleep 2000; bg_destroy $@FlaviusCTF_id1; bg_destroy $@FlaviusCTF_id2; set $@FlaviusCTF_id1, 0; set $@FlaviusCTF_id2, 0; mapwarp "bat_b02","arena_4",148,99; sleep 3000; initnpctimer; end; OnGuillaumeWin: query_sql "select rank_points from char_bg where char_id = "+ getcharid(0), .@points; query_sql "insert into `char_bg` value ( "+ getcharid(0) +", '"+ escape_sql( strcharinfo(0) ) +"', 1 , 0 ) on duplicate key update `rank_points` = CASE WHEN rank_points >= 1 THEN points + 1 ELSE 0 END"; dispbottom "[Your Lost Battleground Rank -1 Total Pts: .@points]"; OnCroixWin: query_sql "select rank_points from char_bg where char_id = "+ getcharid(4), .@points; query_sql "insert into `char_bg` value ( "+ getcharid(0) +", '"+ escape_sql( strcharinfo(0) ) +"', 1 , 0 ) on duplicate key update `rank_points` = CASE WHEN rank_points >= 1 THEN points + 1 ELSE 0 END"; dispbottom "[Your Lost Battleground Rank -1 Total Pts: .@points]"; But an error appears: What am I doing wrong? Can you please help?
-
Hello community, I was wondering myself if it is possible for a script to preview a headgear ID for only 5 seconds? (I know that there is a command to preview it but it is permanent.) But for example, through a command? @hatpreview ID (Amon Ra Hat) and show the sprite for only 5 seconds and then disappear. Is it possible? If so could you please help me do it?
-
Hello community, I have a question: Is it possible to make areamonsters command detectable using killedrid? Here is an example: OnInit: areamonster "1@exile",394,6 ,348,50,"--ja--",3896,20,strnpcinfo(0)+"::On1stFloor",0,0; if ( killedrid == 3896 ) { set monster,1; dispbottom "Congratulations! You have killed the monster."; end; } I know that the correct way to execute an action when killing the monster is by doing On1stFloor: and then put the script to trigger. On1stFloor: set monster,1; dispbottom "Congratulations! You have killed the monster."; end; But is there any way to make that areamonster script to be recognized when using if ( killedrid == 3896) { }?
-
So is there any way that I can get those mobs from it?
-
Hello community, I was just wondering where can we get the following astonishing sprites for us to use? http://ziu-ro.blogspot.com/2018/10/ragnarok-zero-korea-abyss-level-4-odin.html They look nice and I would like to implement them in my server. Is there any way that we can extract it from the most updated rdata.grf?
-
Hello guys, I was trying to add the getunits script command manually but the console shows an error that I have no knowledge how to solve it. I was hoping you can help me out on this. Commits: https://github.com/rathena/rathena/commit/10e7035bebdbc2ec25a392ee2cf14172ecf169e5 https://github.com/rathena/rathena/commit/0c2ccc77c7ef30afda6fb978f402a10d1f1b7f24 Error Messages:
-
Hello @n0tttt I tried to update my emulator but an error keeps on appearing every time I compile the server:
-
Hello @n0tttt, Thanks for your quick answer. If I do not intend to update my emulator, I would like to preserve the same one, is there any way that you can adapt the script with older commands? I would really appreciate this.
-
Hello @n0tttt, This looks pretty cool! By the way, when I use it on my emulator, the system detects an error. I hope you can help me out on this. Thanks a lot!
-
Hello Alayne. In the Yggdrasil Crystal script says the following: An announce is raised on player's chat bar when entering a map susceptible to get a Crystal in it But it does not happen at all. I tried to found the script for the announce to show up but there is none. How can I add it?
-
Hello guys, I hope you can help me out with the following requests: A couple of months back I found a script event where you had to find the Dragon Ball Spheres all around Midgard maps. Just like Dragon Ball Z. Do you know where I can find it? Thanks in advance.
-
Hello @n0tttt this just works perfectly fine! Just one last question: How did you find out which quest corresponds to those I just named before? Because there are a lot of quest ids that corresponds to the same quest. I just want to make sure that I'm putting the right Quest ID so it can be detected as finished.