Monday, February 8, 2016

Monte-Carlo Measures of Monster Levels, Pt. 2

See last week's post of the output of the Arena monster-measuring program (link). Some more observations and discoveries as I thought through implementing all the monster special abilities in code:

Position in Monster Tables: In OD&D the random monster tables were organized in (of course) six different "monster levels". In the table in the prior post, I've shaded in six alternating groupings that follow those six levels as closely as I could tell. Generally speaking, the relative rankings are about the same; the monsters the gained or lost their position on a particular table are noted in the TC column, with a "<" or ">" as appropriate. There are 4 that want to go up a level, and 6 that suggest going down, in this analysis.

You can see in this model that Monster Table 1 would be composed of all EHD 0 monsters; Table 2 would be about EHD 1-2; Table 3 approximately EHD 2-3; Table 4 EHD 4-6; Table 5 EHD 8-12; and Table 6 EHD 13 and up, roughly speaking.

On Points for Special Abilities: At the end of the day, the main theme of this blog might be: "Creating new elements for a game is easy, but evaluating those elements is very hard; and a table of summed points is almost surely broken." Speaking of XP, pretty much every edition assumes that a special ability of a certain type will be worth the same relative boost for any monster that possesses it. But consider a monster who, say, has poison, paralysis, and petrification attacks, but can only use one at a given time; then the effect is about the same as having only one of them (there is a marginal added value for having the different options, but the value will be pretty small). Or, as we will see: save-or-die hits might be more useful against a high-level PC with many hit points, but negligible against a low-level PC who would die from the one hit anyway (and hence: more valuable for high-HD monsters, and less valuable for low-HD monsters). Actual examples include the Gold Dragon with its two different options for breath attacks, or the Demons of Sup-III with their multitudinous spell lists.

Missing Monsters: Almost all the monsters in the OD&D random dungeon monster lists were included in this analysis. But: no NPC spell-casters were included (magic-users or clerics), because implementing the entire D&D spell list, and AI to choose from the different options, was outside the scope of this project (and secondarily, it also seemed a bit outside the theme of a gladiatorial arena). Also: the Ochre Jelly could not be included, because it's entirely unkillable by weapon blows (and so invulnerable to the attacks of our comparative fighters).

Zero-Level Monsters: All of the monsters on the OD&D "Level 1" table (Kobolds through Spiders) were evaluated as Equivalent Hit Dice zero (EHD 0). This is something of an artifact that the Arena best-level process can't output fractional values; after all, it only has integer-valued levels of fighters to choose from as opponents. In other words, these monsters are a fair fight, or less, for a single 0-level man with 1d6 hit points bearing chain, shield, and a sword. I wouldn't plan on reducing any XP awards from the base Hit Dice; I would still award a full 1 HD or appropriate fraction based on actual HD. So I blanked out the "Diff" and "Mult" columns here to avoid suggesting the reduction in XP in this range.

Centipedes and Spiders are basically as seen in the Monster Manual. (Centipedes get 1-2 hp [1/3 HD here], no damage, but poison at a +4 save bonus; Spiders are of the "large" variety, HD 1+1, 1 damage, and poison at +2 save.) Related to the point on special abilities above, it's interesting that even this save-or-die poison doesn't actually boost their threat level past level 0 in this analysis. We might observe that for a fighter with a single hit die, whether you're hit for 1d6 damage or poison, the effect is indistinguishable; you're probably dead. However: this value may be different if you team a lot of the monster type against a higher-level fighter (like say: consider 10 goblins vs. a Lord, against 10 spiders vs. a Lord; then one hit in the latter case is more worrisome), but this is not visible in the current model. In the past I considered doubling the save bonus indicated for centipedes and spiders; now I'm pretty convinced that they're reasonable as written, and may not even be worth any XP adjustment at all.

As an aside, if we take out the +1 sword given to our nominal fighter opponents, then it makes no difference in the assessed EHD level for these 0-level monsters. Among higher-level monsters, the trend would be to adjust +1 or +2 EHD higher, although the magic-to-hit monsters would of course turn unbeatable (immeasurable) in this case.

