- Glorn2 wrote:
- you guys should look more at the stats...
Armor, although going from 93-95% damage reduction doesnt seem like a lot, stack some armor, and realize it still affects more. I really want to see WC3 formula for damage on armor.. Because with 150 armor (more than you need) I block a lotta damage, but shit still hurts. With 350 armor, I lose about 3000 HP in a 3 minute battle with a rexxy... I mean, this wasnt scientific circumstances or anything, but even in older edits when people mass tomed... 1 game, an archer tomed up like 4k agility. He only had like 7000 HP, I was toming strength, but still had ~120 armor, but like 25,000 HP. He would win, because each shot I was only dealing like 50 damage to him, on his 500 armor, and he was dealing like 500 to me per shot (i even had a scepter, he didnt)
I may have an answer for that I found a guide on EHP/Armor anyhow he goes on to explain about Armor Values and Armor Type. Sorry would link but password protected. This is really long but tells you a lot about armor and ehp (to be honest most of it flys above my head)
By ssx1390 lodereon realm
Armour and EHP Guide, updated 29/03/07.
Prerequisite
Understanding of mathscraft.
Definitions
Effective hitpoint, or EHP is defined as the total amount of damage you can receive without factoring damage reduction before your hero dies.
Maximum hitpoint, or MHP, is the amount of hitpoint displayed on the unit.
Diminishing marginal returns, or diminishing returns in short, is defined as each additional unit of input yielding less and less additional output. For example, a second basher gives you 12.75% chance of bashing as compared to 15% to bash on the first.
For a detailed explanation of diminishing returns application in DotA, read the third page of this thread, starting from Malle's post.
Facts
Armour does not stack with diminishing returns. It is damage reduction that stacks with diminishing returns. This will be proven later.
Damage reduction from armour is different from armour type reduction. They are independent of each other.
Critical strike does not ignore armour.
Melee bashes are reduced by armour type spell resistance.
Ranged bashes are counted just as normal damage.
Spell damage ignores armour but is reduced by spell damage resistance.
Formula for damage reduction is :
Damage Reduction = ([armor]*0.06)/(1+0.06*[armor])
The formula above only applies for positive values. For negative values, it is calculated differently.
Formula for damage increase (negative armour):
Damage Increase = 2 - 0.94^(-[armor]) or Damage Reduction = 0.94^(-[armour]) - 1
Both formula will give you the same answer, with the first one as positive value and second one as negative.
--------------------
Armour Type VS Armour Value
There is 2 types of reduction in Warcraft, one is armour type, and another is armour value. Armour value is what that is covered in this guide, while Armour type will be mentioned briefly regarding how it works in this section.
First thing first, armour type reduction and armour value damage reduction are independent of each other. They do not stack with each other diminishingly or linearly or anything.
So how does armour type reduction works? I'll give an example here, which will illustrate clearly how armour type reduction and how armour value damage reduction interacts with each other.
Let's say, target has hero armour 0 and receives 100 normal damage. Normal damage, does 0.75 times the damage against hero armour, so this is the calculation:
100*0.75 = 75 damage.
The target will receive 75 damage. What if the target has armour value? If the target has 1 armour (5.66% damage reduction), and assuming the damage source does not change, the target will receive:
100*0.75* (1-0.0566) = 100*0.75*0.9434 = 70.755 damage.
See how it works now? Not as complicated eh? Below is a full list of all armour type vs attack type difference.
CODE light medium heavy fort norm hero unarmoured
Chaos= 1.00 1.00 1.00 0.40 1.00 1.00 1.00
Normal= 1.00 1.50 1.25 0.70 1.00 0.75 1.00
Pierce= 2.00 0.75 1.00 0.35 1.00 0.50 1.50
Siege= 1.00 0.50 1.25 1.50 1.00 0.63 1.30
Hero= 1.00 1.00 1.00 0.50 1.00 1.00 1.00
Spells= 1.00 1.00 1.00 1.00 1.00 0.75 1.00
A little extra information here, for those who knows a little more about such stuffs. You should have seen that under spells, it does 0.75 times the damage against hero armour. Link it to the triggered spell guide. (Attack Type, Damage Type) Familiar? Yes, attack type is affected by armour type and damage type is affected by the armour value! Hope this clears many misconceptions that people have about this issue. In the case when Damage Type is Magic, it simply means that either the hero is hit by that attack (and take 1.0x the damage), or totally immune to the attack (as with spell immunity).
--------------------
Proving
DReceived = Damage Received (after damage reduction)
DReduction = Damage Reduction
DDealt = Damage Dealt (before damage reduction)
To find out how much EHP per point of armour adds,
DReceived = (1-[DReduction]) * DDealt
DReceived = (1- ([armor]*0.06)/(1+0.06*[armor])) * DDealt <- DReduction formula added in
Assuming that the damage dealt brings the MHP directly down to zero,
DReceived = MHP
DDealt = EHP
MHP = (1- ([armor]*0.06)/(1+0.06*[armor])) * EHP
EHP = MHP/(1- ([armor]*0.06)/(1+0.06*[armor])) <- Divide both side by (1- ([armor]*0.06)/(1+0.06*[armor]))
Since we are finding the EHP per point of armour, armour = 1.
EHP = MHP/(1- 0.06/1.06)
Now we have to simplify the denominator, (1- 0.06/1.06).
EHP = MHP/(1- 0.06/1.06)
EHP = MHP/[(1.06-0.06)/1.06]
EHP = MHP/[1.00/1.06]
EHP = MHP*1.06
Therefore, each point of armour adds 6% (0.06) of your MHP to your EHP. To confirm, use EHP = MHP/(1- ([armor]*0.06)/(1+0.06*[armor])) to find the EHP of a additional second armour.
The formula can be simplified as EHP = MHP + 0.06*[armour]*MHP or EHP = MHP(1 + 0.06*[armour]).
Simplified Explanation
In laymay terms, each point of armour adds 6% of your MHP to your EHP.
We will try this out on a hero with 0 armour and 100 hitpoints. Ok, obviously 100 damage to kill.
With the damage reduction formula, a hero with 1 armour has 5.66% damage reduction. With 100 hitpoints, the amount of damage needed to kill him is (assuming x is the amount of damage needed to kill him):
x * (100% - 5.66%) = 100
x = 100/94.34%
and we get the magical value:
x = 106 damage to kill
A hero with 2 armour and 100 health will need
x * (100% - 10.71%) = 100
x = 100/89.29%
and the magical value:
x = 111.99999999999999999999999999989 = 112.
And to see whether it really is linear, we do it at 50 armour, which is supposed to give 300% EHP, so 300 extra for 100 hitpoints.
50 armour gives 75.0% damage reduction.
x * (100%-75.0%) = 100
x = 100/25%
x = 400
OMFG ARMOUR'S SUPPOSED TO HAVE DIMINISHING RETURN. <- Proven wrong. Armour stacks with diminishing returns linearly, provided that hitpoints is a constant. And if you have noticed, it increases by percentage so in fact, your EHP increases exponentially with increase in actual hitpoint or max hitpoint.
Don't believe what I said? We use 200 hitpoints 5 armour as an example.
From the equation, 5 armour will give 23.08% damage reduction.
And 5 armour = 30% EHP. On a 200 hitpoints unit, it will be 260 EHP.
x*(100%-23.08%) = 200
x = 200/76.92%
x = 259.99999999999999999999999999992 = 260.
OMG MAGIC.
--------------------
Miscs
MHP VS EHP at specific armour value
Full size (credit goes to Tunger)
Non-diminishing effect graph VS diminishing effect graph
Graph 1 Graph 2 (credits goes to LoneWanderer)
A graph with no diminishing effect. EHP vs Armour Point
A graph with diminishing effect. No. of basher and the relation to chance of bashing.
--------------------
***IMPORTANT
Conclusion
Each point of armour adds 6% of your MHP to your EHP and it stacks linearly. Since it stacks by percentage, having a good mix of armour and hitpoints will help against physical attackers. They complement each other in a way that more armour can boost your overall tanking ability while pure hitpoints give you your raw strength.
The formula for calculating EHP will be as follow:
EHP = MHP + 0.06*[armour value]*MHP or EHP = MHP(1 + 0.06*[armour value])
Hope this helps.