The problem that transfixes most beginners in this field is the apparent dilemma of "plot versus interactivity". The thinking here is that a plot is a predefined sequence of events, but interactivity requires that the player be able to influence the sequence of events. Thus, it would appear that interactivity makes plot impossible. I believe this to be true only if you take a small-minded view of plot. Yes, if you think of plot as a sequence of events, then interactivity destroys plot. But let's not get too tied down in the specifics, OK? Is not West Side Story a rehash of Romeo and Juliet? Sure, the sequence of events is different, but isn't it the same story? Think of how many stories have been told and retold a thousand different times, each time with different details of wording, while preserving the basic story. The Arthurian legends are the best example of this process. In Mallory's Le Morte D'Arthur, Tennyson's Idylls of the King, Twain's Connecticut Yankee in King Arthur's Court, Disney's Sword in the Stone, Lerner/Lowe's Camelot, Boorstein's Excalibur, and Zimmer-Bradley's Mists of Avalon we have seven radically different versions of the same tale, yet they share common truths. So the content of the story does not lie in the precise details of the plot; it lies in something more abstract, something deeper. I can fiddle around with the plot and still preserve the story. The trick, of course, is to understand the concepts behind the story well enough to permit variations that remain true to the story. Thus, any Arthurian story would do well with a romantic triangle involving Arthur, Guenevere, and Lancelot, but this triangle should contain an element of tragedy. The precise details of whether Lancelot beds Guenevere, or how many times he does so, or when and how Arthur finds out are immaterial to the story, but crucial to the plot. What's important are the interpersonal dynamics going on, not the actual events. The events serve to reveal those interpersonal dynamics, but they are windows on the story, not the substance of the story itself. A story is like a house with many windows; you can see the story from many different angles and still understand it. Thus, the meat of the story is the interpersonal dynamic, not the events. People read the events and infer the interpersonal dynamic; our task is to reverse this process. Our program must start with the interpersonal dynamic and generate events in response to the player's actions. The precise sequence of events will be variable, but the underlying story will always be the same.