Jump to content

Playtester

Developer
  • Posts

    897
  • Joined

  • Last visited

  • Days Won

    26

Everything posted by Playtester

  1. 645,Center_Potion,Concentration Potion,2,800,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,0; },{},{} 656,Awakening_Potion,Awakening Potion,2,1500,,150,,,,,0xFFF7FEEF,7,2,,,40,,,{ sc_start SC_ASPDPOTION1,1800000,0; },{},{} 657,Berserk_Potion,Berserk Potion,2,3000,,200,,,,,0x01E646A6,7,2,,,85,,,{ sc_start SC_ASPDPOTION2,1800000,0; },{},{} //ASPD in RE they give a fixed +4/+6/+9 ASPD 645,Center_Potion,Concentration Potion,2,800,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,4; },{},{} 656,Awakening_Potion,Awakening Potion,2,1500,,150,,,,,0xFFF7FEEF,7,2,,,40,,,{ sc_start SC_ASPDPOTION1,1800000,6; },{},{} 657,Berserk_Potion,Berserk Potion,2,3000,,200,,,,,0x01E646A6,7,2,,,85,,,{ sc_start SC_ASPDPOTION2,1800000,9; },{},{} In pre-renewal, POTION0 gives +10% ASPD (i.e. -10% delay between attacks), POTION1 gives +15% ASPD and POTION2 gives +20% ASPD. In renewal it gives as much ASPD as specified in the parameter between the duration. If you use a renewal compile and the potions don't add any ASPD, it could be that you are using a pre-renewal item db.
  2. Number of hits is handled in the skill_db.txt: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/db/pre-re/skill_db.txt 469,9,8,1,-2,0,0,10,1:2:3:4:5:6:7:8:9:10,yes,0,0,0,magic,0, SL_SMA,Esma But damage of each hit is handled in battle.c: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/src/map/battle.c case SL_SMA: skillratio += -60 + status_get_lv(src); //Base damage is 40% + lv% break;
  3. All damage is handled in battle.c, if you want to reduce the damage of a specific skill you'd usually just search for the skill constant to find the damage formula and then modify that.
  4. Yes, the quoted source code only is for pre-renewal.
  5. val3 = -25+50*val1; Means: Level 1 - 25% more damage Level 2 - 75% more damage Level 3 - 125% more damage Level 4 - 175% more damage Level 5 - 225% more damage (3.25x normal damage) My suggestion: val3 = 25*(val1+1); Means: Level 1 - 50% more damage Level 2 - 75% more damage Level 3 - 100% more damage Level 4 - 125% more damage Level 5 - 150% more damage (2.5x normal damage)
  6. Yeah, that's why you change: #ifndef RENEWAL_EDP val3 = 50*(val1+1); //Damage increase (+50 +50*lv%) #endif To: #ifndef RENEWAL_EDP val3 = -25+50*val1; //Damage increase (-25+50*level) #endif But that's a kinda strange balance. Don't you want to half the damage increase? In that case it would be: #ifndef RENEWAL_EDP val3 = 25*(val1+1); //Damage increase (+25 +25*lv%) #endif
  7. "100,100" would be mean between 100 and 100 which is 0%. If you do not change the thing Emistry did, then you can achieve 100% success by doing this: case 1: callfunc "Func_Socket",1460,1461,0,101,200,1010,10; An easier way is to just change the if to something that is always true like "if(1)" or "if(true)" (not sure if that works in scripts, though).
  8. Check these lines: case 1: callfunc "Func_Socket",1460,1461,40,66,200,1010,10; Basically you roll a 100-sided dice and if the number is between those two numbers (excluding), it is successful. 1460 in this case is the item required and 1461 is the item you will get. If you want to increase the chance for example change it to: case 1: callfunc "Func_Socket",1460,1461,35,71,200,1010,10;
  9. That code is the correct one. "ifndef" means "if not defined".
  10. Always a different person? Anyway, here you go: http://irowiki.org/classic/ATK#Primary_Stats
  11. I can't seem to get this patcher to run, I'm using vista, but I already copied RO into my documents folder as well as run it in admin mode. It creates a patcher process but I don't see anything visible (no patcher window at all). Any idea what the problem can be?
  12. I think it depends on if you set it to pre-renewal or leave it at renewal. By default it should read from renewal (re).
  13. The damage of earthquake is the divided by the number of players hit by the skill. If there are no players hit by it, there is a division by 0. It's in trunk/src/map/battle.c (line 4157) if (skill_id == NPC_EARTHQUAKE) { //Adds atk2 to the damage, should be influenced by number of hits and skill-ratio, but not mdef reductions. [Skotlex] //Also divide the extra bonuses from atk2 based on the number in range [Kevin] if(mflag>0) ad.damage+= (sstatus->rhw.atk2*skillratio/100)/mflag; else ShowError("Zero range by %d:%s, divide per 0 avoided!\n", skill_id, skill_get_name(skill_id)); }
  14. That's a difference between renewal and pre-renewal. That the damage was multiplied was a bug that got fixed with the renewal update. As compensation they increased the damage of claymore trap on renewal, however: http://irowiki.org/wiki/Claymore_Trap
  15. Maybe that's just me personally, but I'd just modify the mob_db.txt (or rather add copies of the monsters to the mob_db2.txt) and increase the base drop rate accordingly. For example I put the drop rate for boss cards to 500x, so they will drop to 5% by default. Then I update MVPs to have a base drop rate of 0.02% instead of 0.01% and then update minibosses to have a base drop rate of 0.03%. If you want it automatically calculated you'd need to do modifications to the source code. Not sure how familiar you are with C++, but you could find the part in mob.c that reads the rates from the config and where it reads the rate from the boss card config you make an adjustment based on the type or ID range of the monster.
  16. On renewal, it's normal that your job level increases faster than your base level. On pre-renewal it's not.
  17. Playtester

    mob db

    Well first of all you need to add the monsters to your database files in the db/pre-re folder. The spawn file you can find here: npc/pre-re/mobs/dungeons/lhz_dun.txt
  18. What rates have you set it to? Keep in mind that by default a hero can only get ~100% exp per kill.
  19. Well not familiar with tools myself, but getting the correct code is fairly easy, all jobs usually looks like this: 0xFFFFFFFF,7 Now you just gotta check the file in the documentation which is here: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/doc/item_db.txt High Wizard only (wizard+trans) would be: 0x00000200,2 Paladin only (Crusader+trans) would be: 0x00004000,2 You can also combine the classes by adding them together, for example High Wizard and Paladin would be: 0x00004200,2
  20. It would be great if you could release a converter. If you need help on how to convert each column, I can help with that. Not everything is trivial. Mode on monster for example needs to consider boss mode and race. And the skills need to consider if an MVP is casting them or not (several level 10 skills will be stronger if an MVP casts them which is reflected in rAthena by giving it a higher skill level). Also the "onspawn" file needs to be considered as those aren't actual skills on Aegis. Oh and if you convert newer G_ mobs, be careful because they have no delays at all (check G_BANASPATY), I was thinking that maybe summoned slaves do not only take over walking speed of the summoner but also attack delays? At least on official servers they don't attack with unlimited speed...
  21. I'll try to get a friend to make one with me then. Apparently they are all lost. =p
  22. The structure didn't change too much from eA to rA, so wouldn't the old converters still work? I mean at least for things that don't contain new script commands like mob_db.
  23. Hey guys, I just wanted to ask if there are converters to convert aegis files into rAthena files. I knew someone had some back on eA, but I'm not sure what happened to them.
  24. The copying should actually work since the format didn't change at all. What kind of errors are you getting? Also I'm thinking of making a real pre-renewal database where the newer monster have pre-renewal stats, but that will still take a while.
  25. I never really understood how there could be so much political trouble in emulator projects. You don't even need to do many coding decisions as you already have a clear definition on how it should be (= like official servers). That devs are lazy, well that's a different story, an open source project always depends on how many people are willing to work for it. You can't really blame devs for doing nothing. Want more work done? Then join the project instead of doing the fixes just for your own server.
×
×
  • Create New...