I must create a system, or be enslaved by another man's. I will not reason and compare: my business is to create.

- William Blake

Tuesday, November 19, 2024

Simplifying THAC0 (and attack matrices)

I usually prefer ascending AC to descending AC, but I never thought THAC0 was particularly complicated.

You don't even need subtraction to use THAC0. 

Just roll 1d20, add AC and modifiers, and beat THAC0. Done. 

Delta has already done most of the work. I also found this post by @contrarian, which inspired most of what I'm writing here - and provided most of the images.

One thing I dislike are attack matrices, because I feel there is no need to check a table for that. If you need a "to hit" number, a single digit will do.

With that said, there ARE some interesting aspects of the AD&D matrices. But they could easily be reduced to this:

* Roll 1d20+AC+modifiers.
* Add your level if you're a fighter-type, half your level if you aren't.
* If you roll 20 or more, you hit.

And... that is it, basically. 

We still have to deal with negative AC, but we'll get there.

Let's see. This is the original DMG table:

Notice that 20s are repeated SIX TIMES, making many kinds of armor practically identical. 

This six-point spread is huge; in OD&D and B/X, for example, it is as big as the difference between UNARMORED and PLATE!

Here is an optional rule that allows you to roll higher than 20 on the d20, but requires a natural 20.


I dislike this table because it makes negative AC too powerful against a fighter of amazing strength and magic weapons. And STILL treats AC -2 identically to AC -7 in some cases.

However, the idea that you ALWAYS have a small chance to hit - even negative AC - is nice.

How often do your 1st-level PCs fight monsters with negative AC? Not often. 

BUT: I'm guessing the multiple 20s are there to allow, say, an army of NPC archers to fight a dragon, which makes sense.

How can we achieve the same effect without the tables? Well, you could simply add +5 to your roll if you hit AC 0 BEFORE considering the negative AC. 

But, again, this makes many types of different armor identical in practice.

So, my idea is that negative AC is not added to your roll (count it as zero), but subtracted from your damage

Maybe a powerful attacker can CHOOSE between subtracting AC from the roll or from the damage (sometimes, you NEED to take the "less damage" option).

Now AC 0 is different from -1 or -2, etc.

Gygax considered something vaguely similar is Isle of the Ape.


(Of course, we could go even further. Since you need 20 or more to hit, each point over 20 could be translated to damage (something that AD&D also suggests for fighter that hit automatically). But now we are getting further away from the original. Anyway...)

Here are a few additional considerations:

- Should clerics, thieves, and MUs use the same table? 

Yes. Clerics are too tough and thieves too weak already. For MUs, if really doesn't make a difference - your level 10th MU will use its 10d6 fireball rather than 1d4 dagger.

- But shouldn't a MU keep the same attacking capabilities until level 6? 

Not really. Gygax indicates a smoother curve for Fighters - why not do the same for other classes?


- What about backstabbing?

Since this is mentioned in the matrix, I will suggest thieves/assassins simply add their level to backstabbing damage (maybe a minimum if +4). This encourages them to attack with small weapons, and gives them a little boost every level. The books indicate that the only part of the damage that is multiplied is the weapon dice, not Str or magical bonuses. 

So, a thief with a magical shortsword (say, 1d6+2) dealing quintuple damage would roll 5d6+2. This is about 19.5 on average. 1d6+19 is just slightly higher than that, and the thief deserves the boost.

- What about monsters?

Treat them as fighters. Much easier but not that much different.

- But I want THAC0!

Here you go. Expand to level 20 or whatever you want.



- But I want something EVEN CLOSER to the original matrices!

In that case, check the original post by @contrarian. Great stuff!

Also, let me know about any other objections to my solutions!

Monday, November 18, 2024

The campaign spreadsheet

We used to joke about needing a spreadsheet to run certain games, but, come to think of it, this can work WONDERS for your campaigns - especially if you're playing online, of course.

I'm a bit of an Excel nerd. Not that I know much about it - I just use it for everything, especially to manage my calendar, passwords, goals, new year resolutions, links, and so on.

I have been saving my campaign stuff in text format (see here), plus various PDFs, but I'm certainly using excel (or OpenOffice, etc.) for my next campaign.


The first sheet to consider is a campaign timeline. This it's both a schedule (of future events) and a diary. The diary is basically "set in stone"; the players have access to it (you can have a second column of unknown/secret events to yourself). The schedule is basically a list of things you have planned or rolled in advance: an earthquake on November 16, the Dark Lord is planning an invasion on the October 1st, etc. As the players move closer to the events, they can see some signs and even potentially alter it.

The second sheet to consider is your GM screen. Anything you'd put in your "GM screen": random tables, critical hits, a list of random names, THAC0  tables, etc.

I'd keep random encounters in their own sheet. I've been using my own Random Wilderness Encounters PDF, but come to think of it, it might be useful to be able to edit encounters. Maybe discard some used ones (and roll them again) You could even prepare some encounters in advance, make a d10 table, and replace them as you go.

