mchlnix / SMB3-Foundry

SMB3 Level Editor in Python
GNU General Public License v3.0
93 stars 12 forks source link

Way to extend bytes in a level #136

Closed YusufSuleman closed 2 years ago

YusufSuleman commented 3 years ago

Is there a way to extend the amount of bytes in a level. I remember from SMW hacking, that it automatically extends the bytes in a level, without you knowing. I have seen a hack, that has more bytes in a level and more levels. How can it be added.

mchlnix commented 2 years ago

You can absolutely save levels with more bytes than originally in it. But you might overwrite other levels, whose data is right behind the data of the current level in the rom.

It is not easy to simply move every level afterwards a few bytes further, since it is hard to differentiate when the last level ends and actual code of the game begins. And if you overwrite the code, you break parts of the game itself.

What one could do is, when loading the rom, to go through all world maps, get all accessible levels and mark everything between them as unused? Or look where in the rom the vanilla levels are and just mark those as usable, without parsing anything about the current rom hack.

In general though, you can open a "New Level" build what you want and then save it where ever you want in the rom already.