a series of interesting choices thoughts on game design from paul sottosanti


tiny adventures: the adventure system

With Tiny Adventures we were faced with a question: how do we tell stories, but not tell the exact same ones every time? While we could have simply thrown an endless series of random encounters at the players, part of what makes the D&D experience memorable is the campaign storyline that ties everything together. Yet, we clearly didn't have the resources to emulate a human Dungeon Master.

We chose to create four adventures per level (we had chosen to focus on heroic tier characters only, i.e. level 1 through 10), for a total of forty adventures. Each adventure consisted of a series of encounters, some random and some story driven. To make the random ones feel like they belonged, we chose eight terrain types that essentially functioned as encounter pools. Then we wrote transition text that let the player know when their adventurer was crossing from one terrain type to another. For example, here's the layout for a level 1 adventure:

Difficulty: Level 1
NAME has heard reports of a cabal of dark elves robbing travelers in the nearby Coilspine Mountains. Because of the thick iron door and dangers inside their stronghold, no one has yet cleared them out of there.

The adventure begins: NAME hiked into the Coilspine Mountains to find the Stronghold of the Drow.
Encounter 1: Random level 1 Mountain encounter
Encounter 2: Random level 1 Mountain encounter
Encounter 3: Random level 1 Mountain encounter
The adventure continues: NAME found an enormous iron door set into a rocky cliff not far from the mountain pass where travelers reported the drow raiders. While watching from a safe distance, he/she saw one of the dark elves wriggle out from behind a small rock several meters to one side of the door. After the elf was gone, NAME snuck up to the rock and entered the Stronghold of the Drow using this secret entrance.
Encounter 4: Random level 1 Dungeon encounter
Encounter 5: Random level 1-2 Dungeon encounter
Encounter 6: Random level 1-2 Dungeon encounter
The adventure continues: Deep in the stronghold NAME heard elvish voices. He/She crept up to a door from which they were coming and peeked in through the small window in the top part of the door. Inside he/she saw several drow standing around a table. The tallest one had his back to the door, and he was gesturing while he talked, repeatedly pointing to a map laid out on the table.
Encounter 7: Final story encounter

This adventure consists of three fixed pieces of text, six random encounters with two possible outcomes each, and one final story encounter, also with two possible outcomes. We liked this because the fixed elements succeeded in telling a consistent tale, but the random encounters ensured that the tale would play out differently each time. The terrain types made it feel like the random encounters belonged to that adventure, when in fact they were part of a general terrain pool, because that was the only way we could possibly create enough content to get the variety that we wanted. I felt like we had succeeded with our goal of making the world and the adventures evocative when I saw that one player, Thomas Denagh, had drawn a map of the world based off of the locations that are mentioned in the game.

The final story encounter gave the player closure by wrapping up the story we had set up in the adventure description. In this case, the final story encounter was always an Attack Bonus check with a Magic subtype (there were items that gave bonuses in Magic encounters). If the adventurer succeeded on the check, this text would appear:

NAME ATTACKED the drow in his back with his/her WEAPON. Then he/she kicked the table over, knocking down the drow witch and disrupting her spell. NAME's surprise attack caught the rest of the dark elves flatfooted and he/she easily ATTACKED them with his/her WEAPONTYPE as well.

And if they failed:

NAME ATTACKED with his/her WEAPON but missed, damaging nothing but the map on the table. When the nearest drow stepped aside, he revealed the drow witch across the table from him. She cast a curse on NAME, bringing him/her to his/her knees writhing in agony. They tied NAME up and took him/her to a cell down the hall. After the drow left, NAME picked the lock and escaped. He/She checked the room where they had been meeting, but it was empty -- save for a few gold coins scattered in the corners.

As you can see, encounter text contained numerous variables so that it could be personalized to the adventurer. All gender-specific words had both forms handwritten inside brackets. Each weapon had a specific verb attached to it, as well as a short name because repeating the full name too many times tended to sound bad. The verbs gave us a chance to make the weapons feel distinct, and allowed us to make the powerful high level weapons feel even more powerful by giving them verbs like "decapitated". Finally, they allowed us to at least give a nod to spellcasting without having to branch a lot of the text; we simply used spell names as verbs (like "fireballed") for the weapons that wizards would tend to equip.

We flagged each encounter as a specific level and only pulled in encounters that were appropriate to the adventure (as you can see above, each random encounter was tagged with a specific level range). We could have built generic encounters and scaled them to the appropriate level, but we bit the bullet and went with fixed levels for three major reasons:

  1. It would be lame to get an encounter early in your adventurer's career and then get it again, with the same text but a more difficult check, five levels later. Because we had safeguards against getting the same encounter twice in the same adventure, it was pretty rare to see the same encounter twice in the same playthrough.
  2. We wanted to show character progression, and one of the most effective ways of doing that was having the character encounter goblins and kobolds early on, and storm giants and dragons in the later adventures.
  3. We could write in specific rewards that were level appropriate. So, if the elf prince that your adventurer just saved was wielding a mithral dagger, he could give it to you at the end of the encounter because it's appropriate for that level. If we were scaling the encounter level we would've had to do away with specific rewards.

The hardest thing about writing all of this text? Figuring out how to work a reward into almost every block of text. Because rewards gained through encounters determined an adventurer's score, we needed all of the successes, as well as many failures, to give a reward of either gold and items. It felt disconnected to just hand out a reward if the story didn't mention it, so we had adventurers looting corpses, looking under rocks, grabbing items off of tables, and who knows what else to justify the payouts that we gave them. In the end, though, it was a blast to work on creating the stories, and one of the most gratifying threads on our boards was a huge collection of quotes that players posted that had made them laugh. I wish it were still around so that I could link to it.

Takeaway: With the right mixture of structure and randomness, you can create experiences that both tell a consistent story and still feel fresh when encountered multiple times.

Next topic: Accessibility

Comments (0) Trackbacks (1)
  1. Copying some relevant comments over from Facebook.

    Nik Davidson (producer): In retrospect, I’m not sure we needed to work so hard to shoehorn loot descriptions in all of the encounters. Players are remarkably tolerant of loot showing up, even if they don’t know why.

    Dylan Mayo (writer): Loot shoehorn may have been my favorite writing restraint ever. Restraints breed creativity! Also, drowning people in copper pieces is fun too.

    Me: Nik – True, but I felt we could do better. It’d be like your DM rolling a d100 at the end of each session and giving you an item from a random table; while you certainly wouldn’t complain (who doesn’t like free loot?), it’s not as satisfying as finding it as part of the story.

    We did get some feedback from players who had paladins or clerics that they felt like their character wouldn’t perform some of the actions in the encounters (that had likely been written to explain loot gathering). I do regret breaking their immersion. We talked a bit about building a system to let us write class specific text branches (which we would use sparingly in order to maintain sanity) but it never made it in.

Leave a comment