Custom text boxes: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
>Torchickens No edit summary |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{bulbapedia2|Character encoding in Generation I}} |
{{bulbapedia2|Character encoding in Generation I}} |
||
[[File:TheZZAZZGlitch creepypasta custom text box.png|thumb|right|160px|Custom text in a [[custom map]] from [ |
[[File:TheZZAZZGlitch creepypasta custom text box.png|thumb|right|160px|Custom text in a [[custom map]] from [https://www.youtube.com/watch?v=Zd2595c_72M TheZZAZZGlitch's creepypasta save file] ]] |
||
Using text pointers sourced in RAM, the player can use [[arbitrary code execution]] to write and show '''custom text boxes'''. |
Using text pointers sourced in RAM, the player can use [[arbitrary code execution]] to write and show '''custom text boxes'''. |
||
Line 11: | Line 11: | ||
*[[Custom Pokédex entries]] |
*[[Custom Pokédex entries]] |
||
Specific details on how to bring up the text box pointer are detailed in the articles above. |
Specific details on how to bring up the text box pointer are detailed in the articles above. The formatting section below concerns how to define them. |
||
===Formatting=== |
===Formatting=== |
||
{{main|List of text control codes#Text_commands}} |
|||
{{incomplete|1=Other text commands such as the one to print numbers}} |
|||
Text boxes in the game begin with a special command, detailed as such: |
|||
*'''00''': Normal text. Text characters (found on [[The Big HEX List]]) follow. If an 0x00 byte appears in this region, an [[error code]] will appear and text following it will not be printed. Some characters are control characters which will automatically print a string, line break, new page, etc. |
|||
*'''08''': Runs code following the 08 byte (can be used for arbitrary code execution) |
|||
*'''F5''': Loads a vending machine |
|||
*'''F6''': Loads Cable Club reception lady text |
|||
*'''F7''': Game Corner Pokémon prize menu. The prizes are determined by the text box's index number, stored at FF8C. Some glitch Game Corner prizes also cause buffer overflows. See [[PrizeDex]] for more information. |
|||
*'''F9''': Normal PC |
|||
*'''FC''': PC for items only |
|||
*'''FD''': PC for Pokémon storage only (unused, featuring "Switch on!" text) |
|||
*'''FE''': Loads a Poké Mart |
|||
*'''FF''': Loads a Pokémon Center |
|||
For further information, see the Bulbapedia article. |
|||
[[Category:Arbitrary code execution]] |
[[Category:Arbitrary code execution]] |
Latest revision as of 10:27, 4 May 2024
Bulbapedia also has an article about Custom text boxes. |
Using text pointers sourced in RAM, the player can use arbitrary code execution to write and show custom text boxes.
In Generation I
There are many means of displaying custom text boxes in the game, including:
- Text pointer manipulation
- Glitch sign manipulation (the basis of Pikachu off-screen glitch arbitrary code execution)
- Text box ID matching (e.g. Sea Route 21 0x44 text box glitch (English Yellow))
- Custom Pokédex entries
Specific details on how to bring up the text box pointer are detailed in the articles above. The formatting section below concerns how to define them.
Formatting
- Main article: List of text control codes#Text_commands