## Diablo3 Effective Health Pool Calculator

• Quote from GalZohar

Looks great! Thanks for this. Saves me for figuring out what errors I'm making in my excel sheet...

I still don't fully understand how passives interact with the numbers. Should I always type in the "buffed" stats? Or should I type in the stats I have when using the skills which boxes I've "checked"?

Could you please also add an option to "normalize" the stats? So we can show the value of every stat in terms of vitality, for example. Quicker to calculate when you're looking at something at the AH rather than multiplying by decimals. When showing small percentages, though, it would be nice if more digits were shown, so there is a difference between 0.082% and 0.087%. 2 significant digits will probably be enough, but 1 is too little (so numbers like 1.1%, 0.0043%, 21% would be shown, rather than 1.10%, 0.00% and 21.00%).

Damage reduction stats stack multiplicatively, so it would be nice to show the EHP benefit of 3%, 4%, 5%, 6% and 7% damage reduction that would have been on an item. When comparing items we really don't (or shouldn't) care about character screen stat difference, as that would be much more difficult to calculate than just looking at the number on the item. For "normal" (additive) stats current system works fine (though normalizing and showing 2 significant digits would help), but for multiplicative stats such as damage reduction from ranged/melee/elites it's not too helpful. Sure, 7% on an item is really only ~7.5% increased EHP, so almost 7%, but it'd still be nice to have that extra accuracy when comparing items.

EDIT: Also something doesn't really make sense to me. Without impunity I get resistances worth 0.14%, while with impunity they're worth 0.16%. Shouldn't a 50% boost make them worth 0.21% (1.5 times original value)?

When you 'create character' there's a big wall of text explaining that you should input the stats as you read them in your characterscreen and tick the checkboxes for the skills which you have on when looking at the charscreen.

With normalizing to VIT you mean adding a little table at the bottom which shows like:
1 armor = 1.7 vit
1 resist = 6 vit
etc ?

I'm adding itemcompare this week (I have a working expertimental version already on http://d3ehp-beta.rubensayshi.com/) after that is done I'll start trying to improve the UI a bit so that things are clearer how they work.

