Elitist Jerks
Register
Blogs
Urban Rivals
Forums
New Posts


Go Back   Elitist Jerks > Public Discussion > Public Discussion
Elitist Jerks Login

gamerDNA Login

Welcome to Elitist Jerks
We're testing some new features on the site regarding OpenID registration and coordination with gamerDNA. If you experience any issues with registering an account, please take the time to fill out a report and send it to this e-mail address. We would appreciate any assistance you could provide in making sure everything is functioning as intended. Thanks!

If this is your first visit, please be sure to check out the FAQ and the forum rules. Users must register to post and new registrations are subject to a one day "mute" period to get acquainted with the community.

Reply
 
LinkBack Thread Tools
Old 04/04/07, 4:15 AM   #1
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
Resisting Magical Damage and its Relation to Resistance Levels

I've never seen a good experiment on resistances besides ones showing that resistance vs average amount resisted works to be linear. Now how do these averages break though down into the 0%, 25%, 50%, and 75% resisted tables? We could look to this official WoW page but unfortunately it has wrong information in that it shows there is always a 1% chance to take full damage. Luckily it does have some usefulness which I will show later.

All tests for data gathering was done on Level 38 Cresting Exiles in Arathi which melee with frost damage. One thing to note is for melee hits there is no such thing as full resists so whenever the table there is a spot for full resist its converted to a 75% resist (will show how thats determined in a moment).

First off lets look at the resists at maximum resistance level.

The data we find breaks down into 0% for no resists, 4% for 25% resists, 16% for 50% resists, and 80% for 75% resists. Now this agrees with the table on that wow page except 1% from no resists gets lumped with the 25% resists and full resists must then be lumped with the 75% resists since the rest of the resist table is accounted for.

Now on to a graph of the gathered data.



While this is somewhat confusing due to so much data on the graph a few things to note.

1. Resist caps at 100% of expected maximum resistance (190 in this case)
2. The resistance table varies based on 3 piecewise linear functions (one around 33% and another around ~68%)
3. There exists a magic resistance number if you are above you can't resist 0%

While there isn't really enough data at the low end to determine where the first piecewise function ends (only have 3 data points below the cutoff). But, we can figure out where the second one is because at that cutoff the chance for no resist is 0%.

To figure this out better lets look at a graph of only No Resists.



So we get a linear fit of about

Chance for No Resists = -0.7153 * (Percent of Max Resist Level) + 0.4859

When we solve for 0 this works out to be ~67.9% of maximum resist level is the cutoff so for lvl 73 mobs this would be 248.

As a result 248 is the resistance level you wish to aim for at least if you goal is to try to remove the possibilty of a spike with 0 resist.

Anyways further data needs to be gathered before the 3 piecewise linear functions is determined for each of the resist amounts.

The data used can be found in the below excel spreadsheet.

http://acm.jhu.edu/~cryect/resistance.xls
 
User is offline.
Reply With Quote
Old 04/04/07, 4:48 AM   #2
Meynar
Von Kaiser
 
Murloc Rogue
 
Hellscream (EU)
This may seem like an extremley basic question, but when you did this did you use a same lvl character to test it? Also did you religously stick to only the lvl 38 spawns and not the 36/7 spawns in the same area. The only reason i ask is that if its not the same lvl wont the results be skewed by higher lvl natural resistances? Im more than willing to admit im probably missing/not understanding something here and that you've already thought of this, but was just interested for clarifications sake.
 
User is offline.
Reply With Quote
Old 04/04/07, 4:52 AM   #3
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
I used a level 70 character (my druid) which mainly involved me facing my back to the mobs and letting them beat on me why I go kinda afk and heal myself occasionally (with a lot less afking on lower resist levels). I gathered about 5-12 mobs at a time and I made sure they were level 38. Basically the two levels of mobs that spawn are level 38 and 39 at the water elemental spawn point. So I would just kill off all the level 39's before I pull the 38's each time and this would slowly push all the mobs to being 38 (since I never killed them and would just deaggro them when I felt ready to test another number point).
 
User is offline.
Reply With Quote
Old 04/04/07, 4:56 AM   #4
Meynar
Von Kaiser
 
Murloc Rogue
 
Hellscream (EU)
Again this is most likely me missing something and being slow so appologies for that, but if you tested this with a lvl 70 agaisnt lvl 38 mobs would'nt that mean that on top of your res gear you have on, your lvl based resist would make the results skewed?

Last edited by Meynar : 04/04/07 at 4:57 AM. Reason: spelling mistakes
 
