Goal of this Research

Identify which bytes are used during battle for HP Drain and MP Drain.

Direction to Take This Research

Create a new subroutine in the game to allow MP Drain digits to offer a new color, versus HP Drain.

Notes & Findings

There are 5 ways to drain MP in the game:

The two Mix recipes are almost certainly different in a lookup table, but it’s uncertain if they point to the same effect routine in the rom.

Mystery Waltz from Dance

Using an editor (ff6tools) I made a single change to this ability, in order to find where the code is located in the rom.

This technique is explained here.

Changing it from “Drain MP” to “Drain HP” modified the byte at $110F4C, and I’ve reason to suspect this is the 5th byte in the routine based on the editor’s UI.

These are the 8 bytes centered around this offset, and you’ll see that a pattern of 8 bytes is common in in the other battle effects.

38 04 00 80 0E 80 08 00

This helped demonstrate that the value $0E represents “Drain MP” and became $0D in my tweak with the editor.

Notice how the last 2 options in the editor have the values 8 and 0, and how the last 2 bytes in this series are $08 and $00! (If you use a calculator, you can see that $80 is actualy hex for 128, too…)

image.png

DragonSword

image.png

Here is a snapshot of the FFV rom while HP Drain is happening in battle from the first part of the DrgnSwd Ability.

Bytes utilized for this effect are $110F08 - 110F17.