Tuesday, August 26, 2014

Statistical Musings on Armor in a d20 System

Today, I decided to do a little bit of musing over how armor choices affect a character in a d20 system, specifically Pathfinder.  Before we get to heavy into the numbers, I want to make a few comments about the statistics that underlie any d20 game.  Most obviously, you are rolling 20-sided dice.  With 20 possible options, you have a 5% chance of any particular one showing up.  Since PCs all start with armor class 10, they have a 55% chance of being hit by an attack before any bonuses they or their assailant may have are factored in.

A CR 1 creature should be doing 6 points of damage a round (5 is low attack damage and 7 is high attack damage).  It should also be adding +1 to its hits per round, but I'm going to ignore that to make the math easier.  6 points of damage per round with a 50% hit chance (60% actually with the bonus) works out to 3 points of damage per round.  Before CON bonuses are added in, that means a level one PC with d4 or d6 hit points can survive one hit, a creature with d8 hit points can survive two, and a creature with d10 or d12 can survive three.  Assume at least a CON bonus of +1 and the d6 and d12 creatures move up to two hits and four hits, respectively.

But, increased armor significantly changes this equation.  By taking a high DEX score or picking up armor and shields, characters can significantly increase their chances to avoid damage.  But, both DEX and armor have tradeoffs.  In the case of DEX, you are placing higher scores (for die-rolling character creation) or more points (for point-buy systems) that requires you to forego scores in other abilities.  With armor, characters are limiting their maximum dexterity bonus and taking penalties on several skills checks.

Under a rational system, PCs with lower hit dice for their class would be the ones investing most heavily in armor.  The characters that are the easiest to kill have the most rationale to make hitting them harder.  Of course, a rational system wouldn't care much about game balance and we have a system where the classes with lower hit points per level are actually forbidden from wearing armor.

I've done a very (emphasis on very) basic analysis of the armors listed in the Core Rulebook.  Following the order in which they are listed, I plugged the armor bonus, maximum Dexterity bonus, and armor check penalty for each CRB armor into an Excel spreadsheet.  I then added trendlines and R-squared values for each attribute:


So, what do we notice?  First of all, the R-squared values are high.  That means that the trendline drawn for the series of points does a good job of predicting what the actual value of any given item will be.  (Note: This analysis basically assumes we are using padded armor as '1' leather as '2,' studded leather as '3,' and so on.  That basically tracks increased armor bonuses, but you could reorder the armors with the same bonuses and get slightly different R-squared values).  The R-square values range from a low of 87% for maximum dexterity bonus to a high of 98% for armor bonus.  Basically, this is a good way for us to see that our designers have done a good job balancing armor's effectiveness for avoiding attacks with providing limitations to dexterity and to skills checks.

But, they haven't completely removed any differences, otherwise the lines would be perfectly smooth and the R-squared values would always equal 100%.  The other important thing that we notice is that although the R-squared for the armor bonus is almost completely explained by its level, we have a lot more variation on maximum Dexterity and armor check penalties.  That differentiation means that there's room for optimization.

To figure out the optimal values, I did a very simple analysis.  If the armor check or maximum Dexterity bonus for the specific type of armor was above the trendline, it got one point.  I'd redone the armor check penalties as absolute values (so an armor check of '1' on the chart means a -1 penalty), so those armors received a point if they were below the trendline.  If the two were evenly matched, the armor received no points.  If the trendline was above the armor bonus or the maximum dexterity bonus, the armor received -1 point.  If the trendline was below the armor check penalty, it received a -1.  Here's what I came up with:

