|October 8, 2012||Posted by Matthew J. Neagley|
Here’s a simple random dungeon generation method that uses only a sheet of graph paper, a pencil and the bucket of dice every gamer already owns. Lay out your paper, dump your bucket of dice on it, and remove all the dice that didn’t roll their max, while being careful to move those that did as little as possible. Wherever you had a die roll max, draw a room of that size. Thus rolling a 4 on a d4 results in a room of size 4, and a 20 on a d20 results in a room of size 20. Finish by connecting rooms with lines for hallways and fleshing out with details like secret doors etc… and you’re finished! Simple, fast, easy! That’s all you need to hit the ground running with this method. What follows is all optional.
This method creates rooms that range from 4 squares (2×2) to 20 squares (4×5) so units per square will need to be adjusted to match your system of choice. Default is probably 10’x10’ squares, but if your system demands large open spaces, you can increase those units as large as you need them to be.
Since each die only adds a room if it rolls it’s max which happens with probability 1/max and the room it adds is it’s max in squares, each die you roll adds on average 1 square of room space to your map. This is true no matter what size of standard die it is. So, the easiest way to decide how many dice you should use is to multiply the length by width of your graph paper by the density of rooms you want. For example, if I have a 14 by 22 sheet of graph paper and I want a 30% room density (ie: 30% of the squares on the map have rooms in them) I would multiply 14x22x.3 and get a result of ~ 92 dice that I should roll.
Even though each die adds an average of one square to your map, smaller dice roll their maxes more often, so a number of small dice will add more (small) rooms and the same number of large dice will add fewer (large) rooms. So if you want the same number of each size of room, you need to add dice to your pool in the same ratio as their die size. So to roll 90 dice and get about the same number of each size room I should have a pool of 6d4, 9d6, 12d8, 15d10, 18d12, and 30d20. This will give an average of 1.5 rooms of each size. Similarly if I wanted a few large rooms (20 squares) and many small rooms (4 squares) I would start with a ratio of 4 to 20. That ratio will give me an even mix of the two sizes. Then if I want 4 times the number of small rooms as big ones I’d multiply only the number of the d4s in the ratio, giving me 16 to 20. 90/(16+20) gives me a multiplier of 2.5 so my final numbers I need would be 40d4 and 50d20. Of course if I don’t have that many die 4 or d20 I can roll them in groups of 10 or 5 or however many I do have.
In theory rolling the dice on the piece of graph paper should result in a normally distributed x and y coordinate for your rooms. ie: there should be heavy clustering near the center and the number of rooms on the outside should be sparser. However, if you’re rolling the dice instead of just up-ending your dice bag on the center of the paper, you can direct each handful of dice towards an empty section of the map instead of the section that’s already clogged with rooms. If you end up with overlapping rooms, you can simply slide them over into the nearest open area, overlap them so you have a larger single room, or add features to have a variety of levels (perhaps a hidden sub-basement of an overlooking balcony).
Here’s an example map that I created with the help of my daughter and the “just dump your dicebag on the table” method. Note the two secret rooms in the main body of the dungeon (purple) and the basement and 2nd basement levels in the upper part of the map (red). You can also tell I have a large number of d6s from an old ShadowRun campaign. so most of the rooms on my map are 2×3 squares or some other 6 square setup.
While this isn’t the most sophisticated way to make a random dungeon, it doesn’t get much quicker and easier than dumping handfuls of dice onto a sheet of graph paper, making it an excellent technique for last-minute and “smoke break” mapping.