-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document cycling road flag oversight #368
Comments
From a cursory look at the address. I don't believe It looks like the following addresses all contain various flags similar to pokecrystals'
My recommendation would be to rename these to something along the lines of As far as the documentation piece goes, this can be something added when #258 is done. An easy fix for this could be something like (Assuming the end user wants to keep those debug features for the debug rom). In SetDefaultNames:
ld a, [wLetterPrintingDelayFlags]
push af
ld a, [wOptions]
push af
+IF DEF(_DEBUG)
ld a, [wd732]
push af
+ENDC
ld hl, wPlayerName
...
call FillMemory
+IF DEF(_DEBUG)
pop af
ld [wd732], a
+ENDC
pop af
ld [wOptions], a
pop af
ld [wLetterPrintingDelayFlags], a
.... |
The code which preserves that byte is in fact in the production build and not only in the debug build of the games. |
Hence, why my suggested bug fix action (to go in the future bug docs) forces the code to only build if you are building the debug rom. |
It looks like the start of the Bug Documentation for this has been created Edit: I guess it's been moved here now... |
I added a temporary comment in #410 that documents this: pokered/engine/movie/oak_speech/oak_speech.asm Lines 6 to 12 in a38c792
The simplest fix is to add pokered/engine/menus/main_menu.asm Lines 309 to 321 in a38c792
Does this help, @spixi? |
Well done @SatoMew, but I still think that wd732 needs a proper constant name. |
That will be taken care of eventually. |
|
pokered/engine/movie/oak_speech/oak_speech.asm
Line 6 in 610ec0f
The following interesting oversight can be documented in the dissambly. Maybe, the address wd732 also can be given a proper name like wWarpCyclingRoadAndDebugFlags or similar.
Address D732 is intentionally carried over to the next save file. It contained debug flags in early development, (see here)
In the final version of the games that byte stores the cycling road flag and warp related flags (dig/teleport/fly/escape rope), which is actually very clever, because you can fly out of the cycling road and that byte needs to be cleared after warping anyway.
Starting a new game while being on the cycling road, preserves this bit, making it impossible to surf or ride the bike unless you enter and leave the cycling road or use one of the warp techniques. Not unsetting that flag when blacking out was present in the Japanese but has been fixed in the US version.
The text was updated successfully, but these errors were encountered: