Super Mario World NES: The Complete Improvement Project

Started by Somari the Adventurer, July 19, 2020, 11:55:38 AM

Previous topic - Next topic

Somari the Adventurer

Hello everyone, as a new member I wanted to show off what I'm working on, a complete graphical overhaul of the NES Super Mario World bootleg. This project aims to replace every single graphic within the game with ones ported directly from the original as well as bug fix and improve a few other aspects of the game.
Also I'm mostly making this post to see if anyone is interested in the project and if people are interested I'm more likely to work on it actively, so it'd be nice to know if anyone wants to see this get finished.
Here is the improved title screen for the game:

I'm working with another user, Quick Curly, to achieve these improvements as I do not know much about the technical side of hacking. I'm working on the graphics and I ask him to help find or change certain aspects of the game, then when he has found the data that needs changing, one of us can modify it. For the title screen we had to change the pointers for the attribute data so that the text could be coloured properly and block data for the background also had to be updated to display correctly.
This project is built off of the hack made by The Jabu back in 2017, this is because his hack did a couple of bug fixes. All of the graphics in the game will be redone though, even ones already updated by the Jabu. I originally started this back in 2018, but I lost motivation for it, but I've restarted it again, picking up from then but planning it out a little better this time.
Since restarting the project I've worked on the title screen and small Mario's graphics, although far more changes were made back in 2018, most are unfinished or need errors to be corrected.
Here are some more screen shots:
As you can see this is a very work in progress hack and some bits are still wonky from unfinished changes, but it will all be fixed eventually
Small Mario's sprite data has also been updated so his arms can now be behind him when he runs exactly as in the original. Due to the game originally sharing head tiles between the walking and running sprites this wasn't possible, but now that it picks a different tile for running Mario can look more accurate than ever.

Anyway, thanks for looking at my post and let me know what you think of the project so far


Looks really good. I hope you can improve the spritework, and fix the colors when Luigi is used. (Red and green are swapped somehow.)


I hope you improve the gameplay. Yoshi is supposed to bounce off of things instead of getting hurt when he lands on them. Looks like a good hack.


Will keep a eye on this one!  Good luck and keep us updated.


Looks great. I've seen several improvements to this game but it looks good.
One of the things that many have asked of this game is to improve the music, the one that currently does not please.
We will be attentive if this improvement :beer:

Somari the Adventurer

The Mario Update Preview:
Hello again, since the thread has gotten so many reads and some positive comments I thought I should post a little update and respond to things so far. 
So, improving the graphics is the main aim of the project so I'm sure I'll be able to deliver on improved sprite work, as for Luigi causing colours to be swapped, that's a hard  one. See Luigi changes Mario's colour palette, so anything that uses it is also affected, although I do have a rather lofty idea in store for Luigi, but I don't know how possible it will be for us to implement.
As for the Yoshi thing, I assume you mean when he jumps on things like Piranha Plants, well it might be something we can add, finding out how it handles what to do when you land on something would be the first step towards that goal.
And lastly about the music, I do have a near complete 2A03 NES soundtrack I put together from numerous covers and edited in Famitracker to sound how I wanted, but it's way out of my capabilities to actually implement such a change. But if anyone on here ever fancies the task I'm open to help, but for now, I'm just focusing on what I can do, graphics and minor tweaks to things.
So onto the update preview:
Work on the game is going well, I have replaced all of small Mario's sprites and only have one change left to make to them.
Super Mario is well underway now as well, with the majority of his sprites being completed. I have updated the sprite mappings and altered the bank switching for Super Mario to allow him to look as accurate as possible as well as clearing out almost all of the unused graphics from his banks so that any possible future changes are easier to implement. The cape has all new sprites ported from the original as well, which are a nice improvement over the bootleg ones.
As well as this, Fire Mario is soon to begin work, I've made some sprites to test how it could look and here's what I came up with:
As you might have guessed, Mario himself is my current focus, but after Mario is completed I'll be working on Yoshi, who is going to have his banks updated to make better use of the space he has assigned to him. (trying to prevent the garbage graphics issue when the game lags)

Anyway, that's all for the moment, the next post I make will be when the Mario update is completed, thanks for checking out my hack and I'll hear from you all in a bit


This looks incredible... also, Ti_ & Gigasoft might be able to show you how to change the nes music with famitracker since Amilgi did the entire soundtrack of the nes version of Sonic The Hedgehog.

real retro kid knuckles

nice hack keep up the good work  :thumbsup: how did you fix the logo

Somari the Adventurer

The Mario Update:
Hello again to all!
The Mario Update is finally completed, that means that all of Mario's in level and title screen graphics have been replaced by nice shiny new ones that look more accurate than ever to the SNES originals.

So, for a quick run down, all of Mario's graphics have been replaced, some sprites have been moved to different memory banks, many tile mappings have been updated to allow for more unique tiles on certain frames (especially for Fire Mario) and palette application has been modified to better suit the new sprites. But as you can see in the image above, they look pretty good, the effort has really paid off here I think.
Small Mario has been revised again with more tiles when I found out that there were unused Buzzy Beetle graphics being loaded with him and Fire Mario now has a white hat for some frames. Originally I had hoped to do this for all frames, however some bosses change that palette so I was only able to apply it to animations that don't play in boss rooms (climbing and riding Yoshi). Still, it looks much better than the bootleg did so it's all good.

