Diablo® III

Math behind armor/resistance

This was posted on a different forum during beta, but does an excellence job explaining the difficult concept of effective health and the linear scaling of armor/resists. I haven't seen a similar thread yet on this forum, so here you all go.

For true links to the graphs Bridgeburners made, go to his original post at:
http://armadagaming.com/showthread.php?459-Armor-Resistances-and-Effective-Health

------ALL CREDIT GOES TO Bridgeburners------

Hello, this is my first thread here.

In this thread, I will talk about how your damage reduction is based on your armor and resistances, and how those stats are based on Intelligence and Strength. I'm hoping for people to have a thorough understanding of damage reduction based on those stats, and how to make an effective stat decision. (Note that with, say, ten open non-helm sockets, you would have 286 different possible ways of customizing your stats, not to mention gear choices, so stats customization is very real in D3). At the end I'll mention how effective health is based on these things, and show that intelligence and strength alike boost your effective health linearly.

The damage reduction formulas I have tested quite thoroughly. I encourage you to check it yourself.

--------------------------------------------------------------------------------------------------------

Let's talk about the stats' effects on resistance and armor. One strength gives one armor for every class. Thus any class's armor is the armor points from his equipment plus his strength (times any multiplying factor from bonuses). As well, one intelligence gives 0.1 to all resistances, which is a separate thing from armor. There are six resistances: Physical, Fire, Lightning, Ice, Poison, and Arcane/Holy (they share a resistance). I believe this covers all types of damage, so intelligence is basically a multiplicative source of all damage reduction as is armor.

Now for the punchline. Here are the following variables I define for the damage reduction formulas:

v = Level of the monster you're facing
A = Armor
D = Damage reduced due to armor (all types of damage)
R = Resistance to a certain element (remember without resistance gear, and with just intelligence, all resistances are the same)
d = damage reduced due to R, from that specific element.

One thing to note is that v refers to monster level, yet if you look at the damage reduction from the character sheet, it tells you based on your level. That's because it's telling you how you resist monsters that are your level. Because of this, you'll never be able to use the character sheet to know your damage reduction in Inferno, since you'll never reach their level. (I use v and not L, because L is reserved later for the variable Life.)

Now for the damage reduction formulas:

D = A /(50v + A)
d = R /(5v + R)

They look basically the same, only damage reduction from armor has a stronger attenuation rate (50), which means it grows more slowly. Here's what they look like vs level 62 monsters:

All Damage Reduction from Armor
ArmorDR.png

Elemental Damage Reduction from a Resistance (could include physical)
ResDR.png

Notice the x axis in each one. Damage reduction grows at ten times the rate from resistance as it does from armor, so I ranged the x axis plot for resistance as 1/10 of what it is from armor (res goes up to 3000, armor goes up to 30 000), making them look identical. Also notice that in the limit that either resistance or armor goes towards infinity, damage reduction approaches 1, which means complete immunity. (I have it in fractional units, to get percent just multiply by 100.) This is good because it means you will never be immune, no matter how many points you invest, yet points will always benefit you.

One thing to note is that, while resistance grows damage reduction at ten times the rate of armor, 1 strength = 1 armor, and 1 int. = 0.1 all resistances. Thus, assuming no armor and no resistances, intelligence and strength will grow your damage reduction at the exact same rate. In order for you to decide which one is better to invest in for damage reduction, just look at your armor and 10x your resistances, and see which one you have more of, and which one you have less of. For example, if you have 2000 armor and 200 fire resist, your damage reduced from fire will benefit exactly the same from 1 point in strength, or one point in intelligence. If you have less than 200 fire resist, you would prefer int. against fire. If you have more than 200 res, you would prefer armor.

This concludes the thread, unless you want to read about effective health.
------------------------------------------------------------------------------------------------------

Effective Health

I define effective health as the amount of damage a monster needs to deal to you, if he assumes you have 0 damage reduction, to kill you. For example, if your life is 100, and you have 50% damage reduction, a monster will perceive that he must do 200 damage to you to kill you, so your effective health is 200. Note that if your elemental resistances differ, you have different effective health against different elements.

