Jump to content

sader1992

Content Moderator
  • Posts

    1691
  • Joined

  • Last visited

  • Days Won

    77

Everything posted by sader1992

  1. and i see if(countitem(6010) < 1 && countitem(6011) < 1) goto Lnopick; so you want to take one of each item ? as i see you are re typing the script after it end and the script at the first part ask for 6010 then it end so the player wont go to the next part that ask for 6011 set .mining,1; is a npc variable so when the player talk to the npc any player talk to the same npc the variable would be 1 even if they didn't reach set .mining,1;
  2. can you put all the script not a part and please use this when you put a long script
  3. i will take one for example setbattleflag "item_rate_common", 2*getbattleflag("item_rate_common"); so here getbattleflag("item_rate_common") = x 2*x first put the calculation in bracelet so it will be setbattleflag "item_rate_common", (2*getbattleflag("item_rate_common")); the next one for reseting the rate setbattleflag "item_rate_common", 2*getbattleflag("item_rate_common")/2; if x is the original then on the happy hour start is 2*x at end is 2*(2*x)/2 = 2*x math lol just the happy hour end put it like that setbattleflag "item_rate_common", (getbattleflag("item_rate_common")/2);
  4. i would suggest you try this> rename the npc folder restart the server(there is no warps/npcs/monsters/etc) you can still @commands etc try to test your server in this state and see if you will get the error this wont fix the error it's only let's you know if there is script/ command script doing this for the server and read the terminal seek for anyerror if you did get this again then it's not from scripts/command scripts it's from the vps system / src or even from sql i think your best option is see what's not causing the problem to know what cause it unless someone here know what happen for you
  5. need more info like what the vps ram ping for you did you try to debug it ? remove all the npcs and run the server ? what rathena version is there custom patches in it ? etc
  6. try this rathena/conf/battle/client.conf // Save body styles. (Note 1) // Note: Don't turn this on unless you know what your doing. // Sprites are not released officially. save_body_style: no to // Save body styles. (Note 1) // Note: Don't turn this on unless you know what your doing. // Sprites are not released officially. save_body_style: yes
  7. you can't diff an already diffed client make a new one and choose your options carefully
  8. you are using Change Walk To Delay. or Disable Walk To Delay. in NEMO DON'T USE ANY OF THEM this is the fix for your problem (re diff your client)
  9. i did see the script you are talking about i don't know why you get this issue but i see you always attach a player even if he already attached so first thing i would suggest don't use attachrid 'mocTalking; when the player already attached of corse even if you use i don't see where this would be a problem but it's possible that it would create a problem like that also the same for instance_id() the script would know the instance id without (Except for instance_announce) so set .@npcname$, instance_npcname(strnpcinfo(0)); and set .@npcname$, instance_npcname(strnpcinfo(0), instance_id()); have must have the same result but as always i maybe wrong and also maybe this have nothing to do with the issue
  10. i know you did give me this file before but i didn't notice this until i did read it here sorry ~o-o~ #if PACKETVER > 20170517 this you have to not change , this what case the error #if PACKETVER > 20151104
  11. prontera,156,22,0 script prt_fild08_warp 45,1,1,{ getpartymember getcharid(1),1; 'count = $@partymembercount; 'map$ = instance_mapname("prt_fild08"); 'map2$ = instance_mapname("?"); if(('count / 2) > 'countwarped){ 'countwarped += 1; warp 'map$,170,375; }else{ warp 'map2$,170,375; } } what the warp script you use ?
  12. what the warp you use ? i suggest you try like this prontera,156,22,0 script prt_fild08_warp 45,1,1,{ 'map$ = instance_mapname("prt_fild08"); instance_warpall 'map$,170,375; }
  13. if you did include one of the files so we can debug however i think it's maybe something like the map name and the npc name they are generated for the instance *instance_npcname("<npc name>"{,<instance id>}) *instance_mapname("<map name>"{,<instance id>}) example: donpcevent instance_npcname("#PronteraNPC") + "::OnStart"; end; prontera,0,0,0 script #PronteraNPC CLEAR_NPC,{ OnStart: 'map$ = instance_mapname("prontera"); 'ondead$ = instance_npcname("#PronteraNPC")+"::OnMobDead"; monster 'map$,0,0,"Poring",1002,1,'ondead$; end; OnMobDead: 'map$ = instance_mapname("prontera"); 'ondead$ = instance_npcname("#PronteraNPC")+"::OnMobDead"; monster 'map$,0,0,"Poring",1002,1,'ondead$; end; }
  14. Visual Studio Code // Place your settings in this file to overwrite the default settings { "files.encoding": "utf8", "files.autoGuessEncoding": true }
  15. don't write the id for the map in the map_index just put the map name vend_zone
  16. under setarray .rewarditem[0], // rewards for the winning team: <item>,<amount>,... 501, 10; add setarray .rewarditemloss[0], // rewards for the lossing team: <item>,<amount>,... 501, 10; at line 47 edit this callsub L_Reward, 1; to this callsub L_Reward, 1 , 2; at the line 51 edit this callsub L_Reward, 2; to this callsub L_Reward, 2 , 1; add this at line 66 before return; for ( .@i = 0; .@i < getd(".team"+ getarg(1) +"count"); .@i++ ) getitem .rewarditemloss[0], .rewarditemloss[1], getd(".team"+ getarg(1) +"aid["+ .@i +"]" ); the full code edited //===== rAthena Script ======================================= //= Battleground: PVP //===== By: ================================================== //= AnnieRuru //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= A simple battleground script: //= Kill players from the other team. //===== Additional Comments: ================================= //= 1.0 First version, edited. [Euphy] //============================================================ - script bg_pvp#control -1,{ OnInit: .minplayer2start = 2; // minimum players to start (ex. if 3vs3, set to 3) .eventlasting = 20*60; // event duration before auto-reset (20 minutes * seconds) setarray .rewarditem[0], // rewards for the winning team: <item>,<amount>,... 501, 10; setarray .rewarditemloss[0], // rewards for the lossing team: <item>,<amount>,... 501, 10; end; OnStart: if ( getwaitingroomstate( 0, .rednpcname$ ) < .minplayer2start || getwaitingroomstate( 0, .bluenpcname$ ) < .minplayer2start ) end; // create Battleground and teams .red = waitingroom2bg( "guild_vs3", 13,50, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead", .rednpcname$ ); copyarray .team1aid, $@arenamembers, $@arenamembersnum; .team1count = .minplayer2start; .blue = waitingroom2bg( "guild_vs3", 86,50, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead", .bluenpcname$ ); copyarray .team2aid, $@arenamembers, $@arenamembersnum; .team2count = .minplayer2start; delwaitingroom .rednpcname$; delwaitingroom .bluenpcname$; bg_warp .red, "guild_vs3", 13,50; bg_warp .blue, "guild_vs3", 86,50; .score[1] = .score[2] = .minplayer2start; bg_updatescore "guild_vs3", .score[1], .score[2]; // match duration sleep .eventlasting * 1000; // end match, destroy Battleground, reset NPCs if ( .score[1] > .score[2] ) { mapannounce "guild_vs3", "- Red Team is victorious! -", bc_map; callsub L_Reward, 1, 2; } else if ( .score[1] < .score[2] ) { mapannounce "guild_vs3", "- Blue Team is victorious! -", bc_map; callsub L_Reward, 2, 1; } else mapannounce "guild_vs3", "- The match has ended in a draw! -", bc_map; bg_warp .red, "prontera",152,178; bg_warp .blue, "prontera",154,178; bg_destroy .red; bg_destroy .blue; donpcevent .rednpcname$ +"::OnStart"; donpcevent .bluenpcname$ +"::OnStart"; end; L_Reward: for ( .@i = 0; .@i < getd(".team"+ getarg(0) +"count"); .@i++ ) getitem .rewarditem[0], .rewarditem[1], getd(".team"+ getarg(0) +"aid["+ .@i +"]" ); for ( .@i = 0; .@i < getd(".team"+ getarg(1) +"count"); .@i++ ) getitem .rewarditemloss[0], .rewarditemloss[1], getd(".team"+ getarg(1) +"aid["+ .@i +"]" ); return; // "OnDeath" event OnRedDead: callsub L_Dead, 1; OnBlueDead: callsub L_Dead, 2; L_Dead: .score[ getarg(0) ]--; bg_updatescore "guild_vs3", .score[1], .score[2]; while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++; deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1; setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1; bg_leave; if ( !.score[ getarg(0) ] ) awake strnpcinfo(0); sleep2 1250; percentheal 100,100; end; // "OnQuit" event OnRedQuit: callsub L_Quit, 1; OnBlueQuit: callsub L_Quit, 2; L_Quit: .score[ getarg(0) ]--; bg_updatescore "guild_vs3", .score[1], .score[2]; percentheal 100, 100; while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++; deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1; setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1; if ( !.score[ getarg(0) ] ) awake strnpcinfo(0); end; } prontera,152,178,5 script Red Team#bg_pvp 733,{ end; OnInit: sleep 1; set getvariableofnpc( .rednpcname$, "bg_pvp#control" ), strnpcinfo(0); OnStart: waitingroom "Red Team", getvariableofnpc( .minplayer2start, "bg_pvp#control" ) +1, "bg_pvp#control::OnStart", getvariableofnpc( .minplayer2start, "bg_pvp#control" ); end; } prontera,154,178,5 script Blue Team#bg_pvp 734,{ end; OnInit: sleep 1; set getvariableofnpc( .bluenpcname$, "bg_pvp#control" ), strnpcinfo(0); OnStart: waitingroom "Blue Team", getvariableofnpc( .minplayer2start, "bg_pvp#control" ) +1, "bg_pvp#control::OnStart", getvariableofnpc( .minplayer2start, "bg_pvp#control" ); end; } guild_vs3 mapflag battleground 2 guild_vs3 mapflag nosave SavePoint guild_vs3 mapflag nowarp guild_vs3 mapflag nowarpto guild_vs3 mapflag noteleport guild_vs3 mapflag nomemo guild_vs3 mapflag nopenalty guild_vs3 mapflag nobranch guild_vs3 mapflag noicewall guild_vs3 mapflag hidemobhpbar (not tested)
  17. setarray .@Styles[1], getbattleflag("max_cloth_color"), getbattleflag("max_hair_style"), getbattleflag("max_hair_color"); ^ this the array for the numbers do like that if(Class == Job_Summoner){ setarray .@Styles[1], 10,//max_cloth_color 6,//max_hair_style 10;//max_hair_color }else{ setarray .@Styles[1], getbattleflag("max_cloth_color"), getbattleflag("max_hair_style"), getbattleflag("max_hair_color"); }
  18. 1st ItemID 2nd unidentifiedDisplayName 3rd unidentifiedResourceName 4th identifiedDisplayName 5th identifiedResourceName 6th slotCount 7th ClassNum 8th costume
  19. need more info what you used in nemo what happen exactly any error in the terminal ?
  20. after case 2: remove_orbs = 1; use break; so it will be case 2: remove_orbs = 1; break; and this for the empty slots s_select_remove: .@card0 = getequipcardid(.s_all_loc[s_all_selected],0); .@card1 = getequipcardid(.s_all_loc[s_all_selected],1); .@card2 = getequipcardid(.s_all_loc[s_all_selected],2); .@card3 = getequipcardid(.s_all_loc[s_all_selected],3); next; mes "^A020F0[Encantadora]^000000"; mes "Isso removerá todos as Cartas e Pedra de Encantamento dentro do item!"; if (.s_zeny_remove > 0) { mes "Isso vai te custar " + .s_zeny_remove + " Zeny."; } mes "Você tem certeza?"; switch(select("Não:Sim")){ case 1 : end; case 2: if (Zeny < .s_zeny_remove) { mes "Desculpe, mas você não tem zeny suficiente."; close; } if(.@card0 == 0).@card0$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card0$ = getitemname(.@card0); if(.@card1 == 0).@card1$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card1$ = getitemname(.@card1); if(.@card2 == 0).@card2$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card2$ = getitemname(.@card2); if(.@card3 == 0).@card3$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card3$ = getitemname(.@card3); switch(select(.@card0$,.@card1$,.@card2$,.@card3$)){ case 1: .@card0 = 0; break; case 2: .@card1 = 0; break; case 3: .@card2 = 0; break; case 4: .@card3 = 0; break; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; set Zeny, Zeny-.s_zeny_remove; } close; end;
  21. - script mall_command -1,{ OnMall: if(getmapflag(strcharinfo(3),mf_town)){ warp "quiz_02",0,0; }else{ message strcharinfo(0),"you have to be in town to use this command"; } end; OnInit: bindatcmd("mall",strnpcinfo(3)+"::OnMall",0,99); }
  22. for the item required you can't use random orb with it or else the ppl will retry with the orb in there bag it would be the same as select orb i will clear that when i rewrite it for the orb's removal just edit from the line 252 this s_select_remove: .@card0 = getequipcardid(.s_all_loc[s_all_selected],0); .@card1 = getequipcardid(.s_all_loc[s_all_selected],1); .@card2 = getequipcardid(.s_all_loc[s_all_selected],2); .@card3 = getequipcardid(.s_all_loc[s_all_selected],3); next; mes "^A020F0[Encantadora]^000000"; mes "Isso removerá todos as Cartas e Pedra de Encantamento dentro do item!"; if (.s_zeny_remove > 0) { mes "Isso vai te custar " + .s_zeny_remove + " Zeny."; } mes "Você tem certeza?"; switch(select("Não:Sim")){ if (Zeny < .s_zeny_remove) { mes "Desculpe, mas você não tem zeny suficiente."; close; } case 2: specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, s_item_refine, 0, 0, 0, 0, 0; set Zeny, Zeny-.s_zeny_remove; } close; end; to s_select_remove: .@card0 = getequipcardid(.s_all_loc[s_all_selected],0); .@card1 = getequipcardid(.s_all_loc[s_all_selected],1); .@card2 = getequipcardid(.s_all_loc[s_all_selected],2); .@card3 = getequipcardid(.s_all_loc[s_all_selected],3); next; mes "^A020F0[Encantadora]^000000"; mes "Isso removerá todos as Cartas e Pedra de Encantamento dentro do item!"; if (.s_zeny_remove > 0) { mes "Isso vai te custar " + .s_zeny_remove + " Zeny."; } mes "Você tem certeza?"; switch(select("Não:Sim")){ case 1 : end; case 2: if (Zeny < .s_zeny_remove) { mes "Desculpe, mas você não tem zeny suficiente."; close; } switch(select(getitemname(.@card0),getitemname(.@card1),getitemname(.@card2),getitemname(.@card3))){ case 1: .@card0 = 0; break; case 2: .@card1 = 0; break; case 3: .@card2 = 0; break; case 4: .@card3 = 0; break; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; set Zeny, Zeny-.s_zeny_remove; } close; end; and now you can select the enchant you want to remove
×
×
  • Create New...