Jump to content

Arbitrary sprites: Difference between revisions

no edit summary
>Torchickens
No edit summary
 
(7 intermediate revisions by 4 users not shown)
Line 39:
In Yellow, [[glitch Pokémon]] {{gdex|Y:230|9ゥ (0xE6)}}'s backsprite is sourced from FAC9 (DAC9)). By default, on Super Game Boy the glitch Pokémon is yellow, but the palette of the desired sprite can be changed by changing the second species byte of a 9ゥ (0xE6).
 
Dimension byte 0x44 sprites can be 'installed' into the game for 9ゥ (0xE6, by modifying the contents of DAC9 (which is located within the storage system Pokémon data) with arbitrary code execution.
 
This exploit was documented by Torchickens.
Line 54:
 
==In later generations==
Arbitrary sprites are possible in Pokémon Ruby and Sapphire. All glitch Pokémon’s palettes are indexed out of bounds from the array holding each species’ compressed palette pointers. These pointers can end up in Pokémon storage data, which allows the player to manipulate data within their boxes (through ACE or by save editing) so that when decompressed, the “palette” data will overwrite the decamark sprite in memory. It should be noted that this same technique is not possible in Emerald or FRLG because of how memory is laid out differently.
Arbitrary sprites are theoretically possible, but no vulnerability to do it has, as of yet been documented.
 
==See also==
Line 71:
 
{{YouTube|d3OsHGhjz48|ChickasaurusGL}}
 
Arbitrary sprites in Pokémon Ruby:
 
{{YouTube|qdR3DwaG0kI|unclekrunkel}}
 
==External links==
*[https://rgmechex.com/tech/gen1decompress.html Retro Game Mechanics Explained's tool to compress and decompress Generation I sprites online (supports PNGs)]
*[https://sites.google.com/site/torchickens2/glitching-tools Sprite import tools mirror on Torchickens' Google Sites]
*"Sprite import tools for RBY" can be downloaded within Evie's Google Sites backup [https://drive.google.com/drive/folders/1DAVPYay9sAuXwi4qXbDQfPU2sIDI_mXH?usp=sharing here]. It is based on the previous work of the GB Dev (for .2bpp encoding) and Skeetendo (for sprite compression) communities.
 
[[Category:Generation I glitches]]
[[Category:Major glitches]]
Cookies help us deliver our services. By using our services, you agree to our use of cookies.