PDA

View Full Version : Resist rates seem too low


Domingodarkrage
02-01-2013, 01:06 AM
My players have noticed that they are able to consistently land spells on mobs much higher in level than the player, 10-15 levels higher. The casters love this, but I'd like to make it much more like a live server, where a level 31 necro could not solo a sand giant and earn insane experience.

I've looked for threads, and found not real leads. I've modified some values in rules_values and resulted with no change in resist rate. Specifically, I've changed
spells:AutoResistDiff from an original value of 15, down to 8, and further to 4. No change in resist rate (level 35 able to land spells on a 50)
Spells:ResistperlevelDiff from an original value of 85, to 120. Still nothing noticeable.

I saw a post mentioning the method to determine a resist has changed to a more live-like method, and these rules are no longer used. Does anyone have a suggestion about how I can go about changing the resist rate to make my server more fair?

Thanks for any suggestions.

dburg30
02-01-2013, 01:20 AM
I'm not sure but I will ask 2 questions for those that maybe do know.. the first is one of those things i learned early when starting my server, after making changes did you restart your server? And 2nd, what server revision are you running?

Domingodarkrage
02-01-2013, 02:20 AM
Dburg30,

I have been restarting my server between changes. I am using peq 2214 version.

KLS
02-01-2013, 02:55 AM
50-32 = 18.
Level Bonus = 18 * 18 / 2 = 162.
This is added directly to the resist value which with a roll out of 200 with no other modifiers 81% of binary spells cast by a level 32 on a 50 will resist. In reality the npcs will also have some minor resists. And the level bonus spikes to 1000 if you're at a 20 level distance or greater (though not currently settable by a rule).

Partial spells at harder to fully resist and I think fear *might* still be a partial spell which could be a problem in this situation. One I probably would be willing to fix code wise if it's a big problem.

Also might be screwing you up is the MinResist/MaxResist fields on spells which was added at some point. These override the calculations in code.

KLS
02-01-2013, 03:00 AM
And actually I don't think looking at it that unless you changed something from stock MaxResist is a problem. DISREGARD.

Domingodarkrage
02-01-2013, 03:44 AM
KLS, is there anything I can change about the level bonus formula? I've not changed any min/max resist, though I might have to experiment with changing those values (i'd rather find an easier approach though)

KLS
02-01-2013, 07:09 PM
You can change it to be more severe if you want to delve into the code.

Around line 4040 in spells.cpp you'll find
int level_mod = temp_level_diff * temp_level_diff / 2;
if(temp_level_diff < 0)
{
level_mod = -level_mod;
}

if(IsNPC() && (caster->GetLevel() - GetLevel()) < -20)
{
level_mod = 1000;
};

Which deals with the level mod. You can also change the -20 to make it a faster cutoff.

Domingodarkrage
02-01-2013, 07:49 PM
Thanks, KLS. I think I can modify that formula, as well as change the -20 to a more appropriate difference.

I have no experience with changing the cpp files. Will i need to recompile if I change this file, or will it take effect after a server restart, similar to changes made inside the DB?

Uleat
02-01-2013, 08:02 PM
Anytime that you change something you will need to recompile and copy the files over..and, of course, restart the server.

Domingodarkrage
02-01-2013, 08:24 PM
Thanks. I'll give that a shot this week and report the findings.