• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Inserting Battle Backgrounds

Thanks, actually my question is how to convert the battleground image into the indexed one?

sorry to bother you again...

The tutorial I just sent you explains how to change the image into an indexed one. Indexing an image simply means that you are setting a color palette to it, and the image can only use those colors.
 
Thanks for ur reply, but I cannot open this link.

"At this point you can just calculate the HEX values of your new palette"

Where should I find this new palette?
 
Last edited by a moderator:
"At this point you can just calculate the HEX values of your new palette"

Where should I find this new palette?

"There is one main way to find your palette. Search for the first string of four words of your background's 0x2 palette (I'll discuss palette 0x3 shortly). You can do this by entering a battle with your chosen background, opening the palette viewer and reversing the colour values (e.g 0x1234 becomes 34 12). In the last screenshot you can see this as the string '00 00 FC 73 D4 3F 90 3F' in front of the first marked byte. At this point you can just calculate the HEX values of your new palette and overwrite the current words but keep in mind the stray bytes - Leave them as they are."

VBA has a built in Palette viewer. Use it in battle and look through to find the palette you need on the left hand side.
 
"There is one main way to find your palette. Search for the first string of four words of your background's 0x2 palette (I'll discuss palette 0x3 shortly). You can do this by entering a battle with your chosen background, opening the palette viewer and reversing the colour values (e.g 0x1234 becomes 34 12). In the last screenshot you can see this as the string '00 00 FC 73 D4 3F 90 3F' in front of the first marked byte. At this point you can just calculate the HEX values of your new palette and overwrite the current words but keep in mind the stray bytes - Leave them as they are."

VBA has a built in Palette viewer. Use it in battle and look through to find the palette you need on the left hand side.
Yes, I found the palette now which is on the third row of the left hand side, and I already found the address on the HxD which include '00 00 FC 73 D4 3F 90 3F'. but I should replace these values, which values should I use?
 
Yes, I found the palette now which is on the third row of the left hand side, and I already found the address on the HxD which include '00 00 FC 73 D4 3F 90 3F'. but I should replace these values, which values should I use?

Each one of those "XX YY" correspond to a color. It is best to use APE to edit the colors.
 
I have a problem with Ruby. I made a grass background and a tilemap with 0x2 and 0x3 palette but it seems that it doesn't matter which palette I use. I made half of the background palette 0x2 and the other half 0x3. And when i changed the color in 0x2 palette it also changed the 0x3 palette. Any ideas?
 
Any Tutorial for Pokemon Ruby?
 
Any Tutorial for Pokemon Ruby?

Hey How about for Emerald? How Can You insert Battle backgrounds?

All you need to do is find the BG table in both roms. Then everything else is exactly the same. You can do this by finding the offset of the some of the graphics in UNLZ or via logging in VBA (the normal way to find graphics.........) and then just search for the pointer.
 
The table offset for Ruby is 1F95AC and the table offset for Emerald is 31ABF8. Just substitute this into KarateKid552's tutorial.
However, I'd like to know a few things:
-How do you set a certain area to load a certain BG?
-Does your patch work on R/S/E? If it doesn't, do you intend to release one for these games?
 
The table offset for Ruby is 1F95AC and the table offset for Emerald is 31ABF8. Just substitute this into KarateKid552's tutorial.
However, I'd like to know a few things:
-How do you set a certain area to load a certain BG?
-Does your patch work on R/S/E? If it doesn't, do you intend to release one for these games?
I think you meant 0x31ABA8. And it seems like Emerald's table format is a bit different from Firered's, so it looks like we'll need a custom routine.
I might as well contribute what I've discovered so far:
0x31ABA8 - 0x31AC6F: Contains 10 battle backgrounds, with the outside battle backgrounds and 2 indoor battle backgrounds, I think.
D8 CC D7 08: A pointer to an indoor battle background. This battle background has tiles on it, and its used for places like the Aqua Hideout and the Elite Four. There's probably a separate loading routine, but I haven't looked into this yet.
0x35838: Has a pointer to the Rayquaza battle background (the one with the clouds). This is the only pointer in the rom that points to the Rayquaza battle background. I haven't looked into this either.

I don't have time to look into this, but I guess someone could look into this? Idk hope this helps somewhat.
 
The table offset for Ruby is 1F95AC and the table offset for Emerald is 31ABF8. Just substitute this into KarateKid552's tutorial.
However, I'd like to know a few things:
-How do you set a certain area to load a certain BG?
-Does your patch work on R/S/E? If it doesn't, do you intend to release one for these games?

I do not at this point intend to make one for RSE. However, the source code is there, so if anyone wants to port it, go for it.
 
Pond Background

VV = 24B1EC
WW = 24B608
XX = 24B8A8
YY = 24BBE0
ZZ = 24B19C

Sea Background

VV = 24BD38
WW = 24C07C
XX = 24C314
YY = 24C520
ZZ = 24BCE0

I think the Pond should be the Sea, and the Sea should be the Pond. It is because after I edit the sea, I wonder why the edit didn't change. Then, when I went to a pond, the edit appears there. :3
 
Sand Background

VV = 249F98
WW = 24A373
XX = 24A618
YY = 24A844
ZZ = 249F98

Another mistake found. The background image offset for the Sand background is same as the palette offset. My laptop isn't fixed yet so I can't post the correction. I hope you can correct this. :)
 
Last edited:
Back
Top