-
Posts
765 -
Joined
-
Last visited
-
Days Won
19
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Playtester
-
The only choice you have is whether you want to compile the server Renewal or Pre-Renewal. If you use Pre-Renewal, it will automatically work like in official episode 13.2 regarding mechanics and will use the episode 13.2 files (in the pre-re folders). I haven't done that myself before, but I assume you can do that by using the following parameter when preparing your compile: ./configure --enable-prere If you want to go further into the past, you will have to manually revert scripts / database files to older versions. I would keep the code as in, because it contains many bugfixes that still apply even to episode 8. You will want those. If you want to revert to older database files or spawns, you could simply check out an older revision, but of course it's hard to find one that's fully based on official info, if you want something specific, you could also ask me again, I'll see if I can find it.
-
Q> old item_db comparing to the latest item_db
Playtester replied to mightyryan's question in Database Support
Well what you could do is: 1. Download eAthena RC5: http://rathena.org/board/topic/61283-old-old-version-ro/ 2. Get the item_db from it. 3. Then get the item_db from current rAthena. 4. Delete all rows except for cards that appear in both versions. 5. Open both with spreadsheet program. 6. Delete all columns except item ID and script (to avoid difference just from column changes). 7. Save both files. 8. Use a comparison tool like SVN Diff to compare both files. Now you can see what has changed in the script since 2004. :-) -
bonus bDefEle,Ele_Ghost; and bonus2 bSubEle,Ele_Ghost,100; are the same?
Playtester replied to donkeyg's question in Scripting Support
The coded table above was the renewal table. You're quoted table was the pre-renewal table. But same story for both. Just find the lines that end with "//Ghost" and then you can define how much damage ghost element should take. If you just care for Ghostring Card, then you just need to adjust the level 1 attribute table. Otherwises you need to update all levels. If you want neutral damage to deal 80% damage to ghost elemental targets then you need to put an 80 on the first column in the ghost row. -
bonus bDefEle,Ele_Ghost; and bonus2 bSubEle,Ele_Ghost,100; are the same?
Playtester replied to donkeyg's question in Scripting Support
I think he's talking about non-elemental damage from monsters that can't be reduced with elemental armor at all, not neutral damage. Unfortunately, there is no easy way to add a bonus for that. Maybe the setting in battle.conf helps: If you set this to for example "13" then monsters should no longer be doing non-elemental damage but rather neutral damage and the normal rules for neutral damage reduction applies. But that's -30% for renewal and -75% for pre-renewal by default, so you'll have to change the elemental table to 80% as explained above. -
Disable non katar weapon from using sonic blow
Playtester replied to Ace D Potgas's question in Source Support
//SkillID,HPCost,MaxHPTrigger,SPCost,HPRateCost,SPRateCost,ZenyCost,RequiredWeapons,RequiredAmmoTypes,RequiredAmmoAmount,RequiredState,SpiritSphereCost,RequiredItemID1,RequiredItemAmount1,RequiredItemID2,RequiredItemAmount2,RequiredItemID3,RequiredItemAmount3,RequiredItemID4,RequiredItemAmount4,RequiredItemID5,RequiredItemAmount5,RequiredItemID6,RequiredItemAmount6,RequiredItemID7,RequiredItemAmount7,RequiredItemID8,RequiredItemAmount8,RequiredItemID9,RequiredItemAmount9,RequiredItemID10,RequiredItemAmount10 136,0,0,16:18:20:22:24:26:28:30:32:34,0,0,0,16,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //AS_SONICBLOW#ƒ\ƒjƒbƒNƒuƒ?# It says weapon type 16 is required. 1252,Katar,Katar,4,41000,,1200,148,,1,1,0x00001000,7,2,34,3,33,1,16,{ bonus bDex,1; },{},{} Which is Katar. -
Keep in mind that on official servers, the drop rate "1" is actually 2/10001 = 0.02%. If you don't "simulate" this bug, your drop rates will only be half of those on official servers. The drop rate also can't be reduced below 0.01%.
-
Why not just remove them from the spawn files?
-
The behavior in rAthena is actually pretty different from the official behavior. On official servers there is nothing like a walk delay at all, but monsters are still fairly easy to stop because if you hit them, they will be put back on the closest cell. Walking speed is an important factor for hitlocking on officials, while in rAthena it doesn't matter much at all and rather depends on the damage motion duration.
-
Yes, I was actually working on that project for a while, but the problem I mentioned above still remains: There are three different ways on how to do the conversion which all have good reasons why they are close-to-official and it's hard to decide for one. Just take Scaraba Hole, on the one hand all pre-renewal monsters above level 99 have HUGE attack at least 8000 and for renewal scaraba hole monster actually do a lot of damage, but giving them 10000+ damage makes it indeed a lot harder than in renewal. Not to mention that there is later a nightmare mode, how high do you want to put the damage there? 40000+? Kinda pointless, since players can't even level above level 99 (unless the private server raises the max level). So in the end it might makes more sense to give them ~4000 attack, that reflects the difficulty better and then you still have room to make nightmare mode harder. Or maybe use an average between both versions? Not very easy to decide. And even trivial things like halving VIT is not so clear. It seems important so that AD is not overpowered, but the Biochemists on your server will totally complain about it, if you mess with that stat. So admins might still opt to leave it in just to not risk making their players angry. All these things will vary strongly on server decisions and what the players want and also custom server modifications (if they have max level 255 they might want those monster be a lot stronger). It's also possible to write a full converter via statistical evaluation. It just needs to check the differences between renewal and pre-renewal for monsters actually existing in pre-renewal and then learn by calculating average differences how much the stats are different on average for that race, size, element level and level range and then just apply those average differences on the new monster. But there are quite some monsters that got significantly changed that will make such a converter very unclean, for example the level and power and desert wolf is really high renewal, much higher than in pre-renewal, but that doesn't mean that brute fire monsters should be generally a lot weaker and lower level in pre-renewal. But maybe I'll do a release with my preferred version eventually.
-
Later episodes never existed in pre-renewal. It is possible to do a direct Renewal -> Pre-Renewal conversion for some stats, but not for all. So you'd need to manually adjust those numbers. When wondering how to do that, you could for example do a statistical evaluation on the differences and then apply it or you could do it so that the stats are adjusted depending on how the different mechanics works (due to assumptio and hard def being strongly nerfed in renewal, you need to increase the attack power a lot in the conversion, and you could increase it so that the final damage with perfect armor and buffs stays the same). Another alternative is to understand how the original game designer of RO was thinking by looking at all his work and then just put the stats with a copy of his mindset. Depending on the method you will get completely different results however, so I'm not sure yet which path to follow. I tried to contact the server admins of the high population private servers and work with them together on it, but they kinda ignored my e-mails, so I assume they probably want to keep their results for their own servers only. My currently proposed solution would be (warning: the renewal stats are still wrong in rAthena for anything after bifrost): >For monsters with level 96-160 in renewal< Level - reduce by 30 (130 -> 100) HP - same DEF/MDEF - recalculated according to official formula (I wrote a converter for this) VIT - half of renewal VIT (60 -> 30) ATK - 5x of renewal ATK (700 -> 3500) BaseEXP - 3x (+ 5% bonus*), should not apply to MVPs JobEXP - 2.67x (+ 5% bonus*), should not apply to MVPs >For monsters with level 20-95< Level - same HP - 3x of renewal HP (5000 -> 15000), should not apply to MVPs DEF/MDEF - recalculated according to official formula (I wrote a converter for this) VIT - half of renewal VIT (30 -> 15) ATK - 3x of renewal ATK (500 -> 1500), should not apply to MVPs BaseExp - 3x (+ 5% bonus*), should not apply to MVPs JobExp - 1.74x (+ 5% bonus*), should not apply to MVPs Explanations: Level: Well in pre-renewal the max level for monster is basically 120. So for high level monsters it makes sense that they should have a lower level or else they will have too high HIT/FLEE as well as status resistances. Why I wouldn't reduce the level for lower level regions in renewal has a simple reason - players will spend most of their time above level 80 so adding a real low level region isn't really very interesting. HP: For high level monsters the HP is pretty similar in pre-renewal and renewal at the same level. For lower level monster the HP was reduced in renewal. 3x is just an estimated value, probably could get a more accurate one. If we look at the Brasilis differences, we can notice that x3 gets quite close, though. I wouldn't mess with MVP HP at all, though. Most MVPs are quite similar in their stats if you compare renewal and pre-renewal. DEF/MDEF: There is a fixed formula for this so not much to discuss here. Y'know that (4000+DEF/4000+10*DEF) thingy. VIT: It was around double in renewal since attacks that deals more damage on higher VIT have been nerfed strongly. So if you revert pre-renewal you have to half it again. ATK: In higher level regions, players can reduce damage in pre-renewal a lot stronger than in renewal, so the ATK should be multiplied with 5 to get the same final result on the damage. BaseEXP: It's a bit tricky because you need to apply the "more exp if you kill higher level monsters" system directly to the exp in pre-renewal. Basically if you have a level 101 monster and a level 103 monster, you would want the level 103 monster to give 10% additional bonus exp. The multiplier isn't actually 3x, it's just there to give you some estimate. It is better to make this vary on the monster level the map is based on. For example you have a map with a 101 and 103 level mob and a map with a 121 and 123 level mob. I'd say multiplier for the first map is 2.5x and for the second is 3x. But the level 103 mob should be 10% more than 2.5x which is 2.75x and the level 123 should be 10% more than 3x which is 3.3x. Also if you change the HP, the exp should scale accordingly. JobEXP: Same as base exp except that there is an official fixed multiplier for job exp based on the level which is fairly simple: For level 1-19 and level 96-160 the multiplier is 0.89. For level 20-95 the multiplier is 0.58. (If you check renewal job exp of monsters you will see a big jump in job exp from level 19 to 20 and level 95 to 96.) If you don't want to mess so much with lower level monster stats, there is also an "easy type" version you could use, since especially around level 50, renewal and pre-renewal monsters are almost identical: >Easy type conversion for monsters between level 50 and 95< Level - reduce by 30 (80 -> 50) HP - same DEF/MDEF - recalculated according to official formula (I wrote a converter for this) VIT - half of renewal VIT (30 -> 15) ATK - same BaseExp - 1x (+ 5% bonus*), should not apply to MVPs JobExp - 0.58x (+ 5% bonus*), should not apply to MVPs This way you can just leave HP and ATK alone and only apply minor conversions. Exp will also almost stay the same except for the 5% bonus and the job exp multiplier.
-
Unlike popular believe, Brasilis actually existed in pre-renewal, but only on bRO and jRO. Since it never existed on kRO, rAthena refuses to update the Brasilis monster stats for pre-re, however, in case someone wanted to use the official stats, I decided to release them here. bRO and jRO have slightly different versions, here are the differences: - the bRO version is the original version, but features really low monster attack, jRO considered this as too easy / exploitable and decided to multiply the attack power by 3x (estimated value) of the normal monsters and increase it slightly on Boitata - bRO's field map mainly has Headless Mule's and Curupira spawning, first floor is mainly Piranha and second floor is mainly Iara - jRO removed Headless Mule from the field map completely and added more Toucan and Jaguar spawns instead - jRO added Thara Frog and Headless Mule to the first dungeon floor - jRO removed all weaker monsters except Hydra on the second dungeon floor and added Headless Mule instead In the file I have attached both versions, take the one you like more. :-) Issues that are not 100% official because a leak is missing: - how much exactly jRO increased ATK is unknown (tests showed that damage was around tripled), I just used exactly 3x - monster modes in pre-renewal are unknown (both bRO and jRO), jRO reported that Iara was actually aggressive, however since we have no leaks on the monster modes, I simply used the renewal ones - the spawn types of jRO are 100% official, but the amounts are estimated Everything else is 100% accurate. bra_all.txt
-
It summons yoyo. ;-) But yeah, look at what frenzmu06 quoted. It's the "SUMMONSLAVE" skill and val1 to val5 can contain the different monster IDs that should be summoned.
-
What do you want to edit? If you just want to edit their stats, why not do it in the monster database directly?
-
all racial reduction cards didnt work at all! help
Playtester replied to donkeyg's question in Database Support
This was fixed in r17222. http://trac.rathena.org/changeset/17222/rathena -
I don't think the script above would work. The if check only goes through when the equipment is re-checked. The correct way to solve it would be to use "autobonus". Like for Violet Fear: autobonus "{ bonus bIgnoreDefRace,RC_NonBoss; }",50,5000; So basically I'd do: 4399,Thanatos_Card,Memory of Thanatos Card,6,20,,10,,,,,,,,2,,,,,{ autobonus "{ bonus bDefRatioAtkRace,RC_Boss; bonus bDefRatioAtkRace,RC_NonBoss; }",50,5000; bonus bSPDrainValue,-1; bonus bDef,-30; bonus bFlee,-30; },{},{}In this case you need to set a chance (50) and a duration (5000). I think chance is 50 = 5% and duration is in milliseconds (5000 = 5 seconds).
-
Can't really make it work for ranged, buuut... (skill.c) case MG_SAFETYWALL: #ifdef RENEWAL /** * According to data provided in RE, SW life is equal to 3 times caster's health **/ val2 = status_get_max_hp(src) * 3; #else val2 = skill_lv+1; #endif break; Here you can set how many attacks it should block.
-
We intentionally added those columns so server owners can add their own custom drops to them. Also we wanted to have a separate drop slot for cards whereas officially the 8th slot can also contain non-cards. Which means we would need at least 9 slots anyway. I remember that back then, the only problem we had was that Steal actually could only steal items in Slot 1-7. So any items and all cards on Slot 8 couldn't actually be stolen on officials. Not sure how it is now, though.
-
Could be because your database structure is outdated. If you know when you last updated your database, you can use these upgrade scripts to update it: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/sql-files/upgrades/ Other than that, no idea why.
-
You can grant a skill with putting something like this in the item bonus: skill "MG_LIGHTNINGBOLT",1; However, you can't use skills that require a certain weapon to be used. If you want to change that, you will need to mess with the skill_require.db.txt: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk/db/re/skill_require_db.txt
-
[Request DB] Episode 9 Monster Drops, Equipment
Playtester replied to Vincent's question in Database Requests
You can use old eAthena revisions indeed. Sometimes a columns has changed, was added or removed. However, that's nothing a good spreadsheet program can't fix. -
What does the Awakening Potion and other Potions do to the attack speed
Playtester replied to Jayzy's question in General Support
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. -
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;
-
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.
-
Yes, the quoted source code only is for pre-renewal.
-
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)