Kuribo64 Wiki
Home | ForumsLogin

WIKI BACKUP

Back to listing

MSBT

Contents
1. File Header
2. LBL1 Section
3. ATR1 Section
4. TXT2 Section

MSBT files are used to store dialogue in SMG.

1. File Header


Offset Size Description
0x00 8 "MsgStdBn"
0x08 2 Byte order, 0xFEFF = Big Endian
0x0A 2 Unknown, always 0
0x0C 2 Unknown, always 0x0103
0x0E 2 Unknown, always 3 (could be number of sections)
0x10 2 Unknown, always 0
0x12 4 File size
0x16 10 Unknown, 5 shorts, all always 0

2. LBL1 Section


The LBL1 section contains a list of all the NPCs and their message IDs. It begins with a header with the following structure:

Offset Size Description
0x00 4 "LBL1"
0x04 4 Section size
0x08 8 Unknown, 2 words, both always 0
0x10 4 Number of entries

Each entry is a consists of 2 words. The first word tells how many label-index pairs there are in the entry. The second word contains an offset to the label-index pairs.

A label index pair contains both a length prefixed string (the label) and a word, representing an offset into the TXT2 section (the index).

3. ATR1 Section


The ATR1 section contains a table of attributes for each string in the TXT2 section. It begins with a header with the following structure:

Offset Size Description
0x00 4 "ATR1"
0x04 4 Section size
0x08 8 Unknown, 2 words, both always 0
0x10 4 Number of entries
0x14 4 Unknown, always 12 (could be entry size)

The entries follow the section header. Each entry has the following structure:

Offset Size Description
0x00 1 Unknown
0x01 1 Unknown, possible values are 0, 1, 2
0x02 1 Dialog type (0 = Normal, 1 = Shout, 2 = Start When Close, 3 = Start When Anywhere)
0x03 1 Unknown, possible values are 0, 1, 2, 3, 4, 5, 6, 7, 8
0x04 2 Unknown
0x06 1 Unknown
0x07 1 Unknown
0x08 4 Offset to null-terminated UTF-16 string (points to empty string except in Starship Mario)

4. TXT2 Section


The TXT2 section is a string table containing the messages. It begins with a header with the following structure:

Offset Size Description
0x00 4 "TXT2"
0x04 4 Section size
0x08 8 Unknown, both always 0
0x10 4 Number of entries

Following the header are words for each entry, each of which is an offset to a null-terminated UTF-16 string.

Page rendered in 0.017 seconds. (2048KB of memory used)
MySQL - queries: 17, rows: 68/68, time: 0.014 seconds.