Let's say you have a grand total of damage reduction of X. X = 1 implies complete immunity, X = 0.5 means half damage reduced, etc. If a monster deals damage to you, you will take (1-X) of that damage. Let H be effective health, and L be your life, as read on the health globe. If a monster wants to kill you, he must do exactly H damage to you, and you must receive exactly L damage to die. If he does H damage to you, you receive damage H(1-X), thus H(1-X) = L, or H = L/(1-X).

Recall that D is your damage reduction due to armor, and d is your reduction from an element due to a resistance. Since they're multiplicative, we have (1-X) = (1-D)(1-d). Thus, your effective health against that element is
H = L/[(1-d)(1-D)]
Each resistance separately multiplies your health by a factor of 1/(1-d). Let's say you have 1 life. Here is how your effective health will scale with damage reduction X:

Effective Health vs Damage Reduction
EH-DR.png

Notice that as damage reduction approaches 1, effective health approaches infinity. This is a known result, as complete immunity means you will never die; a monster has to deal infinite damage to kill you.

Now if you take
D = A /(50v + A)
d = R /(5v + R)
and plug those into
H = L/[(1-d)(1-D)],
you get

H = L(1 + A/50v)(1 + R/5v)
That is, it grows linearly. Let's take a fixed resistance of 0, for example, and look at effective health due entirely to armor, vs level 62 monsters, starting from 1 life:

Effective Health vs Armor assuming 1 health and 0 resistances, vs level 62 monsters
EH-Armor.png

And there you have it.

----------------------------------------------------------------------------

New info:
This website is amazing. I had nothing to do with creating it, but another forum poster shared it in a diff post, and it's amazing.

http://rubensayshi.github.com/d3-ehp-calculator/
Edited by Niveus#1462 on 5/31/2012 5:08 PM PDT
Reply Quote
bump
Reply Quote
Stack dodge
Reply Quote
tl;dr, aim for 10armor to 1 resist ratio
Reply Quote
10 armor to 1 resist is correct. it'd ideal to have armor = 10x resist.

my main point was that armor and resists have no diminishing returns. I keep seeing posts with ppl making this assumption. this post is to help ppl see that it's just not true.

there is no diminishing returns on armor/resists.
Reply Quote
05/26/2012 05:43 PMPosted by samonoske
can you tell me how much health would be = to say 100 armor? so i could figure out if say i find an item that brings my armor up by 100 but i lose 300 life would it be worth swaping the item


the answer is "it depends." the higher your armor/resists are, the more valuable each point of vitality/hp becomes.

if you can tell me what ur current armor/resists is, I can give you a conversion. However, this will change as you get more armor/resists.

I can tell you I am at 4043 armor and 668 resists (pre-buff). Monks can increase armor by a ton through abilities. Anyway, at this armor/resists:
10 vitality (350 hp) = 50 armor
10 vitality (350 hp) = 7 resist
100 armor = 13 resist.

Ideally, aim for resist x 10 = armor.
Reply Quote
Hi looking at this I did some tweaking.

I assumed that my friends barb was having way to low int since it's only 130 when his vitality is at 600.

What I get is this:

9234(1+(2506/(50*40))(1+(13/(5*40))) = 21 556

9234 is the current HP

2506 armor

40 lvl

13 resist

My effective hp is

21 883 hp with 10 vit
21 614 hp with 10 int
21 605 hp with 10 str

as suspected int is more useful... but it feels like the difference there is to small
It also feels very odd that vitality is so much better.

Either my conclusion is that res and armor is rather pointless, or I made a calculationmistake somewhere.

I used google calculator for everything, if u can, pls find where my mistake is :)
Reply Quote
No news? =)
Reply Quote
Um, why bother with a 10 to 1 ratio?

if I have 800 armor and 0 resist, won't both 10 resist and 100 armor still give me the same damage reduction?

The way I understand it is you just don't care what your current armor/resist it. Just focus on what the item you are thinking of getting you is giving you.
Reply Quote
Um, why bother with a 10 to 1 ratio?

if I have 800 armor and 0 resist, won't both 10 resist and 100 armor still give me the same damage reduction?

