From 40a14659f5cd8f005592280afa2249dc249eda6d Mon Sep 17 00:00:00 2001 From: Jason Self Date: Thu, 30 Jul 2015 11:01:39 -0700 Subject: [PATCH] Adding some initial documentation --- documentation/zil.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 documentation/zil.md diff --git a/documentation/zil.md b/documentation/zil.md new file mode 100644 index 0000000..c2caf8f --- /dev/null +++ b/documentation/zil.md @@ -0,0 +1,38 @@ +# Zork Implentation Language +This document covers the Zork Implementation Language, as originally +developed and used by Infocom for their games. + +## Format +This document is written using CommonMark, a markup language. More +information about CommonMark can be found at . + +## Copyright And Licensing +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Affero General Public License as published +by the Free Software Foundation ("FSF"), either version 3 of the +License, or (at your option) any later version published by the FSF. + +You should have received a copy of the GNU Affero General Public +License along with this document. If not see +. + +## Definitions + +A "definition" is used to describe a room, object, routine, etc. in or +used by the game. Each definition consists of a number of properties, +flags, and/or instructions. A program written in ZIL can be thought of +as consisting of one or more of these definitions. Definitions, +properties, flags, and instructions include brackets which must be +correctly paired and nested. + +## Syntax Definitions +Syntax definitions are used by the parser to determine valid sentence +structures. + +A simple example might be: + + + +Using this example, should the parser match the player's input to +"xyzzy" then the PRSA is set to magic. PRSI and PRSO would be set to +false. -- 2.31.1