List of Control Characters: Difference between revisions

RRad (talk | contribs)
RRad (talk | contribs)
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Stub}}
{{Stub}}
== Control Characters ==
{| class="wikitable"
!Character
!Hex
!Description
|-
|~
|0x7E
|Reads the following 2 characters '''as hex''' and prints the result. Can be used to print normally unprintable characters such as brackets and 0x7E itself. Example: <code>~5B ~5D</code> will result in <code>[ ]</code> in-game.<br>Note: <code>~7E</code> results in a second small tilde (<code>˜</code>) in-game. Use the Shift-JIS character described below for a full tilde.
|-
|
|0x81
|Shift-JIS activator. Used normally in Japanese, but the international versions also use it to display the following extra characters from <code>kanji.dat/table 129</code>:
{| class="wikitable"
!Character
!Hex
!Note
|-
|~
|0x8160
|The only way to display a full tilde in-game. To input in SkyTemple, enter a Japanese wave dash (<code>〜</code>).
|-
|→
|0x81A8
|This character can be entered normally in SkyTemple.
|-
|←
|0x81A9
|This character can be entered normally in SkyTemple.
|-
|↑
|0x81AA
|This character can be entered normally in SkyTemple.
|-
|↓
|0x81AB
|This character can be entered normally in SkyTemple.
|-
|♪
|0x81F4
|This character can be entered normally in SkyTemple.
|}
|}
== Lowercase Text Tags ==
<TODO: parameters, (technical) descriptions, potential organization>
{| class="wikitable"
!Tag
!Description
|-
|[area:#]
|
|-
|[adverb:#]
|Unused.
|-
|[bank:#]
|
|-
|[bank_left:#]
|
|-
|[c_kind:<actor>]
|Prints the Pokémon species of the specified actor, using the light green text color for species (see [CS:K]).
|-
|[c_i:#]
|
|-
|[c_name:<actor>]
|
|-
|style=white-space:nowrap|[c_stammer:<actor>]
|Prints the first character of the specified actor's name. Used only in JP.
|-
|[class:#]
|Unused.
|-
|[digits:#]
|
|-
|[digits_c:#]
|
|-
|[dungeon:#]
|
|-
|[equip_list]
|
|-
|[experience:#]
|
|-
|[floor:0]
|Prints the job's destination floor.
|-
|[gadget_bag]
|Prints the current name of the player's inventory. Used by the base game to specify the One-Item Inventory or Treasure Bag depending on the player's progress.
|-
|[gender:#]
|
|-
|[gold:#]
|
|-
|[gold_left:#]
|
|-
|[hero]
|Prints the hero's name. Special Episodes instead use <code>[c_name:NPC_HERO_FIRST]</code>.
|-
|[item:#]
|
|-
|[kind:]<br>[kind:#]
|
|-
|[move:]<br>[move:#]
|
|-
|[me_play:#]
|
|-
|[move_hit_ratio]
|
|-
|[move_power]
|
|-
|[name:#]
|
|-
|[now_team]
|
|-
|[partner]
|Prints the partner's name. Special Episodes instead use <code>[c_name:NPC_PARTNER_FIRST]</code>.
|-
|[partner2]
|Unused. <code>[partner2]</code> and <code>[partner2:0]</code> both seem to invariably crash the game.
|-
|[player]
|Prints the current leader's name using a blue text color.
|-
|[purpose:#]
|Unused. Seems to print "Recover the stolen item." as seen within the "Mission objectives" menu inside Beach Cave on the first visit, regardless of the player's progress.
|-
|[rank:#]
|
|-
|[range:#]
|Unused.
|-
|[s_item:#]
|
|-
|[string0]
|
|-
|[string:#]
|
|-
|[se_play:#]
|
|-
|[type:#]
|
|-
|[trap:#]
|
|-
|[tactics:#]
|
|-
|[team]<br>[team:]<br>[team:#]
|
|-
|[time:#]
|
|-
|[value0:#:#]
|
|-
|[value:#:#]
|
|-
|[value_i:#]<br>[value_i:#:#]
|Unused.
|-
|[weather:#]
|
|-
|[wiseness:]<br>[wiseness:#]
|
|}


== Capitalized Text Tags (Parse-on-Print) ==
== Capitalized Text Tags (Parse-on-Print) ==
Line 7: Line 204:
These text tags draw something that isn't text in the textbox.
These text tags draw something that isn't text in the textbox.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-
Line 302: Line 499:
|[M:T5]
|[M:T5]
|[M:65]
|[M:65]
|未 'Mi' (unfinished)
|未 'Mi' (unimplemented)
|colspan="2" style="text-align:center; background-color:#808080;" | [[File:M-T5.png]]
|colspan="2" style="text-align:center; background-color:#808080;" | [[File:M-T5.png]]
|-
|-
Line 348: Line 545:
These text tags alter the properties of normal text characters that follow them.
These text tags alter the properties of normal text characters that follow them.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-
Line 369: Line 566:
==== [CS:X] Color Set Table ====
==== [CS:X] Color Set Table ====
A detailed table of all [CS:X] subtags and their intended purpose in the base game.
A detailed table of all [CS:X] subtags and their intended purpose in the base game.
The colors are stored in FONT/text_pal.pal, and are stored slightly brighter than they appear in-game. When loaded in-game, the last three bits of each value (R, G, & B) are trimmed off to make the whole color fit within 2 bytes rather than 4, so a number like FF (0b11111111) would become F8 (0b11111000). The colors as coded in FONT/text_pal.pal are listed in the "Internal Color" column, and their location in the file is also provided. <!-- Is this paragraph too wordy...? -->
{| class="wikitable" style="text-align: left;"
{| class="wikitable" style="text-align: left;"
!Tag
!Tag
Line 374: Line 573:
!Use Case
!Use Case
!Identical to
!Identical to
!FONT/text_pal.pal Offset
!Internal Color
|-
|-
|[CS:A]
|[CS:A]
Line 379: Line 580:
|Effectively unused; described in ADEBUG as "Identified Item".
|Effectively unused; described in ADEBUG as "Identified Item".
|[CS:I]
|[CS:I]
|0x58
| style="color:black; background-color:#FFCFCF;" |#FFCFCF
|-
|-
|[CS:B]
|[CS:B]
| style="color:black; background-color:#F80000;" |Red<br>#F80000
| style="color:black; background-color:#F80000;" |Red<br>#F80000
|Forbidden choice.
|Forbidden choice.
|[CS:W]
|[CS:r], [CS:W]
|0x4C
| style="color:black; background-color:#FF0000;" |#FF0000
|-
|-
|[CS:C]
|[CS:C]
Line 389: Line 594:
|Used for rare miscellaneous and debug messages.
|Used for rare miscellaneous and debug messages.
|[CS:F], [CS:U]
|[CS:F], [CS:U]
|0x24
| style="color:black; background-color:#FFFF00;" |#FFFF00
|-
|-
|[CS:D]
|[CS:D]
| style="color:black; background-color:#F8F8F8;" |White<br>#F8F8F8
| style="color:black; background-color:#F8F8F8;" |White<br>#F8F8F8
|Standard text color.
|Standard text color. This is also the default case in <code>GetColorCodePaletteOffset</code>, so if an invalid CS code is used, it will be treated as this.
|None
|None
|0x1C
| style="color:black; background-color:#FFFFFF;" |#FFFFFF
|-
|-
|[CS:E]
|[CS:E]
Line 399: Line 608:
|Used by subjects, stats, abilities, weather, etc. Described in ADEBUG as "Bold Text".
|Used by subjects, stats, abilities, weather, etc. Described in ADEBUG as "Bold Text".
|[CS:G], [CS:N], [CS:V]
|[CS:G], [CS:N], [CS:V]
|0x20
| style="color:black; background-color:#00FFFF;" |#00FFFF
|-
|-
|[CS:F]
|[CS:F]
Line 404: Line 615:
|Names of other members of the player's team, including the partner. However, this is ''not'' used for Special Episode allies in cutscenes.
|Names of other members of the player's team, including the partner. However, this is ''not'' used for Special Episode allies in cutscenes.
|[CS:C], [CS:U]
|[CS:C], [CS:U]
|0x34
| style="color:black; background-color:#FFFF00;" |#FFFF00
|-
|-
|[CS:G]
|[CS:G]
Line 409: Line 622:
|Money.
|Money.
|[CS:E], [CS:N], [CS:V]
|[CS:E], [CS:N], [CS:V]
|0x64
| style="color:black; background-color:#00FFFF;" |#00FFFF
|-
|-
|[CS:H]
|[CS:H]
Line 414: Line 629:
|Trap names.
|Trap names.
|None
|None
|0x70
| style="color:black; background-color:#FF7F7F;" |#FF7F7F
|-
|-
|[CS:I]
|[CS:I]
Line 419: Line 636:
|Item names. In cutscenes, this is ''not'' used for unobtainable story objects such as Perfect Apples or Time Gears, but ''is'' used for items the player could obtain themselves.
|Item names. In cutscenes, this is ''not'' used for unobtainable story objects such as Perfect Apples or Time Gears, but ''is'' used for items the player could obtain themselves.
|[CS:A]
|[CS:A]
|0x58
| style="color:black; background-color:#FFCFCF;" |#FFCFCF
|-
|-
|[CS:j]
|[CS:j]
| style="color:black; background-color:#F8C060;" |Dark Cream<br>#F8C060
| style="color:black; background-color:#F8C060;" |Dark Cream<br>#F8C060
|The color is used by already-recruited Pokémon species whenever one requests to join within dungeons, and Chimecho uses the control character while explaining this text color.
|The color is used by already-recruited Pokémon species whenever one requests to join within dungeons, and Chimecho uses the tag while explaining this text color.
|[CS:P]
|[CS:P]
|0x44
| style="color:black; background-color:#FFC767;" |#FFC767
|-
|-
|[CS:J]
|[CS:J]
Line 429: Line 650:
|Status effects.
|Status effects.
|None
|None
|0x74
| style="color:black; background-color:#FFFFA7;" |#FFFFA7
|-
|-
|[CS:K]
|[CS:K]
Line 434: Line 657:
|Pokémon species names, including those in shop names. Should ''not'' be used to refer to a character ([CS:N]), even if they use the name of their species as their personal name.
|Pokémon species names, including those in shop names. Should ''not'' be used to refer to a character ([CS:N]), even if they use the name of their species as their personal name.
|[CS:M]
|[CS:M]
|0x3C
| style="color:black; background-color:#00FF00;" |#00FF00
|-
|-
|[CS:L]
|[CS:L]
| style="color:black; background-color:#00E060;" |Green<br>#00E060
| style="color:black; background-color:#00E060;" |Green<br>#00E060
|The control character itself is effectively unused in the base game, but the same text color is used for [LS:x] hyperlinks in item/move descriptions. The kiosk demo uses the control character to note the title of the game.
|The tag itself is effectively unused in the base game, but the same text color is used for [LS:#] hyperlinks in item/move descriptions. The kiosk demo uses the tag to note the title of the game.
|None
|None
|0x6C
| style="color:black; background-color:#00E767;" |#00E767
|-
|-
|[CS:M]
|[CS:M]
Line 444: Line 671:
|Move names. Also commonly used on the word "move" itself in non-dialogue strings.
|Move names. Also commonly used on the word "move" itself in non-dialogue strings.
|[CS:K]
|[CS:K]
|0x40
| style="color:black; background-color:#00FF00;" |#00FF00
|-
|-
|[CS:N]
|[CS:N]
Line 449: Line 678:
|Regular character names. The hero and partner will also fall back to this if they're not in a primary story role, as seen in Special Episode 5's intro scene.
|Regular character names. The hero and partner will also fall back to this if they're not in a primary story role, as seen in Special Episode 5's intro scene.
|[CS:E], [CS:G], [CS:V]
|[CS:E], [CS:G], [CS:V]
|0x38
| style="color:black; background-color:#00FFFF;" |#00FFFF
|-
|-
|[CS:O]
|[CS:O]
Line 454: Line 685:
|Unused.
|Unused.
|None
|None
|0x78
| style="color:black; background-color:#009F00;" |#009F00
|-
|-
|[CS:P]
|[CS:P]
Line 459: Line 692:
|Dungeon names and other destinations such as Fogbound Lake and Shaymin Village. ''Not'' used in the base game for other location names such as Treasure Town or the Hot Spring in dialogue.
|Dungeon names and other destinations such as Fogbound Lake and Shaymin Village. ''Not'' used in the base game for other location names such as Treasure Town or the Hot Spring in dialogue.
|[CS:j]
|[CS:j]
|0x44
| style="color:black; background-color:#FFC767;" |#FFC767
|-
|-
|[CS:Q]
|[CS:Q]
Line 464: Line 699:
|Unused.
|Unused.
|None
|None
|0x54
| style="color:black; background-color:#0087FF;" |#0087FF
|-
|-
|[CS:r]
|[CS:r]
|<todo>
| style="color:black; background-color:#F80000;" |Red<br>#F80000
|Unused.
|Unused.
|None
|[CS:B], [CS:W]
|0x14
| style="color:black; background-color:#FF0000;" |#FF0000
|-
|-
|[CS:R]
|[CS:R]
| style="color:black; background-color:#40F840;" |Pale Green<br>#40F840
| style="color:black; background-color:#40F840;" |Pale Green<br>#40F840
|Selling price.
|The tag itself is effectively unused, but the text color is used for displaying the selling price at shops. Described in ADEBUG as "Selling Price".
|None
|None
|0x68
| style="color:black; background-color:#47FF47;" |#47FF47
|-
|-
|[CS:S]
|[CS:S]
Line 479: Line 720:
|Effectively unused. Described in ADEBUG as "Multiple Items Selected", but doing this in shop or storage menus changes the color of the surrounding background rather than the text itself.
|Effectively unused. Described in ADEBUG as "Multiple Items Selected", but doing this in shop or storage menus changes the color of the surrounding background rather than the text itself.
|None
|None
|0x50
| style="color:black; background-color:#6787E7;" |#6787E7
|-
|-
|[CS:T]
|[CS:T]
Line 484: Line 727:
|Unused and seemingly useless, as it makes the text unreadable.
|Unused and seemingly useless, as it makes the text unreadable.
|None
|None
|N/A
|N/A
|-
|-
|[CS:U]
|[CS:U]
Line 489: Line 734:
|Effectively unused. Described in ADEBUG as "Unidentified Item".
|Effectively unused. Described in ADEBUG as "Unidentified Item".
|[CS:C], [CS:F]
|[CS:C], [CS:F]
|0x5C
| style="color:black; background-color:#FFFF00;" |#FFFF00
|-
|-
|[CS:V]
|[CS:V]
Line 494: Line 741:
|Used for "bold" numbers. Base game example: <code>You can get only [CS:V]two wrong[CR], OK?</code>
|Used for "bold" numbers. Base game example: <code>You can get only [CS:V]two wrong[CR], OK?</code>
|[CS:E], [CS:G], [CS:N]
|[CS:E], [CS:G], [CS:N]
|0x48
| style="color:black; background-color:#00FFFF;" |#00FFFF
|-
|-
|[CS:W]
|[CS:W]
| style="color:black; background-color:#F80000;" |Red<br>#F80000
| style="color:black; background-color:#F80000;" |Red<br>#F80000
|Only used for debug messages, particularly warnings.
|Used by item-boosted stats in a Pokémon's summary and a few debug messages, particularly warnings.
|[CS:B]
|[CS:B], [CS:r]
|0x28
| style="color:black; background-color:#FF0000;" |#FF0000
|-
|-
|[CS:X]
|[CS:X]
Line 504: Line 755:
|Any team's name, not including the word "team". Also used by the names of other players in multiplayer-related strings.
|Any team's name, not including the word "team". Also used by the names of other players in multiplayer-related strings.
|None
|None
|0x2C
| style="color:black; background-color:#FFA7FF;" |#FFA7FF
|-
|-
|[CS:Y]
|[CS:Y]
Line 509: Line 762:
|Used for the current leader's name, including the hero and Special Episode protagonists. Regular recruited Pokémon will also use this color if set as the leader, even if spoken to in Spinda's Café.
|Used for the current leader's name, including the hero and Special Episode protagonists. Regular recruited Pokémon will also use this color if set as the leader, even if spoken to in Spinda's Café.
|None
|None
|0x30
| style="color:black; background-color:#009FFF;" |#009FFF
|-
|-
|[CS:Z]
|[CS:Z]
Line 514: Line 769:
|Exclusive item names. This includes the Water Float and Defend Globe when referred to in cutscenes.
|Exclusive item names. This includes the Water Float and Defend Globe when referred to in cutscenes.
|None
|None
|0x60
| style="color:black; background-color:#8787FF;" |#8787FF
|}
|}


Line 519: Line 776:
These text tags insert different characters depending on the system language.
These text tags insert different characters depending on the system language.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-
Line 549: Line 806:
|[F:ER]
|[F:ER]
| -
| -
| colspan="2" rowspan="1" |er
| colspan="2" rowspan="1" |<sub>er</sub>
|0x96
|0x96
|0x96
|0x96
|e and r condensed into one character. Used in French when referring to Sky Peak Station Pass 1.
|e and r condensed into one superscript character, a masculine ordinal indicator for number 1. Used in French when referring to Sky Peak Station Pass 1.
|-
|-
|[F:RE]
|[F:RE]
| -
| -
| colspan="2" rowspan="1" |re
| colspan="2" rowspan="1" |<sup>re</sup>
|0x97
|0x97
|0x97
|0x97
|r and e condensed to one character. Unused
|r and e condensed to one superscript character, a feminine ordinal indicator for number 1. Unused.
|-
|-
|[F:O]
|[F:O]
Line 566: Line 823:
|0xBA
|0xBA
|0xBA
|0xBA
|Masculine Ordinal Indicator. Unused?
|Masculine ordinal indicator for numbers 2+. Unused?
|-
|-
|[F:E]
|[F:E]
Line 573: Line 830:
|0x8D
|0x8D
|0x8D
|0x8D
|Superscript "e". Used in French when referring to Sky Peak Station Pass 2+
|Superscript "e", an ordinal indicator for numbers 2+. Used in French when referring to Sky Peak Station Pass 2+.
|-
|-
|[F:RQ]
|[F:RQ]
Line 580: Line 837:
|0xBF
|0xBF
|0xBF
|0xBF
|Reverse question mark. Unused?
|Reverse question mark. Unused, as the Spanish script simply writes out the character regularly.
|-
|-
|[F:S1]
|[F:S1]
Line 618: Line 875:
These text tags alter the rate that text is printed, and/or create a line break.
These text tags alter the rate that text is printed, and/or create a line break.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-
Line 649: Line 906:
These text tags alter the printing position of characters that follow them.
These text tags alter the printing position of characters that follow them.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-
Line 671: Line 928:
These text tags create audio effects when they are parsed, but do not affect the textbox visually.
These text tags create audio effects when they are parsed, but do not affect the textbox visually.
{| class="wikitable"
{| class="wikitable"
!Text Tag
!Tag
!Description
!Description
|-
|-