Overview

syntax
data types
sections
section_InfoHeader
section_Names
section_pos
section_Images_Full
Section_Images_Tile


Sheet 1: syntax

syntax description
[section] start of section, signaled by square brackets


, Commas separate values in your project file
[a-z]=[A-Z] The parser is case-insensitive; capital and lowercase letters are treated the same in symbols.
newlines statements over separate lines are treated the same as a single line entry
; Marks the end of a statement
-- Double hyphens at the start of a line denote a comment, and the line is ignored

Sheet 2: data types

Type Desc Notes
[] appended brackets indicate array of [#] entries, of type
bool A special enumerated type which has two values: on and off. Alternatively true and false can be used, as well as yes/no. (on=true=yes, off=false=no)
enumerated A value type with a set amount of predefined symbols, each of which represents an abstracted value
number a positive whole number.
-number a signed (+/-) whole number
string Literal text, closed with a double quotation mark at each end (ex: ”this is a string”). The quotes are omitted in evaluation. If you want to include literal quotes in your string value, you need to do so with '' (two single quote marks (')). These will be automatically converted to a double quote mark upon evaluation. Otherwise, double quote marks will be interpreted as the start or end of a string.
string[length] a string with a fixed maximum length
structure A type that consists of an ordered array of fields, closed by curly braces, with each field separated by commas. Format is {valA,valB,valC,....} ; It reads the fields in order listed in documentation.
type[n] if one or more subscripts are given in brackets, this means there are n entries of values of that type in array multi-dimensional arrays are given in [subscript1][subscript2][subscript3]...[subscriptN] for n subscripts. The last subscript is least significant, the first is most significant. For example [y][x] is interpreted as [1][1],[1][2],...,[1][x],[2][1],...,[2][x],....,[y][1],...,[y][x]. In a 2-d array, the x “dimension” is read as a “row”, and after each row is read, the y dimension is incremented and that row is read, and so on. Expand that explanation to 3 or more dimensions, with the left-most dimension being processed first, and the rightmost last.
(n1..n2) Subtype of number which only takes values in the range from n1 to n2

Sheet 3: sections

Here are the recognized sections

Section Header Desc. Notes
[InfoHeader] The basic information for the object is given in this section.
[Names] The text strings containing the object names are in this section
[pos] This section gives the positions for each tile,
[Images_Full] A section used by the extractor, which denotes the location of the full views of the object if an Images_Full section is present, then Images_Tile is ignored
[Images_Tile] The images for separate tiles. Use the full images for reference as to which one goes where.
[end] denotes end of project file; can be omitted

Sheet 4: section_InfoHeader

Values(in order) Data Type Description Notes
datName string[8] Name of the object. Will also be the filename (max 8-characters)
tileDim number[2] {c,r} where c is the columns and r is the rows. If either or both are zero. the number of tiles is determined by the tile position area
remaps bool[2] States of the two remap colors. on=used, off=unused
cursorSel number Mouse cursor for construction
buildFee -number cost to build object
removeFee -number cost to remove object
landmark bool Whether or not this is a “sightseeing” item peeps “take pictures” of.

Sheet 5: section_Names

Value Alias Data Type Notes
english_UK english string Can be referred to as english_UK or english, same goes for other aliases of a language identifier
english_USA american string If the text is “#copy_UK#” for any string other than the UK string, the UK string will be copied to the rest of the languages automatically, and the parser will skip to the next section. Be sure to first assign the UK string.
francais french string
deutsch german string
espanol spanish string
italiano italian string
nederlands dutch string
sverige swedish string
korean
string
chinese
string
chinese2
string
portugese
string

Sheet 6: section_pos

Value Data Type Field(structs) Field Data Type Desc Notes
tiles tilePosStruct[]

Usually (numRows*numColums) entries

+ col -number column (x-axis) of tile, leftmost=0 row = -1 or col = -1 marks end of tile table. This is necessary only if numRows or numCols is set to 0 in the infoHeader section.


row -number row (y-axis position) of tile, top-most=0


baseHeight -number base height of the tile (in pixels, not height units)


clearance number In height units(8 pixels/unit)


hasSupports
if not given, the default or the state given in the header is used.


quads bool[4] Whether each quad is occupied or not. Ordered in {NE,SE,SW,NW} order


walls bool[4] Whether each side has a wall or not

Sheet 7: section_Images_Full

Value Data Type Desc Notes

transparentColor (0..255)


The palette index that serves as the transparent color for images
remaps1 remapStates

Specifies whether certain 12-entry hue spans are mapped to remap color 1

+ grey bool 10 (hue span Index) on=remap to remap1, off=don't re-map


gold bool 22


tan bool 34


yellow bool 46


brickRed bool 58


pukeGreen bool 70


oliveGreen bool 82


limeGreen bool 94


peach bool 106


indigo bool 118


blue bool 130


seaFoamGreen bool 142


purple bool 154


red bool 166


orange bool 178


teal bool 190 Water color


pink bool 202 Default remap #2


rustBrown bool 214


remap1 bool 243 Default remap #1
remaps2 remapStates

Specifies whether certain 12-entry hue spans are mapped to remap color 2 Same format as remap, for the 2nd remap color
menuSE string menu images ( file path relative to the location of the project file. ) All images must be 256-color Windows BMP files A special string value of “auto” causes the image to be read from the default filename for the image.

menuNE string



menuNW string



menuSW string



viewSE string view images


viewNE string



viewNW string



viewSW string




Sheet 8: Section_Images_Tile

Value Data Type Field(structs&enum) Field Data Type Desc Notes
transparentColor (0..255)


The palette index that serves as the transparent color for images
remaps1 remapStates

Specifies whether certain 12-entry hue spans are mapped to remap color 1

+ grey bool 10 (hue span Index) on=remap to remap1, off=don't re-map


gold bool 22


tan bool 34


yellow bool 46


brickRed bool 58


pukeGreen bool 70


oliveGreen bool 82


limeGreen bool 94


peach bool 106


indigo bool 118


blue bool 130


seaFoamGreen bool 142


purple bool 154


red bool 166


orange bool 178


teal bool 190 Water color


pink bool 202 Default remap #2


rustBrown bool 214


remap1 bool 243 Default remap #1
remaps2 remapStates

Specifies whether certain 12-entry hue spans are mapped to remap color 2 Same format as remap, for the 2nd remap color
tileImages tileImageStruct[1+nTiles][4]


4 views of each tile. The first “tile” is the menu image (4 views as well)

+ xOfs -number offset from the origin ((0,0)=center of tile) to place image


yOfs -number


bitmapName string file path of the view's bitmap file, relative to the location of the project file. All images must be 256-color Windows BMP files A special string value of “auto” causes the image to be read from the default filename for the image.