Bluetracker

Tracks Blizzard employees across various accounts.


[Math]: Garrosh's effective HP

I did some math on Garrosh's effective HP and thought people might be interested in the results.

So Garrosh's trait gives him 1% armor for every 2% of HP missing and obviously that's going to affect how much damage he can take before he dies. So while his Maximum HP is 2049 (can be seen in the hero spotlight), the amount of damage he can tank before dieing (=eHP, effective HP) is higher than that.

One interesting effect for Garrosh specifically is that his eHP differs depending on how big the chunks of damage he takes are. For example, when he's 100% HP and takes damage equal to his full HP in one blow, his trait does nothing because no armor is applied (as he's still at 100% HP when taking damage). Opposed to that, if he takes 1 damage at a time, the armor will increase a tiny bit for each successive hit and his eHP will be significantly higher than his base HP. For that reason I will calculate his eHP for both a continuous stream of damage and different chunk sizes of damage.

 

The math

The math used is actually not quite trivial, so everyone who isn't interested in that can just skip the following and jump to the results.

I will use the following symbols:

y=HP in units of Garrosh's base HP where 0=0 HP and 1= full HP

x=damage dealt to Garrosh in units of Garrosh's base HP (as above)

For the continuous case, I start from the following differential equation that describes how much damage dy (after armor) Garrosh takes for a tiny (infinitessimal) chunk of damage dx (before armor) dealt to him.

dy = ½(1+y) dx

where the factor ½(1+y) equals to 100% minus Garrosh's current Armor. Integration and the initial condition y(0)=1 gives us

y(x) = 2ex/2-1

So to find the eHP, we solve for y=0 and then multiply the result with Garrosh's base HP which gives us eHP=2841.

The next calculation is for the case that you repeatedly deal a certain amount of damage to Garrosh until he dies. The amount of damage for each hit is given by a, again in units of Garrosh's max HP. Garrosh's HP after being hit n times can be calculated with the following inductive formula:

y_(n+1)=y_n - ½ (1+y_n) a

Now, this isn't particularly great for calculating a precise value of eHP, so I found a function that matches the sequence to get a better result. The function is

y(x)=2(1-a/2)x/a-1 where n was replaced by n=x/a

Solving for y=0, we get

x_0=-a ln(2)/ln(1-a/2)

or, if we insert the base stats,

eHP= -2049 [Dmg/2049 ln(2)]/[ln(1-Dmg/4098)]

where Dmg is the amount of damage dealt to Garrosh in one chunk each.

 

The results

So here's the table with the results for different chunk sizes:

Size of damage Chunks effective HP
≈0 2841
100 2806
200 2771
300 2735
400 2700
500 2663

(please note that due to how exactly damage and armor are calculated in-game, slight deviations might be possible.)


  • Centaurik

    Posted 7 years, 2 months ago (Source)

    Excellent job!

    Also, Garosh's trait makes slow continuous healing much more efficient since it keeps him bellow max hp for a longer time. Bw, Lucio, Stukov, and Malf will be good partners.

    indeed this was an amazing post! thanks for the math!!

    And while those are great partners for him, truly you should see him with a Tassadar or Zarya! Those shields while at low health will also benefit from the armor!




Tweet