The Mirage environment specification, available here, describes every attribute of a Mirage virtual world.
Our language implements all the attributes listed on the Mirage spec in an easy to follow syntax.

Basic Syntax

Our parser accepts plain text files as input, with each command given on a separate line. Comment lines begin with #.
The syntax of each command follows the pattern:

[keyword] [attribute1]=[setting1] [attribute2]=[setting2] ...

Each line contains a number of words, separated by spaces.The first word on each line is either one of the language keywords defined below, or the name of a user-defined shape.
Keywords and user-defined names are not case-sensitive. Further words on the line set attributes on the object in question, with the format
[attribute]=[setting].

Attribute names are not case-sensitive, but their values may be case sensitive depending on the requirements of Mirage. Some attributes are optional, so not all attributes have to be defined by the user on each line. Valid attribute names are given in the sections relating to each category of keywords.

There are five categories of keywords in our language, available to browse in the menu to the left.