Difference between revisions of "New Horizons:MSBT functions"
From Animal Crossing Mods Wiki
Line 271: | Line 271: | ||
| rowspan="2" |x | | rowspan="2" |x | ||
| rowspan="2" |<code>anim</code> | | rowspan="2" |<code>anim</code> | ||
| rowspan="2" |Triggers a NPC animation. <code>x</code> is the ID of the | | rowspan="2" |Triggers a NPC animation. <code>x</code> is the ID of the [[#NPC Animation Table]]. | ||
|<code>id</code> | |<code>id</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#NPC Animation Table]] (not part of the argument byte data) | ||
|- | |- | ||
|<code>target</code> | |<code>target</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Animation Target Table]] | ||
|- | |- | ||
| rowspan="3" |45 | | rowspan="3" |45 | ||
| rowspan="3" |x | | rowspan="3" |x | ||
| rowspan="3" |<code>snpcAnim</code> | | rowspan="3" |<code>snpcAnim</code> | ||
| rowspan="3" |Triggers a NPC animation for special NPCs. <code>x</code> is the ID of the | | rowspan="3" |Triggers a NPC animation for special NPCs. <code>x</code> is the ID of the [[#Special NPC Animation Table]]. | ||
|<code>id</code> | |<code>id</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Special NPC Animation Table]] (not part of the argument byte data) | ||
|- | |- | ||
|<code>target</code> | |<code>target</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Animation Target Table]] | ||
|- | |- | ||
|<code>targetSpec</code> | |<code>targetSpec</code> | ||
Line 974: | Line 974: | ||
|x | |x | ||
|<code>number</code> | |<code>number</code> | ||
|Displays the value of a specified type of number. <code>x</code> is the ID of the | |Displays the value of a specified type of number. <code>x</code> is the ID of the [[#Number Table]]. | ||
|<code>value</code> | |<code>value</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Number Table]] (not part of the argument byte data) | ||
|- | |- | ||
|100 | |100 | ||
Line 1,014: | Line 1,014: | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Plane Announce Table]] | ||
|- | |- | ||
|100 | |100 | ||
Line 1,082: | Line 1,082: | ||
|x | |x | ||
|<code>string</code> | |<code>string</code> | ||
|Displays the value of a specified string. <code>x</code> is the ID of the | |Displays the value of a specified string. <code>x</code> is the ID of the [[#String Table]]. | ||
|<code>value</code> | |<code>value</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#String Table]] (not part of the argument byte data) | ||
|- | |- | ||
|115 | |115 | ||
|x | |x | ||
|<code>selection</code> | |<code>selection</code> | ||
|Displays the value/name of a selected object. <code>x</code> is the ID of the | |Displays the value/name of a selected object. <code>x</code> is the ID of the [[#Selection Table]]. | ||
|<code>value</code> | |<code>value</code> | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Selection Table]] (not part of the argument byte data) | ||
|- | |- | ||
|125 | |125 | ||
Line 1,293: | Line 1,293: | ||
|Byte | |Byte | ||
|1 | |1 | ||
|ID of the | |ID of the [[#Museum Table]] | ||
|- | |- | ||
|140 | |140 |
Revision as of 17:07, 21 September 2021
MSBT Functions
The following table contains all used MSBT functions in Animal Crossing: New Horizons. The purpose of some functions is still unknown and therefore the functions lack a proper name.
String arguments always contain their length as the first byte of the argument data.
Type | Sub-Type | Name | Description | Arguments | |||
---|---|---|---|---|---|---|---|
Name | Data-Type | Size | Description | ||||
0 | 0 | ruby
|
Renders an annotation text over a specified number of characters. Typically used in the Japanese localization. | charSpan
|
Unsigned Integer | 2 | The number of characters over which the annotation is centered |
value
|
String | n | The value of the annotation | ||||
0 | 1 | - | Unknown | ||||
0 | 2 | size
|
Changes the text/font size of the text. | value
|
Unsigned Integer | 2 | The new font size to use from this point until the next font change or end of message |
0 | 3 | color
|
Changes the color of the text. | id
|
Unsigned Integer | 2 | The id of the color to use from this point until the next color change or end of message |
0 | 4 | pageBreak
|
Breaks the current text and causes the dialog to pause/wait for user input before clearing the display and rendering the next parts. | - | |||
10 | 0 | delay
|
Delays text rendering for a set number of frames. | frames
|
Unsigned Integer | 2 | The number of frames to delay for |
10 | 1 | delay8
|
Delays text rendering for 8 frames. | - | |||
10 | 2 | delay20
|
Delays text rendering for 20 frames. | - | |||
10 | 3 | delay40
|
Delays text rendering for 40 frames. | - | |||
10 | 4 | - | Unknown | ||||
10 | 5 | - | Unknown | ||||
10 | 6 | - | Unknown | ||||
10 | 7 | - | Unknown | ||||
10 | 8 | - | Unknown | ||||
10 | 9 | - | Unknown | ||||
10 | 10 | - | Unknown | ||||
10 | 11 | - | Unknown | ||||
10 | 12 | - | Unknown | ||||
10 | 13 | - | Unknown | ||||
10 | 14 | - | Unknown | ||||
10 | 15 | setNpcTalkChoices
|
Sets chat/talk choices for NPCs. | chatOption
|
Byte | 1 | Unknown |
cancelOption
|
Byte | 1 | Unknown | ||||
10 | 16 | - | Unknown | ||||
15 | 0 | endTag
|
Indicates the end of a message string. | - | |||
20 | 0 | - | Unknown | ||||
20 | 1 | - | Unknown | ||||
20 | 2 | - | Unknown | ||||
20 | 3 | - | Unknown | ||||
40 | x | anim
|
Triggers a NPC animation. x is the ID of the #NPC Animation Table.
|
id
|
Byte | 1 | ID of the #NPC Animation Table (not part of the argument byte data) |
target
|
Byte | 1 | ID of the #Animation Target Table | ||||
45 | x | snpcAnim
|
Triggers a NPC animation for special NPCs. x is the ID of the #Special NPC Animation Table.
|
id
|
Byte | 1 | ID of the #Special NPC Animation Table (not part of the argument byte data) |
target
|
Byte | 1 | ID of the #Animation Target Table | ||||
targetSpec
|
String | n | Unknown | ||||
50 | 0 | wordInfo
|
Contains information about the next word (usually item names). The indices for the articles refer to MSBT messages found in the STR_Article file.
|
gender
|
Byte | 1 | The index of the gender for the word |
indefArticle
|
Byte | 1 | The index of the indefinite article for the word | ||||
defArticle
|
Byte | 1 | The index of the definite article for the word | ||||
50 | 1 | - | Unknown | ||||
50 | 2 | wordArticle
|
Inserts the proper article for a subsequent word (usually item names). The data for this is usually encoded into the source MSBT of the word. | - | |||
50 | 3 | capitalizeNextLetter
|
Capitalizes the first letter of the next word (unconfirmed). | - | |||
50 | 4 | capitalizeNextWord
|
Capitalizes the next word. | - | |||
50 | 5 | gender1
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 6 | gender2
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 7 | gender3
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 8 | - | Unknown | ||||
50 | 9 | - | Unknown | ||||
50 | 10 | gender4
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 11 | - | Unknown | ||||
50 | 13 | - | Unknown | ||||
50 | 14 | gender5
|
Contains gender information about the next word (only in KRko ).
|
m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 15 | - | Unknown | ||||
50 | 16 | - | Unknown | ||||
50 | 17 | gender8
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
n
|
String | n | Neuter | ||||
50 | 18 | - | Unknown | ||||
50 | 19 | - | Unknown | ||||
50 | 20 | gender6
|
Contains gender information about the next word. | m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
50 | 21 | - | Unknown | ||||
50 | 22 | wordCase
|
Contains information about the grammatical case of the word (only in EUde , EUnl and EUru ).
|
nom
|
String | n | Nominative |
acc
|
String | n | Accusative | ||||
dat
|
String | n | Dative | ||||
gen
|
String | n | Genitive | ||||
50 | 23 | - | Unknown | ||||
50 | 24 | gender7
|
Contains gender information about the next word (only in EUru ).
|
m
|
String | n | Masculine |
f
|
String | n | Feminine | ||||
n
|
String | n | Neuter | ||||
pl
|
String | n | Plural | ||||
50 | 25 | weatherArea
|
Contains information about the current weather for both hemispheres. | north
|
String | n | Northern hemisphere weather |
south
|
String | n | Southern hemisphere weather | ||||
50 | 26 | - | Unknown | ||||
50 | 27 | - | Unknown | ||||
50 | 28 | - | Unknown | ||||
50 | 29 | - | Unknown | ||||
60 | 0 | - | Unknown | ||||
60 | 1 | - | Unknown | ||||
60 | 2 | - | Unknown | ||||
60 | 3 | - | Unknown | ||||
60 | 4 | - | Unknown | ||||
60 | 7 | - | Unknown | ||||
60 | 8 | - | Unknown | ||||
60 | 10 | - | Unknown | ||||
60 | 11 | - | Unknown | ||||
60 | 12 | - | Unknown | ||||
60 | 13 | - | Unknown | ||||
60 | 14 | - | Unknown | ||||
60 | 15 | - | Unknown | ||||
60 | 16 | - | Unknown | ||||
60 | 19 | - | Unknown | ||||
60 | 20 | - | Unknown | ||||
60 | 21 | - | Unknown | ||||
60 | 22 | - | Unknown | ||||
60 | 23 | - | Unknown | ||||
60 | 26 | - | Unknown | ||||
60 | 27 | - | Unknown | ||||
60 | 28 | - | Unknown | ||||
60 | 29 | - | Unknown | ||||
60 | 31 | - | Unknown | ||||
60 | 32 | - | Unknown | ||||
70 | 0 | - | Unknown | ||||
80 | 0 | - | Unknown | ||||
80 | 1 | - | Unknown | ||||
80 | 2 | - | Unknown | ||||
80 | 3 | - | Unknown | ||||
80 | 4 | - | Unknown | ||||
85 | 0 | - | Unknown | ||||
85 | 1 | - | Unknown | ||||
85 | 2 | - | Unknown | ||||
85 | 3 | - | Unknown | ||||
85 | 4 | - | Unknown | ||||
90 | x | number
|
Displays the value of a specified type of number. x is the ID of the #Number Table.
|
value
|
Byte | 1 | ID of the #Number Table (not part of the argument byte data) |
100 | 0 | - | Unknown | ||||
100 | 1 | - | Unknown | ||||
100 | 2 | - | Unknown | ||||
100 | 3 | planeAnnounce
|
Unknown | value
|
Byte | 1 | ID of the #Plane Announce Table |
100 | 4 | - | Unknown | ||||
100 | 5 | - | Unknown | ||||
100 | 6 | - | Unknown | ||||
100 | 7 | - | Unknown | ||||
100 | 8 | - | Unknown | ||||
100 | 9 | - | Unknown | ||||
100 | 10 | - | Unknown | ||||
110 | x | string
|
Displays the value of a specified string. x is the ID of the #String Table.
|
value
|
Byte | 1 | ID of the #String Table (not part of the argument byte data) |
115 | x | selection
|
Displays the value/name of a selected object. x is the ID of the #Selection Table.
|
value
|
Byte | 1 | ID of the #Selection Table (not part of the argument byte data) |
125 | 0 | - | Unknown | ||||
125 | 1 | - | Unknown | ||||
125 | 2 | - | Unknown | ||||
125 | 3 | - | Unknown | ||||
125 | 4 | - | Unknown | ||||
125 | 5 | - | Unknown | ||||
125 | 6 | - | Unknown | ||||
125 | 7 | ftrColor
|
Color of a (furniture) item. | - | |||
125 | 8 | - | Unknown | ||||
125 | 9 | - | Unknown | ||||
130 | 0 | - | Unknown | ||||
135 | 0 | randomBook | Displays a random book name pulled from STR_Book .
|
- | |||
135 | 1 | randomDrink | Displays a random drink name pulled from STR_Drink .
|
- | |||
135 | 2 | randomFlower | Displays a random flower name pulled from STR_Flower .
|
- | |||
135 | 3 | randomFood | Displays a random food name pulled from STR_Food .
|
- | |||
135 | 4 | randomMusic | Displays a random music genre name pulled from STR_Music .
|
- | |||
135 | 5 | randomObj | Displays a random object name pulled from STR_Obj .
|
- | |||
135 | 6 | randomSports | Displays a random sports name pulled from STR_Sports .
|
- | |||
135 | 7 | randomSweets | Displays a random sweets name pulled from STR_Sweets .
|
- | |||
135 | 8 | randomHobby | Displays a random hobby name pulled from STR_Hobby .
|
- | |||
135 | 9 | randomKKSong | Displays a random K.K. song title pulled from STR_ItemName_82_Music .
|
- | |||
135 | 13 | randomMuseum | Displays a random museum art/critter/fossil name pulled from STR_ItemName_01_Art , STR_ItemName_30_Insect , STR_ItemName_31_Fish or STR_ItemName_34_Fossil .
|
type
|
Byte | 1 | ID of the #Museum Table |
140 | 0 | - | Unknown | ||||
140 | 3 | - | Unknown | ||||
140 | 4 | hhaRank
|
Displays the HHA rank (pulls from STR_HHA_Rank ).
|
- | |||
140 | 5 | hhaStyle
|
Displays the name of a HHA style (pulls from STR_HHA_Situation ).
|
- | |||
140 | 6 | hhaSet
|
Displays the name of a furniture item set (pulls from STR_HHA_Set ).
|
- | |||
140 | 7 | hhaTheme
|
Displays the name of a HHA theme (pulls from STR_HHA_Theme ).
|
- | |||
140 | 8 | hhaRoomName
|
Displays the name of a room in the player house (pulls from STR_HHA_RoomLocation ).
|
- | |||
140 | 9 | - | Unknown | ||||
140 | 10 | - | Unknown | ||||
140 | 11 | - | Unknown | ||||
140 | 12 | - | Unknown | ||||
140 | 13 | - | Unknown | ||||
140 | 14 | - | Unknown | ||||
140 | 15 | creatorId
|
Displays the ID of a custom design creator. | - | |||
140 | 16 | - | Unknown | ||||
140 | 17 | designId
|
Displays the ID of a custom design. | - | |||
140 | 18 | - | Unknown | ||||
140 | 19 | - | Unknown | ||||
140 | 20 | - | Unknown | ||||
140 | 21 | - | Unknown | ||||
140 | 22 | - | Unknown | ||||
140 | 23 | - | Unknown | ||||
140 | 25 | - | Unknown | ||||
140 | 26 | - | Unknown | ||||
198 | 0 | delayByPersonality
|
Delays text rendering for a set number of frames depending on the personality of the villager. | boy_normal
|
Unsigned Integer | 2 | Lazy villagers |
boy_active
|
Unsigned Integer | 2 | Jock villagers | ||||
boy_pride
|
Unsigned Integer | 2 | Smug villagers | ||||
boy_snobby
|
Unsigned Integer | 2 | Cranky villagers | ||||
girl_normal
|
Unsigned Integer | 2 | Normal villagers | ||||
girl_active
|
Unsigned Integer | 2 | Peppy villagers | ||||
girl_pride
|
Unsigned Integer | 2 | Snooty villagers | ||||
girl_big_sis
|
Unsigned Integer | 2 | Big sister villagers | ||||
199 | 3 | - | Unknown | ||||
This table only contains the used functions. Other functions may exist but are not found in current MSBT files. |
NPC Animation Table
ID | Name | Description |
---|---|---|
0 | EmotEnd
|
|
1 | EmotEnd
|
|
2 | Smiling
|
|
3 | HappyFlower
|
|
4 | Love
|
|
5 | WrySmile
|
|
6 | FaintSmile
|
|
7 | BigSmile
|
|
8 | Angry
|
|
9 | Outraged
|
|
10 | Fuming
|
|
11 | Worried
|
|
12 | Sighing
|
|
13 | Thinking
|
|
14 | SadSpiral
|
|
15 | Frantic
|
|
16 | Crying
|
|
17 | BrokenHeart
|
|
18 | OhGeez
|
|
19 | Confused
|
|
20 | Laughing
|
|
21 | HappyDance
|
|
22 | Clapping
|
|
23 | Dance
|
|
24 | EmotEnd
|
|
25 | Shaki
|
|
26 | Shocked
|
|
27 | Aha
|
|
28 | TakenAback
|
|
29 | Surprised
|
|
30 | IdeaBulb
|
|
31 | Oops
|
|
32 | Cheering
|
|
33 | Greeting
|
|
34 | Greeting
|
|
35 | Apologize
|
|
36 | Hello
|
|
37 | Nodding
|
|
38 | QuestionMark
|
|
39 | Negative
|
|
40 | Assent
|
|
41 | Explain
|
|
42 | ColdChill
|
|
43 | Shaking
|
|
44 | Sneezing
|
|
45 | Hot
|
|
46 | Sleepy
|
|
47 | Sleep
|
|
48 | EmotEnd
|
|
49 | AbsentMindedness
|
|
50 | Blushing
|
|
51 | Scheming
|
|
52 | Hesitate
|
|
53 | SmugFace
|
|
54 | Grin
|
|
55 | ShyBoy
|
|
56 | Restless
|
|
57 | Serious
|
|
58 | Silent
|
|
59 | Pardon
|
|
60 | NpcShuffle
|
|
61 | NpcHoldout
|
Special NPC Animation Table
ID | Name | Description |
---|---|---|
0 | GulCollapsed
|
Collapsed animation for Gulliver and Gullivarrr
|
1 | GstSurprised
|
Surprised animation for Wisp
|
2 | DodWireless
|
Wireless animation for Orville and Wilbur
|
3 | DodRoger
|
Roger animation for Orville and Wilbur
|
4 | TkkEh
|
Eh animation for K.K.
|
5 | TkkNodding
|
Nodding animation for K.K.
|
6 | TkkQuestionMark
|
QuestionMark animation for K.K.
|
Animation Target Table
ID | Name | Description |
---|---|---|
0 | actor
|
The currently talking/acting NPC |
1 | player
|
The player |
2 | mainNpc
|
The main NPC in a conversation between NPCs |
3 | subNpc
|
The sub NPC in a conversation between NPCs |
Number Table
ID | Name | Description |
---|---|---|
2 | Count
|
Some kind of amount/count of things |
8 | HHAPoints
|
HHA points value |
17 | Bells
|
Bells amount value |
20 | TurnipPrice
|
Turnip price value |
22 | Amount
|
? |
26 | BuyPrice
|
Buy price value |
34 | Year
|
Year value |
35 | Month
|
Month value |
36 | Day
|
Day value |
37 | Hour
|
Hour value |
38 | Minute
|
Minute value |
This table is not complete. |
Plane Announce Table
ID | Name | Description |
---|---|---|
0 | Katsu
|
|
1 | PlaneAnnounceOn
|
|
2 | PlaneAnnounceOff
|
String Table
ID | Name | Description |
---|---|---|
0 | ...
|
Appears to pull the message with the label 001 from STR_FixedForm
|
1 | PlayerName
|
The name of the player |
3 | NickName
|
The nickname of the player (pulls from custom table or STR_Nickname )
|
5 | Catchphrase
|
The catchphrase of the villager (pulls from custom table or STR_NNpcPhrase )
|
8 | OtherIslandName
|
The name of an other island |
9 | IslandName
|
The name of the current island |
10 | VillagerName
|
The name of the villager (pulls from STR_NNpcName )
|
15 | VillagerRace
|
The race of the villager (pulls from STR_Race )
|
This table is not complete. |
Selection Table
ID | Name | Description |
---|---|---|
0 | SelectedName | Any selected name value |
1 | SelectedVillager | Name of the selected villager |
2 | SelectedIslandName | Selected island name |
3 | SelectedDesignName | Name of the selected design |
Museum Table
ID | Name | Description |
---|---|---|
0 | fish | Fish critters (no sea creatures) |
1 | insect | Bug critters |
2 | fossil | Fossil items |
3 | art | Art items |