Msbt: Difference between revisions

Ginger (talk | contribs)
Ginger (talk | contribs)
m Five Flags Flags: Section title typo
 
(4 intermediate revisions by the same user not shown)
Line 335: Line 335:
|Page Break (no extra data)  
|Page Break (no extra data)  
|}
|}
The available colors in BotW are red, green, blue, gray, and orange in that order. 0xffff indicates a reset to the default white text color. These colors are generally either hardcoded in the game's executable or defined in a separate MSBP file if present. If defined in a MSBP file, the color type instead acts as an index into the colors in the MSBP file.
The available colors in BotW are listed in [[#Font Color]]. These colors are generally either hardcoded in the game's executable or defined in a separate MSBP file if present. If defined in a MSBP file, the color type instead acts as an index into the colors in the MSBP file.


===== Font =====
===== Font =====
Line 435: Line 435:
|1
|1
|8
|8
|
|Three Choices based on flags (See [[#Choices Based on Flags]])
|-
|-
|1
|1
|9
|9
|
|Five Flags (See [[#Five Flags]])
|-
|-
|1
|1
Line 479: Line 479:


For ChoiceOne, there is no choice at 0x02. Instead, the default option is always 1 and is located at 0x02, and the cancel option is always 0xCD and is located at 0x03.
For ChoiceOne, there is no choice at 0x02. Instead, the default option is always 1 and is located at 0x02, and the cancel option is always 0xCD and is located at 0x03.
===== Choices Based on Flags =====
{{expand section}}
{| class="wikitable"
!Unofficial Name
!Size
!Data Type
!Description
|-
|ParamSize
|2
|Unsigned short
|Number of bytes in the parameter, starting after the ParamSize
|-
|VarType
|2
|Unsigned short
|Type of the variable. Seems to use the same variable types as the Variable tag.{{check}} All flags are of the same type.
|-
|FlagOne
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|ChoiceOne
|2
|Unsigned short
|First choice
|-
|FlagTwo
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|ChoiceTwo
|2
|Unsigned short
|Second choice
|-
|FlagThree
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|ChoiceThree
|2
|Unsigned short
|Third choice
|-
|DefaultIndex
|2
|Unsigned short
|Index of the choices that the cursor starts on
|-
|CancelIndex
|2
|Unsigned short
|Index of the choice that is chosen if the player presses B while selecting an option
|}
===== Five Flags =====
{{expand section}}
{| class="wikitable"
!Unofficial Name
!Size
!Data Type
!Description
|-
|ParamSize
|2
|Unsigned short
|Number of bytes in the parameter, starting after the ParamSize
|-
|FlagIndexOne
|2
|Unsigned short
|u16 that seems to correspond to some kind of index. There is always one number each of 0-4, for each flag {{check}}
|-
|FlagOne
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|FlagIndexTwo
|2
|Unsigned short
|u16 that seems to correspond to some kind of index. There is always one number each of 0-4, for each flag {{check}}
|-
|FlagTwo
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|FlagIndexThree
|2
|Unsigned short
|u16 that seems to correspond to some kind of index. There is always one number each of 0-4, for each flag {{check}}
|-
|FlagThree
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|FlagIndexFour
|2
|Unsigned short
|u16 that seems to correspond to some kind of index. There is always one number each of 0-4, for each flag {{check}}
|-
|FlagFour
|?
|C-String
|u16 number of bytes in string, UTF-16 representation of the string (letters equal to number of bytes / 2)
|-
|FlagValueOne
|2
|Unsigned short
|Unknown{{check}}
|-
|FlagValueTwo
|2
|Unsigned short
|Unknown{{check}}
|-
|FlagValueThree
|2
|Unsigned short
|Unknown{{check}}
|-
|FlagValueFour
|2
|Unsigned short
|Unknown{{check}}
|-
|UnknownArray
|?
|byte[]
|Unknown purpose. Length is the remainder of the ParamSize that has not already been taken up by previous values
|}


==== App Tags ====
==== App Tags ====
Line 584: Line 724:


==== Group 4 Tags ====
==== Group 4 Tags ====
// TODO
{| class="wikitable"
!Group
!Type
!Notes
|-
|4
|1
|Sound (Extra data is 2 byte values: 1 of unknown purpose, and 0xCD)
|-
|4
|2
|Animation (Extra data is a C style string denoting the name of an animation for the controlling actor to play)
|}
It is currently unknown if there are other group 4 tags


==== Group 5 Tags ====
==== Group 5 Tags ====