Pikmin 2 cutscene file
Jump to navigation
Jump to search
Cutscenes in Pikmin 2 are controlled by a file called demo.stb
. This file can be found in each of the cutscene archives in /user/Mukki/<name of cutscene>/demo.szs
.
This page describes the format of the file. The page is work in progress.
Offset | Type | Description |
---|---|---|
0x0 | char[4] | String that spells "STB", terminated by a null byte |
0x4 | uint16 | Byte order mark? Always 0xFEFF |
0x8 | uint32 | Total file size |
0xC | uint32 | Amount of objects |
0x10 | char[8] | String that spells "jstudio" |
0x18 | uint8[6] | Likely 6 bytes of padding |
0x1E | int16 | Unknown. Always 0x4? |
After the STB header follows object data. The following info explains that object data:
JFVB
JFVB is one of the possible objects that can appear in the stb file. The size of the JFVB data is usually big because it's like its own section inside the file. For the purpose of the object count, JFVB counts as one object
Offset | Type | Description |
---|---|---|
0x0 | uint32 | JFVB total data size (starting with 0x0 to end) |
0x4 | char[4] | String that spells "JFVB" |
0x8 | FVB data | See table below for more info |
Offset | Type | Description |
---|---|---|
0x0 | char[4] | String that spells "FVB", terminated by a null byte |
0x4 | uint16 | Byte order mark? Always 0xFEFF |
0x6 | uint16 | Unknown, always 0x100? |
0x8 | uint32 | FVB data size (starting with "FVB" string to end) |
0xC | uint32 | Amount of entries in FVB data |
0x10 | FVB data entry | See table below for more info |
Offset | Type | Description |
---|---|---|
0x0 | uint32 | entry size starting from 0x0 to end |
0x4 | uint16 | entry type? |
0x6 | uint16 | padding |
0x8 | unknown | entry data depending on entry type? |
FVB entry types: 1 (composite?), 2 (constant?), 3 (transition?), 4 (list?), 5 (list parameter?), 6 (hermite?)