Dissidia Posted November 20, 2011 Group: Members Topic Count: 155 Topics Per Day: 0.03 Content Count: 535 Reputation: 23 Joined: 11/19/11 Last Seen: June 8, 2023 Share Posted November 20, 2011 renewal attack speed for 3ceam. Quote Link to comment Share on other sites More sharing options...
0 Z3R0 Posted November 20, 2011 Group: Members Topic Count: 39 Topics Per Day: 0.01 Content Count: 618 Reputation: 201 Joined: 11/09/11 Last Seen: June 14, 2024 Share Posted November 20, 2011 What exactly is the request that you are wanting? Quote Link to comment Share on other sites More sharing options...
0 Triper Posted November 20, 2011 Group: Members Topic Count: 0 Topics Per Day: 0 Content Count: 33 Reputation: 6 Joined: 11/12/11 Last Seen: January 16, 2022 Share Posted November 20, 2011 I think he wants to know what to do to add renewal atk speed to 3ceam releases as in formula/code/what to edit in the source to change pre-renewal atk speed to renewal atk speed [Note - atk speed = ASPD [probably] just in case you may think it may be cast times] Quote Link to comment Share on other sites More sharing options...
0 Daredevil Posted November 20, 2011 Group: Members Topic Count: 2 Topics Per Day: 0.00 Content Count: 48 Reputation: 7 Joined: 11/15/11 Last Seen: April 6, 2012 Share Posted November 20, 2011 two ways : 1. Learning Source Modification 2. Waiting eAthena Renewal ^^ Quote Link to comment Share on other sites More sharing options...
0 Judas Posted November 20, 2011 Group: Members Topic Count: 26 Topics Per Day: 0.01 Content Count: 2244 Reputation: 182 Joined: 11/19/11 Last Seen: September 15, 2024 Share Posted November 20, 2011 yea I agree with what bluesky is saying. Understanding the src is pretty much all you need, cause if you don't then there probably be a lot of variables you will miss Quote Link to comment Share on other sites More sharing options...
0 KeiKun Posted November 20, 2011 Group: Members Topic Count: 31 Topics Per Day: 0.01 Content Count: 967 Reputation: 53 Joined: 11/13/11 Last Seen: Yesterday at 08:18 AM Share Posted November 20, 2011 Both above me is right~ if you have knowledge with C language its easy for you to know and locate it Quote Link to comment Share on other sites More sharing options...
0 JakeRed Posted November 20, 2011 Group: Members Topic Count: 1 Topics Per Day: 0.00 Content Count: 19 Reputation: 16 Joined: 11/14/11 Last Seen: September 20, 2024 Share Posted November 20, 2011 (edited) Currently Ragnarok Online has 2 way different ASPD formulas, one running on servers iRO, bRO, pRO, twRO, rRO, fRO, etc. The other is running only over kRO. The one which some private servers bought it from a Dev of eAthena is the one that iRO uses, which has fixed penalty from weapons, fixed bonus aspd from items. The kRO aspd formula decrease the penalty from weapons depending on AGI, there are not fixed bonus from items (more AGI means more bonus from conc pot, awakening pot or berserk potions), and normally their aspd formula provides less aspd than iRO aspd formula. This mean a char would have more Aspd at low/ medium AGI in iRO based servers compared to kRO servers, but in contrast a char would reach more Aspd at high AGI over kRO (main servers / sakray) than iRO based servers. So which one are you requesting?. Edited November 20, 2011 by JakeRed Quote Link to comment Share on other sites More sharing options...
0 Protimus Posted November 20, 2011 Group: Members Topic Count: 13 Topics Per Day: 0.00 Content Count: 198 Reputation: 102 Joined: 11/13/11 Last Seen: May 4, 2014 Share Posted November 20, 2011 (edited) You can use the brAthena formula, it's the orignal kRO formula... http://svn.brathena....rc/map/status.c Change status_base_amotion_pc to this: // Valores de ASPD int status_base_amotion_pc(struct map_session_data* sd, struct status_data* status) { int bonus = 0, amotion; // Bônus vindo de armas amotion = status_amotion_pc(sd); // Redução por status amotion -= (int)(((float)sqrt((float)((float)pow((float)status->agi,2)/2) + ((float)pow((float)status->dex,2)/5) )/4)*10 + (bonus*status->agi/200)); // Ajustes vindo do bônus bAspd amotion += sd->aspd_add; // Ajustes de bônus vindo da habilidade Perícia em Esgrima amotion += amotion * pc_checkskill(sd, GN_TRAINING_SWORD) / 100; // Ajustes vindo para uso de escudos if(sd->status.shield > 0) amotion += ((aspd_base[pc_class2idx(sd->status.class_)][MAX_WEAPON_TYPE])/10); return amotion; } Add above the status_base_amotion_pc, this function: // Cálculo de ASPD para armas. int status_amotion_pc(struct map_session_data* sd){ int i; if( sd->status.weapon < MAX_WEAPON_TYPE ) i = aspd_base[pc_class2idx(sd->status.class_)][sd->status.weapon]; else{ i = aspd_base[pc_class2idx(sd->status.class_)][sd->weapontype1]; switch( sd->weapontype2 ){ case W_DAGGER: i += 100; break; case W_1HSWORD: i += ((sd->status.class_ == 4065) ? 160:120); break; case W_1HAXE: i += ((sd->status.class_ == 4065) ? 200:120); break; } } return i; } Done. Edited November 20, 2011 by Protimus Quote Link to comment Share on other sites More sharing options...
0 Dissidia Posted November 21, 2011 Group: Members Topic Count: 155 Topics Per Day: 0.03 Content Count: 535 Reputation: 23 Joined: 11/19/11 Last Seen: June 8, 2023 Author Share Posted November 21, 2011 You can use the brAthena formula, it's the orignal kRO formula... http://svn.brathena....rc/map/status.c Change status_base_amotion_pc to this: // Valores de ASPD int status_base_amotion_pc(struct map_session_data* sd, struct status_data* status) { int bonus = 0, amotion; // Bônus vindo de armas amotion = status_amotion_pc(sd); // Redução por status amotion -= (int)(((float)sqrt((float)((float)pow((float)status->agi,2)/2) + ((float)pow((float)status->dex,2)/5) )/4)*10 + (bonus*status->agi/200)); // Ajustes vindo do bônus bAspd amotion += sd->aspd_add; // Ajustes de bônus vindo da habilidade Perícia em Esgrima amotion += amotion * pc_checkskill(sd, GN_TRAINING_SWORD) / 100; // Ajustes vindo para uso de escudos if(sd->status.shield > 0) amotion += ((aspd_base[pc_class2idx(sd->status.class_)][MAX_WEAPON_TYPE])/10); return amotion; } Add above the status_base_amotion_pc, this function: // Cálculo de ASPD para armas. int status_amotion_pc(struct map_session_data* sd){ int i; if( sd->status.weapon < MAX_WEAPON_TYPE ) i = aspd_base[pc_class2idx(sd->status.class_)][sd->status.weapon]; else{ i = aspd_base[pc_class2idx(sd->status.class_)][sd->weapontype1]; switch( sd->weapontype2 ){ case W_DAGGER: i += 100; break; case W_1HSWORD: i += ((sd->status.class_ == 4065) ? 160:120); break; case W_1HAXE: i += ((sd->status.class_ == 4065) ? 200:120); break; } } return i; } Done. sir in job_db1.txt? there is no changes? Quote Link to comment Share on other sites More sharing options...
0 Protimus Posted November 21, 2011 Group: Members Topic Count: 13 Topics Per Day: 0.00 Content Count: 198 Reputation: 102 Joined: 11/13/11 Last Seen: May 4, 2014 Share Posted November 21, 2011 (edited) Yes, but it's depends on the formula of each official server, because is different. If you need the kRO table, just get in brAthena: http://svn.brathena..../db/job_db1.txt I'm working on a formula for bRO, wich is equal to iRO... Stay tuned for updates in SVN. Edited November 21, 2011 by Protimus Quote Link to comment Share on other sites More sharing options...
Question
Dissidia
renewal attack speed for 3ceam.
Link to comment
Share on other sites
9 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.