Difference between revisions of "MAPINFO"
Jump to navigation
Jump to search
(→SCEX) |
(→SCEX) |
||
Line 186: | Line 186: | ||
===[[SCEX]]=== | ===[[SCEX]]=== | ||
===SCN3=== | ===SCN3=== |
Revision as of 18:54, 12 May 2019
Memory Models
Could be the MAPINFO memory model:
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (SCNC) |
0x04 | 0x0? | ? | Variable size (contains pointers) |
0x0? | 0x04 | string | Identifier (USE ) //space at the end |
0x0? | 0x0? | ? | Variable size (contains pointers) |
Found at qword_7FF717119290 (v1.03) in the code segment (CS). It is accessed when reading the TRCK segment.
struct s1 { signed char[8] pad8; signed char f8; //bool set to 1 at end signed char[7] pad16; struct s0* f16; struct s2* f24; //ASEQ struct s2* f32; //ACAM struct s2* f40; //AMOV struct s2* f48; //ASTR struct s2* f56; //ALIP uint64_t f64; uint64_t f72; signed char[8] pad88; int32_t f88; int32_t f92; int32_t f96; int32_t f100; signed char[12] pad116; struct s2* f116; signed char[4] pad128; struct s2* f128; signed char[42376] pad42512; int32_t f42512; int16_t f42516; };
struct s0 { signed char[4] pad4; int32_t f4; int32_t f8; };
struct s2 { int32_t f0; int32_t f4; signed char[1] pad9; signed char f9; signed char[2] pad12; int32_t f12; };
ATTR (Attribute)
Ignored.
SNDP (Sound Program)
LGHT (Light)
Parent Node:
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (LGHT) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | string | Unknown (Sub node name) |
0x0C | 0x04 | uint | Size relativ to 0x08 |
Child Node:
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (LGHT) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | float | Unknown |
0x0C | 0x02 | ushort | Entry count |
0x0E | 0x02 | short | Flag for something (cmp 3) |
0x10 | 0x04 | ? | Unknown |
0x14 | 0x04 | ? | Unknown |
Child Node Entry (32 bytes):
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x02 | short | Unused? |
0x02 | 0x01 | byte | Unknown (same value as 0x00 but used) |
0x04 | 0x01 | byte | Unknown |
0x06 | 0x01 | byte | Unused? |
0x08 | 0x14 | half floats | Unknown |
0x1E | 0x02 | short | Unknown |
ECAM
Event Cam. Used when interacting with object (switching camera). Has something to do with HPMa/HPMb.
COLS (Collisions)
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (COLS) |
0x04 | 0x04 | uint | Size in bytes |
Followed by 4 byte string identifier. Example: 0000
COLI
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (COLI) |
0x04 | 0x04 | uint | Size in bytes |
HGHT
EVNT
UNDU
SOND
PROP
WALK
FLDD (Collision Field)
Used often when moving around.
PROP
Header:
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (PROP) |
0x04 | 0x04 | uint | Content offset |
0x08 | 0x04 | uint | Footer offset |
Footer:
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | uint | Positions offset |
0x04 | 0x0? | ? | Unknown offsets |
DOOR
SCEX
SCN3
SCN4
REGD
Empty.
WTHR (Weather)
Used by WEXE ((HLTaskFunc)ExecuteWeather)
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (WTHR) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | uint | Unknown |
0x0C | 0x04 | uint | Entry count? |
0x10 | 0x04 | uint | Entry count? |
0x14 | 0x04 | uint | Reserved or Empty |
EVFD
Empty.
LSCN
Empty.
MAPR
MAPT
SCRL
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (SCRL) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | uint | Either fully F or 0 |
Only present 2 times in sm2, but in sm1 it's common.
CHRD (Character Data)
The CHRD segment contains models character properties that will be loaded for the mapinfo.