Then you might have a glossary of sorts: places, people, monsters, and so on. You might list them alphabetically (adding a column to specify "type": location/NPC/ etc) or create different sheets for each.

Characters could have their own sheet too, especially in systems that require math for character building (for example, to figure out skill points for the 2e thief).

You can probably add a sheet of random ideas in the end: links, modules you might want to check, tables you don't use often, and so on.

Now, one might wonder: why not use a .doc or wiki instead?

Well, you can. But spreadsheets may have at least two additional perks.

First, spreadsheets can do math. For example, I can quickly add a formula to know how many HP each PC will have on each level (if I'm playing 5e, for example).

Second, they can roll dice

I'm not an expert at all; I know that "=RANDBETWEEN(1,20)" automatically rolls a d20, and so on. You could create an entire line of formulas to make all the six or seven rolls you need for a random encounter in just a click or two (I could have saved so much time!).

Well, this is just a brainstorming post. Unfortunately, I have little actual practice with campaign spreadsheets.

Hopefully, I can just give you my spreadsheet when I start my next campaign. But if there is one like that out there... let me know! It will save me some work!

Thursday, November 07, 2024

Create a sandbox map in 7 easy steps (or 10)

I've written several posts on similar subjects; they are mentioned below. This is a compilation of sorts.

You only need a piece of paper and pen to start - I'm not getting into "hex maps" for now.

1 - Place the starting point. This is usually a starting village, city, or stronghold. If you're using a piece of paper, make it near the center. You can put it near the edge if there is something in the edge discouraging the PCs from going off map - for example, sea, tall mountains, or "back to civilization" (if the goal is exploring the unknown lands). See the map below - you can use something similar, and start your game anywhere in the East coast (even Florida, near the edge). You can cut it in half keeping only the East coast and Midwest. 

2 - Separate land from sea - just draw the outline of your main continent, add some islands if you want.

3 - Add "mountain lines", representing the tallest altitudes. Put a big range of tall mountains to a random direction. Add a smaller mountain range, with hills etc., somewhere else., for variety.


4 - Add rivers. They look like trees with lots of "branches" and trunks on the sea. They run to the sea. They do not cross mountain lines.

5 - Add cities. Most cities are near the water (rivers or seas). In D&D-ish worlds, there are probably few cities and lots of areas inhabited by monsters instead. You do not need to map every village.

6 - Add vegetation. You already have mountains, hills and rivers. Just scatter some big forests, swamps, deserts, plains, etc. I don't usually bother with much realism here. Deserts are usually next to mountains (mountains can stop humidity, so you'll often have desert on one side as humid/lush conditions on the other). Vegetation needs water, especially swamps.

7 - Name some regions (no borders needed): "here be goblins" (or "goblin territory"), and do the same for "giants", "dragons", "drow", "slavers", "franks", etc. These "vaguely known" areas can be different human kingdoms, monster territory, or anything else you want to add to you game (e.g, "poisoned swamps", etc.). Use flavorful titles rather than specific names ("Dark forest" rather than "Hullbeck forest"), unless the name is obviously referring to something mythic or historical (Cimmeria, Albion, etc.).

And there you go! You map is ready! Here is my current example (using hextml, but again, you don't need to). Belarte is the starting city. Mektlan is Tamoachan (recommended!). Ilmare is Illmire (recommended!). Savakir is DCC #66.5 (also recommended!). I wrote down "goblin territory" somewhere up north, but it wasn't included in the beginning.


Now, a map is not ALL you need to run a sandbox campaign. So I'll leave you a couple of extra steps that will get you most of the way there.

8 - Detail the starting area. You need some additional detail on the starting area, since the PCs will be more familiar with it. Keep on the Borderlands is a classic campaign starter, but not one I can recommend as I haven't used it. I used BFRPG's BF1 Morgansfort, and I like it - it is FREE! You just have to assign all the relevant locations to somewhere in your map.

9 - Prepare some random tables. It should be obvious by this point that I do NOT encourage you to randomly generate the map, as I've never seems a randomly generated map that looks better than what anyone can do following these simple steps. Besides, mountains can be seen from  A HUNDRED MILES away or more; it is absurd to suddenly enter an hex and find a mountain. What you need here is random encounter tables, plus some random tables to add villages, lairs, castles, ruins, and landmarks if you want to do so. I am using this for random encounters, but I still have to find or create some table for locations. I also encourage you to use random events.

10 - Ask PCs where they want to go. They find some random stuff on the way, and when they arrive you should have something prepared. I use classic modules: I use B10 - Night's Dark Terror for "goblin territory" - I really like this one! You can use G1-3 for giants, maybe Desert of Desolation for deserts, etc. Or use the BFRPG versions.

In old school D&D, it is assumed the PCs are searching for gold & glory, so there is enough motive to go around the map. If they need further motivation, you might have to prepare some hooks, backstories, etc.