Jump to content

Safari Zone exit glitch: Difference between revisions

Line 33:
 
The oversight is that moving up will return the player to the Safari Zone first, which is a separate map, so the Safari Zone entrance script ID is stuck at 6 until the player walks back out. Normally, the script correctly read out the value 5 from CF0D and everything is fine. But the value of CF0D is not saved with the save file, and reverts to 0 upon reset. Therefore the script will erroneously change the script ID to 0, allowing the player to get the welcome message by walking down to the desk, and answer "no" to leave.
===End game warp outside of the Safari Zone===
 
Usually, entering the Safari Zone sets bit 0x7 (0x80) to $D790 ($D78F in Yellow). This flag is responsible for displaying the message that the Safari Zone game is over if the player has no remaining steps ($D70D-$D70E ($D70C-$D70D in Yellow)) and/or Safari Balls ($DA47 ($DA46 in Yellow)). It is also responsible for reducing the remaining steps in memory as the player walks around. Leaving the Safari game the normal way resets $D780/D78F, however since the script was reset to the welcome message it remains at 0x80. Furthermore, Game Freak decided not to check directly if the player is actually in the Safari Zone map, meaning as long as this flag is set and there are no Safari Balls and/or steps the player will warp back to the gate.
 
Cookies help us deliver our services. By using our services, you agree to our use of cookies.