Sunday, November 22, 2015

To Hit Armor Class Zero


The die roll value required for an attack to hit an armor class of zero, or "THAC0," is the signature combat mechanism of the second edition of Advanced Dungeons & Dragons. Revered by some and reviled by others, THAC0 replaced the combat matrices of first edition AD&D with pre-calculated values intended to be faster and more intuitive. Astute observers have long noted foreshadowing of a THAC0 system sprinkled throughout some first edition AD&D texts. It is however less widely known that THAC0 was in use with the original Dungeons & Dragons game, prior to the publication of the Players Handbook or Dungeon Masters Guide. The excerpt above is from Alarums & Excursions #31 (February 1978), and it describes the contemporary use of THAC0, including the acronym itself.

The origins of THAC0 have been the subject of considerable curiosity. It is unsurprising that the game Dungeons & Dragons shipped without the concept of THAC0: in the original three booklets, armor class ranged from nine to two, so zero was out of the question. When Greyhawk arrived in 1975, it brought with it a handful of monsters that bucked this trend: Tiamat, in her first appearance in games, had an armor class of zero, and the newly-introduced Will O'Wisp sported a shocking armor class of negative eight. As new monsters joined the bestiary in later expansions, zero settled into the middle of the armor class scale.

Los Angeles attracted a vibrant community of early adopters of Dungeons & Dragons, many of them students at local universities; it is unsurprising to find the roots of THAC0 in the UCLA Computer Club. In issue #32 of Alarums & Excursions, Sheldon Linker helpfully clarified the UCLA implementation of THAC0.


Linker does acknowledge that calculating THAC0 for original Dungeons & Dragons depends on many factors of a character, and that "THAC0 must be recomputed when any of this changes." The difficulty of recomputing THAC0 surely provided the biggest obstacle to its immediate adoption; the later success of THAC0 in second edition depended heavily on defining it in a way that only infrequently necessitated recalculation.

Los Angeles pioneers were not the only ones eager to speed up play by computing preliminary values before combat. The need for quick calculations was especially pressing for early tournament play, where games were typically time-constrained. While we don't see any evidence of such optimizations in the 1975 version of the Tomb of Horrors, by the following year, when Gary Gygax designed the original version of the Lost Caverns of Tsojconth (later module S4) for the Detroit Wintercon tournament dungeon, he had introduced a very interesting pre-calculated combat system.


Tsojconth was designed for six pre-generated characters. This excerpt from the dungeon master's cheat sheet assigns an "unadjusted die roll to hit" as a defensive characteristic to each of those six numbered characters in the upper right hand corner. On the offensive side, every monster had a "hit bonus," and to determine whether or not a monster hits with an attack, one simply adds that hit bonus to a d20 roll and determines if it exceeds the "unadjusted die roll to hit" for the target character. That latter figure was in turn derived by transforming the character's armor class, dexterity bonus, and relevant magic items into an additive defensive statistic. Similarly, the hit bonus aggregates all of the attacker's offensive bonuses into one sum. Thus, in order to hit pre-generated character #2 (Ethelrede the Fighter, with a defensive stat of 23), a Bronze Dragon (with a hit bonus of 9) needed to roll a 14 or higher. A separate sheet included with the tournament module similarly assigns a hit bonus to the characters and defensive totals to monsters. Readers may find this 1976 Gygax optimization eerily similar to third edition Dungeons & Dragons combat, as if he had leapfrogged THAC0 entirely.

But Gygax apparently did not think this optimization belonged in first edition Advanced Dungeons & Dragons. Instead, we find in Appendix E of the Dungeon Masters Guide (1979) a different sort of dungeon master cheat sheet for monster attacks with a column listing values needed "To Hit A.C. 0." This is usually taken as the first real use of the concept of THAC0 in official Dungeons & Dragons material, even if it does not consolidate the acronym. But note that calculating THAC0 for monsters in first edition AD&D is simpler than it is for players, given that monsters do not go up in level. Characters required something more complicated, as THAC0 would depend on weapons and other factors: the closest that character sheets of the era get to recording THAC0 is a rather more complex chart for pre-computed "to hit armor class" ranges of values - one that would still require frequent updates.


Even though Advanced Dungeons & Dragons did not initially embrace THAC0, the fan community kept it alive. In Alarums #60 (July 1980), we can find Scott Turner describing a variant he uses with "no big charts, no messy tables or calculations, just one simple addition: Base to Hit = THAC0 - AC," where he envisions a standard initial THAC0 of 20. Proposals like these kept THAC0 in the public eye, and eventually, TSR elevated THAC0 to a linchpin of the Dungeons & Dragons system... at least until third edition came along, though perhaps even its combat system has its prefigurement in the extraordinary creative energy of the 1970s.

Nowhere is that energy on better display than in the pages of Alarums & Excursions. Incidentally, this year marks the fortieth anniversary of the first publication of Alarums & Excursions. It is nearly impossible to overestimate the number of innovations that debuted in its pages; for example, I have previously discussed the appearance of dice notation in its very first issue. Amazingly, Alarums & Excursions continues to this day, still under the benevolent oversight of Lee Gold.

