A cropped screenshot from the game Warframe showing highlighted red and orange critical hit numbers, as well as the critical hit text from Team Fortress 2, Final Fantasy 14, Destiny 2, and Pokemon overlayed.

Appendix 3: Critical Maths


Back in Chapter 7, I presented the following claim. We're going to go over that here.

The Claim About Crits

Something that I and my cowriter discovered during the writing of this section is that you can simplify the effect of critical threat ranges and multipliers down across many samples to the following formula:

average damage = accuracy × weapon damage × ( 1 + 0.05 × crit chance × crit multiplier )

By assuming we have the same accuracy between two weapons, we can remove it from the equation and derive an average damage multiplier that would be represented across many, many samples.

Critical Stats ×2 ×3 ×4
20 1.05 1.1 1.15
19-20 1.1 1.2 1.3
18-20 1.15 1.3 1.45
17-20 1.2 1.4 1.6
15-20 1.3 1.6 1.9

What does this mean in practice? There’s very little functional difference between weapons of different critical stats outside of extreme examples like the crystal sword and keen 18-20/×2 weapons. To give examples:

  • A falchion deals 2d4 (average 5) damage and has an 18-20/×2 critical stat. After the 1.15 multiplier, your average now becomes 5.75.
  • A scythe deals 2d4 (average 5) damage and has an ×4 critical stat. After the 1.15 multiplier, your average now becomes 5.75.
  • A greatsword deals 2d6 (average 7) damage and as a 19-20/×2 critical stat. After the 1.1 multiplier, your average now becomes 7.7.
  • A greataxe deals 1d12 damage (average 6.5) and has an ×3 critical stat. After the 1.1 multiplier, your average now becomes 7.15.

These are very low differences. In practice, they will rarely, if ever matter. The only real difference is that the falchion crits slightly more, the greataxe crits slightly higher, and the greatsword is slightly better against enemies who’re immune to crits. The math gets more complicated when keen is applied (the 18-20 weapons will become better) and at very high damage per hit, but in general? Unless you’ve found a significant edge case or you're at extremely high levels, critical stats really don’t matter. When it comes to critical stats vs damage dealt, the variance is so negligible that you should choose entirely based on your own playstyle preference. I personally prefer the big multipliers because when I crit I want it to absolutely murder something, but others prefer the reliability and still others want the base damage. You do you.

So where does this come from?

Algebra.

To begin with a very simplified example, let’s say you have a 50% chance to hit for 1 point of damage.

We’ll call your expected damage 0.5 as a result. On average, across many hits, you will hit half the time, and thus your average damage is:

0.5 (hit chance) × 1 (damage) = 0.5 (average damage)

Let’s say you also have the ability to crit, as usual for 3.5, on a natural 20. You deal double damage on a crit because you’re using a basic weapon.

Generally, people’s first thought (because dealing with confirmation rolls and such mathwise is fiddly), is that it’s equivalent to dealing double damage 5% of the time (nat-20), 1 damage 45% of the time (11 to 19 on the d20, a normal hit), and 0 damage 50% of the time (a miss). This averages out to 0.55 damage over many samples, and people extend it in both directions for simple calculations—if you only hit on a natural 20, then your average damage is going to be 0.1, not 0.05, right? Because you always crit!

But the first natural 20 is only a critical threat.

Confirmation Rolls

Confirmation rolls complicate things, but not as much as you’d think. For our simplified example, our actual results list looks like this:

  • 50% chance to miss (rolled a 1 to 10)
  • 45% chance to hit and not threaten (rolled an 11 to 19)
  • 2.5% chance to hit, but fail the confirmation roll (nat 20, then a 1 to 10; counts as a normal hit)
  • 2.5% chance to hit and confirm the crit (nat 20, then an 11 to 20)

This was funny for my coauthor who mathed this (thank you, Taveena, you’re brilliant). She went “huh, that averages out to 0.525 damage, or a 1/20th increase. What happens if I use a weapon with a 19–20 threat range, though?”

For that, we get this:

  • 50% chance to miss (rolled a 1 to 10)
  • 40% chance to hit and not threaten (rolled an 11 to 18)
  • 5% chance to hit, but fail the confirmation roll (rolled a 19 or 20, then a 1 to 10; 10% × 50% = 5%, counts as a normal hit)
  • 5% chance to hit and confirm the crit (rolled a 19 or 20, then an 11 to 20)

For an average damage of 0.55, a 10% increase:

0.4 × 1 + 0.05 × 1 + 0.05 × 2 = 0.55

This pattern holds true for every case. Algebraically, it looks like this:

  • If you have X chance to hit, and Y chance to threaten.
  • Chance to hit: X
  • Chance to miss: 1 – X
  • Chance to threaten: Y
  • Chance to hit and NOT threaten: X – Y
  • Chance to threaten and not confirm: Y × (1 – X)
  • Chance to threaten and confirm: Y × X

Your chance to crit looks flat, because it's a flat chance to threaten. But confirmation rolls have the same hit chance as attacks, meaning your chance to miss and your chance of failing the confirmation roll are the same (ignoring the likelihood of getting one in the first place).

People tend to think of damage as “normal hit × 1 + crit chance × 2,” and while that’s true, people conflate critical threats and critical hits in their heads. In practice it’s more:

average damage = no threat × 1 + failed confirm × 1 + successful confirm × 2

If you work algebra on that…

average damage = (X – Y) + (Y × [1 – X] ) + (Y × X) × 2

average damage = (X – Y) + (Y – XY) + 2XY

