How do you write an adventure?

I originally mistaken @DanBoyo’s Making an adventure post for this question, so I’ve decided it’s time to ask it to the Pit. What’s your writing process and what tools do you use (if any) when writing a new adventure module?

I’ll start by saying that I don’t really have a process and just type stuff in a text file until it starts to make sense.


Are you asking how to write an adventure for personal use, or how to write an adventure for publishing? Because I think those are potentially quite different questions, and I can’t really speak to the latter.

This is all somewhat stream of consciousness, not in any specific order.

In terms of my own adventures, I prioritize worldbuilding, so I build a world first and then think about what kinds of adventures might fit within that world. Worldbuilding is its own conversation so I’ll focus on the adventure part.

I take an approach that’s somewhere between OSR-style play and narrative-style play. I usually have a handful of key “plot points” that I expect to happen in some form or another over the course of the adventure, but try to keep them as loose and modular as possible, and let player actions fill in all the blanks.

I don’t necessarily do “true” sandbox play- I mean I don’t disallow it, but usually I’ll create some framing device that gives the party multiple obvious leads to pursue and let them choose, and then later I’ll give them several more as events transpire. They certainly can do things outside those options, it’s more just about giving them a general direction. I also usually try to leave those options fairly open in themselves.

This might be something like, I’ll often use a “Handler”, who is kind of like an agent or manager, who relays information to the party for quests to follow. Other times, they might have some broad goal, and by exploring the location or speaking to NPCs, new leads emerge in themselves.

I think the key is just to keep things modular. Even if you have leads, or plot points, make them flexible, give players many options to get there, allow the players’ actions to affect those key moments. If you really want them to do some specific thing in some specific way, give them a good reason to do it.

If you build out some stuff and they don’t follow that lead, find ways to re-work your work to meet the needs of what they’re doing now, or contrive another way for them to wind up back there later.

I’ll also plant lots of seeds. Little plot hooks, details, events, that I may or may not have an idea of what to do with. If the players don’t care about a seed, I’ll abandon it and they’ll never remember. If they do respond well, or if I’m just dead-set on it, I’ll keep coming back to it, even if only briefly, so that when it does develop, it doesn’t seem like it just came out of nowhere. The end result will be a rich world, an intricate plot, one that seems full of intentionality, but actually you were mostly just making it up as you went.

When it comes to puzzles, traps, conflicts, etc., I generally don’t worry about having a solution. I’m not a great puzzle designer, and designing conflicts that are inherently interesting is difficult and I would argue not sustainable. Instead, leave it open-ended, make the details interesting rather than the task per se, and let the players come up with fun and interesting solutions that you never would have considered. They’ll have more fun for feeling like they “solved” it, it’s less work for you, and I would argue more fun for the GM as well, and meanwhile they think you’re brilliant. Likewise, I try to minimize actual combat, because almost always it ends up being not that fun and more effort than it’s worth on my part as a GM. Instead, I try to encourage non-combat actions to be used in exciting and “action-y” ways within a combat context, like having lots of environmental objects to interact with, or encouraging communication between the party and the opponents.


What I find most useful in OSR modules isn’t an “adventure”, isn’t a pre-planned story or any kind of plot, just a whole lot of… stuff. Give me interesting magic items, NPCs and enemies that want things and have a plan on how to get them, bizarre and engaging terrains. If I’m making a dungeon, I don’t have puzzles, just problems and obstacles. A puzzle implies a single fixed solution, which is almost never actually the case, and often requires very specific set of circumstances in order to be solvable. An obstacle exists irrespective of who faces it, and is much more real and engaging than a contrived challenge.

Basically my players are gremlins and will do whatever they want, whenever they want. I just need more interesting things to throw at them to keep them happy and/or slow them down.


I sit at my desk and decide that I’m not going to do anything else for an hour and set an alarm, then when the alarm goes off, I did anything else, I start the alarm over for another hour. Usually by the end it’s 3 hours later and I have enough for 5 sessions!


This is my method:

  1. I make or steal a map. I usually make random maps here.

  2. Edit the random map in paint to remove things that doesn’t make sense (like secret doors that lead to a room where there is a normal door next to it). I cut and paste bits of the map to edit, so it’s not too intrincate, but it works great.

  3. I look at the map and imagine what it is, a house, a fortress, a system of tunnels, or what. I write up the first room and any other room I have an idea about.

  4. I add rooms as the come to my mind, tryinjg to make it consistent, but consistence is not the goal.

  5. Based on the theme from point 4, I imagine new monsters (I never use stock monsters; I might use lookalikes but I always create them from zero.

  6. I add a few goals in the dungeon: get a jewel, free someone, find a clue, recover an artifact. I include several of these to lure and hook different parties with different values.

  7. I think of other features, traps, tricks, puzzles, and stuff for the players to interact with.

  8. I review what I have and modify as needed, add or remove stuff as needed.