forked from PhlexPlexico/mm3dr
-
Notifications
You must be signed in to change notification settings - Fork 5
feat: Songsanity #111
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
Merged
Merged
feat: Songsanity #111
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
TODO: Adjust edge cases for 4 songs.
Text still appears but SoS is not given. TODO: NWBN soft locking.
This ensures that song of healing and song text boxes work with vanilla as well. TODO: Adjust HMS and Kaepora to check for ext data instead of inventory.
Fix up and get NWBN working.
Decomp message context and place in gctx.
Update graphics to not flush process data cache when on emulator.
PhlexPlexico
added a commit
that referenced
this pull request
Dec 4, 2025
* Convert week event regs to bitfields. Instead of randomly decomping what's needed, we can now just rename them in the new file to what they do. 140 is the total amount as that is defined in the cycle reset as well. * Update weekeventreg codes as some are not set correct in save file init.. * feat: Songsanity (#111) * Include first overrides of songsanity. TODO: Adjust edge cases for 4 songs. * Fix song of soaring still giving item. Text still appears but SoS is not given. TODO: NWBN soft locking. * fix: Ensure we do not fully reset during moon crash, but only cycle flags. * Adjust some stored text ID issues. This ensures that song of healing and song text boxes work with vanilla as well. TODO: Adjust HMS and Kaepora to check for ext data instead of inventory. * Add kaepora ext data check. * Add in HMS ext data check. * Move NWBN to new patches. Fix up and get NWBN working. * Include song of time checks. * Rename SoH function to be more inline with SoH and songs. Decomp message context and place in gctx. * Finalize sonata hooks. * Include epona checks. * Include get item override text for oath to order. * Include song of storms override. * Adjust input to include circle pad. Update graphics to not flush process data cache when on emulator. * Include progressive lullaby and new checks for lullaby.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR creates the necessary patches and overrides for getting songs. Since we do not have a way of overriding model colours, the base Ocarina will be used for freestanding songs. This also includes a fix for the Moon Crash scene taking all items away when you do not have the Ocarina. You should now be able to continue your progress even if the moon crashes.
I think I may still do a passthrough (if not now, then later) to break out the Item Override functions into separate files (one for Songsanity, one for logic, one for extern calls to different items). But for now, this should work!