Other news:
So, as well as Mario himself now being completed, with the help of Quick Curly we are working out how the game handles music and I can now make very basic edits to the sound. Now that does not mean that we can change the music, but it's a start. The game is basically out of memory banks so any music updates would have to fit within the original space for the music, but I hold out hope that it can be improved.
I've also learned that the game has an object list for each stage (16 entries per stage I think), so this might allow me to swap some items out or possibly add new ones at some point in the future.
There is also a large amount of uncompiled source code which I intend to clear out at some point which will hopefully make some much needed room for something in future.

What's next?
My next update will be for Yoshi and the objects in the game as these are stored together. Objects being Mushrooms, Fire Flowers, Cape Feathers, springs, shells, stars, fire balls and P Switches. Like Mario, all these things will be getting new graphics and Yoshi will be getting some new mappings to try to resolve some of the garbage graphics issues he has when the game lags. Here's a little preview:

Anyway, thanks for checking out this update and I hope to hear from you all soon


This game is finally getting a high shine like the Sonic NES game did. Nice job so far!


I think Mario would look better if either his head was a separate sprite or if his whole sprite used a single palette like in all the official games. Same for Yoshi's feet.


This is gonna be gangsta when it's done, I was playing this game the other day so I'll be looking forward to the final product.  :thumbsup:


Fantastic job, in case it helps you in your project, here I add links to another NES title = Mario is Missing!

Mario is Missing! It is already directly to port and work in NES sprites. It is NES programming code, it is not necessary to be carrying or adapting the Super NES sprites, which will be much more complex and hard work.

From which you could  replace every single graphic within the game with ones ported extract and copy its sprites to improve your Mario World project on NES. luck :thumbsup:

You could also extract some sound themes and sample effects (sound when entering pipe / jump sound / Yoshi mount) / enter fortress sound theme.

hope it helps in the project.

another SMW NES project that was canceled, there is only a 1st world demo :

plus +
an idea for the project would be to add the 4 color variants of Yoshi, for example:

World 1 and 2 = Yoshi Green
World 3 and 4 = Yoshi Yellow
World 5 and 6 = Yoshi Red
World 7 = Yoshi Blue

Somari the Adventurer

The Yoshi Update Preview and current progress:

Hello again to all, it's been a few weeks since my last post so I thought it was time for a little update.
First off though, I'm glad to see people are excited for the project and it's nice to see praise for it, so thanks for the positive comments, in response to a couple suggestions:
Vanya: Mario's head being a separate sprite wouldn't really change anything as there are almost no colour clash issues being caused by the current graphics, if you mean it would look better with overlayed eyes then I could agree with that, but it's a change that I wouldn't know how to make and I'm not sure adding more sprites to the screen would really be the best idea anyway. As for Yoshi, again I can't overlay anything, but his tail will not be red when Mario is riding him in the final version.
Cartridge ROM: I appreciate the sprite suggestion from Mario Is Missing, however those sprites use overlays to look as colourful as they do and unfortunately that just isn't something I can implement into the game. (Also some of the sprites in that game look kinda weird if you ask me, especially Yoshi's sprites) That world one demo project that someone was working on a while back is actually one I have looked at as there are some changes it makes that I'd like to include in my hack, such as the added background in castle 1 and more unique blocks in stages. As for the different coloured Yoshi idea, I think it could work, the game currently isn't set up to change the Yoshi palette between worlds/stages (I don't think anyway) so it'd need to be looked into, but it shouldn't be too hard.
Now, onto the update!
Yoshi and Objects Update Preview:
So, all of object sprites have been redone and implemented into the game as well as some palette applications have been changed to make better use of the colours available, such as shells now having white rims.
Yoshi's sprites are completed and ready to be put in game, however their implementation has been delayed as there is a change I'd like to make to how object attributes are handled which could save a lot of tiles in the bank with Yoshi in, but we aren't sure how to make this change yet. Yoshi's idle animation where he opens his mouth whilst bobbing up and down has also been re-implemented into the game, appears as though it was supposed to be there but Hummer made it loop too soon.
(in game the red palette will be applied to the feet and tongue)
Currently the palettes/mirroring data for the in level objects are tied to specific tiles in RAM, so each tile will always display it's respective colour palette, but I want to change this so that the palettes/mirroring are tied to the sprite object itself, so for example, the lower left sprite tile will always display using palette 01 regardless of what graphic tile is chosen. The game actually does this for the items in your item box, so it is possible, it's just neither of us know how to alter this, so if anyone happens to have any suggestions or wants to take a look I'm open to help.

Yoshi's House also has an all new look, rebuilt from the ground up, here is the biggest part of this update:

The version used in the ending is still incomplete, but I'll worry about that later. (HUD hasn't been updated to the new palette yet either)

