To get around this issue, I designed a dungeon as a set of random tables. An entry in the dungeon looks like this:
2. Audience Chamber
Visitors to the cult's lair wait here until their audience with the high priest. There are four bedrolls, a barrel of water, a bucket, and a small cabinet stocked with food and drink (6 days worth) here.
1d6-2 visitors are here. (Allows for an empty room.)
50/50 that they are simple hunters or trappers here to trade, or dark pilgrims seeking to join
Use bandit stats for either
Hunters aren't looking for a fight. Even chance that the cultists try to trick or attack PCs
This isn't rocket science, but it had two benefits to me in play.
First, it was fun as a DM not knowing what was in he room until the PCs entered it. It made the adventure more interesting to run, as I was as much an audience for it as the players.
Second, it makes for a very dynamic environment. It made the dungeon feel like a living place with only a small amount of effort on my part.
I used randomness in a few ways:
- Absence/presence of inhabitants, plus their numbers
- Attitudes/general initial reaction (violence, talking, deception, flight)
- State of traps and other features (recently trigger, broken, normal)
- Odd events, like whether the two rival ogres in a room happen to be fighting when the PCs approach
Overall, so far in play it has worked well to make the dungeon come to life. As long as your dungeon map is reasonably non-linear, it can have interesting effects on the flow of play.