-
Notifications
You must be signed in to change notification settings - Fork 835
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
Pokemon Emerald: Convert to procedure patch #2995
Conversation
Moved to draft waiting on #2996 Not dependent on it except to avoid the bug it fixes. |
Double-checked the output of a 2-player game now that #2996 is merged, files are identical. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I used Emerald as a guideline for converting Guardian Legend to APPP successfully. Read through of the code looks good to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't 100% understand rom stuff, but I checked the conversion and it seems to be 1:1, so in my estimation anything that that doesn't work here is a problem with APProcedurePatch itself, in which case I think it'd be good to have a big game in that uses it so we can expose any issues with it :) And the "it's been used by the community for a while as an .apworld" and "I compared rom hashes across 9 fully random multiworld seeds" is quite convincing :D
* Pokemon Emerald: Convert to procedure patch * Pokemon Emerald: Remove assertion for vanilla rom's existence * Pokemon Emerald: Add APPP implication to changelog * Pokemon Emerald: Move procedure patch changelog line to new version * Pokemon Emerald: Modify changelog versions * Pokemon Emerald: Fix patch file download not appearing --------- Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
* Pokemon Emerald: Convert to procedure patch * Pokemon Emerald: Remove assertion for vanilla rom's existence * Pokemon Emerald: Add APPP implication to changelog * Pokemon Emerald: Move procedure patch changelog line to new version * Pokemon Emerald: Modify changelog versions * Pokemon Emerald: Fix patch file download not appearing --------- Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
* Pokemon Emerald: Convert to procedure patch * Pokemon Emerald: Remove assertion for vanilla rom's existence * Pokemon Emerald: Add APPP implication to changelog * Pokemon Emerald: Move procedure patch changelog line to new version * Pokemon Emerald: Modify changelog versions * Pokemon Emerald: Fix patch file download not appearing --------- Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
What is this fixing or adding?
Converts Emerald to use APProcedurePatch.
extracted_data.json
was changed to include a battle type enum. Previously it was being read during patching, but now it's being read whenextracted_data.json
is created. That's its only change.I know stuff like
struct.pack("<B", 0)
is sorta silly, but I like how explicit and consistent it is.How was this tested?
Generated 9 seeds using a fully randomized yaml on
main
and on this branch and compared the md5 hashes of the patched ROM.Community has had access to an apworld that includes this change for a couple weeks and have not reported any issues except #3161, which already existed and was only revealed by these changes.