Sign Up
Romhack.me connects you to ROM Hackers around the world.
Search all tutorials.
Give wild Pokemon their own battle music!

Give wild Pokemon their own battle music!

Category:
Posted By: On September 10, 2012
Comments: 4
Views: 1963
7 Ratings

Credits go to Darthatron for all of this. I'm just writing up how to do it. =]


So, wild Pokemon such as legendary Pokemon are a lot cooler to fight against if they have their own theme music, right? Well, now you can make them have that with this bit of hex editing! What this does is force a particular species of wild Pokemon to have a certain song played when it is encountered.


What you'll need


A rom (FR will be covered here)
A hex editor (I used Cygnus. Whatever you have should be fine)
THIS TUTORIAL


Inserting the hack


Go to 0x08043FDA in your FR rom and write in the following bytes:


08 20 08 40 00 28 12 D1 08 48 0B 21 FB F7 FF FD
05 49 1C 22 50 43 40 18 1A 30 00 88 00 28 38 D0
39 E0 4C 2B 02 02 84 47 25 08 2C 40 02 02


Then go to 0x080440A0 and write in the following:


03 E0


Setting music for Pokemon


Now you can start giving Pokemon their own custom set music!


To do this, go to any Pokemon's base stats. The base stats begin at 0x08254784 and are 0x1C in length for each Pokemon. You are wanting to edit the last two bytes (or halfword) associated with a Pokemon.


Suppose I want to use the FRLG champion music for a Pokemon's encounter theme. That is song 0x12B in hex, or what we'll be writing into the halfword as 2B 01.


So for example, Bulbasaur's base stats start at 0x082547A0. They look like this:


2D 31 31 2D 41 41 0C 03 2D 40 00 01 00 00 00 00
1F 14 46 03 01 07 41 00 00 03 00 00


What I bolded is what you want to edit. So if I wanted the champion theme, it would look like this:


2D 31 31 2D 41 41 0C 03 2D 40 00 01 00 00 00 00
1F 14 46 03 01 07 41 00 00 03 2B 01


Have fun with this! I plan to use this hack myself for all the legendary Pokemon I'm including in my hack. =]

AntiRellik
Same here, is this possible with Emerald?
Dafting
@Plat994 and @AntiRellik, yeah but you need to modify the ASM routine with the proper offsets i think