PDA

View Full Version : Dealing with Colors! (Gameboy Advance & Gameboy Color)


Coolboyman
December 6th, 2007, 02:23 AM
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

Binary
December 6th, 2007, 07:33 AM
Wow very confusing tutorial,
But all the more better, im sure this will help many advanced and beginning hackers.

~Celebi

SerenadeDS
December 6th, 2007, 07:33 PM
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!

Scream.Aim.Fire
March 28th, 2008, 04:02 PM
Thanks for the tutorial man.
Your stuff is always detailed.

Teh Baro
March 29th, 2008, 06:57 AM
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.

Struedelmuffin
October 30th, 2011, 04:25 PM
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.

Sephiroth2009
November 21st, 2011, 01:08 PM
Just use a sprite editor.

Struedelmuffin
November 29th, 2011, 07:42 PM
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.