## ROM Hacking: 5 - Importing Moves from Other Games

Information and Guides about ROM Hacking

# ROM Hacking: 5 - Importing Moves from Other Games

 Posts 768
User
WldFb
User
Joined: 09 Jun 2009, 21:54
It's been a while since the last guide, so it's time for a new one.

I'm assuming here that you're already familiar with the previous chapters and you know the basics about ROM hacking.

Ok, how do we get an animation from another game and put it in No Mercy?

I'll make an example using Virtual Pro Wrestling 2. I want to use one of the combo strike (the number '2' elbow). First, you need to find the animation value. In VPW2, P1's animation value is at 704C4.
If you look there while viewing this move, you'll see the value is '20DB'.

To find the ROM address we need the Toki3 values. Use this formula:

Toki3 = (animation - 1) * 4 + 80358A60
ROM = 152DF0 + Toki3

Toki3 = (20DB - 1) *4 + 80358A60 = 80360DC8

If you go there you'll see:
005FD456 (20DB's toki3)
005FD9B6 (20DC's toki3)

This move is a strike, so it uses only one animation (as opposed to grapples). While I'm here, I also get the value for the next move (that is needed to know where the animation ends in the ROM as I explained in the previous post).

152DF0 + 5FD456 = 750246
152DF0 + 5FD9B6 = 7507A6

So, this Elbow strike begins at 750246 in ROM and the next move starts at 7507A6.
Now go to the VPW2 ROM at 750246. At the beginning you can see the Tokis2 (00 00 00 1A), write them down. Select the data and stop at 7507A6. The size of the selection should be '560' for this move.
Now use the Edit\Copy as Hex Data function (you need this to copy properly) and paste the data in the notepad.

Now, open the No Mercy ROM. If you're using the default one and you go at 01FA6B70 you'll see this:

We are at the end of the ROM data. The area starting with all those 'FFFF' is empty space and can be used as you wish. If you check the Back to Basics ROM you'll see how I've added several things there (those are mostly moves). In this example I'm using the default ROM and I'm adding this move right here at 01FA6B70.
So, I select '560' data in the ROM, select the data from the notepad and paste it (as 'OEM' text) in the ROM. Like I said previously, If you're doing it right you shouldn't get a message that prompts you to insert (if that happens you're using wrong sizes, try again).

Ok, now save (you backed up the original ROM before, right?)

Now, you have put the animation in the ROM, not replacing anything, but adding it. How do you use it in-game?

First, let's calculate the Toki3 address for No Mercy. We use a similar formula to the one we used in the 4th guide.

Toki3 = ROM address - 1BD1B0
Elbow's Toki3 = 01FA6B70 - 1BD1B0 = 01DE99C0

To use this animation, the Tokis must use these:

8134xxxx 01DE
8134xxxx 99C0

How can you proceed from here? There are a few options:

1) Change the Tokis of an existing move to replace it (like you would do for any hacks that uses Tokis3)
2) Change the Tokis of an unused move to replace it
3) Make a Custom MMM that uses a free animation (one that is not currently assigned to any MMM)

To make this guide simpler I'll use option 1 here. I want to replace the default Elbow Weak Strike

animation: 3325
Tokis:
813264F0
813264F2
8134A6F0
8134A6F2

I replace them with:
813264F0 0000
813264F2 001A
8134A6F0 01DE
8134A6F2 99C0

If you go to SD Mall and preview the Weak Elbow Strike you'll see the new animation. It works like any animation in the game so you can use it as a splice for move hacks also.

That's it for now, let me know if you have questions

 Posts 768
User
WldFb
User
Joined: 09 Jun 2009, 21:54
Here are the formulas for other games:

WM2000

P1 Animation at: 5b124

Toki3 = (animation - 1) * 4 + 80358A20
ROM address = Toki3 + 144AA0

---

Revenge

P1 Animation at: 706AC

Toki3 = (animation - 1) * 4 + 803B7C00
ROM address = Toki3 + DAC50

---

VPW64

P1 Animation at: 593CC

Toki3 = (animation - 1) * 4 + 803BEB30

---

Just follow the same method explained before and it should work fine.

 Posts 24
User
jazz916
User
Joined: 26 Jun 2010, 07:48
Thanks for the awesome guide! I was able to successfully import some animations from VPW64.

However, when I tried to import a striking move from VPW2, I noticed the second Toki2 value was inverted, 0000, 1500 instead of 0000 0015. So I went and checked 750246 as used in your example, but it's also showing the Toki 2 data as 0000 1A00 instead of 0000 001A, so I was wondering if the value has to be manually changed? Or might there a problem with my rom (it's .v64 format) or Hex Workshop settings?

 Posts 768
User
WldFb
User
Joined: 09 Jun 2009, 21:54
It's been a while since I made some ROM editing, so I'm not sure about it.
It may depend on the game or the program settings.

 Posts 24
User
jazz916
User
Joined: 26 Jun 2010, 07:48
No problem, after checking through all of VPW64's animations, most of the ones I had been wanting to port from VPW2 are on VPW64, so there's only two animations from VPW2 that I'm after, (ironically, the elbow you used in your example is one of them!), so I'll see if I can find a way to fix it later.

In the game, I found the Toki 2 addresses for the number 2 elbow (ani 20DB) at 8034748C and the correct order is indeed 0000 001A, so I have no idea why it'd be switched in the rom (my rom is a .v64 rom, is that the same format as your copy?)

 Posts 24
User
jazz916
User
Joined: 26 Jun 2010, 07:48
Success!

I got it to work by selecting the entire 560 bytes of data, doing a byte flip operation on Hex Workshops, then doing the copying and pasting. It worked just fine! I guess for some reason the data on my rom was flipped

 Posts 18
User