Difference between revisions of "Pikmin 2 cutscene file"

From Pikmin Technical Knowledge Base
Jump to navigation Jump to search
(Started writing down info)
 
(more info)
Line 12: Line 12:
 
|0x0
 
|0x0
 
|char[4]
 
|char[4]
|String that spells "STB"
+
|String that spells "STB", terminated by a null byte
 
|-
 
|-
 
|0x4
 
|0x4
Line 72: Line 72:
 
|0x0
 
|0x0
 
|char[4]
 
|char[4]
|String that spells "FVB"
+
|String that spells "FVB", terminated by a null byte
 
|-
 
|-
 
|0x4
 
|0x4
Line 89: Line 89:
 
|uint32
 
|uint32
 
|Amount of entries in FVB data
 
|Amount of entries in FVB data
 +
|-
 +
|0x10
 +
|FVB data entry
 +
|See table below for more info
 +
|}
 +
 +
{| class="wikitable"
 +
|+FVB data entry
 +
|-
 +
!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?
 
|}
 
|}

Revision as of 17:44, 23 August 2018

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.

STB Header
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

For the purpose of the object count, JFVB counts as one object

JFWB 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
FVB data
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
FVB data entry
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?