summaryrefslogtreecommitdiff
path: root/stage.txt
blob: 751b1f0c68ff52422b1635dc1fb89a69fb23a56e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Simple, Textual, Adventure Game Environemnt
===========================================

This is a program that loads games from files that use the Stage language to
describe a complete adventure game.  There are lots and lots of possibilities.

This documentation is primarily aimed at game developers initially.

Structure
=========

A game is divided into several pieces.  At any point during the play of a game
a player will be "in" a situation.  Each situation provides context for the
player.  They can be thought of like rooms in a MUD game or locations in an old
text adventure title, but are more flexible, as they allow different possible
transitions between them as well as different contexts for commands.

Each situation is effectively a block of code that is run when the situation is
made active.  I.e. that code runs when the player enters a room, say.  Every
time a situation starts it contains an empty context, but may have access to
global parameters.

Variables may be set and used, and there are some special variables that you
have access to that control the way the system works and interactions with the
player.

New functions can be defined that can be used from any code.