Analysis: Dialog Trees in Adventure Games
April 24, 2015
A lot has been developed on the second Sleuthhounds demo since I last posted about designing the game’s critical path. The tricky thing for today’s blog is that I can’t really write about most of those developments as they’re part of that critical path and would spoil the final game. However, one thing that I have been refining and can write about is the storyboard gameplay mechanic being introduced in this game.
I briefly touched on the storyboard system in my first production update about a month ago. However, I didn’t have the opportunity to really delve into its origins or how I arrived at the system currently in place. So put on your long scarf and bow tie (because bow ties are cool) and follow me back into the depths of time before the storyboard system was developed.
Our journey takes us back to early 2006. I was pleased with how my Cubes semimonthly comic strip was being received by friends and colleagues and was eager to do more with the characters and situations. I’ve been an adventure gamer almost as long as I can remember so the idea of doing a computer adventure game based on Cubes seemed a natural.
I had tried creating adventure games several times before, but they had never really gotten anywhere. Adventure games are complex pieces of software and require a lot of content (backgrounds, animations, sound effects, etc.). I knew how much work was involved and I knew I didn’t have the programming framework in place to create an adventure game (instead I worked on an FPS—first person splatter—which became the freeware Quack V game, but that’s straying from the point). However, that didn’t stop me from thinking about the design of a Cubes adventure game.
When I started thinking about the design, I also started thinking about the different things I’d seen in other adventure games over the years. It made sense to look at the designs of those older games and see what ideas I should adopt into my game, what ideas I should adapt, and what ideas I should discard.
For the record, I love adventure games. That does not stop me from looking at them with a critical eye and evaluating them in the way my professional software design self would evaluate any piece of software. One of the startling conclusions I came to very early on was that dialog trees really weren’t a very good gameplay element.
For those unfamiliar with this mechanic, a dialog tree is presented in a game when you, as the player character, talk to another character in the environment. You are then presented with a series of options that you can choose to ask the other character. Typically, when you pick an option a little bit of talking occurs between the two characters then you’re presented with new options to choose from. Most of the time you’ll also have an option that allows you to return to the previous set of options.
The first game I played with dialog trees was Indiana Jones and the Last Crusade. I remember most in this game that as Indy you had to talk your way past enemy guards at various points. Failing to do so meant you had to fight them instead. The problem with the dialog trees in Last Crusade was that only a few of the guards gave hints as to what dialog options might work on them. There wasn’t a good way, from a gameplay perspective, to “think” through the dialog and reason out the choices you needed to use. The result was a lot of fighting while I painstakingly went through each possible dialog branch, searching for one that would work. On each guard. Over and over. (For our younger readers, this was back in the days before online walkthroughs, the internet, hot and cold running water, and falafel—and I had to walk to school through eight feet of snow, barefoot, uphill both ways.)
The next game I encountered dialog trees in was The Secret of Monkey Island. Here the dialog trees broke down into two categories.
The first type of tree gives you general things that you can ask about or comment on to other characters. Through these trees you do get hints and information on how to proceed in the game, but there aren’t really any puzzles or challenges per se to sort through with these dialogs. They’re there to provide flavor but not a lot more.
The second type of dialog tree is represented by the famous insult sword fighting. In Monkey Island you play Guybrush Threepwood who wants to become a pirate when such people ruled the high seas. Along the way, you must learn to become good with a sword. In gameplay terms, instead of making this an action sequence, the designers used a dialog tree in a clever way. When you were fighting an opponent you would say an insult to them (“You fight like a dairy farmer.”). Sometimes the other pirate would be at a loss for words and would lose the fight. Sometimes they would have a comeback (“How appropriate, you fight like a cow.”). If they had a comeback it would be their turn to insult you and you then had to deliver a comeback.
When you first start these sword fights you only have a couple of insults and comebacks. You have to learn more by fighting the pirates that wander the island the game is set on. Eventually, you learn enough insults and comebacks that you can go fight the Sword Master, the best sword fighter on the island. Here’s where the dialog trees get really clever.
When you go to fight the Sword Master you find that she always gives insults and you always have to use comebacks. The catch is that the Sword Master uses insults that none of the other pirates ever use. You have to listen to what the Sword Master says and then choose a comeback that makes sense from the ones that you’ve learned fighting the lesser pirates.
The Secret of Monkey Island was one of the earliest games to use dialog trees and is, to this day, still one of the only games to actually incorporate them into real gameplay challenges. Even though it’s not quite perfect (again, critical design eyes). You have to spend a good chunk of play time fighting lesser pirates hoping to build up a set of unique comebacks. Fortunately, the writing is pretty funny during these fights so it doesn’t seem as much of a chore, but since the insults and comebacks get doled out randomly it can take a while to get everything you need to face the Sword Master.
Other games have tried to incorporate dialog trees into their gameplay as well. Tex Murphy: The Pandora Directive is one such game (and one of my top ten favourite games of all time). In this game you play Tex Murphy, a slightly less than hard-boiled 30’s inspired P.I. who lives in a post-apocalyptic world.
At one point Tex is caught by the villain of the game. It’s a tense and dangerous situation and you as Tex must successfully choose options from the dialog tree to escape alive. As with Last Crusade there is little feedback to guide you to the appropriate dialog options. This problem is compounded by the fact that you are given only a couple words for each dialog option rather than the full text of what Tex will say. This makes it very difficult to get through this section without dying at least a few times.
In looking at games with dialog trees, my discussion would not be complete without referencing one last game, The Mystery of the Druids. In this game you play an upstanding Scotland Yard detective (who is not above stealing from homeless people, breaking and entering without a warrant, and, oh yes, even murder of an innocent civilian) who is investigating a series of ritualistic killings. One of the selling features listed on the back of the box for this game is “Non-linear dialogues” (another term for dialog trees).
Technically speaking, the dialog trees in this game are indeed non-linear. You can pick any option you want in the trees as you would in any other game that features such trees. However, there is a catch. Buried in the trees are hidden “triggers”—options you must choose in order for the game to progress. Since the triggers are hidden there’s no way to tell when you’ve triggered them except to go through every possible dialog tree combination. And when I say every possible combination I mean exactly that.
Unlike other games that allow you to return to earlier sets of options, Druids requires you to go all the way down one dialog branch, then restart the entire dialog so you can go down to where you made your last choice and make a different one.
You can think of the dialogs of Druids in this way. Imagine you’re watching a TV show. Imagine now that every minute or two you have to press an “un pause” button to cause the TV show to keep going. On top of all of that, imagine that every three or four minutes the TV show suddenly jumps back to the beginning and plays through again, still requiring un pausing, only for one or two lines of dialog in that show to be played differently.
Druids is a very egregious example of poorly implemented dialog trees. However, it did highlight to me that, in many games, dialog trees are nothing more than extended cutscenes that you have to un pause every now and then. And that’s what really got me thinking about how dialog could perhaps be implemented differently.
But that’s my blog quota for this week. Now that we’ve gone through the history, I hope you’ll join me next week where I’ll discuss the design process that resulted from the analysis of what others had done.