scmJS docs

How the sections fit together

Most sections stand alone, but many numbers in them point into another section, and a few sections decide the size or the meaning of others.

Which sections point into which

A number in Points at
SPRP, FORC, MRGN, UNIS and UNIx, SWNM, WAV, and the actions of TRIG and MBRF A string in STR, or STRx on a Remastered map that has one. String numbers count from 1, and 0 means none.
A condition or action of TRIG A location of MRGN, counted from 1: location 1 is the first record, and Anywhere, the 64th record, is location 64.
The Create Unit with Properties action A slot of UPRP, counted from 1.
UPUS The slots of UPRP, in the same order.
A UNIT record's linked unit Another UNIT record, by its serial number: an add-on and the building it belongs to, or two nydus canals.
IOWN The same twelve player slots as OWNR; editors show one and the game reads the other.
MTXM and TILE Tile groups of the tileset ERA names.
ISOM The values of the tileset ERA names.
A DD2 record A doodad of the tileset ERA names. The doodad's tiles are in MTXM and its sprite, if it has one, in THG2.

DIM sets the size of four sections: MTXM and TILE hold two bytes per tile, MASK one, and ISOM (width ÷ 2 + 1) × (height + 1) × 8 bytes. VER decides which of the settings tables the game reads; see Revisions.