The most important statistics of a monster in D&D 4E can be easily derived from simple formulas depending on level and role: Attack bonuses, defenses, hit points... with one remarkable exception: attack damage. In order to determine a monster's damage, you need to consult a couple of tables in the Dungeon Master's Guide (p.184, to be precise). Because these tables only show you an expression with damage dice plus a bonus, which is not immediate to evaluate, a while ago I generated new set of tables with the average damage values for each level. Today, I'd like to go one step further, and reduce these tables to short, approximate formulas.
These are the formulas for normal attacks; I'll leave limited attacks for a future post. I provide some comments and discussion on their deviations from the original values below:
Attack damage, normal attacks
- Low: 6.1 + 0.4*Level
- Medium: 8 + 0.5*Level
- High: 9.4 + 0.6*Level
- Low: 3 + (Level -1)/3
- Medium: 3 + (Level -1)/3 + (1* Tier)
- High: 3 + (Level -1)/3 + (2* Tier)
The formulas for regular monsters came up naturally. Once you see the averages, the progression is almost linear, so I just drew a line from the level 1 values to the level 30 ones, and tweaked the numbers a bit so that they ended up as rounded as possible. I was pleased to see that damage actually increases by 1 per two levels, as per the monster customization guidelines in DMG, p.174. Anyway, this is how the formulas look like, compared to the tables:
If we substract the estimated (formula) values and the original ones, the absolute value of the result is the estimation error, in damage points. I divided these absolute errors by the original damage values, to come up with relative error values, as a percentage of these original values. This is shown below:
As you can see, these relative errors peak at 15%, staying at 10% or below for most levels. Though not perfect, I find this quite acceptable. In absolute terms, the aproximation is off by a maximum of 2 points of damage for medium attacks, or 2.6 points for strong attacks - but for most levels, it will be much closer.
As for the minion formula, it comes from the tables in DMG2, p.133. In this case, damage increased by 1 per 3 levels, with an additional jump of 1 extra point at certain levels. Since these jumps came roughly - but not exactly - with the change of tier, I chose to tweak it into an easier to express, more logical progression, by moving these extra increases to levels 11 and 21. Damage for most levels remains unchanged, it's just the 1-2 levels around 11th and 21st that have varied slightly. Also, although there was no 'low damage' entry for minions, they suggested reducing normal damage by 25% for weak attacks. My expression is just a bit above that, but with such numbers, some rounding was unavoidable.
If we want to find the Damage per Round of a monster, we should take into account the contribution from critical hits. I have made formulas for that, too. They are the following:
Crit extra damage, normal attacks
- Low: 2.5 + 0.2*Level
- Medium: 4.5 + 0.2 * Level
- High: 5 + 0.3*Level
I got these the same way as the previous formulas, except I used the maximum damage values from the DMG table rather than the averages. Minions don't get an entry because they lack any extra critical damage.
Since monsters don't usually deal damage on a miss, the average DPR can be simplified to the following expression:
Average Damage= (Hit rate * Average Hit Damage) + Crit Rate * Extra Crit Damage
Replacing the known values (Crit Rate= 0.05) we have:
Average Damage (low) = (Hit rate * (6.1 + 0.4*Level)) + 0.125 + 0.01 *lvl
Average Damage (medium)= (Hit rate * (8 + 0.5*Level)) + 0.225 + 0.01 *lvl
Average Damage (high) = (Hit rate * (9.4+ 0.6*Level)) + 0.25 + 0.015 *lvl
In order to simplify the crit contribution, we can make another aproximation and use fixed values for each tier:
Crit damage contribution to DPR, per tier (heroic/paragon/epic):
- Low: 0.2/0.3/0.4
- Medium: 0.3/0.4/0.5
- High: 0.35/0.5/0.65
Average Damage (low) = (Hit rate * (6.1 + 0.4*Level)) + 0.2/0.3/0.4
Average Damage (medium)= (Hit rate * (8 + 0.5*Level)) + 0.3/0.4/0.5
Average Damage (high) = (Hit rate * (9.4+ 0.6*Level)) + 0.35/0.5/0.65