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.

Tuesday, October 29, 2024

Unused parts - Reduce, Reuse, Recycle?

Lately, I've been reconsidering the amount of work I put in my campaigns.

As an example, let's talk dungeons. No matter if you create your own, use a published module or random tables, I expect you to have a minimum knowledge of the thing you're running.

The problem is an interesting dungeon has lots of content - and, while the players will probably never see half of it, the GM has to at least give it some consideration.

It is not just the ignored rooms and secret doors that were never found - it is also the NPC with relevant information that the PCs immediately attack, the writings in languages no one speaks*, random encounters/events that do not happen, maybe even the villain monologue that gets interrupted, etc. 

[*For example, I ran Tamoachan the other day and it has SEVERAL writings and dialogues in "Olman" or whatever. Nowhere in the adventure summary I found any warning for the GM about that. I might have missed it. I used both the 1e and the 5e version].

This is what I call this "unused parts".

It seems that the DM will always have a lot more work than the players - the fun part, for me, is that during the actual game (my favorite part) I can sit back and see what the PCs do, as a neutral referee, without having to author anything.

While I love the sandbox format, I think it encourages "unused parts". A sandbox needs huge unexplored parts, and the freedom to allow PCs to go where they want. I takes the GM a lot of work to create or get acquainted with an entire setting.

Here is an example from X I've seen today (from @ericbabe3):


The PCs decide to follow the main corridor, found the treasure behind a secret door, and left. All the work the GM had choosing this module and reading it beforehand was wasted. 

I definitely LIKE the fact that the PCs can do that.

But how to deal with all those unused parts?

Let's see.

- Force them on the PCs (quantum ogre). This is just putting each encounter/trap/room you want to have in your game in front of the PCs, no matter which door they choose. I dislike this - it makes PC's choices meaningless and ruins any sense of surprise for me, the GM, as I know exactly what will happen.

- Randomize everything (random ogre). Roll 1d6 to put a random trap in front of the PCs, no matter which door they choose. Like the example above, it makes PC's choices mostly meaningless, and you still have a few traps/encounters that will simply not happen.

Talk to the players beforehand. In my sandbox, the PCs can go anywhere, but I need at least a vague idea on where they are going. I've scattered several dungeons around the map, but I can't read - let alone remember - each one. So I just ask before the next session about where the PCs intend to go.

This is harder to do with dungeons. Depending on the size of your dungeon and your sessions, maybe you can read only a few levels beforehand.

- Minimum prep. Just do the bare minimum:  give a quick glance to the module and read the entirety of the room IF the PCs get there. This is what I've been doing, but it has led to some confusion on occasion, when the module is not clear enough and I'd need more time to understand. For example, I was once running a module that gave the PCs an "Amulet of the Phoenix" that was simply not described anywhere. I had to improvise in a case of life or death (that deserves a post in the future). Later I found out there was a "Talisman of the Phoenix" or something in the magic item list.

Another example: There are huge unmapped areas in my sandbox that are simply called "giant territory", "goblin territory", and "undead territory". No dungeons in most of these areas - I'll detail them when the PCs get closer, but they at least have a vague idea on what to expect and can make meaningful choices.

- Zooming in an out. Another way to think of this is "zooming in and out". Ideally, modules should be prepared in such a manner. You should be able to get the clear picture from a sentence or two, preferentially in bold, and the have other paragraphs describing what may happen if the players do X or Y.

Any important secrets or details must also be emphasized/ marked to make sure the GM will not miss them.

Likewise, for a overland map, with hexes or otherwise, you could have brief descriptions of each are and then a more detailed description - with a corresponding map - later on.

I know there are several attempts to do that in OSR games. I never read a module that really stands out in this manner, but I'm always searching! Have you? 

- Reduce, Reuse, Recycle. This is especially important if you're creating your own stuff.

Reduce: make it terse, keep prep to a minimum. Don't fill all the details, just create whatever you want to inspire you. "This room has two sleeping ogres, Torg and Gurps, not aggressive but starting to get hungry".  If the PCs kill them while they sleep, you haven't wasted much details.

