Difference between pages "FF8/Menu mngrp bin" and "FF8/String Encoding"
< FF8(Difference between pages)
Jump to navigation
Jump to search
my_wiki>Sebanisu (→Mapped Data: updated the description of playstation controls) |
m (2 revisions imported) |
||
Line 1: | Line 1: | ||
− | + | = String Encoding = | |
− | == | + | FF8 strings are converted to byte arrays.[https://sourceforge.net/p/ifrit/code-0/HEAD/tree/trunk%20ifrit-code-0/Resources/textformat.ifr 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. | ||
{| class="wikitable" | {| class="wikitable" | ||
− | + | ! Starting Byte | |
− | ! | ||
− | |||
! Size | ! Size | ||
− | ! | + | ! Name |
! Description | ! Description | ||
|- | |- | ||
− | | | + | | 0x00 |
− | | | + | | 1 |
− | | | + | | NULL |
− | | | + | | End of string |
− | |||
|- | |- | ||
+ | | 0x02 | ||
| 1 | | 1 | ||
− | | | + | | \n |
− | | | + | | Inserts new line |
− | + | Some areas ignore this character. | |
− | |||
|- | |- | ||
+ | | 0x03 | ||
| 2 | | 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<br/> | |
+ | but screens with a list of multiple selections will will use 3 bytes. | ||
|- | |- | ||
− | | | + | | [http://forums.qhimm.com/index.php?topic=17120.msg243579#msg243579 0x0C] |
− | + | | 2 | |
− | + | | SpellID | |
− | + | | Used to place a name of a spell. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
− | | | ||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} |
Latest revision as of 01:12, 15 July 2019
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. |