• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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

38
Posts
10
Years
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:

karatekid552

What happens if I push it?....
1,771
Posts
11
Years
"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.
 
38
Posts
10
Years
"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?
 

Rasen

ASM is very cool!
71
Posts
12
Years
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?
 

karatekid552

What happens if I push it?....
1,771
Posts
11
Years
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.
 
89
Posts
10
Years
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?
 
252
Posts
10
Years
  • Age 27
  • Seen Jul 6, 2019
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.
 

karatekid552

What happens if I push it?....
1,771
Posts
11
Years
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.
 
457
Posts
10
Years
  • Age 28
  • Seen Apr 9, 2024
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
 
457
Posts
10
Years
  • Age 28
  • Seen Apr 9, 2024
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