If there's a friendly (interaction)designer who feels like making a small mockup (or wireframes) for me, that would make things a lot easier (and better) !!
• Thing with item compare is that there is no time to minimize the game and use it, item will be sold by the time you tab back into the game. Must have some values written down that you can type into a calculator (which every Diablo player should have by his keyboard!) in a matter of seconds, before the item gets snatched (assuming it's actually a good value for your gold).

By normalizing I meant exactly that. Though %s can work too, just need to show at least 1 extra digit.

Though I still don't understand how impunity (warcry rune) doesn't increase the value of additional resistances by 50%.
• Quote from GalZohar

Thing with item compare is that there is no time to minimize the game and use it, item will be sold by the time you tab back into the game. Must have some values written down that you can type into a calculator (which every Diablo player should have by his keyboard!) in a matter of seconds, before the item gets snatched (assuming it's actually a good value for your gold).

By normalizing I meant exactly that. Though %s can work too, just need to show at least 1 extra digit.

Though I still don't understand how impunity (warcry rune) doesn't increase the value of additional resistances by 50%.

Interesting aproach, I haven't been that much 'on the ball' with trying to buy items that fast, but I see your point!
(I personally use 2 screens and keep the calc on the secondscreen).
I will add it to the list of features to build.

on the resist part:
Damage reduction from resistance = Resistance / (5 × Monster Level + Resistance)

base
hp = 10k
res = 500
mob = 60

500 / ((5 x 60) + 500) = 62.5% reduction
10000 / (1 - 0.62) = 26315 ehp

+50% res
hp = 10k
res = 750
mob = 60

750 / ((5 x 60) + 750) = 71.4% reduction
10000 / (1 - 0.71) = 34482 ehp

(34k - 26k) / 26k = 31% increase

+3 moblevel
hp = 10k
res = 500
mob = 63

500 / ((5 x 63) + 500) = 61.3% reduction
10000 / (1 - 0.61) = 25839 ehp

+3 moblevel, +50% res
hp = 10k
res = 750
mob = 63

750 / ((5 x 63) + 750) = 70.4% reduction
10000 / (1 - 0.70) = 33333 ehp

(33k - 25k) / 25k = 29% increase

the moblevel in the formula influences the scaling, making +50% resist not +50% effect kinda
now adding armor and other reductions to it makes the scaling even more complex xD but thats why we got computers to calculate stuff
• The beta version for itemcompare is looking rather stable now.

I just have some changes which I made last night and this morning at home, which I forgot to checkin so I don't have access to them now.
When I get home and can combine those changes with the work I've done during my lunchbreak today I'll have a stable version to deploy!
• Itemcompare is looking cool. Will be fantastic for assessing upgrades.
On the main character screen though, it still tells me Dex, Str, and Int have 0 EHP value, when clearly 10 Int = 1 Res All and 10 Str = 10 AC. It would be useful to get a sense of how valuable that 50 extra Dex on an item is.

I now understand how the script is calculating my initial resists/armor, but I still think that it needs to work differently somehow. Once I've set up my direct-from-character-screen stats (and hit create character), if I remove Nerves of Steel, it doesn't reduce my armor by that amount. Also, once I've made my character, if I want to update my armor values (say I get a new piece of gear), all I can change is the unbuffed armor value that it calculated for me, which means I need to completely debuff myself in-game, and remove all my passives, so I can find my unbuffed armor value.
Maybe I am just trying to use this tool in a way that wasn't intended, but I still find this aspect of it to be confusing and/or not working correctly.
Thanks again for making this tool though, please understand I'm just trying to provide constructive criticism/feedback.

Edit: I think one thing that would work is to just allow the user (after they have created the character), to edit only the buffed value for Armor or Resist All, rather than only the unbuffed values, as those values are always easier to get at in-game (at least for Barbs, can't speak for other classes).
• Quote from Entropy42

Itemcompare is looking cool. Will be fantastic for assessing upgrades.
On the main character screen though, it still tells me Dex, Str, and Int have 0 EHP value, when clearly 10 Int = 1 Res All and 10 Str = 10 AC. It would be useful to get a sense of how valuable that 50 extra Dex on an item is.

I now understand how the script is calculating my initial resists/armor, but I still think that it needs to work differently somehow. Once I've set up my direct-from-character-screen stats (and hit create character), if I remove Nerves of Steel, it doesn't reduce my armor by that amount. Also, once I've made my character, if I want to update my armor values (say I get a new piece of gear), all I can change is the unbuffed armor value that it calculated for me, which means I need to completely debuff myself in-game, and remove all my passives, so I can find my unbuffed armor value.
Maybe I am just trying to use this tool in a way that wasn't intended, but I still find this aspect of it to be confusing and/or not working correctly.
Thanks again for making this tool though, please understand I'm just trying to provide constructive criticism/feedback.

Edit: I think one thing that would work is to just allow the user (after they have created the character), to edit only the buffed value for Armor or Resist All, rather than only the unbuffed values, as those values are always easier to get at in-game (at least for Barbs, can't speak for other classes).

The dex/str/int stuff I did this morning during my breakfast at home and I forgot to upload the code so now im at work and I can't merge that code with teh stuff I did in my lunchbreak so gotta wait for 2night before I can have everything working 2gether!

The interface indeed needs some work so that you wont have to think about what you're doing but instead it feels logical xD

The problem is that most of the time you will have passives/skills/enchantress on when you look at your ingame charscreen so when you input your stats you basicly input your buffed stats, I like how that curently works in the tool, the first step you put your stats in and check which stuff is already on.

Then after that I want you to be able to test different builds, so you need to be able to enable/disable skills and I can only calculate that if I have your base stats (armor/resist).
However it's confusing what you should change if you have new gear etc, so I have to make that more clear somehow!
thats why I did the shout out to any designer to help me, because it's hard to think of a good way to do this!

Quote from SaikoDrakie

If there's a friendly (interaction)designer who feels like making a small mockup (or wireframes) for me, that would make things a lot easier (and better) !!
• I really think just locking out the unbuffed values (rather than the buffed values) in the character edit screen would work. Then as long as people keep their buffs in-game synched up with the buffs in the editor, they should always be able to enter the final armor value and have the program back-convert it.
Its just confusing to enter buffed values the first time and then have to enter unbuffed values after that.

Also, I agree with the guy that said normalized values to Vit would be awesome. Just another number next to the EHP and % values that indicates how much Vit that stat is equivalent to. i.e. 1% melee damage reduction is worth about 9.4 Vit to me in my current gear, while 1 Resist all is worth about 1.3 Vit
• I love your calculator and the item comparison looks good too. My only problem is when your comparing items with unique resistances. I was trying to decide between 2 shoulders last night and the calculator had them pretty close in ehp but the 1 that was slightly behind also had 41 physical resistance. I was unsure if the 41 phy res. was enough to put them ahead of the other pair.
• SUPER UPDATE; ITEM COMPARE HAS BEEN ADDED

Update 16 [2012/06/08 09:20]
!! SUPER UPDATE !!
- Mystic Ally - Earth added
- more minor bug fixes & features

If you have any feedback (bugs or good idea / feature requests), please let know!

Next up will be some real hard thinking about how the UI curently works and trying to improve the workflow so things are more logical!
Specially the input process is hard to understand completely!
I NEED SOME HELP FROM A (INTERFACE)DESIGNER!! If some1 could take the time to make a small mockup maybe, that would be awesome <3
• Quote from Wahst

I love your calculator and the item comparison looks good too. My only problem is when your comparing items with unique resistances. I was trying to decide between 2 shoulders last night and the calculator had them pretty close in ehp but the 1 that was slightly behind also had 41 physical resistance. I was unsure if the 41 phy res. was enough to put them ahead of the other pair.

first off; I added it to the issues list so that at some point I might try to find a solution to it.
second; It's hard!
If I would split up the resistances then I would have to display the EHP per magic type or something ...
In general it's best to see the 'all resist' field as an 'avarage resist' field, or if you're interested in how much 41 phys would help then you should just put it in all resist for sec
Maybe splitting up 'your avarage magic resist' and 'physical resist' would be a decent alternative :-)

Quote from Entropy42

I really think just locking out the unbuffed values (rather than the buffed values) in the character edit screen would work. Then as long as people keep their buffs in-game synched up with the buffs in the editor, they should always be able to enter the final armor value and have the program back-convert it.
Its just confusing to enter buffed values the first time and then have to enter unbuffed values after that.

Also, I agree with the guy that said normalized values to Vit would be awesome. Just another number next to the EHP and % values that indicates how much Vit that stat is equivalent to. i.e. 1% melee damage reduction is worth about 9.4 Vit to me in my current gear, while 1 Resist all is worth about 1.3 Vit

Atm I'm thinking of indeed locking the unbuffed base values, with item compare added you won't really have to tweak them much unless you wish to experiment with how stats scale.
I think I will redo the UI to be split among a few more tabs;
| stats input | buffs | buffed stats | EHP results | item compare | making a mess out of your stats |

Then the 'new character' step will be in the first tab, but you can go back to that step at any time
buffs will be all the checkboxes as usual
buffed stats and EHP results display the results we already got
item compare - duh
and the last tab will allow you to mess with all the stats freely and see what the results are, without influencing the other tabs
• Please excuse my noobness, but i keep seeing this effective health pool thing and as i'll be trying to do inferno now that i've finished my exams i wpuld like to know what is it! is some keen enough to explain it to me? or get me somewhere i can read about it?

• Quote from lordigor

Please excuse my noobness, but i keep seeing this effective health pool thing and as i'll be trying to do inferno now that i've finished my exams i wpuld like to know what is it! is some keen enough to explain it to me? or get me somewhere i can read about it?

"Effective Hit Points is a measure of how much unmitigated damage a character would have to suffer to die. For example if your Life is 100 and you have a combined 25% damage reduction from armor, resistances and other sources, your EHP would be 100 / (1 - 0.25) = 133 EHP."
• Quote from SaikoDrakie

Quote from Wahst

I love your calculator and the item comparison looks good too. My only problem is when your comparing items with unique resistances. I was trying to decide between 2 shoulders last night and the calculator had them pretty close in ehp but the 1 that was slightly behind also had 41 physical resistance. I was unsure if the 41 phy res. was enough to put them ahead of the other pair.

first off; I added it to the issues list so that at some point I might try to find a solution to it.
second; It's hard!
If I would split up the resistances then I would have to display the EHP per magic type or something ...
In general it's best to see the 'all resist' field as an 'avarage resist' field, or if you're interested in how much 41 phys would help then you should just put it in all resist for sec
Maybe splitting up 'your avarage magic resist' and 'physical resist' would be a decent alternative :-)

Splitting all resistances could be a real help for monks, because then you can add One With Everything to the list of optional buffs and calculate it's +EHP :).

And a small detail:
Option Crippling Wave - Concussion mentions in the Alternative column that it's EHP magic. But it's simply EHP. The calculations already do this correctly, the error is only the little text.

You are showing good progression with this tool, I am happy to see that, because I love using it :).
• This calculator is so full of win. Keep it up!
• Wow, I love it, thanks for the tool.

I've beeing looking to flog my 29% block sacred sheild with 86 vit and 61 int in favour of one with all res, but it turns out that my current one gives me the same EH as one with 70% all res and no other stats lol.

ps, the item compare tool is AMAZING. any plans to make a weapon compare tool so we can finally compare weapons with high dps vs ones with lower dps + primary stat?

Thanks again.
• Evening. I skimmed through the thread and didn't see it but I was wondering why prismatic armor has no effect when you aren't wearing additional + all resist gear? Unless it changed in the last week (I've been working overtime all week) prismatic does increase the resistances earned from int so it should always benefit a wizard to some small degree unless I'm mistaken in how EH works.

Either way awesome job thanks for the calculator.
• Quote from troqu

Evening. I skimmed through the thread and didn't see it but I was wondering why prismatic armor has no effect when you aren't wearing additional + all resist gear? Unless it changed in the last week (I've been working overtime all week) prismatic does increase the resistances earned from int so it should always benefit a wizard to some small degree unless I'm mistaken in how EH works.

Either way awesome job thanks for the calculator.

I'm not sure what you mean, but Prismatic armor properly increases your allresist (also the +1 INT, but thats REALLY small). However the "Energy Armor - Prismatic" checkbox doesn't include the normal "Energy Armor", I will change that so it does :-)
• No block %, useless.
• Quote from Diesta

No block %, useless.

Thanks for the constructive feedback!
Unfortunatly block% (and LoH, LpS, revenge, etc) are very much relative to what you are fighting with (how hard and fast mobs hit, how many are hitting you) so it ain't as easy as stats like armor/resist/dodge.
However I made this tool initially to help myself and I too have problems giving a good value to how good block% is, so it DEFENATLY will be the next feature I'm adding!
• Can you do this for dex damage for DH?