Toads, not Thouls: Many of us know that "Thouls" were listed in OD&D monster Table 2, without any statistics or description given for them in those rules. Tom Moldvay's later Basic D&D detailed a Thoul with 3 HD, two attacks, paralysis like a ghoul, and regeneration of 1 hp/round. Gygax separately communicated his take on the Thoul as 4+2 HD with the same abilities.

What was news to me recently is that the entry for Thouls did not appear in the 1st printing of OD&D; what appeared originally in that slot were "Toads". Now, this makes a lot more sense to me. First, giant frogs and toads seem like an intrinsic theme of early D&D, and with all the other giant-animal types, it seems weird for these amphibians to be entirely missing. Second, evaluating the Gygaxian Thoul would put them at either EHD 8 or 12 depending on the attacks permitted, and so would be misplaced on the random tables by fully 3 levels (out of the 6 total). Instead, by returning the Giant Toad to its rightful place (using MM stats), their power level fits right into Table 2 where they originally squatted.

Why were Giant Toads taken out of the later printings? Partly this has the smell of erasing the thumbprints of Dave Arneson, who is perhaps chiefly remembered in official D&D publishing for his "Temple of the Frog" complex in OD&D Sup-II. (Link to discussion of toads and thouls at Dragonsfoot.)

NPC Fighters: NPC fighters, as they are shown in the table, conveniently get assessed at an EHD equal to their actual level (i.e., true HD) in each case. Like the protagonist fighter, they get abilities of 3d6-in-order, and normally-rolled hit points. But they also get plate mail and a 5% chance/level for a boost in magic to armor, shield, and weapon. This is partly offset by the guaranteed +1 sword for the baseline fighter, so on average the difference is only 1 pip to hit (at least until we get into very high levels, in theory).

As an aside, here's how the simulator generates magic arms: for each NPC fighter level, we make a separate 5% roll to see if that fighter's armor, shield, and/or weapon should be boosted by a +1 magic bonus. Then we roll again at the next level, and so forth. This may produce up to a +5 magic bonus if several rolls succeed. Note that this is a hairs-breadth difference in probability from the straight 5%/level indicated in Vol-2, but it smoothly generates magic items of higher values, so it's very close and I actually like the elegance of this method a lot better.

In fact, I like this so much I may start doing it when I manually create NPC fighters. Say: Take 3 d20's of different colors. Roll this group once for each level of the NPC. Each time a "20" shows up, tally another magic pip on the associated armor, shield, or weapon. This might take a minute longer than just a single percentage roll, but the results are a smoother distribution. It doesn't directly generate any of the exotic weapon types (flaming, +3 vs. trolls, etc.), but even that I kind of prefer; normal NPCs won't have them, and only adventuring the underworld can dig up those special types. Personally I'm always aggravated when some 4th-level sergeant winds up with a sword of wishes and I have to spend time thinking about how to adjudicate that.

That's it for this week; more next time.


  1. You'd certainly have to make some mighty assumptions to run this for other classes. Could you map a spellcaster to being a sort of fighter with an average damage output that is 'attacking' a monster based on that monster's saves?
    A theif/rogue could be modeled as a fighter but with a chance at extra initial damage based on relative initiative bonuses?
    Clerics/Druids as attackers with some average healing per round and damage boosts based on spell 'attacks' like the wizard?

    1. Good thoughts. Sometimes I noodle on the same issue. Maybe implement a subset of core combat spells for magic-users (even just 1 per spell level, cast highest-first as a start); and for thieves maybe some presumed obstacles in the Arena to give them chances for hide/backstab (although that downplays their propensity to steal treasures and XP while avoiding combat entirely).

    2. You could run a 'arena' of traps/stealth challenges to figure out the actual vs advertised difficulty of tricks, traps, and hazards.
      Now that I think of it though, wizards are most useful in that they can literally conjure solutions to problems, with a subset of those problems being specific encounters with monsters the fighter can't deal with. So maybe a hack to wedge the thief and wizard into an arena simulator breaks what your simulator was built to do.

      But then again, I like numbers so I will greedily enjoy any future posts on this topic. Don't know where I could help though.