Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!

#1
December 6th, 2007 (2:23 AM).
 Coolboyman Veteran Hacker Join Date: Sep 2003 Location: The East Bay Age: 29 Gender: Male Nature: Bold Posts: 471
Each palette has 2 bytes that tells it's color. You need to basically add up the values, so if you want 31 Red, you need to use 1F00. More of a color is lighter, and less of it is darker. You can find out what colors the game uses using the palette viewer in Visual Boy Advance. To find them, you need to flip the two variables displayed (if it's 5A27 then search for 275A)

First:
01 = R + 1
02 = R + 2
04 = R + 4
08 = R + 8
10 = R + 16
20 = G + 1
40 = G + 2
80 = G + 4

Second:
01 = G + 8
02 = G + 16
04 = B + 1
08 = B + 2
10 = B + 4
20 = B + 8
40 = B + 16

Examples (Basic Colors):
FF03 = Yellow
1F00 = Red
E003 = Green
007C = Blue
1F7C = Pink
C0FF = Cyan

1C7C = Purple
1F02 = Orange
1002 = Brown
FF7F = White
0001 = Dark Green
1042 = Grey/Silver

0000 = Black

#2
December 6th, 2007 (7:33 AM).
 Binary え？ Join Date: Aug 2007 Age: 23 Posts: 3,994
Wow very confusing tutorial,
But all the more better, im sure this will help many advanced and beginning hackers.

~Celebi
__________________
#3
December 6th, 2007 (7:33 PM).
 SerenadeDS Trainer Join Date: Feb 2007 Posts: 283
No, not really confusing. Pretty basic if you ask me, but it is still nice to know! ;)

It would also depend on how people play the certin GB/GBC game on the VBA or other Emulator.. If they played Pokemon Red on VBA with it looking black and white it wouldn't really matter though..

Thanks for the info CBM!
#4
March 28th, 2008 (4:02 PM).
 Scream.Aim.Fire Join Date: Mar 2008 Age: 27 Gender: Nature: Lax Posts: 16
Thanks for the tutorial man.
__________________
#5
March 29th, 2008 (6:57 AM).
 Teh Baro In my times...! Join Date: Mar 2006 Location: Spain Gender: Male Nature: Quiet Posts: 522
I think it's clearer explaining it this way:
Each color is a word (2 bytes) with this format
RRRRRGGG GGBBBBBX

Where each color flows in the range 0..31. Comparing with 3-byte RGB (html), each value is divided by 8.

If I didn't know that from before, I wouldn't actually understand that tutorial.
__________________
what the fudge
#6
October 30th, 2011 (4:25 PM).
 Struedelmuffin Join Date: Sep 2011 Gender: Male Posts: 19
Really helpful stuff but i still have a question over this, even though this thread is incredibly old. I want to change the color of the main character sprite (HIRO) in silver version to green instead of red. I found the color i need to change but i do not know how to get to the sprite's offset in hex so that i can edit it properly. If someone could please tell me his offset that'd be great.
#7
November 21st, 2011 (1:08 PM).
 Sephiroth2009 Banned Join Date: Oct 2011 Posts: 18
Just use a sprite editor.
#8
November 29th, 2011 (7:42 PM).
 Struedelmuffin Join Date: Sep 2011 Gender: Male Posts: 19
Sephiroth I did use a sprite editor and the way the sprite looked changed but the game's coding makes it so that the pre-selected palette the game creators chose will always be loaded during the actual game. Coolboyman has been able to successfully alter the character's colors though so I was hoping he could help me with this.

# Join the conversation!

Create an account to post a reply in this thread, participate in other discussions, and more!