Jump to content

Spell resistance mechanics updated for WotLK

Auntie Mangos

Recommended Posts

The patch was written for revision 8806.

This patch fixes the following bugs:

1. Partial resists occur in multiples of 10% (not 25% like pre-WotLK).

2. At a given value of resistance, only 3-4 resist percentages are possible.

3. The long-term average damage resisted at a given value of resistance appears to follow the formula

Average Resist = Resistance/(Constant+ Resistance)

For level 80 mobs, the Constant is 400.

For level 83 bosses, the Constant appears to be 510 (pending final confirmation).

4. The possibility of a given partial resist % is eliminated when the average resistance (from the above formula) is 20% higher.

5. The probability of each partial resist seems to obey a triangular distribution.

Bug report thread:


The patch was written by me.

More information about the formula is at:


Link to the patch:


Tested after applying the patch:

Casting shadow spells against a paladin with 130 Shadow Resist Aura:

Theoretically would result in:

10 percent resisted: 13.68%

20 percent resisted: 38.68%

30 percent resisted: 36.32%

40 percent resisted: 11.32%

Out of 239 spell hits I got:

10 percent resisted: 36 spells (15%)

20 percent resisted: 88 spells (37%)

30 percent resisted: 89 spells (37%)

40 percent resisted: 26 spells (11%)

Link to comment
Share on other sites

  • 39 years later...
  • 1 month later...
  • 2 weeks later...

nice patch, but i think it has some problems, first i think this is incorrect:

if (level == BOSS_LEVEL)
           resistanceConstant = BOSS_RESISTANCE_CONSTANT;

should use pVictim->isWorldBoss() instead

and this:

float victimResistance = baseVictimResistance + ignoredResistance;

shouldn't it substract instead? or maybe i understood wrong


 uint32 level = getLevel();

it should be pVictim->getLevel() i guess

Link to comment
Share on other sites

  • 8 months later...
  • 6 months later...
This topic is now closed to further replies.

  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use