Camera Properties Crash 2/3

Property 0x29: cameramode
00000001 000000MM MM = 01; 3d views (normal route/game over screen/titles)
 * MM = mode

MM = 02; limited input? (platform routes/cutscenes)

MM = 03; sideviews MM = 04; all round view (warp rooms)

MM = 08; limited input? (transitional space/no man's land )

Property 0x4B: vectors/path
CCCCCCCC + CCCCCCCC x [XXXX ZZZZ  YYYY]
 * CCCCCCCC = count of path points
 * XXXX = X-coordinate
 * ZZZZ = Z-coordinate
 * YYYY = Y-coordinate

Property 0xC9: ?
T.b.d. Might be related to bonus or transportation platforms

Property 0x103: SLST
Contains the EID of the accompanying SLST entry

Property 0x109: path links
This property contains information about which (neighbouring) paths and zones are linked with the current path. It consists of 4-byte words, with the 'path beginning/ending' as the main building block.

The property can have different lengths and formats depending on the type of situation. A path can begin where another one ends/end where another begins, be the very end/beginning of the level or converge from/split up in multiple paths.

A path beginning/ending contains the following data:

MMZZPP** The indices refer to the zones in the order as they come in the zone's header. The first zone is always a reference to the itself (index 0x00), i.e. the zone where the header is in.
 * MM = begin/end flag, 01 is for beginnings, 02 for endings
 * ZZ = (neighbouring) zone index where this path begins if (MM=01) / ends if (MM=02)
 * PP = (neighbouring) zone's path index where this path begins if (MM=01) / ends if (MM=02)
 * ** = unknown; (neighbouring) zone's path's point index where this path begins if (MM=01) / ends if (MM=02)

Type 1 and 2: (first word == 1)

Type 1: path with single end and beginning (MM second word == 00)

00000001 0000CCCC  01ZZPP**  02ZZPP** Type 2: path with single beginning (MM second word == 01)
 * CCCC = count of path points - 1 (end is at)

00000001 01ZZPP**

Type 3 and 4: (first word !== 1)

Type 3: path with single end (MM second word == 02)

CCCC0001 02ZZPP** Type 4: path with multiple endings/beginnings (MM second word !== 02)
 * CCCC = count of path points - 1 (end is at)

EEEEBBBB CCCC0000 + BBBB x [01ZZPP**] + EEEE x [02ZZPP**]
 * EEEE = count of endings
 * BBBB = count of beginnings
 * CCCC = count of path points - 1 (ends are at)

Property 0x130: camera's field of view
00000001 FFFFFFFF
 * FFFFFFFF = field of view; the default value is 0x120

Property 0x162: ?
T.b.d. Might be an ID, value seems to be increase throughout the level

Property 0x16D: camera path related
T.b.d.

Property 0x173: camera path number in zone
00000001 NNNNNNNN
 * NNNNNNNN = camera path number in the zone, the first one being 0

Property 0x174: camera path item number
00000001 NNNNNNNN
 * NNNNNNNN = camera path item number in the zone; is either 0, 1, 2

Property 0x176: camera path number of links
00000001 NNNNNNNN  EEEEBBBB
 * CCCCCCCC = count of path points - 1
 * EEEE = number of linked paths at end
 * BBBB = number of linked paths at beginning

Property 0x1AA: camera path related
T.b.d.

Property 0x1FA: camera path backgrounds
This property contains the ABGR channels (Alpha, Blue, Green, Red respectively) to form the background color in the camera path. Camera paths can have two The base format is:

00000003 FFFF**** Type 1: single color set (flag == 0) and (X < 4)
 * FFFF = flag, if set to 0, there is only one (set of) background color(s)

00000003 0000000X  AABBGGRR (top) AABBGGRR (bottom) Type 2: two color sets (flag == 0) and (X >= 4)
 * RR = value of red channel
 * GG = value of green channel
 * BB = value of blue channel
 * AA = value of alpha channel
 * X = background division, if set to 1, only the top color is used to fill the entire background, if set to 2, both the colors are used with the background split in a top and bottom color

00000003 0000SSSS  0000000X  AABBGGRR (top 1) AABBGGRR (bottom 1) 0000000X  AABBGGRR (top 2) AABBGGRR (bottom 2)
 * SSSS = index of pathpoint from where 2nd color set starts to be applied

Type 3: three color sets (flag !== 0)

00000003 EEEESSSS  0000000X  AABBGGRR (top 1) AABBGGRR (bottom 1) 0000000X  AABBGGRR (top 2) 0000000X  AABBGGRR (bottom 2) 0000000X  AABBGGRR (top 3) AABBGGRR (bottom 3)
 * EEEE = index of pathpoint from where 3rd color set starts to be applied
 * SSSS = index of pathpoint from where 2nd color set starts to be applied