10/07/2021 at 09:55 •
If anyone can help by building it in Windows and updating the Github so others can, as I only use Linux, also then I can then offer an ".exe" for people to use that would be great! :D.
I have too much work to catch up on, so I need to pause this project. But now it's alpha, anyone can try it and contribute with pull requests on the github page. I will reply within a day :).
04/22/2021 at 12:23 •
the alpha version of moojelly now views SML2 and SML3 completely! I am now publishing the source code to github, and welcome people to contribute.
The big delay was dealing with SML3 having multiple tile-sets per level, so now it automatically switches tile-sets by understanding the level and warps.
Although currently the new re-write of moojelly only views levels, I have previously made them edit levels with no problems, so I know adding level editing isn't a big job.
this image shows a complete SML3 level, automatically switching 3 different tile-sets and sprites!
01/17/2021 at 17:36 •
The biggest hurdle on supporting SML3 has been completed; auto tile-set (and sprite) changing.
SML3 added that each level can have multiple tile-sets that change when you go through doorways, to support this I added that it simulates playing the level and figures out where you can go, then changes the tile-sets accordingly. It works almost perfectly!
I haven't yet got it changing the sprites too, although I have the data.
the colours are different paths being traced in debug mode.
01/11/2021 at 14:26 •
I have made some progress, I finished the Gameboy processor emulator and got it to correctly pass all the test ROMs, and integrated it to extract the SML3 sprites properly from the ROM. Also I have finally added the static bonus sprites for power ups.
So the next stage is finishing the tile-set switcher (which works by simulating player movement across the level to decide which doorway was been used then applying the correct tile-set. This is practically completed already.
The editor is now nearly feature complete as a viewer, adding the editing after isn't actually a big deal, as all the hard work of figuring out how to do this has been done in the previous version before the rewrite.
09/22/2020 at 07:46 •
been busy, with my paid work. This is coming to the end for this year, also winter is coming, which is a good time for me to do programming generally.
Update: probably 2 weeks until I have free time now.
03/13/2020 at 14:14 •
I have spend a couple of weeks dealing with the odd way SML3 handles sprites, unlike SML2 it does this with code instead of tables. So I wrote a Z80 emulator to follow the code then extract the needed info.
Also SML3 has multiple tilesets per level, and switches them arbitrarily when passing through doorways, so I wrote a smart way of automatically detecting which tileset is used by each part of the level. This works by flood filling from the doorway then assuming all of those blocks use the same tileset (simulating Wario travelling around).
Due to work I need to take a few weeks of from the project, which is a shame as the editor is really close to being completed. I'll be back though :)
02/26/2020 at 19:24 •
I have now got my prototype working with both games (SML2 and SML3) with all features (sprites, sectors, levels, etc...). And it is done in a far superior way than before (all extracted from the ROM).
There is still a fair amount of work to complete the editor, but it shouldn't be too long now!
SML2 output sample:
02/11/2020 at 15:32 •
made good progress, the currently unreleased rewrite now uses the headers for SML2 and SML3 to load all resources unlike the older version that was half hard-coded. I also found a missing header for SML2 that defines the tiles for each level finally!
here is a sample of a SML3 level:
And here is a SML2 level:
01/31/2020 at 09:49 •
the project stopped for a long time because it was written in visual basics, which is a nightmare, so now I am rewriting it again in C++ and finally finishing the editor!
I have also made a little progress backwards engineering Super Mario Land 3 now, so will be adding that too :).
got it extracting levels already, just need to add tiles now:
04/10/2016 at 20:30 •
fixed a bug that made the edited levels white screen the original hardware. (don't patch the rom name to work around it for now).
Me and one collaborator have started to compile levels to get this finished.