This patch allows each individual (vanilla) dragon coin to be saved once it's collected. Unlike the other method, you don't need to replace all dragon coins with 5 different custom objects for every level. Refer to the comments in dcsave.asm and sram_instruction.txt for details.
Now compatible with LM 3.00 (as well as 2.5x) and the retry patch as requested.
Fixed a bug that the patch refers to $13BF before it is updated properly. Thanks goes to flabort for reporting this.
JackEdit: Added option for only saving when the midway point is collected (needs 8 bytes of freeram more) and to disable the transparent blocks if you'd rather have them not appear at all like the vanilla game.
- Fixed wrong communication with the Retry Patch on a SA-1 ROM (requires my Retry Patch update)
- Fixed a bug where the patch would fail to detect the level being played GitHub
I don't understand why it crashes the game when I collect a DC. I installed BWRam Plus since I use SA-1.
EDIT: ok, something HAS to be missing or messed up in the file. Even on a clean ROM without editing anything (but adding SA-1 and the lines in BWram table), it doesn't work. Like, when I pick up a DC, I get like 5 1-ups and the DC doesn't disappear.
So the patch just doesn't work
Note that there is a small problem with this: when you get a Game Over, it will remove the "all dragon coin collected" flag for all levels. That is the original behavior of Super Mario World. But if you use this patch with sram_plus, you may not want this to happens.
I found a quick way to remove it. Insert this hex edit with asar:
Game over doesn't clear dragon coins collected now (but it clear moons collected twice now, yes I just switched the address called as it was easier). If someone can do a better hexedit, feels free. Ideally, this could be added in the patch if there's ever a new version.