Reuse: have recurring NPCs and factions, and let they repeat their tactics/traps/behavior sometimes. Let the PCs go back and forth in your wilderness maps. PCs usually need a home base that will be more detailed than other cities. 

Some times, the PCs will enter the same dungeon multiple times (although it is useful to consider how the dungeon changes as they come and go). In my latest "haunted castle" adventure, the undead simply rose again every night.

Recycle. Traps/rooms/encounters that are cool and unused can be kept for later. This is not a "quantum ogre" thing. The PCs must have the option of ignoring it again. You have to deliberately change where the thing is placed, and you have to do it carefully -  the new place must make a last some sense.

Let me know in the comments if you have any other methods to deal with unused parts!

Sunday, October 27, 2024

Spell points revisited

When I wrote Alternate Magic, I tried to keep it very compatible to BX / OSE. 

Here is what I've been using. A spell costs 1 SP per spell level.


As I've mentioned there, the goal was: "At low levels, this is nearly identical to the existing rules. At high levels, casters gain some versatility (they can cast the same spells more often) but they can memorize and cast fewer spells."

Lately, I'm finding this system makes high-level casters even more powerful in some aspects. In my defense, I still think they are OP to begin with, as I've said many times in this blog.

Am I overthinking this? Maybe SP are just not compatible with fireballs. Maybe LotFP was right in simply removing it.

Anyway, here is where I am now:

My PCs are about level 7-8 currently.

A 7d6 fireball destroys pretty much any random wilderness encounter. If you're checking once a day, the MU can always have TWO of them. But I'm using spell points, which makes things much worse.

Likewise, Cure Light Wounds (the baseline Lvl 8 cleric has 3 every day, plus 2 CSW - about 7d6+7 healing) can cure most non-lethal wounds. Using SP gives the cleric even more healing power.

Fortunately, I nerfed the cleric in other ways (a level 7 BX cleric should have raise dead; I use the BECMI progression instead).

(And boosted fighter/thieves. The B/X fighter and thief would have about +5 to hit, plus a magic sword, while the cleric gets raise dead, better saves, and also beats the thief at AC and HD).

Anyway, I still LIKE spell points, but in my next campaign I'm probably limiting them to 2 SP per level for MUs and 1 SP for clerics. Both learn one new spell per level.

So, a 8th-level cleric can still cure a lot of wounds (8d8+8 HP), but he can do nothing else that day. 

A 7th-level MU has four fireballs - still a lot, but after that there is not much else he can do.

(I allow MUs to use swords, they might need it).

What is more, they don't recover all SP overnight. Like wounded fighters they need a few days of rest. 

I've been using "you recover one fourth of maximum HP per day, round up", something I got from SotDL, so maybe use that for SP too.

Anyway, this is not perfectly compatible to B/X (or OSE), as it makes casters a lot weaker. But I think this is necessary to make the game grittier and more balanced.

If you prefer the original feel (MUs start weak and get incredibly powerful), you can keep the original table. For a dark fantasy or S&S feel, this is probably better.

Tuesday, October 22, 2024

30-mile hexes

I've considered several hex sizes before. Today I will think about 30-mile hexes.

Look at this map (source):


The hexes are about 31-miles each (31 miles across, with sides about 17.32 miles).

Good enough so they can fit all major cities and the shape of Italy is still recognizable.

You'd need to add several random villages and things (ruins, caves, castles, lairs, etc.) to each "empty" hex.

The whole country could be described in 150 hexes or so - sounds reasonable to run an entire campaign., maybe giving at least one page to each hex. And EVERY hex could have one or two interesting features.

At this size, I think you could just give the map to your players. If your setting is anything like medieval Italy, it wouldn't be hard to know the general direction of Verona or Genova. 

Rome fits in an hex, but does not FILL it.

You lose some interesting detail; the map doesn't show you Venezia (Venice) as an island, nor the Lago di Garda (the largest lake in Italy - with an area of 143 square miles, it would fill one or two 6-mile hexes).

