Plot Automation Reprinted from The Journal of Computer Game Design Volume 5, Number 1, (October 1991): pages 10-12 Copyright 1991 by David Graves dag@hpsemc.cup.hp.com An automated playwright would allow interactive fiction plots to be developed on the fly in the player's computer. At first look, it seems impossible to develop software that could generate plot on the fly -- it seems the stuff of science fiction. The holodeck on Star Trek, for example, is a computer- controlled interactive fantasy that boasts of automated plot generation. One might think that the hardware and software technology required to achieve this goal are decades away. However, after having worked on plot automation for several years, I am convinced that the hardware and software technology required to develop an automated playwright exists today. Why then, don't we all have them in our games? One major limitation is our approach in writing interactive fiction. I'm not saying that the existing form of IF is wrong, but I do feel that there is room to extend the model for IF. After all, the IF genre has hardly changed since it first appeared in the mid-1970s. Traditional interactive fiction, for example, has been plagued by the "plot branch tree" concept -- few IF works have risen above this old paradigm. In addition to changing the model we use for IF, I propose that we need to extend our concept of story to make room for new modes of writing. I believe that even if we (the development community) had a working software playwright right now, we would be at a loss to develop story materials to feed into it. This article addresses the paradigm shift required to develop and use an automated playwright. Perhaps we can overcome some of the mental limitations which keep us from realizing an automated playwright in our published works. Why even bother developing an automated playwright? Interactive fiction attempts to draw the reader/participant closer, by allowing him some choices within the story. We have seen, though, how difficult it is for the IF author to relinquish control to the reader/player and still end up with an experience that tells a story. An automated playwright would bring new depth to our IF creations by fulfilling the will of the author in a place where he cannot be: within the home of reader as he experiences the story. This brings us to virtual reality, a newborn technology with much potential. I see some parallels with the beginnings of the computer game industry. Today, you can stand in a virtual environment and play catch with another person using a virtual ball. Doesn't that sound familiar? Will virtual reality be a bigger, better environment for PONG? We need to be pushing on plot automation right now, otherwise much of VR's potential will go untapped. What about using an automated playwright in our current product, right now in 1991? Clearly, works of interactive fiction that utilized plot automation would have a great increase in replayability. This would be tremendous "value added" for each dollar the buyer puts down. Modern IF works may have a rich interactive story, but they are typically a one-time experience. One more reason to work towards plot automation: because it's the natural next step in computer game evolution. Remember Aristotle's elements of drama? Starting at the bottom of the hierarchy, you have spectacle (everything that is seen), then music (everything that is heard), diction (the selection and arrangement of words), thought (the processes leading to choices and actions), character (patterns of choice; actionable attributes), and plot (combinations of incidents making the whole action). Early computer games allowed the player to manipulate objects in a physical world. The focus was on the lowest elements of drama. Later we could simulate thought: the computer opponent would make choices leading to action. In recent years we have seen the emergence of character in games. Artificial Personality supports the illusion that there is a character who shows recognizable patterns to his choices; that he has attributes of his personality that are revealed to us by his actions. This illusion is so intoxicating that we willingly suspend all disbelief that the character and situation is fictitious, and thus we are drawn in. The only step left in game evolution is to allow the participant to have an influence in the plot, while an automated playwright ensures that the combinations of incidents create a whole, well-formed action. When you look at it this way, the creation of the software playwright seems inevitable, doesn't it? To re-iterate, the accepted model for interactive fiction is preventing us from making progress towards plot automation. What, then, are the limiting concepts that we seem to be locked into? One: graphics depicting only physical world spectacle. This means that graphics are used to show you what the fantasy world looks like. Unfortunately, using graphics this way causes the plot to focus on the physical world. It becomes too easy for the story developer to focus on geography, because a fork in the road is the predominant example we see for decision trees in real life. This typically leads to a "travel resistance" plot. Two: plot as a decision tree. In a plot tree for most games today, there are failures at each of the "dead ends" of the tree. In early interactive fiction, the protagonist would die at one of these nodes. In our more enlightened times, the player does not necessarily die when he digresses from the "true path", but the plot dies. Three: viewing plot as a static construct. In traditional stories, the plot is static. It has to be: the media is static. Words on a printed page cannot change. Pick-a-path books allow us to make decisions, but the work itself is still static, so the experience very soon becomes insipid and uninteresting. Computer technology allows us to create works which are not static, but our concept of "story as a static construct" leads us to create interactive fiction in the form with which we are familiar. This leads to over-scripting in our interactive stories. Then we are stuck with writing a separate sub-story for each branch. Clearly, the IF author would have to write much more story than the traditional author, if a work of IF is to have significant variance in plot. Let's look at each of these concepts in the traditional paradigm and ask how we might make a shift in our thinking. First: graphics depicting thought and character. This would allow works of IF that focus on characterization and personality rather than focusing only on the physical world. Recall Aristotle's dramatic elements, with thought and character on the higher levels. While you cannot see "thought" in another person, their thoughts can be partially revealed to you by their face. Their expression, nuance of eye, lid, brow, jaw, and lip; each of these can provide a wealth of information, some of which may be conflicting or ambiguous. Similarly, you can gain insight into the "character" of a person by observing their expressions as they react to a situation. This is critical to the artistic advancement of our works. We cannot have a rich interpersonal fantasy experience in a world which depicts only objects in a physical world, or a world which treats the actors as objects to be manipulated. Next: releasing more control of the plot. At the heart of interactive fiction is interactivity. We present the player with choices, as a means to draw him into the story. The player gets great pleasure from these making choices. A skillful IF designer will give the player the illusion that he has tremendous freedom. However, it seems that we give the illusion of freedom to the player, then take it back again by using heavy scripting. In order to ensure that the player experiences the full emotional impact of the story, the author ensures that event A must precede event B. If we wish to give some freedom to the player, and not take that freedom back again via scripting, then we must release some of the control over the plot of the story. Plot trees are the perfect model for organizing a heavily scripted work of IF, so this suggests that if you wanted to create a work of IF that was not heavily scripted, then a plot tree would not be the best structure for organizing your story. I suggest that plot trees are useful as an intermediate step in the development of a work of interactive fiction, just as you would write an outline as a step in composing a paper. @From this tree, you would then develop a plot network. Now the player may have a number of plot experiences, rather than a single plot path. There will still be some plot events that must precede others, but there will be more freedom than before. However, a plot network is still a static construct. You can draw a diagram of it on a single piece of paper. It presents plot paths that the player may traverse, but the structure of the paths is itself static. When we look at a story this way, we are still seeing plot as data, and static data at that. If we could view plot as a process, rather than as data, then we could begin to rise above static plots. This is where the author begins to regain some control. Assuming that the author has released control over the strict sequence of events in a story, he can still influence the plot through the rules he defines for a given story's plot process. The author crafts the story by controlling it's content, not it's plot. She selects the scope of the theme and the overall "message" of the work, which are exposed through individual plot events. The process by which these "plot units" are assembled is defined by the author's rules. The rules are applied at run- time, in the player's computer, taking into account all that has taken place in the story's progress so far, which includes the choices made by the player. In effect, the player and the author write the work of IF together. So, if we are able to view plot as a process, rather than as a static construct, then we are freed from seeing plot as a sequence. Plot emerges from a broad set of plot potentials. These potentials are loosely defined in terms of plot units (which are static data), and plot rules (which can interact dynamically). To exploit the potential of interactive fiction, it is important to not nail things down. The nature of a specific plot is unknown to the player, just as it is unknown to the author. The ambiguity (in terms of the many variables and many rules) is what creates the opportunity for different experiences in the same "story" definition. The player gets to have a significant impact on the plot. The great increase in replayability is the icing on the cake. At this point it sounds like the automated playwright must be a huge program taking up vast resources. How can we program that, let alone fit it into a microcomputer? It turns out that the playwright does not need to make decisions about each detail that happens in the story. In fact, the playwright can sit back and watch the story go by tossing in a plot change once in each five to ten minutes. You can get a tremendous amount of plot springing forth from personality state. That's what Artificial Personality is designed to do. It is pretty much accepted that Artificial Personality is achievable today. Many story-games on the market show characters who can make simple plans and display simulated emotions. Thus, the playwright can focus entirely on high plot, since the Artificial Personality logic focuses on Aristotle's thought and character. You can even allow conflict between the playwright and the artificial personality logic, which will allow for the generation of interesting plot conflicts. This represents the philosophical argument of free will versus determinism. The playwright represents determinism; it wants to see the plot go in a limited number of directions. The Artificial Personality module represents the thought and character of each of the agents in the story; thoughts and patterns of choice which might be in conflict with each other, and in conflict with the playwright. This is alright, though. Conflict is at the center of drama. Okay, so if an artificial playwright existed now, how would people develop material for it? Here is my proposed process: Write a story. Turn it into a plot tree. (In traditional IF, you would be done with the design at this step). Cut up the tree, such that pieces can be reassembled in a variety of ways. You might develop a plot network as an intermediate step. Eventually, though, you remove most of the static paths connecting plot units, replacing them with rules that suggest how plot units might fit together. In a heavily scripted story, the plot units would fit together only one way. Speaking metaphorically, this is the equivalent of a jigsaw puzzle. In a loosely scripted story, the plot units would fit together in a variety of ways. This is the metaphorical equivalent of building blocks. Next, examine your set of plot units and plot rules, looking for "dead ends", and fill these in with additional plot pieces. It's important to do "path folding" so that a dead end leads you back into the productive mainstream of the story's theme. It is not technology that is keeping us from integrating the player's actions into a computer assembled plot. We are limited by the mindset we apply to this new area of opportunity. We cannot expect to move rapidly forward carrying the baggage of the traditional interactive fiction genre. By challenging our basic assumptions about the interactive fiction model, we can exploit new technologies such as plot automation.