User is offline.
Reply With Quote
Old 04/04/07, 5:21 AM   #5
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
Originally Posted by Meynar View Post
Again this is most likely me missing something and being slow so appologies for that, but if you tested this with a lvl 70 agaisnt lvl 38 mobs would'nt that mean that on top of your res gear you have on, your lvl based resist would make the results skewed?
Level based resist only applies for mobs and not for players. This can be seen in the test with 0 resists that I had absolutely 0 resists which would be untrue if there was a level based resist. Also the cap would have been reached faster than the expected 5*Mob Level resist level tells us.
 
User is offline.
Reply With Quote
Old 04/04/07, 6:30 AM   #6
Darkmantle
King Hippo
 
Gnome Warlock
 
Spinebreaker
Originally Posted by Meynar View Post
Again this is most likely me missing something and being slow so appologies for that, but if you tested this with a lvl 70 agaisnt lvl 38 mobs would'nt that mean that on top of your res gear you have on, your lvl based resist would make the results skewed?
Just run up there with your character with no resist gear and see if you get any partial resists. If you don't get any partial resists then it is fair to assume there is no level based resistance for melee elemental damage.
 
User is offline.
Reply With Quote
Old 04/04/07, 6:33 AM   #7
Kenco
Von Kaiser
 
Human Warrior
 
Aman'Thul
This is good data, but i don't see any reason why the individual curves would be piecewise linear, they don't really seem to be from the graph and i can't see any compelling reason for it.

Can you publish the actual data points you reported?
 
User is offline.
Reply With Quote
Old 04/04/07, 7:18 AM   #8
heel
Great Tiger
 
Dwarf Priest
 
Mannoroth
This data is absolutely not linear. Why are you using a linear regression? Recalculate with these regressions if you would like to reach any meaningful conclusion:

0% - quadratic
25% - cubic
50% - cubic
75% - quadratic
 
User is offline.
Reply With Quote
Old 04/04/07, 8:10 AM   #9
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
I said its piecewise linear for a precise reason.

In fact, they need to be linear to ensure the average resistance is linear. If the functions for the values are not linear its not practical to come up with a way they average out to a constant average linear resistance if you have nonlinear functions for determining your probability weightings.

The reason for the piecewise function is so they can emphasize 25% (at approximately 1/3 the way through) at a certain point then emphasize 50% resist (at 2/3) then emphasize 75% at the end.

So what you really have is just linear interpolation between these 4 defined points hence the result is 3 piecewise linear functions.

Resist 0 - 100%/0%/0%/0% (0%)
Resist 1/3 - Data Not Well Defined
Resist 2/3 (actually should be at 68.33%) - 0%/20%/55%/25% (51.25%)
Resist Full - 0%/4%/16%/80% (69%)

The result is when you then interpolate between the four points is a smooth linear interpolation as well of the averages. Looking at what appears to be the defined point for 3 we can better determine the magic number should be 68.33% of the Max Resist Level (51.25%/75%=68.33%). This means if I go back and test I would expect at a resistance level of 129 I should see the occasional no resist and at 130 never a single no resist (unfortunately my frost resist gear won't allow that fine granularity).

And Kenco there is a link to the excel file at the end of the post and but here again http://acm.jhu.edu/~cryect/resistance.xls or I can save it in another format if you can't open Excel files.
 
User is offline.
Reply With Quote
Old 04/04/07, 8:20 AM   #10
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
To help make it clear here is 3 graphs showing each portion of the three piecewise linear sections I was referring to (since the first graph as I said was a little too clutter to see it properly).

In each case you can take a ruler and have it fit quite well within the error that we seem to be seeing. First third needs more data though as I said to help confirm it truly is linear for that section (though it does seem to match up with 3 data points on all of them as linear).





 
User is offline.
Reply With Quote
Old 04/04/07, 8:30 AM   #11
Cryect
Bald Bull
 
Night Elf Druid
 
Stormreaver
Here's the data as a screenshot btw

 
User is offline.
Reply With Quote
Old 04/04/07, 12:59 PM   #12
Kenco
Von Kaiser
 
Human Warrior
 
Aman'Thul
Note that if you start with the blizzard data here http://www.worldofwarcraft.com/info/...sistances.html , and replace every 100% resist result with a 75% resist result, their data matches yours perfectly.

I believe it is possible to fit the curves with nonlinear values and still get decent results. More research on that coming.
 
User is offline.
Reply With Quote
Old 04/04/07, 1:22 PM   #13
 Arawethion
Sentient Hyper-Optimized Data Access Network
 
Arawethion's Avatar
 
Tauren Druid
 
Mal'Ganis
Piecewise linear would be much more in line with the way they tend to do most things.

Answers to Moonkin questions:
0) Read the TTT/use the spreadsheet: http://elitistjerks.com/f47/t66856-moonkin_pve_dps/
1) Maintain high DoT uptime. Use WiseEclipse.
2) Nothing beats 2T8.
3) Yes, sometimes you cast many Wraths and no Eclipse procs. Deal with it.
 
