From: Jason Self Date: Thu, 30 Jul 2015 18:01:39 +0000 (-0700) Subject: Adding some initial documentation X-Git-Url: https://jxself.org/git/?p=substrate.git;a=commitdiff_plain;h=40a14659f5cd8f005592280afa2249dc249eda6d;ds=sidebyside Adding some initial documentation --- 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.