MSBF (File Format)
From Wexos's Wiki
Under Construction
This article is not finished. Help improve it by adding accurate information or correcting grammar and spelling.
MSBF (MessageStudio Binary Flow) is a format used in Super Mario Galaxy 2, and possibly other games. It is unknown how the format works, and what it's used for.
File Format
Header
The file starts with the following header:
Offset | Type | Description |
---|---|---|
0x00 | Char[8] | File magic. Always MsgFlwBn in ASCII. |
0x08 | UInt16 | Byte-order-mark. FE FF for big endian, FF FE for little endian. |
0x0A | UInt16 | Unknown. |
0x0C | Byte | String encoding. UTF8 = 0, UTF16 = 1. |
0x0D | Byte | Possibly a version number. Games on Wii, Nintendo 3DS and Wii U as well as Mario Kart Tour use 3, games on Nintendo Switch and Super Mario Run use 4. |
0x0E | UInt16 | Number of sections. |
0x10 | UInt16 | Unknown. |
0x12 | UInt32 | File size in bytes. |
0x16 | Byte[10] | Unknown. Always 0. |
FLW2
The FLW2 section stores flow data.
Offset | Type | Description |
---|---|---|
0x00 | Char[4] | Section magic. Always FLW1 in ASCII. |
0x04 | UInt32 | Section size (starting from 0x10). |
0x08 | Byte[8] | Unknown. Always 0. |
0x10 | UInt16 | Unknown. |
0x12 | UInt16 | Unknown. |
FEN1
The FEN1 section stores flow entries.
Offset | Type | Description |
---|---|---|
0x00 | Char[4] | Section magic. Always FEN1 in ASCII. |
0x04 | UInt32 | Section size (starting from 0x10). |
0x08 | Byte[8] | Unknown. Always 0. |
0x10 | Int32 | Number of entries. |
FEN1 Entry
Each entry has the following structure:
Offset | Type | Description |
---|---|---|
0x00 | Int32 | Number of sub entries. |
0x04 | UInt32 | Sub entry offset, relative to 0x10 in the FEN1 header. Always set even if the number of entries are 0. |
FEN1 Sub Entry
Offset | Type | Description |
---|---|---|
0x00 | Byte | String length (K). |
0x01 | String | String. |
0x01 + K | UInt32 | Unknown. Possibly an index in the FLW2 entries. |
REF1
Tools
The following tools can handle MSBF files:
- (none)