According to google maps, you can cross the entire country (from Bova Marina to to Milano, for example) on foot in 302 hours (1310 km, 814 miles).

Apparently, "Google Maps uses average walking speed of 5km/h to calculate walking times" - which is 3.1 MPH.

This is NOT a straight line, and while there are many more roads in modern days, ancient Rome had several, as you can see in this interesting site:


OSE says "the number of miles a character can travel in a day is determined by dividing their base movement rate by five. For example, a character whose base movement rate is 120’ could travel up to 24 miles in a day."

Of course, if you travel 24 miles a day, you might as well use 24-mile hexes (although maintained roads will increase travel speed by 50%).

Anyway, that is 34 days to cross Italy on foot.

This will probably result in around a dozen encounters - most of them avoidable or uneventful.

Most expeditions will NOT require you to cross the entire country, of course.

What I'm thinking is that hex travel requires a huge map to be meaningful.

And MAYBE it requires RE-USING hexes. Getting lost, searching several hexes for a landmark, etc.

In my current campaign, the hex map only made sense when the PCs went exploring beyond the limits of the know regions, where there are no more cities or roads.

Herein lies an important distinction others have mentioned: do you want a map for EXPLORATION or TRAVEL? 

Maybe these should be distinct procedures.

Another thing to consider is "Medieval Europe x Old West USA", and which influenced D&D hexcrawling the most. 

I reckon Europe is too dense for most D&D settings. Mapping the USA would require more than 120,000 6-mile hexes, or around 5,000 30-mile hexes (Europe is of a similar size, but in the 1400s-1500s the population of Europe was more than 10-20 times bigger).

Maybe you should consider this BEFORE choosing hex size...

For now, I'll say that big hexes look better for travelling, and you can always sub-divide them as needed when PCs go exploring (or settling in) a particular area.

Monday, October 14, 2024

Make your own D&D skill system!

The various D&D skill/ability systems vary in how much they rely on ability scores and level; some abilities (e.g., forage in B/X) are unrelated to both things.

We could discuss endlessly about which way is better. I like a mix of both. Should a 15th level fighter be equal or better at foraging or knocking down doors than a 1st-level fighter?

Well, you can decide for yourself. Here is how.

Give a rating, from 0 to 5, to assess how important you think ability scores are. Do the same for levels - the sum should be 5 most of the time. For example, if you think ability scores are much more important than levels, you can rate abilities 4 and levels 1.

Simply multiply your ability score and your level for the number you chose, sum it up, and you have your percentile of exceeding.

For example, if you have Strength 12, Level 5, your chance to knock down a door would be 53% (12x4+5x1).


Note that you could choose in a case-by-case basis, e.g.:

- Open doors is mostly strength, but pick locks requires more levels/skills.
- Picking locks could be Dexterity improved by only 1% per level for all classes except thieves, that get 5% per level. Same for forage and rangers.
- For tasks that are too easy or too difficult, just double or halve the percentages.

This requires some adjudicating and math, but it is overall a decent solution because:

- It is quite instinctive and easy to grasp.
- Every ability point and every level matters.
- Heroes get better at EVERYTHING, if only slightly.
- It replaces thieve's skills quite well and also gives a clear answer to "what if you're not a thief"?
- Adds no complexity to the character sheet.

I'm tempted to say each level gets you at least 2% better at (basically) everything, with each ability point giving you 3% as a starting rule.

(Even better, for some old school flavor, each score could be paired with a percentile; Figgen, pictured above, has Strength 13/55%, but we'd probably need to write down some skill percentages. Or just allow "trained" PCs to "flip" the dice, so they can count a 73 as a 37, for example, which gives the thief spectacular odds, or use some kind of "advantage" system, or just add 25% chance if trained, etc).

I'm also tempted to create a whole system out of this, with fighters improving their attacks 5% per level, plus percentile magic and saving throws... but I probably won't.

So, anyway, if you needed a new skill system (we have a few dozens, and we only needed one...), you've got it.

Additional reading: