Monday, 5 August 2013

D&D Next Monsters: Part 4: AC Analysis...

While this blog does not contain material published by Wizards of the Coast it does contain materials summarized and extrapolated from the D&D Next playtest packets. By continuing to read this blog you are consenting to the terms of the Wizards online playtest agreement, which you can view at dndnext.com.

Having broken down class progression stats and dealt with the demon Data Entry Surf dives into getting usable numbers out of his monster analysis...Starting with Armor Class.

 

View From A Jumbo Jet

So now that we’ve entered and nicely categorised all that data let’s dive in and tackle some of the easier stats head-on. Bounded Accuracy suggests Armor Class (along with Attack bonus, which we’ll do next time) should be pretty stable, and we saw with PCs that AC scales quite slowly as they gain levels. It shouldn’t be too different for monsters. In fact, it’s highly unlikely that different ACs are in play for the different categories of creature within each level. That’s certainly the case in some previous editions of the game.

While we think AC progression should be easy to work out, we should make sure before simply plowing ahead. It’s an easy task, so there’s no real excuse for not doing it.

To get a 10,000 meter idea all we need to do is grab the average and standard deviation for our data. This is laughably simple in Excel...

Average:13.31
Stdev:2.72
Var:7.42

The low standard deviation and variation tell us that AC is pretty stable across our data, as expected.

 

StdDevp of AC by XP
LevelEasyAverageToughSoloTotal
11.992.610.00 2.23
22.181.833.50 2.57
3 3.332.730.003.03
40.002.302.73 2.51
50.002.362.35 2.34
6  2.480.002.41
7  3.112.242.50
8   2.562.56
9   2.142.14
10   3.103.10
11   0.000.00
12  1.180.821.11
13  1.251.852.09
14   1.481.48
15   0.000.00
16     
17     
18   0.500.50
19     
20   0.000.00
Total2.042.572.782.622.72

Digging In The Details

One of the great things that spreadsheets do is let us create pivot tables – a tabular analysis on the intersection of our data elements as data points. With a few simple clicks we can create a pivot table. They are trivial to copy and modify and they are information rich. So when I am digging in this kind of data I use them quite a lot.

This pivot table shows the standard deviation for level by XP category. Notice that the standard deviation for most level/category points is generally lower than this global standard deviation? We also see that the variability within a given data point is often higher than the overall variability for that whole level.

The upshot of this is that the data is fairly tightly grouped not just within a level/category data point, but across a level.

Note: There are, of course, some differences between the “by XP” and “by HP” pivots, but that’s more a matter of a slightly different distribution of data points due to the different categorisation criteria. Unless there are compelling reasons to show both I’ll generally just show one as an example.

 

AC Average by XP category
LevelEasyAverageToughSoloTotal
111.6912.2413.00 11.90
212.2012.6713.09 12.67
3 13.0413.2316.0013.18
410.0013.1813.03 13.07
513.0014.0314.04 14.02
6  13.5213.0013.49
7  13.8913.6813.74
8   16.8016.80
9   13.8013.80
10   14.7114.71
11   18.0018.00
12  15.4316.0015.60
13  16.6714.0014.80
14   17.7517.75
15   16.0016.00
16     
17     
18   16.5016.50
19     
20   17.0017.00
Total11.8213.0813.5414.8213.31

Dammit, Give Me Some AC!

Well, all that’s all just fine and dandy, but what about the actual numbers? Let’s take a look at a pivot of average AC...

What’s compelling here is that the variability within a given level and category is often greater than the variability for the entire level itself. This supports the idea that AC progression is by level, not by category within level.

Notice that the Total column is already quite close to a nice linear progression? Even with the various gaps and low quantities of data at higher levels, the current AC progression for D&D Next is quite close to the surface.

In fact it looks as if plotting a simple 20 step linear progression from 11.90 through 17.00 would yield a usable AC progression table.

But let’s not get ahead of ourselves, there’s one more thing we should look at before trying to reproduce the data progression.

 

Graphs? Really?

AC by HP

Let’s graph the pivot tables and put some trendlines on each series. What I really want here is an X/Y graph, but Excel doesn’t let us do that when we graph a pivot, so we have to settle for a line graph. We really aren’t interested in where the lines between the data points wander. What we are interested in is the trendlines and the patterns they form. I’ve gone and reformatted these to look like XY graphs for the reader’s convenience in these articles – but I usually don’t bother.

Now our missing pieces of data do make some of this a little “fuzzy” and the “by HP” data is a bit all over the place. But even so it’s pretty easy to see the bands the trendlines form and the areas they highlight. If you ignore everything except the bands you’ll think to yourself “why it’s an easy linear progression from 10-ish to 20-something”.

So there are a lot of ways of looking at this data. It takes much longer to write about than to do. It probably takes much longer to read and understand than to do, if you haven’t done it before. But once you are used to it it’s pretty quick and easy to do.

 

LevelAC*
112
212
313
413
513
613
714
814
914
1015
1115
1215
1316
1416
1516
1616
1717
1817
1917
2018
* +/- 2 standard

AC Table

It’s trivial to build a progression table from 11.90 to 17.00 in Excel and rounding off the decimal position (a common trick in RPG design). An increase of 5 over 20 levels does marry up nicely with the PCs’ average attack progression (from +5 through +10). So that’s a good starting point. With a little tinkering we find that the actual range 11.90 to 17.60 provides the closest alignment with the green and blue data points. That’s a neat progression of 0.30 per level.

So do I have any concerns? Well, yes. I agree with most playtesters on the WotC forums that monsters and encounters are too easy, as things stand. And most of this comes back to the monster math. Where does AC factor into this? Well these numbers assume, like the matching Class stats, no power scaling outside the base progression. If your PCs have a stack of magic weapons and buffs, for example, that makes a difference and you need to adjust for it.

Without considering Magic Items and similar - how much can we adjust AC without skewing things too badly against the PCs? Well the variance of AC for most data points is around 5, so +/-5 AC for the creature’s level is within normal bounds. A creature with an AC 5 higher than it’s fellows is quite special, tho. Looking through random examples of these fringe cases, most are named monsters. So I’d recommend using +/-2 AC for most creatures and going beyond that only for special creatures.

So a level 10 creature with AC16 (instead of AC14) will be a little harder to hit, but for a named enemy you could go up as high as AC19 to put a little extra pressure on the PCs. But this is more about understanding your group and the variability in the system than the base numbers. So it’s probably sufficient to simply make some footnotes on our table.

 

Validation

So how do we know, with any certainty, that our table is correct? I used a couple of basic mathematical verifications.

First, I simply subtracted the average PC attack bonus for a given level from the AC for a creature of that level. The result was an average 7.08 for each level with a variance of 0.111 (stdev 0.334), which was randomly distributed throughout the progression.

Second, I divided PC the average AC for the level by the level’s recommended monster AC. The results was an average 0.90 with a variance of 0.001.

So I have quite a high degree of faith in this table.

In reality this validation is built right into the process – it’s a separate table in my Excel spreadsheet that references the AC table I am building, right alongside the AC table. So visually I can immediately see the results of changing one cell or the whole series. Sometimes I hide this table, because I don’t want it to influence my tests and conjectures. But it does allow me to seek the closest match when I need to.

 

 

Check back in a couple of days for the next installment Interlude: A New Packet...