User is offline.
Reply With Quote
Old 04/04/07, 1:25 PM   #14
suicuique
King Hippo
 
Night Elf Warrior
 
Antonidas (EU)
Originally Posted by Cryect View Post
I said its piecewise linear for a precise reason.

In fact, they need to be linear to ensure the average resistance is linear. If the functions for the values are not linear its not practical to come up with a way they average out to a constant average linear resistance if you have nonlinear functions for determining your probability weightings.
Are you sure about that?
It's been some years since my math courses, but the theorem you state is not a trivial one.

Is it just a feeling you have, or is it backed up by some background?
If so ... could you give me a link, or a rough direction?

TIA
 
User is offline.
Reply With Quote
Old 04/04/07, 1:27 PM   #15
snape
Great Tiger
 
snape's Avatar
 
Human Mage
 
Destromath
So what you're trying to sell to me is if I'm above 67.9% of a mob's maximum resist level, I will ALWAYS resist at least SOME part of the attack (248 resist at lvl 73 or ??)?

And as for the curve-fitting, when you break down the graphs into the sections that you think are the "jumps/points of no derivative/breakdowns in non-linearity" in the supposed piecewise function, we can see that in the most detailed case, you still only have 4 data points. 4 data points just isn't enough to choose a parent function (although I do concede that Blizzard would most likely choose a rather simple parent function).

As a man with 4 technical degrees, I understand the excitement when you think you notice a trend, but I refuse to consider piecewise linearity as the carte blance answer based on only this much data. It seems to be a pretty easy experiment - I'd be extremely interested in you filling in some of the large gaps in your data.

Last edited by snape : 04/04/07 at 1:33 PM.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:02 PM   #16
 Quigon
Bald Bull
 
Quigon's Avatar
 
Tauren Warrior
 
Kil'Jaeden
I'm pretty sure you can describe all of this in 1 elegant equation per column that isn't piecewise. Your graphs all look remarkably non linear over the entire spectrum relative to each other. There are some brief areas that appear linear, but I'm not sure that means they are.
Anyway, who cares. Its a nice result, and the first graph is the most important one.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:09 PM   #17
Kenco
Von Kaiser
 
Human Warrior
 
Aman'Thul
Here's a sample of some nonlinear curves that fit decently well.


To get them, first i assumed the 75% resist curve and the 0% resist curve were parts of a normal distribution, got the best fit from them using only 2 parameters from the blizzard values assuming 100% resists went to 75% resists.

Then the 50% resist curve and 25% resist curve can be determined by solving the two constraints
1) Total probability of all curves at any one point adds up to 1
2) Expected resisted value is 5 * level * 70% (using the experimental value of 70% for maximum average resist).
 
User is offline.
Reply With Quote
Old 04/04/07, 3:12 PM   #18
 Quigon
Bald Bull
 
Quigon's Avatar
 
Tauren Warrior
 
Kil'Jaeden
Try this:

Y = 150*x^2 - 250*x + 100

Thats so elegant that it has to be correct right?

X=Percent of cap
Y=Chance to resist 0%

This would be a 100 sided dice, with 5 shades, 0%, 25%, 50%, 75%, 100%.
100% is never colored in, or transparent.
The number of 0% shaded faces of the die is governed by my above equation, and the other 3 colors by equations that I'm simply too lazy to determine now, someone else will undoubtedly soon.

Last edited by Quigon : 04/04/07 at 3:18 PM.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:13 PM   #19
Bibdy
Great Tiger
 
Bibdy's Avatar
 
Orc Warlock
 
Bonechewer
And that gives you a linear average resist, Kenco?

There's always free cheese in the mouse traps, but the mice there ain't happy.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:14 PM   #20
suicuique
King Hippo
 
Night Elf Warrior
 
Antonidas (EU)
[your assertion that linear resistance is only possible when the resistance functions are linear themselves]

Thinking more about it, the 4 bernstein polynomials of 3rd order should fit almost perfectly.