22 comments:

  1. Nice article, as always.

    However, as a visually oriented person, I can STILL look something up on a to hit chart faster than I can calculate THAC0. Never used it, never will.

    But that's just me.

    ReplyDelete
  2. Not just you Michael. I am visually inclined as well, and I find the to-hit matrixes much easier to use than THAC0.

    Great read, Jon!

    ReplyDelete
  3. Gygax does refer in the DMG to the possibility of using an ascending armour class, but states he kept the descending version for backwards compatibility.

    ReplyDelete
    Replies
    1. In fact, while we were working on the DMG, I tried to persuade Gary that ascending AC made more sense than descending, but he felt that ship had already sailed. And for first edition AD&D, he was probably right.

      Delete
    2. I've always thought that was the best time to do it, considering:

      1) how much he liked to insist AD&D was a different game, and

      2) consolidating so much prior material into a few books alleviated some need for backwards compatibility. No need to use the same system as old magazine articles when DMs have already bought the Monster Manual

      Delete
  4. The "To Hit AC 0" in the back of the DMG is not as useful as it appears, and technically not the THAC0 that we came to know in 2e. Given the repeating 20s in AD&D 1e's attack charts, a "20 hits", which listed the weakest AC a 20 would hit, would have been more accurate and useful to me.

    Note that BX features repeating 20s, but no AC better than -3 is listed is it's charts, so we don't know how many times the 20 was repeated. The Rules Cyclopedia also has repeating 20s in it's charts, but the 20 is listed five times, vs. AD&D 1e's six. ( I assume this is the same for the BECM boxed set, but don't own them.)

    ReplyDelete
  5. I'm the one who added that monster summary table to the DMG with the "To Hit A.C. 0" column. I believe I first saw THAC0 used in a Judges Guild publication, and thought it was a useful mechanic.

    ReplyDelete
    Replies
    1. Always nice when the guilty are willing to confess. By 1979, I do have to use the passive voice when discussing the authoring of TSR books for just this reason. If you remember more about that JG source, do let me know. I'll poke around a bit, but definitely I'd want to include it in the account.

      Delete
    2. AH-HA!! TAR AND FEATHERS FOR YOU, SCHICK!

      Just kidding! And I'm not complaining...nearly 40 years of hindsight, and all that.

      Delete
    3. Thank you MR. Schick for your contribution to the DMG I have used those summary tables many times, not for THAC0 but for just about everything else listed. Your forethought was very useful for many reasons and I for one am grateful for your work.
      Thanks and have a wonderful Bird day!

      Delete
    4. Ah yes, glad to see this. Because it jibes with what I remember about my time in Lake Geneva and TSR (1980-81), "THACO" was already in wide use then, if only informally or for convention materials, as a shorthand term of convenience among the designers and players.

      Delete
  6. I never used THAC0. I just converted the to-hit chart number for characters into a level bonus to hit. For example, a 3rd level fighter needs an 8 to hit AC 10, so he gets a +2 to hit for level.

    When rolling you just add the level bonus along with all other bonuses to arrive at your final to-hit number.The AC to hit is just that number's complement of 20. If the end result is a 15, you hit AC 5 (15+5=20). A 16 is AC 4, a 25 hits AC -5.

    ReplyDelete
  7. I never used THAC0. I just converted the to-hit chart number for characters into a level bonus to hit. For example, a 3rd level fighter needs an 8 to hit AC 10, so he gets a +2 to hit for level.

    When rolling you just add the level bonus along with all other bonuses to arrive at your final to-hit number.The AC to hit is just that number's complement of 20. If the end result is a 15, you hit AC 5 (15+5=20). A 16 is AC 4, a 25 hits AC -5.

    ReplyDelete
  8. There's also the notation in the Monster & Treasure Assortment, "Attack Level (AL)", which is equivalent to THAC9.

    ReplyDelete
    Replies
    1. That is another great example of pre-calculation; I'm sure there are more out there!

      Delete
    2. There's another interesting shorthand in the module B1. In the table of monsters, AC includes two numbers: the AC, followed by the number required for a Level 1-3 character to hit that AC, e.g. "AC 7/12". Which is really a stealth way of using Ascending AC. And nowadays Swords & Wizardry uses the same notation to show Descending/Ascending AC.

      Delete
  9. To quote myself (one of my favorite pastimes)...

    "THAC0? That's that new-fangled stuff!"

    ReplyDelete
    Replies
    1. Sure - my point here was just to say that with THAC0 in print in 1978, it's a bit less new-fangled than one previously have thought.

      Delete
    2. You're harshing on my "old curmudgeon" act, son...

      Delete
  10. We didn't call it "thay-co" but we did it as early as 1981. Easy enough. Descending armor class was never a problem.

    ReplyDelete
    Replies
    1. FWIW, I only remember ever hearing it pronounced "thack-o" by the pros.

      Delete
  11. So nobody noticed that THAC0 (by algorithmically eliminating the 6x repeating 20s in the player character to-hit charts) makes lower AC's MUCH harder to hit? AD&D chart a 3rd level fighter (18 to hit AC0) could hit a -7 with a 20.
    With THAC0 he'd need a 25, no? We completely disregarded THAC0 for that reason in 1982? 3? when we first saw it.

    ReplyDelete