MAPINFO
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
Ignored.
SNDP
Sound Program
(HLTaskFunc)sndCtrlSoundProgram
SNDD
SNDA
SNDR
SNDM
SMAP
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (SMAP) |
0x04 | 0x04 | string | Map name 1 |
0x08 | 0x04 | string | Map name 2 |
0x0C | 0x04 | uint | Size in bytes |
SBTS
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (SBTS) |
0x04 | 0x04 | string | Map name 1 |
0x08 | 0x04 | string | Map name 2 |
0x0C | 0x04 | uint | Size in bytes |
LGHT
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
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
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
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (SCEX) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | string | Scene name? |
0x0C | 0x04 | uint | Size in bytes (relative to 0x08) |
TRCK
https://tcrf.net/Shenmue/Source_Code#.5CSCENE.5C99.5CMS08.5CSEQCONV.C
A track contains information for an cutscene.
The track segment has no data itself, it just contains all the child segments which do contain the data.
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (TRCK) |
0x04 | 0x04 | uint | Size in bytes |
ASEQ
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (ASEQ) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x04 | ? | Some flags? (0x09 is 7 mostly) |
0x0C | 0x04 | uint? | Unknown |
0x10 | 0x10 | string | Some .qst file? |
0x20 | 0x4 | uint? | Unknown |
0x24 | 0x? | TOC |
Table of content entry (12 bytes)
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x01 | byte | Flag? |
0x01 | 0x01 | byte | Flag? |
0x02 | 0x02 | ? | Reserved? |
0x04 | 0x04 | string | Character name and other stuff (props?) |
0x08 | 0x04 | uint | Index |
ACAM
Probably camera animation.
AMOV
ASTR
AUVW
LGHC
RFBD
EYES
HAID
HADT
HAND
FACX
FADE
MBTK
FOBJ
FCLP
DOOR
LGHS
SCN3
SCN4
REGD
Empty.
WTHR
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
CHRD
CHRS
The CHRS contains data that is defined by the STRG node. CHRS and STRG are entangled.
STRG
CHRS and STRG are entangled.
Position | Length | Type | Description |
---|---|---|---|
0x00 | 0x04 | string | Identifier (STRG) |
0x04 | 0x04 | uint | Size in bytes |
0x08 | 0x0? | strings | Strings with zero termination |