Armor Trendline
Dex Trendline
Penalty Trendline
Trendline Totals
Light Armor
Padded
-1
1
0
0
Leather
-1
1
1
1
Studded Leather
1
1
1
3
Chain shirt
1
-1
0
0
Medium Armor
Hide
-1
0
-1
-2
Scale Mail
1
-1
-1
-1
Chainmail
1
1
-1
1
Breastplate
-1
1
1
1
Heavy Armor
Splint Mail
1
-1
-1
-1
Banded Mail
1
1
1
3
Half-plate
-1
-1
-1
-3
Full plate
1
1
1
3
Note: I went by exact values, so even the tiniest difference between the trendline and the actual
value resulted in a '1' or a '-1.'  That said, some of them very actually really close to each other.
Another analysis that discounts these minute differences may find that some armors aren't as
far from optimal as discussed here.

Based on this analysis, studded leather is the optimal light armor.  Chainmail or a breastplate is the optimal medium armor and banded mail or full plate is the optimal heavy armor.  We also see that all light armor gives more benefits than it takes in penalties but that medium and heavy armors are mixed bags.  I found this particularly interesting, because these are NOT my usual armor choices.  In fact, I almost always purchase leather for characters that need high Dexterity and scale mail for characters that will wear medium armor.  I generally don't run PCs that wear heavy armor, but I'd suspect that I'd lean more towards splint mail, a less than optimal choice, if I did.

That's because in my mind, the penalties to Dexterity and to armor checks far outweigh the benefits of better armor.  Once you control for the differences in these things, studded leather becomes as useful as full plate.  Of course, this method only considers whether or not something is different from the trendline.  If I considred how far things moved from the trendline, I might end up with different results (but not very different.  The high R-squared values mean that few actual numbers differ much from the trendlines anyway).

Of course, people like to play characters that can have high dexterity scores for ranged attacks and for general roguishness.  I then ran the checks again, but this time, I doubled and tripled the weight for the Dexterity score trendline.  Zeros stayed the same, but positives and negatives counted twice as much:

2x Dex-Char Trendline Totals
3x Dex-Char Trendline Totals
Light Armor
Padded
1
2
Leather
2
3
Studded Leather
4
5
Chain shirt
-1
-2
Medium Armor
Hide
-2
-2
Scale Mail
-2
-3
Chainmail
2
3
Breastplate
2
3
Heavy Armor
Splint Mail
-2
-3
Banded Mail
4
5
Half-plate
-4
-5
Full plate
4
5

Yet again, studded leather is the clear winner.  Now, I'm not an optimizer in character creation.  But, no one wants to pick up gear that's intentionally bad.  This might explain my reticence about using medium armor.  The juice doesn't isn't worth the squeeze.  However, this does explain why the power gamers I ended up playing with on Friday night at GenCon were so confused that my fighter wasn't wearing heavy armor.  Now that I've seen how the numbers stack up, Khygar just might make the jump.  (Actually, if he puts on heavy armor, he likely won't be making any jumps, but that's another matter!)

Now that we know that studded leather is the optimal armor choice, let's take a look at what it does for armor choices across various class hit die groups.  Studded leather adds 3 to a character's armor bonus, making the default 13 before other bonuses and penalties are added in.  Against the average CR 1 creature, you've moved from a 60% chance of being hit to a 45% chance of being hit.  Of course, heavy armor makes more sense for warriors, so we can figure an at least +2 dexterity bonus for our level one character, reducing her chance to be hit down to 35% or even 30% for a rogue.  Using the average damage of 6 and a 30% chance to hit, we get 1.8 damage per round.  That's two hits and still alive for the d4 group, 3 hits and still alive for the d6 group, 4 for the d8 group and the d10 group and 5 for the d12 group.  Constitution bonuses will only increase these numbers.

Anyway, hope that you liked it.  Let me know your thoughts.  Also, if anyone wants to run other numbers, I'm happy to post those or links to them.  It would be interesting to look at how masterwork armor changes the equation on things as well as how adding enchantment moves the relative values between the three variables.

Like these types of considerations of RPGs and stats?  Consider how first level characters die so easily and remember that armor is important!  Leave a comment below!

EDIT: Changed some of the percentages because I forgot that AC 10 has a 55% chance to be hit.  Doop!