Discovered

\

As you decend upon the guard, the light shines in your face. The guard yells out, draws his rifle, and shoots you dead.

The End.

Situations

In Undum, all interaction takes place in a situation. You
can think of it either as a 'Room' in traditional
interactive fiction (although it is less flexible than
that), or as a 'Page' in a Choose Your Own Adventure book
(though it is more flexible than that). At any point in
time, the character is in exactly one situation, and that
situation is responsible for everything that happens to
them. Situations are chunks of code that generate the output
you are reading here. For example, this text was generated
by the enter method of the first situation.

Saving and Loading

The only piece of the UI we haven't talked about is the
'Save' and 'Erase' buttons on the left panel. These are only
visible if your browser supports client-side data
storage. Clicking 'Save' stores your game, so you can pick
it up again later. There is currently no 'Load' button, the
game loads when the page loads. There is also no way to save
multiple games, and select which one you want to play. These
are both things I'd like to change in the future.

Potentially your game could generate huge amounts of
text. And that would be difficult to store client side
(there are unpredictable limits), especially when we move
towards having multiple save files. So instead Undum saves
your character as the list of links you clicked. Loading a
save-file consists of playing through your game again,
quickly. This is a beneficial approach for debugging too. It
means when you're polishing and correcting typos, you can
save and load the game and scroll through the transcript to
see your corrections. If we saved the text, your save file
would have the error in it and you'd have to manually replay
the game to see the correction.