-
Posts
2407 -
Joined
-
Last visited
-
Days Won
52
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Everything posted by Capuche
-
Even if you have 5000 players, it's 1 variable / account == 5000 variables I think it's acceptable
-
status.c #ifndef RENEWAL static inline unsigned short status_base_matk_min(const struct status_data* status){ return status->int_+(status->int_/7)*(status->int_/7); } static inline unsigned short status_base_matk_max(const struct status_data* status){ return status->int_+(status->int_/5)*(status->int_/5); } #else unsigned short status_base_matk(const struct status_data* status, int level){ return status->int_+(status->int_/2)+(status->dex/5)+(status->luk/3)+(level/4); }// renewal formula #endif
- 1 reply
-
- 1
-
-
Add after if(getarg(0) == "PCKillEvent") if(getarg(0) == "PCKillEvent")// well don't add this line (lol) { if( @last_killed$ == rid2name( killedrid ) ) end; set @last_killed$, rid2name( killedrid ); and after if(getarg(0) == "PCDieEvent") if(getarg(0) == "PCDieEvent") { if( @last_killer$ == rid2name( killerrid ) ) end; set @last_killer$, rid2name( killerrid );
-
-
You want more stat points ? you get less points in renewal than pre-re trunk/db/pre-re/statpoint.txt trunk/db/re/statpoint.txt" class="bbc_url" title="SVN" rel="external">trunk/db/re/statpoint.txt
-
Well farebury is an unknown map for me but maybe your problem is because you don't choice your WoEToggler's function //These two functions handle WoE's activation/deactivation. Since stable does not have AgitStart2/AgitEnd2, //using the trunk version will result in catastrophic failure of the script. Double declaration of the following //functions fixes this (you will get warning messages though) // function script WoEToggler { //<state> = 0|1 // if(getarg(0)) { // AgitStart; // } else { // AgitEnd; // } // return; // } //if stable script will fail parsing this function, but the rest of the script will still be usable function script WoEToggler { //<state> = 0|1 if(getarg(0)) { AgitStart; AgitStart2; } else { AgitEnd; AgitEnd2; } return; }
-
It's just a matter of lowercase/uppercase for some NPC name ( castle 4 and 5 for yuno and rachel ) yuno,109,167,5 script Himinn 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Sc01_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlesc01: FlagEmblem GetCastleData("schg_cas01",1); end; } yuno,110,171,5 script Andlangr 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Sc02_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlesc02: FlagEmblem GetCastleData("schg_cas02",1); end; } yuno,111,175,5 script Viblainn 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Sc03_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlesc03: FlagEmblem GetCastleData("schg_cas03",1); end; } yuno,112,179,5 script Hljod 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "sc04_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlesc04: FlagEmblem GetCastleData("schg_cas04",1); end; } yuno,114,183,5 script Skidbladnir 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "sc05_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlesc05: FlagEmblem GetCastleData("schg_cas05",1); end; } // Arunafeltz rachel,124,120,3 script Mardol 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Ar01_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlear01: FlagEmblem GetCastleData("arug_cas01",1); end; } rachel,136,120,5 script Cyr 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Ar02_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlear02: FlagEmblem GetCastleData("arug_cas02",1); end; } rachel,138,126,6 script Horn 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "Ar03_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlear03: FlagEmblem GetCastleData("arug_cas03",1); end; } rachel,135,131,7 script Gefn 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "ar04_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlear04: FlagEmblem GetCastleData("arug_cas04",1); end; } rachel,124,130,1 script Banadis 722,{ if( select( "^777777~ Warp to "+ strnpcinfo(1) +" ?:~ Cancel^000000" ) -1 ) close; getmapxy( .@map$, .@x, .@y, 1, "ar05_Flag" ); warp .@map$, .@x, .@y; end; OnAgitInit2: OnRecvCastlear05: FlagEmblem GetCastleData("arug_cas05",1); end; }
-
Cash shop buy packet was updated you can read this topic http://www.eathena.ws/board/index.php?autocom=bugtracker&showbug=4764
-
You can find other bonus informations on trunk/doc/item_bonus.txt" class="bbc_url" title="SVN" rel="external">trunk/doc/item_bonus.txt
-
max 50 should be enough
-
Dawn I didn't notice comparisons problems I go to sleep %#*$ ><
-
1/ you can change with script command Setcell Example : setcell "schg_cas05",114,51,125,51,cell_walkable,1; to walk on 114,51,125,51 area in "schg_cas05" .... cell_walkable,0; and you can't walk or 2/ change area walkable with browedit then update your map_cache in server side (I recommend weemapcache) and your map in client side http://browedit.exca...com/?a=download
-
if ( countitem(501) < 5 && countitem(502) < 5 ) { mes "I still require "+ ( 20-countitem(512) ) +" more apples!"; close; } The brackets !
-
Replace - script RFYL#disable -1,{ OnInit: disablenpc "Zombie Master"; disablenpc "Present#RFYL"; } prt_in,44,95,5 script Zombie Minion 1015,{ set .@name$,"^228B22[ Minion ]^000000"; if (getgroupid() >= 4) goto LMS_Admin; mes .@name$; if (!.Status) { mes .@name$; mes "My master seems to be slacking.."; } else { mes "My master is currently busy! He has an invasion scheduled!"; } close; LMS_Admin: by - script RFYL#disable -1,{ OnInit: disablenpc "Zombie Master"; disablenpc "Present#RFYL"; end; } prt_in,44,95,5 script Zombie Minion 1015,{ set .@name$,"^228B22[ Minion ]^000000"; mes .@name$; if (getgroupid() >= 4) goto LMS_Admin; if (!.Status) { mes .@name$; mes "My master seems to be slacking.."; } else { mes "My master is currently busy! He has an invasion scheduled!"; } close; LMS_Admin: and it works (it's a bug with sprite monster)
-
Maybe you have a problem in your msgstringtable.txt ? (client side) Test with this one - put it in data folder http://svn6.assembla.com/svn/ClientSide/Translation_Project/renewal%20data/msgstringtable.txt
-
item_rate_card: 800000// 80% item_rate_card_boss: 40000// 4% item_drop_card_min: 1 item_drop_card_max: 10000// don't touch
-
Mapflags are the cause Mapflag#pvp_noguild Mapflag#pvp_noparty Search and change yours in conf/mapflag/ folder
-
Sure but player must bet something so he must own some points at first otherwise he can't bet
-
You're welcome
-
If you want to add more than the poring event you're right, like an all-in-one event manager But you must to delete the array on the 1st NPC, I suggest donpcevent and getvariableofnpc prontera,146,76,5 script Event Warper 909,{ set .@name$,"[Warper]"; if( select( "Enter", "Cancel " ) -1 ) { mes .@name$; mes "See ya"; close; } else if( .accessFTP == 0 ) { set .@Hour, gettime(3); set .@Minute, gettime(2); set .@FTPTime, gettime(3) + 4; if( gettime(3)%4 == 1 ) set .@FTPTime, .@FTPTime-1; if(gettime(3)%4 == 2) set .@FTPTime, .@FTPTime-2; if(gettime(3)%4 == 3) set .@FTPTime, .@FTPTime-3; mes .@name$; mes "Find the Poring is closed right now.."; mes "The next Event starts on "+ .@FTPTime +"."; mes "And right now it is "+ .@Hour +":"+ .@Minute +"."; close; } else if( .register_num >= 128 ) { // room FULL mes .@name$; mes "I'm sorry but this Event is FULL."; mes "Maximum users to enter is 128 players."; close; } for( set .@i, 0; .@i < .register_num; set .@i, .@i + 1 ) { if( .register_aid[.@i] == getcharid(3) ) { mes .@name$; mes "You got warped once! Try again next time!"; close; } } warp "pvp_y_1-5",0,0; set @FTPChance, 0; set .register_aid[ .register_num ], getcharid(3); set .register_num, .register_num + 1; end; OnReset: deletearray .register_aid; set .register_num, 0; end; } - script FTPoring -1,{ OnClock0000: OnClock0400: OnClock0800: OnClock1200: OnClock1653: OnClock2000: announce "Find the Poring is now started!",0; killmonsterall "pvp_y_1-5"; monster "pvp_y_1-5",0,0,"Drops",1113,1000,"FTPoring::OnMobDeath"; monster "pvp_y_1-5",0,0,"Marin",1242,1000,"FTPoring::OnMobDeath"; monster "pvp_y_1-5",0,0,"Santa Poring",1062,1000,"FTPoring::OnMobDeath"; monster "pvp_y_1-5",0,0,"Metaling",1613,1000,"FTPoring::OnMobDeath"; monster "pvp_y_1-5",0,0,"Stapo",1784,1000,"FTPoring::OnMobDeath"; monster "pvp_y_1-5",0,0,"Poring",1002,1,"FTPoring::OnWinMobDeath"; mapwarp "pvp_y_1-5","prontera",156,98; set getvariableofnpc( .accessFTP, "Event Warper" ),1; donpcevent "Event Warper::OnReset"; end; OnMobDeath: set @FTPChance,@FTPChance+1; if(@FTPChance>=3){ warp "prontera",156,98; dispbottom "You've run out of chances!"; end; } dispbottom "Wrong Monster! You have "+(3-@FTPChance)+" chance's left"; end; OnWinMobDeath: mapannounce "pvp_y_1-5","["+strcharinfo(0)+"] has found the poring! The Event is over!",0; GetItem( 20002, 3 ); mapwarp "pvp_y_1-5","prontera",156,98; killmonsterall "pvp_y_1-5"; set @FTPChance,0; set getvariableofnpc( .accessFTP, "Event Warper" ), 0; donpcevent "Event Warper::OnReset"; end; } set getvariableofnpc( .accessFTP, "Event Warper" ), 0; will put variable .accessFTP in the "Event Warper" to 0
-
I think you don't need to split the script. The NPC can warp player and hold an event. And you do more work Lol I test on ea then edit wait EDIT: announce "Find the Poring is now started!",0; monster "pvp_y_1-5",0,0,"Drops",1113,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Marin",1242,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Santa Poring",1062,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Metaling",1613,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Stapo",1784,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Poring",1002,1,"Event Warper::OnWinMobDeath"; set .accessFTP,1; mapwarp "pvp_y_1-5","prontera",156,98; killmonsterall "pvp_y_1-5"; should be announce "Find the Poring is now started!",0; killmonsterall "pvp_y_1-5"; monster "pvp_y_1-5",0,0,"Drops",1113,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Marin",1242,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Santa Poring",1062,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Metaling",1613,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Stapo",1784,1000,"Event Warper::OnMobDeath"; monster "pvp_y_1-5",0,0,"Poring",1002,1,"Event Warper::OnWinMobDeath"; set .accessFTP,1; mapwarp "pvp_y_1-5","prontera",156,98; Seriously I feel so noob today Lol
-
You forgot a 'd' in .rn = ran(10);// add also rand(10) give a number between 0 and 9 .rn = rand(1,10);// add
-
You can also use @mapflag command desactivate nowarpto on map (reloadscript desactivate to) @mapflag nowarpto 0 activate nowarpto @mapflag nowarpto 1
-
Lol my bad change else if( .accessFTP == 1 ) { to else if( .accessFTP == 0 ) { Promise me you don't see anything