Sunday, February 28, 2010

Monster Math: Damage Formulas

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

Minion Damage
  • 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.

Critical damage

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.

Calculating DPR

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


  1. Are the values from the DMG actually realistic? That is, look at the values from the DMG, compared to actual monster damage values. Do they typically match up? Then there's the other question: NPC type enemies. What are their damage values like? Are they consistent with monsters of their level? My experience has always been "no" so far, but I'd like to hear your take on it.

  2. From what I've seen, the tables provide a good estimation of the damage that actual monsters will deal. Of course, there are caveats: monsters with conditional damage modifiers (say, Nd6 with combat advantage) tend to deal less-than-average damage without the condition, and slightly more with.

    You will find the largest deviations in minion monsters (particularly high level ones from MM, which used an unknown, less damaging progression) and brutes, which very often have subpar damage, contributing to their reputation as a weak role. If you use monsters straight from the MM or the adventures, I'd recommend to check out the official errata, just in case. Ogres and Bears stand out as brutes that were downright pathetic as written, and recovered their dignity with errata.

    As for NPCs I haven't used the creation rules from DMG yet, but I am not thrilled by them. Honestly, I think you'd be better off determining attacks, defenses, hp and damage as any other monster, and just adding the powers or special abilities from the class as you feel like. So I don't have the slightest idea of what kind of damage they do.

  3. I've personally found that NPCs built using the DMG rules have fairly low HP but can deal an insane amount of damage. In my latest campaign, I actually build NPCs using the PC build rules, but I treat any such character as being an elite of their level. Since PC vs PC type enemies seem to have a disproportionate damage amount, In battles that I deem "PvP" I'll be having both the party and the PC type enemies double their HP-going to look into how that works out.