MSBT

From WonderWiki
Revision as of 06:20, 16 October 2023 by Jhmaster (talk | contribs) (fix and add stuff)
Jump to navigation Jump to search

The MSBT (Message Studio Binary Text) file format holds text entries for the game with some optional metadata tags mixed in.

This is a common format in many Nintendo games, and has not changed in Wonder, as such documentation on the format can be found in existing documentation such as the Mario Kart 8 Wiki MSBT page.

Tags

MSBT supports the insertion of arbitrary special "tags" in the middle of text entries, while such tags have a generic standard format which doesn't change and is parseable by any MSBT tool, the *meaning* attributed to such tags is game-specific. The below table aims to document the game-specific behavior of Wonder's MSBT tags.

VERY WIP!!! Yes this table is a mess right now it will be tidied up whenever just leave it be its just an info dump for now.

  • Each Arg is 1 byte.
Tag Description Arg 1 Arg 2 Arg 3 Arg 4
n0.3 Color Formatter (int8) Color ID

0x00 = Blue

0x01 = Purple

0x02 = Gray

0x03 = Yellow

0x04 = Light Red

0x05 = Green

0x06 = Pink

0x07 = Orange

0x08 = Light Yellow

0x09 = Light Blue

0x0A = Pink (again?)

0x0B = Dark Pink

0x0C = Lime

0x0D = Light Red (again?)

0x0E = Light Yellow (again?)

0x0F = Cyan

0x10 = Aqua

0x11 = Light Yellow (again?)

0x12 = Yellow (again?)*

0x13 = Light Purple

0x14+ = Defaults back to Blue

0xFF = Reset

(?)

0x00 = Change Color

0x01 = Vertical Spacing (?) + Arg 1 seems to have no effect with this

0x02+ = Nothing (?) + Arg 1 seems to have no effect

0xFF = Reset

n10.7 Number Formatter (int8) Padding amount (int8) ID (?) (bool) Padding enabled (?)
n10.14 Controller Button Icons (?) (int8) Icon ID

0x00 = Up

0x01 = Down

0x02 = Left

0x03 = Right

0x04 = A

0x05 = B

0x06 = X

0x07 = Y

0x08 = L

0x09 = R

0x0A = ZL

0x0B = ZR

0x0C = +

0x0D = -

0x0E = LStick

0x0F = Up-Right

0x10 = Down-Right

0x11 = Down-Left

0x12 = Up-Left

0xCD (?)
n10.15 Mapped Controller Button Icons (?) (int8) Icon ID

0x00 = B

0x01 = A

0x02 = X

0x03 = Y

0x04 = LStick/ZL

0x05 = Press R/Press ZR

0x06 = LStick/ZL (?)

Doesn't seem to do anything (?)

Although Nintendo uses the value 0xCD consistently

n10.24 Action-mapped Button Icons (int8) Action ID

0x00 = Dash

0x01 = Jump

0x02 = Item

0x03 = Greet

0x04 = Ground Pound

0x05 = Right Triggers (?)

0x06 = Left Triggers (?)

(int8) Controller Type

0x00 = Vertical Joycons (VLR)

0x01 = Horizontal Joycon (HLR)

0x02 = Same as 0x01 (?)