Other News:
We've tweaked the powerup system to match the one found in Mario 3 and the GBA port of SMW. This means that when fire or cape Mario get hit they revert to super Mario rather than just going straight to being small. It's a small change that deviates from the SNES original, but this system seems to be the preferred one from what I've seen and I think it's a welcome change to the gameplay.
I've also found out that the game seems to perform better in Dendy mode than in NTSC or PAL, there is less slowdown and less frame stuttering for background animations when I switch it to the Dendy timings, so perhaps the game is designed more around these timings than others.
Due to aforementioned technical issue I've started work on the enemy sprites to keep things moving.
Koopa Troopas have all new sprites and all of their mappings have been redone to tidy up their graphics banks. All duplicate tiles have also been removed which adds some space to possibly add other colours of koopa, although that's just an idea. (Super Koopas are still unchanged as of yet) Para Troopas are no longer green, thus fixing the colour change that used to happen when they got hit
As a side note, I've found that some unused enemies are actually fully functional, Bullet Bills, Diggin' Chucks, Spinys and Fish Bones are all programmed in but simply never used, perhaps these could be added to stages in future.

And another mention to the music, any changes to the music will have to be made on the current sound engine, as there isn't the room for an additional sound driver, (unless someone can write a new engine in place of the old one) and I don't really know how to write music for it, so if anyone has any knowledge of how to use this sound engine I'd appreciate the insight. (Hummer Team took their sound engine from the game 'DeBlock' if that's any help) I can create music in Famitracker no problem and I actually quite like using the Hummer instruments, with the right composition they can sound quite good, but without knowing how to properly edit that into the game and what limitations I have here it's not too likely I'll be able to change the music on my own.

Anyway, as ever, thank you for checking out my project and any feedback or suggestions are welcome


this can help in the project, it has a list of unused graphics, including a boo around the ghost houses on the map :thumbsup:

suggestions for your project =

- upgrade the dinosaur island map to the original model.

- keep the world selection "special island" of the complete ROM and add your selection on the map by pressing select button.

- add pipes next to entry points to the "special island" world selection island.

Music and Fx
I advise contacting these specialized users in "FamiTracker" to create and write the music for Super Mario World NES

they were the ones who helped the Sonic NES project and the result was great :beer:

expert in FamiTracker contact users of music and sound for your proyect =  Ti_  Amilgi

+ plus = another proyect canceled

Somari the Adventurer

Hello to all,
This is just a short post as I haven't updated for a while, I've been a little busy with other things and progress has been slim these last few weeks as a result, so I haven't much to report. As well as this my hacking partner seems to have disappeared and I have been unable to contact him so I've been waiting to see if he responds (hope he's doing ok). So looks like it's just me for moment, but rest assured, the project is still very much alive and I'll be getting back to actively working on it in the next couple days so I hope to have more to share soon.
My current focus is the enemy graphics and how they are arranged in the memory banks, so this could take a while, but it will look good when it's done.
As a small update to the music situation, I've been able track down a rip of the sound engine and a document listing some of the commands the engine supports, still not sure if I'll be able to do it myself, but it's progress.
I also drew up a logo to use for the hack as a team credit

Although it's looking like I'm the only one at the moment, but still, I'd like to make a credits screen with that logo in the centre and the names/icons of all the others who contribute to the project around it
Also, as I'm unsure if/when my hacking partner will show up again, if anyone wants to help with the more technical or musical side of project then it'd be much appreciated, but for now I'll just continue working on what I can do

Anyway, as ever, thanks for reading my post and look forward to a more progress filled update soon

real retro kid knuckles

hey Somari the adventurer I would love to help you with the music I am a pro at hacking this specific
game's music so if you want me to help here's my gmail address ****************** yeah no
thank you


Somari the Adventurer

Sorry there hasn't been an update for a while but I haven't made one as there isn't much to show as most of the recent progress has been behind the scenes, although some progress has been made with the game itself. So while things are a bit slow, progress is being made, since my last update I have found a potential new team member, we have been exchanging notes and discussing the project, I hope that we will be able to work together on the project as we both have high ambitions for SMW NES.
While nothing is for certain yet, there is the hope of disassembling the game one day for a more extensive modification, he has already done some reverse engineering of the game and is slowly creating a data index document which I am now using to help locate data alongside my own document which is proving very useful in modifying sprites.
I have also found a very useful tool for editing the game thanks to Real Retro Kid Knuckles which will make modifying levels, enemy placement and many other things far easier, so thankyou to him again for that.

As for updates to the game, the new Chuck enemy graphics are all done and looking pretty colourful

These guys have all new graphics, use all 4 palettes and I've completely rearranged their graphics banks to be more organised which reduces the amount of bank switching required.
Thanks to my new hacking help, the 100 coin and Yoshi Coin 1UP bugs have also been fixed meaning 100 coins will now give you a 1UP rather that 101 coins as in the original bootleg
I'm currently working on drawing and rearranging all of the other enemy banks, I've almost finished the underwater stage enemy graphics and after that I'd like to finish off the rest of the Super Koopa sprites, so with any luck the enemies update will be completed in the next couple of weeks.

Anyway, as ever, thanks for reading my post and I'll hopefully have more to show off soon