The way I understand it is you just don't care what your current armor/resist it. Just focus on what the item you are thinking of getting you is giving you.


They help each other. If you just focus on one you get linear gains. If you focus on raising both together you get better than linear gains. If you focus on raising both while raising HPS and LoH, you get much better than linear gains.
Edited by Gubmint#1882 on 5/30/2012 1:17 PM PDT
Reply Quote
Actually focusing on one over another to get to the highest point is technically best, its just the "diminishing returns" ppl describe is due to the limitations of stats in a given area
For example:

80% reduction from one source and 0% from another is a greater damage reduction than 70% from one and 10% from another. or 60% and 20%

The caveat to that is that there becomes a reasonable limit to how much armor/resists you can get from gear.
@ Act 4 inferno:
60% Reduc = 4800 Armor or 480 Resist
70% = 7500 or 750
80% = 12800 or 1280
90% = 28800 or 2880

Its just hard as balls to reach 12800 and especially 28800 armor.
In a perfect world I would basically stack as much armor or resist as I possibly can then backfill the other, but again, the "diminishing return" comes from the limitation from gear. Its much easier to jump from 0%-10% than it is to go from 80%-90%

Edit: Given the math, I believe the simplest calculation of "Effective health is" @ Act 4 inferno (thats just a real quick calculation and I've never taken the time to prove/test my effective health calculation)
1 Armor = .03% effective health increase
1 Resist = .3% effective health increase
Edited by Ruiner03#1408 on 5/30/2012 1:35 PM PDT
Reply Quote
Thanks for posting this, I'm finding it really helpful.
Reply Quote
Actually focusing on one over another to get to the highest point is technically best, its just the "diminishing returns" ppl describe is due to the limitations of stats in a given area
For example:

80% reduction from one source and 0% from another is a greater damage reduction than 70% from one and 10% from another. or 60% and 20%

The caveat to that is that there becomes a reasonable limit to how much armor/resists you can get from gear.
@ Act 4 inferno:
60% Reduc = 4800 Armor or 480 Resist
70% = 7500 or 750
80% = 12800 or 1280
90% = 28800 or 2880

Its just hard as balls to reach 12800 and especially 28800 armor.
In a perfect world I would basically stack as much armor or resist as I possibly can then backfill the other, but again, the "diminishing return" comes from the limitation from gear. Its much easier to jump from 0%-10% than it is to go from 80%-90%

Edit: Given the math, I believe the simplest calculation of "Effective health is" @ Act 4 inferno (thats just a real quick calculation and I've never taken the time to prove/test my effective health calculation)
1 Armor = .03% effective health increase
1 Resist = .3% effective health increase


Unfortunately I have to criticize your post and quote it strictly as a PSA because most will read it and misinterpret it.

While stacking one IS technically better... The fact that after getting 10k armor with 0 resist... It's that much harder to find another point of armor than another point of resist... So stacking 1 is the best option but not the best AVAILABLE OPTION

Again I know your post actually said this... But I feel like a response for people who dont understand it is warranted
Reply Quote
Ya, theorycrafting is always much simpler than implementing
Reply Quote
05/31/2012 11:26 AMPosted by Ruiner03
Ya, theorycrafting is always much simpler than implementing


There's a difference between knowing the path and walking the path...

BUT where the hell would you walk without knowing?
Reply Quote
Actually focusing on one over another to get to the highest point is technically best, its just the "diminishing returns" ppl describe is due to the limitations of stats in a given area
For example:

80% reduction from one source and 0% from another is a greater damage reduction than 70% from one and 10% from another. or 60% and 20%

The caveat to that is that there becomes a reasonable limit to how much armor/resists you can get from gear.
@ Act 4 inferno:
60% Reduc = 4800 Armor or 480 Resist
70% = 7500 or 750
80% = 12800 or 1280
90% = 28800 or 2880

Its just hard as balls to reach 12800 and especially 28800 armor.
In a perfect world I would basically stack as much armor or resist as I possibly can then backfill the other, but again, the "diminishing return" comes from the limitation from gear. Its much easier to jump from 0%-10% than it is to go from 80%-90%

Edit: Given the math, I believe the simplest calculation of "Effective health is" @ Act 4 inferno (thats just a real quick calculation and I've never taken the time to prove/test my effective health calculation)
1 Armor = .03% effective health increase
1 Resist = .3% effective health increase


Unfortunately I have to criticize your post and quote it strictly as a PSA because most will read it and misinterpret it.

While stacking one IS technically better... The fact that after getting 10k armor with 0 resist... It's that much harder to find another point of armor than another point of resist... So stacking 1 is the best option but not the best AVAILABLE OPTION

Again I know your post actually said this... But I feel like a response for people who dont understand it is warranted


I'm sorry to have neglected this thread. I assumed people passed it over after the first couple days. Glad to hear that ppl are paying attention. Again, shoutout to Bridgeburners who is the real mastermind behind it.

On to addressing some of the responses:
1) It is neither theoretically nor practically better to stack just armor or just resists. Taking the math you did above, 80% damage reduction from armor is better than 70% and 10%. The math is as below:

HP = 100
Armor Red = 80%
Resist Red = 0%
Effective Health = 100 / (1-0.8)(1-0) = 100/0.2 = 500

For future ease of discussion, the way armor and resist red works is that they are multiplicative for (1-reduction). E.g., 80% armor, 0% resist = 1-0.8 * 1-0 = 20% damage.

Now where your math is mistaken is that there IS diminishing returns of REDUCTION PERCENTAGE per armor gained. That is, at 0 armor, gaining 100 armor will give you:
D = armor/(50*monsterlvl + armor) = 100/(3000+100) = 3.2% reduction

However, going from 10000 armor to 10100 armor gives you:
D = 10000/(3000+10000) = 76.9%
D = 10100/(3000+10100) = 77.1%
Difference being 0.2%

Thus, not only is getting more and more armor capped by the limited +armor affixes, but further, getting 10 resists gives you MUCH more %reduction than 100 armor when you have 0 resists and 10k armor.

The reason why you want to aim for an even ratio is that when you get the ideal 10:1, you've been the most efficient at gaining the most effective health with the least amount of affixes.
Reply Quote
Hi looking at this I did some tweaking.

I assumed that my friends barb was having way to low int since it's only 130 when his vitality is at 600.

What I get is this:

9234(1+(2506/(50*40))(1+(13/(5*40))) = 21 556

9234 is the current HP

2506 armor

40 lvl

13 resist

My effective hp is

21 883 hp with 10 vit
21 614 hp with 10 int
21 605 hp with 10 str

as suspected int is more useful... but it feels like the difference there is to small
It also feels very odd that vitality is so much better.

Either my conclusion is that res and armor is rather pointless, or I made a calculationmistake somewhere.

I used google calculator for everything, if u can, pls find where my mistake is :)


1 str = 1 armor
1 int = 0.1 resist

thus, using our ratio of 10:1 armor:resist, strength and intelligence actually add exactly the same amount to effective health.

1 vitality ~ 10 armor ~ 1 resist.
this is less set in stone as having an adequate health pool allows for further smoothing of spike damage. the idea is that we have enough of a pool to survive when repositioning, getting frozen, getting hit by a wind-up attack we should have dodged, etc etc... but then we use life on hit/life regen/skill heals/pots to get that health back up so that we can be set for the next spike.
Reply Quote
90 Human Death Knight
8565
Tagged for later, thx.
Reply Quote
Thanks for the post Niveus, this is really helpful as I had to think about gear once i reach inferno whereas before i could get away with wearing (almost) anything.

Just to confirm the following: 1 vitality = 10 armor = 1 resist, and depending on what class you are the damage attribute i.e. intel for wiz and str for warrior will also add some dmg resistance.

If 1 (all) resist = 1 vitality, why differentiate between them? (everyone focuses on vitality and I only started to read up on resist once i hit inferno). How should one choose between an item with 50 vitality and 50 all resist?

And how does melee reduction and missile reduction play into this? Does it mean that vitality is best attrib to have since it covers all types of damage (including missiles, explosions or whatever)

Thanks for clarifying
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]