As products such as enhanced e-books become serious contenders in the writing medium, the relationship between writer and machine is going to become more important than ever. Writers expect and demand total control over their output. We’re used to agonizing over the right word, reading our writing aloud to find the right cadence, and being suspicious of meddling editors. To the extent that writing is a craft, we take pride in our craftsmanship; like carpenters and dressmakers, we want everything just so. A misplaced word will stand out like a snarled stitch in a tapestry, and writing, until the publishing process, is usually solitary. Finding a good collaborator, one who can work with you to maintain a consistent voice and achieve a unified output, is rare.
For the last decade or so, I’ve found my own writing increasingly shared with a series of quirky, ephemeral, and stubborn collaborators, who often have terrible aesthetic judgment, and are usually of questionable talent. I’ve had to give up various amounts of control to them, sometimes with hopeful optimism, and sometimes in frustration. These collaborators were not humans, they were algorithms; little bits of code, designed by myself or others, in order to help authors tell interactive stories. While in game studies much has been written about the relationship between designer and player, I’d like to talk here about a different conversation, the one between writer and machine, the one that takes place when building an interactive story.
A key point of contention between these collaborators is that they can seem to speak very different languages. Many supposedly story-centric games banish the story to non-interactive “cut scenes,” and many choice-centric publications (many know these from the eponymous “Choose Your Own Adventure” gamebooks, but they also exist in many modern games and, now, in some enhanced e-books) pretend to offer alternative paths but are actually railroading the player back to the “right” plotline; we might call these sleights-of-hand “crocodile choices.” Hypertext fiction offers less constraint but at the same time affords few opportunities for a writer to maintain narrative coherence. Ideally, choices should matter to the story and each reader should be entitled to a sound plot, with solid narrative structure that respects her choices. But such experiences are still rare, in part because honoring this contract seems to bring a Sisyphean burden upon the author. She must endlessly write out by hand the consequences of each alternative, and risk getting lost in a Borgesian labyrinth of forking paths.
Blue Lacuna, a multi-year project to create a story with meaningful choices. Many of a player’s decisions in Lacuna concern his relationship with a character named Progue, who is able to develop in a dozen different directions, depending on how the player cultivates that relationship. Let him get his way in one scene? He’ll start thinking of himself as more dominant, which could shape him into a father figure. Ignore his offer of help? He’ll like you less, which could be a seed that (chapters later) pushes him towards becoming an antagonist. The variations, from entirely different scenes to subtly different worded lines of dialogue, were all carefully considered. Progue functions as a collection of hundreds of tiny systems that all required endless experiments and tinkering to perfect, (a bit like the beautiful but fragile clockwork automaton in the film Hugo). The writing of dialogue was dizzyingly complex. I was writing narratives in superimposed possibility states, destined to collapse into single stories as players made their decisions. Scribbled diagrams and flowcharts helped, but mostly I had to keep these variations in my head, a profoundly surreal experience. When I took a break to write some traditional fiction, it seemed almost refreshingly easy. I kept asking myself: you mean there’s only one way this turns out?
While I’m proud of Lacuna, this brute-force approach was perhaps wrongheaded: it doesn’t play to the strengths of a computer system as a collaborator. Computers are *good* at managing possibility states, even when there are millions to choose between. More recently I got to work on a project driven by more robust machinery. PromWeek, a research game produced at UC Santa Cruz, uses a cutting-edge social artificial intelligence system to simulate eighteen high-school characters in the drama-filled week before their senior prom. As the lead writer on the project, I was tasked with authoring a library of scenes that could narrate changes to the “social state” underlying the simulation, events like breakups, recognition of someone’s coolness, or two enemies burying the hatchet. Unlike Lacuna, this was not a single story with variations, instead it is a sandbox strewn with narrative pieces, offering uncountable permutations of high-school drama for the player to explore. For once their choices would actually be forging new stories. My job was to make a robust set of pieces they could use to help tell them.
While Lacuna‘s structure guaranteed a certain amount of narrative consistency, with Prom I couldn’t guarantee anything—not what had happened before or after, or even which characters would perform a certain scene. How do you write a break-up conversation when you don’t know anything about your star-crossed lovers? Not their gender, their personalities or why their romance didn’t work out? The obvious step is to add logic to each scene restricting the conditions under which it can appear. Then you could specify that *this* scene should only take place between two shy characters, or *that* one with someone who has a forbidden crush. But the more specific a scene becomes, the less likely it is to ever show up in a given player’s sandbox. Prom’s writers had to walk a tightrope strung between being too specific, making assumptions or mentioning details that would limit the number of scenes available in any given context, and being too ambiguous—writing scenes so drained of the meaty details that interest readers as to be bland and boring. Our half of the collaboration became about lobbing softballs with just enough spin that the system could hit them back, and pinning the details we did provide into the specific story space that the player had defined.
Though terrifying at first, this compromise became one of Prom‘s greatest strengths. Writers fed the system a cast of characters, encoded personality traits, and complex relationships. With this information, the AI driving those characters’ behaviors slowly became proficient at *performing* our angst-ridden relationships. The spoiled cheerleader started using the most cutting insults, and the shy introvert would embarrass himself in the most heartbreakingly familiar ways. Our collaboration found a rhythm. The writers were focused on the moment-to-moment business of zingers, putdowns, and heartfelt speeches, while the code was casting the right players in the right scenes and stringing them together in a way that honored player choice. Though writing for Prom was never easy—even the tool we built to manage authorial complexity made crafting dialogue feel like driving a tank—the results were fascinating and encouraging. I’d found a computer collaborator at last that wasn’t letting me down—it was helping me to shine.
After these two ambitious projects I’ve been focusing on smaller experiments. In my latest piece, Almost Goodbye, my digital collaborator does the opposite job as the one from Prom; it now is handling the moment-to-moment business while I take care of the big picture. If Prom was more of a game, Goodbye is closer to literature, but the processes under the hood have grown more sophisticated than the ones used in Lacuna. In my current work as a computer science Ph.D student I’d like to find a place where this pendulum can come to rest at some interesting new intersection between computation and literature, one where the seams that stick out in most story-game projects become harder and harder to find.
Whether writers find that magical land or not, as fiction begins to incorporate computation it will change the way we think about the writing process. In my own writing, I’m slowly making peace with my capricious collaborator. Part of the adjustment is the realization that who I’m really collaborating with is myself. My own ideas, styles, and philosophies are there but are now reified into executable code. The process of crafting that code forces a precision of thought which I didn’t use before in my fiction, but now that it’s there I can’t imagine making stories without it. Ultimately, I believe writing with algorithms is just using a new kind of pen. A quantum pen, if you will, one that will let us write with new and exciting possibilities.
Aaron Reed is a key figure in modern interactive fiction. He is at least the caretaker of interactive fiction; his projects in the medium are numerous and always groundbreaking. Most prominent amongst them has been Blue Lacuna, a text game containing over 760 pages of player-driven story, which received numerous awards and accolades. He is also the author of Creating Interactive Fiction with Inform 7, a comprehensive and conversational guide on how to program story-games in interactive language, and his work has been featured in literary journals and at indie game festivals.