FF8/String Encoding
Jump to navigation
Jump to search
String Encoding
FF8 strings are converted to byte arrays.Char Table Some of which aligns to the grid of text in the texture if you -32 from the value. Some values are 1 byte = 2 characters, most are 1 byte = 1 character. There are also special bytes that use up 1-3 bytes.
Special Bytes
These bytes are points where things are inserted or a change in formatting. Some just say to ignore this string unless the player unlocked something.
Starting Byte | Size | Name | Description |
---|---|---|---|
0x00 | 1 | NULL | End of string |
0x02 | 1 | \n | Inserts new line
Some areas ignore this character. |
0x03 | 2 | Name | When see 0x03??, in a string, it's usually a characters name. |
0x05 | 2 | Icon | 0x05?? used to draw a symbol from icons.tex, like controller buttons.
On PC it draws the letter of keyboard keys assigned to the controls. |
0x06 | 2 | Color | 0x06?? used to show a change in formatting like color |
0x0A | 2 | Special_Value | 0x0A?? can be a string or number value.
Depending on which string you are reading it can be a different value. |
0x0B | 2 or 3 | Cursor_Locations | Might be number of possible return values that determine whether this is 3 or 2 bytes.
Like YES or NO questions will only be 2 bytes |
0x0C | 2 | SpellID | Used to place a name of a spell. |