average damage = (X – Y) + (Y – XY) + 2XY

average damage = X + Y – Y + 2XY – XY

average damage = X + XY

With a 50% chance to hit and a 5% chance to confirm, we can now plug that into the formula and get:

average damage = (0.5) + (0.5 × 0.05)

average damage = 0.5 + 0.025

average damage = 0.525

This holds true for all ×2 critical multipliers. That 2 in the formula above is actually a Z variable (for crit multiplier), but for the sake of keeping the math cleaner, I used the ×2 case.

The algebra for the fully-abstracted formula looks like this:

average damage = (X – Y) + ( Y × [1 – X ] ) + (Y × X ) × Z

average damage = X – Y + (Y – XY) + XYZ

average damage = X – XY + XYZ

average damage = X + XYZ – XY

average damage = X + XY(Z – 1)

Technically speaking, all of these values are multiplied by the base damage (since X, Y, and Z are probabilities, not damage). For our simple math, we had a base damage per hit of 1. If we treat that as a variable and factor that out, we get a final formula of this:

average damage = base damage × [ X + XY(Z – 1) ]

Getting the Crit Table

That table at the start doesn’t resemble these results directly, and that’s because it’s got the hit chance divided out. When comparing two weapons that have different critical stats but the same hit chance, you can ignore the hit chance in both cases and just compare the weapon directly. We’ve got a formula for “average damage,” and if we want that number for the average damage per hit then we just divide it by the hit chance.

And since this is algebra, we do that to both sides:

For a simplified example and the way to get a table of multipliers to use on other things, we used a base damage of 1.

damage per hit = ( 1 × [ X + XY(Z – 1) ] ) / X

damage per hit = ( X + XY[Z – 1] ) / X

damage per hit = X/X + XY(Z – 1)/X

damage per hit = 1 + XY(Z – 1)/X

So, we now have a formula that can be used to derive a comparable damage per hit for any given weapon.

A longsword (10% crit chance, 2× multiplier) looks like this:

damage per hit (longsword) = 1 + 0.1X(2 – 1)/X

damage per hit (longsword) = 1 + 0.1X(1)/X

damage per hit (longsword) = 1 + 0.1X/X

damage per hit (longsword) = 1 + 0.1 = 1.1

A scythe (5% crit chance, 4× multiplier) looks like this:

damage per hit (scythe) = 1 + 0.05X(4 – 1)/X

damage per hit (scythe) = 1 + .05X(3)/X

damage per hit (scythe) = 1 + 0.15X/X

damage per hit (scythe) = 1 + 0.15 = 1.15

And that’s how you get the numbers in the table. Factor out the 1 from our assumed damage we used for this, and you get it as a multiplier on any damage you want to input. This holds true for all weapons, letting us compare them super easily!

What if your hit chance is lower than your crit chance?

Okay, this part is a little bit weirder, but it doesn’t actually affect the results much. Basically, the above numbers all assume a reasonable hit chance (i.e. one better than your critical threat range, whatever that is); if your hit chance is lower than your crit chance, then you run the math with a crit chance capped by that hit chance.

For example, if you’re hitting on a natural 20 only, you’ve got the following average damage calculations:

  • 95% chance to miss (rolled a 1 to 19)
  • 0% chance to hit and not threaten (not possible here)
  • 4.75% chance to hit, but fail the confirmation roll (rolled a 20, then a 1 to 19; 5% × 95% = 5%, counts as a normal hit)
  • 0.25% chance to hit and confirm the crit (rolled a 20, then a 20; 5% × 5% = 0.25%)

average damage = .0475 × base damage + .0025 × base damage × critical multiplier

A club (20/×2) is dealing an average of 0.0525 × base damage here. A longsword, normally 19–20/×2, has its critical chance capped by the hit rate, and is treated as a 20/×2 weapon as well, dealing the same average damage here. Thus, it can be said that in extreme cases (and potentially final iteratives), higher multiplier weapons are stronger than higher threat range weapons.

Conclusions

Basically, the differences between critical stats barely matter, and you can use the table at the start of this section to make direct comparisons between seemingly-disparate weapons. This also means that, like… a lot of common wisdom about what weapons are broken is mostly built on gut feeling rather than math? A greathorn minotaur greathammer (19–20/×4) isn’t that much better than a kukri (18–20/×2). Is a single feat worth roughly a 13% damage increase (1.3/1.15)? Probably! But is it game-breaking? Probably not! Even applying impact still doesn’t make it increase to absurd levels (going from 1.3 to 1.6 is a lot! But it’s not actually that much more of an increase, objectively, than going from 1.15 to 1.3).

The other big takeaway from this is that Power Attack doesn't affect crits any worse than it does normal attacks (because the adjustment for to-hit changes your critical confirmation rolls too). We also did some math that shows that bonuses that apply only to critical threat rolls add roughly a 1% boost to average damage per point of bonus. That's trivial enough that I didn't bother including it in the long-form explanations. You don't want to build for those anyway, but they do add an ever-so-slight boost.

As a final note, I personally think that kaorti resin kukris are too strong, though. Being able to apply keen to them is a significant boost even over the likes of the greathammer, and the flexibility in being able to stick it on weapons that match your build is just… overcentralizing. There's no opportunity cost. They're just the best option, for every build, forever. I recommend banning them.

As for comparing keen/impact with other weapon special abilities, I’ve made a series of tables illustrating how much damage you get from your crits on average (over a long time and many samples), and then comparing that to other damage boosts in the same slot. They’re a little awkward to put onto the web page layout, so here is a link to the Google Sheets document with them.