These would be

1(1-t)³
3t(1-t)²
3t²(1-t)


if these are corresponding to 0% resistance, 25% resistance, 50% resistance and 75% resistance respectively you should find that at all cases the sum of the probabilities is 1. And the average resistance scales linear in t.

t denotes the normalized resistance needed for a given mob level. read: t = x/365 for a lvl 73 mob whne x denotes your resistance.

my raid is starting, so sadly have no time to show it in more detail but this should be correct.

Later.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:22 PM   #21
Kenco
Von Kaiser
 
Human Warrior
 
Aman'Thul
Bidby,
yes, there is a linear scaling in my graph above. My code is basically saying "Assume 75% resist is this curve (...), and 0% resist is this curve (...). Now find the values of the 25% resist curve and 50% resist curve such that there is linear scaling and all the probabilities add up to 1" (Unique solution, since there are 2 equations and 2 variables).
 
User is offline.
Reply With Quote
Old 04/04/07, 3:29 PM   #22
 Quigon
Bald Bull
 
Quigon's Avatar
 
Tauren Warrior
 
Kil'Jaeden
Bidby, its just how I described with the dice. You have a rnd, that takes 1-100, grabs a number.

Example:
The dice itself is preshaded based on your character sheet.
Its a single roll, that number is compared to your "columns" which are a 100% totaled resist spread apart 4 columns, governed by the above equations/graphs.

Y rolls a 10 - meanwhile your resist is 50% of total (lets say 182.5 resist for a 70 vs a 73).
You take a 100% unresisted hit. (Because the first Z numbers on the dice are shaded 100%... from my equation Z = 150*0.50*0.50 - 250*0.50 + 100 = 12.5% (12.5 % exactly for 50% resist? Its too good to not be true).

Kenco's is just a graphical expansion, and should as well total when all columns for a given X variable are totaled for their independent value. The numerical sum of all 3 of his polynomials total 1.0 linear. I don't agree there is cubic relation to 0% and 75% however as suic indicates.

Last edited by Quigon : 04/04/07 at 3:40 PM.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:36 PM   #23
suicuique
King Hippo
 
Night Elf Warrior
 
Antonidas (EU)
Originally Posted by Quigon View Post
I don't agree there is cubic relation to 0% and 75% however as suic indicates.
Just calculate. You will see that with these polynomials at all 0<=t<=1 the sum of all probabilities is 1.
The avg resistance scales linear in t, and reahces 75% at t=1 and 0% at t=0.

Have to go. Wipe ^^
 
User is offline.
Reply With Quote
Old 04/04/07, 3:37 PM   #24
Bibdy
Great Tiger
 
Bibdy's Avatar
 
Orc Warlock
 
Bonechewer
Well, there's still a big difference in the peak heights of the two central curves wrt the data. Has anyone tried the functions Suicuique suggested?

p.s. I hope you guys are slaughtering my name because of the mental arithmetic you're doing

Last edited by Bibdy : 04/04/07 at 3:44 PM. Reason: Ironic typo.

There's always free cheese in the mouse traps, but the mice there ain't happy.
 
User is offline.
Reply With Quote
Old 04/04/07, 3:48 PM   #25
 Quigon
Bald Bull
 
Quigon's Avatar
 
Tauren Warrior
 
Kil'Jaeden
I dunno sui, I have a pretty solid quadratic that matches the data to rather exacting levels at 0%.

Your cubic expansion appears to decend too rapidly.
For instance at 20% resist your equation would come out to 51.2% chance.
For quadratic, the value is 56.
The graph value is 62%.

The other problem, at 68% resist the 0% resist graph should hit 0% chance absolutely.
Quadratic hits 0 on the nose.
Cubic hits 3%.
The cubic never hits 0 afaik. Asymptotically sure, but that aint the same thing. I think that is as solid of a dis-proof as I can provide. If you add a constant in, it just gets worse for the descent.

Kenco's graph also doesn't bottom out soon enough.
 
User is offline.
Reply With Quote
Reply

Go Back   Elitist Jerks > Public Discussion > Public Discussion

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Stun Resisting Problem Mezz Class Mechanics 20 06/02/07 4:23 PM
Haste (magical) and DPS kelben Class Mechanics 73 04/24/07 11:10 AM
Mob Resist Levels? Draele Class Mechanics 1 03/30/07 5:35 PM
Decrease magical resistances and trash mobs Liandra Public Discussion 15 07/21/06 1:01 PM