View Single Post
Old December 28th, 2014 (10:29 AM).
FBI's Avatar
FBI FBI is offline
Free supporter
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Posts: 1,866
Originally Posted by Hiroshi Sotomura View Post
I'm still seeking what controls the HM checks at all, so I can reallocate what badge works for what move.

And despite Black/White advancing the scene, X/Y goes back to the tried and true checks. :( (That's not why I want to keep using badge checks, mind you.) Maybe we should stop trying to follow the leader here, haha.
I've done some research on this some time ago :o

First of all, all HMs have secondary flag checks if used via the BRM.

The badge checks for Cut, Strength, Rocksmash are done via scripts. The badge checks for waterfall and surf are done in two places, once in their respective scripts, and another in the routines themselves (those checks would be at 0x806D570 and 0x806D5B2 respectively). Finally flag checks for moves being used via the bottom right menu are at 0x812461C (flash, fly and others you decide to use via BRM).

The same flag check is used for all HMs, and changing that requires your own little snipplet of ASM. Right now it's doing something like this:
ldr r0, =(0x820)
add r0, r0, r4
bl checkflag
Where r4, is the current HM selected from a table. So that leaves two possible ways, 1) edit the order of the table at 0x845A788, or 2) edit the routine to change the value of r4 depending on what you want. I should also mention that r4's value at this point is determined at 0x81245C0.

Overall just editing the badges should be rather simple :D
Reply With Quote