A simple tool for injecting images into your trainer card in any generation 5 Pokemon game.
Despite only allowing you to draw in black-and-white, the trainer card signature shares a palette with the rest of the trainer card, allowing for around 146 unique colours to be used.
- Use
install_pillow.bat
to install the required PIL Imaging Library for this to work - In the .py script, replace
filename
with the name of your image, andversion
with eitherbw
orb2w2
. Both games use different palettes, so this ensures that the resulting image looks correct - Run the script and copy the resulting hex values
- Open your trainer card and paste the copied values at address
0x2817A8
for BW or0x2802E0
for B2W2 of the game's Main RAM
Congrats! You have now done something that should have never been made possible!
- If the image values aren't imported starting exactly at the correct offset, the game will freeze.
- Non-grayscale images are reset to black-and-white once the trainer card menu is closed, and will probably look terrible. If you want something that looks good long-term, set
grayscale
toTrue
in the python script before running, and the image will be saved exactly how it looks when you import it. - The trainer card changes palette at different game milestones, which messes up coloured images if you don't have the lowest tier trainer card.
Yuck. Gross. | Nice and clean. |
---|---|
A coloured image converted by the game | An image imported as grayscale |