WTW and battles
Posted by: ISSOtm
Date: 2017-01-26 11:30:36
https://github.com/pret/pokered/blob/master/home/overworld.asm#L366
The called function resides here :
https://github.com/pret/pokered/blob/master/home.asm#L2149-L2158
Notes that it returns non-zero is bit 7 of $D730 is set.
This bit is used by the game when a sprite is following scripted movement.
But did you know the Pewter Museum and Brock Through Walls of activating NoClip actually set this flag ? Yeah, no kidding !
After testing (setting $CD38 to $FF, $CD3B to $FF and $D730 to $80 enables NoClip and makes you being controlled by the game unless you hold any button), I found out two interesting things.
First, wild battles do NOT trigger. Like when you enable bit 1 of $D732 and hold down B.
Second, Trainer battles… stuff. First, Trainers do notice you, and bring their text properly. They don't have to walk to you. However, when you close their text… no battles begins until $D730 bit 7 is zero, which happens when $CD38 hits zero.
tl;dr : using Pewter Museum Guy NoClip or Browk Through Walls disables wild battles as long as the glitch stays active (eg it cancels when entering any building). Trainers don't begin their battle until CD38 has hit 0, which may take a couple seconds, but you can't avoid Trainers that way. Too bad !