==== Basic Binary Types ==== ^ Name ^ Size ^ Description ^ | Bool | 1 | Boolean type, either 0 or 1 | | Byte | 1 | | | Int | 4 | Integer | | Float32 | 4 | Floating point number | | CID | 8 | two integers, the first one is FIXME: always? 0x41d80000\\ They somehow serve to distinguish between CObject classes | | String | 4 + string length | Pascal-style string (Integer length, char0, char1, char2) | | StringZ | 1 + string length | C-style string (char0, char1 ... charN, \0)\\ Not a native type, probably used in foreign objects only | | Array | 4+sum(sizeof(obj0..N) | Integer # of items, then the actual items.\\ Note that CObject items have variable size | | Point | | | | Poly2D | | | | CObject | variable | CObject-derived objects, usually starting with CID. \\ NULL pointers to CObjects are encoded as Integer "0" |