News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

DeadSkullzJr's Super Metroid Research and ROM Hack Projects

Started by DeadSkullzJr, April 06, 2022, 09:37:16 PM

Previous topic - Next topic

DeadSkullzJr

Hello everyone, today I decided to start my own little thread for any of my projects regarding Super Metroid research and or ROM hacking. The main reason I wanted to make a thread like this is because I wanted to keep everything I do in one location rather than scattered about in the Super Metroid section of this forum. If I ever do happen to release something worthy of a thread of its own, of course I will keep the tradition with said manner and release projects that way, however I will still proceed to at least link them here in this thread to again keep things unified. This thread will grow as time goes on the more project related activities I post about here. Hopefully whatever I post is enjoyable and or interesting to anyone willing to take a look in this thread.


Miscellaneous:

Super Metroid - Development HUD Font (v1.0.0)
[spoiler=Description]
Finding unused content in video games has always interested me. Super Metroid happens to be one of my favorite titles that I have played for years, but I never really knew the whole extent of what sat inside the game code. As the title of this implies, I ended up finding out about one of the few things left in from early development, the HUD font used during game development to be specific. On a personal note, I actually enjoy the unused font more than the original, while the nature of it seems slightly out of place compared to the original, I feel like the unused variant fills out the letters and numbers better. The "Auto" text is one pixel taller than the original, which I would assume is the reason the developers reduced the size by one pixel in the first place to even out the spacing between the arrows.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/RV4i3aDQ#P33FAIcXrvx_K-rWpvJT6g
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Kent Hansen:
Creating Tile Layer Pro.

Nintendo:
Creating the video game.
[/spoiler]

Super Metroid - Black Brinstar (v1.0.0)
[spoiler=Description]
Red Brinstar has a black tile set used only in one room, that room being the hallway leading to the boss statue room. Majority of the tiles technically go unused given you never actually see most of the tiles during gameplay. I decided to work up my own set of patches to enable the title set in Red Brinstar given there doesn't seem to be one already.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/EMIUjSZC#uEpX-T1oesdmTayRZgQt-A
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]

Super Metroid - Red Crateria (v1.0.0)
[spoiler=Description]
Apparently this tile set variant of Crateria went unused. I feel like it was intended for the escape sequence after fighting Mother Brain, but who knows really. You can't really sit around looking in rooms at the red tiles, so I just decided to put the tile set to use in majority of the rooms in Crateria.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/NYwEwbjJ#JwNIR5GNNY5k0MvzSZAxhQ
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]

Super Metroid - Unlocked Hatches During the Escape Sequence (v1.0.0)
[spoiler=Description]
There's a lot to unpack about the existence of this hack. The past few days I've quite literally played through the entire game consecutively five or six times, at least when I had the free time (luckily I've played the game so much I can play all the way through efficiently), in previous years I always strove to collect every item and even went as far as to complete the maps of each area, recently however I realized that one of those things I strove for, completing the maps to be exact, is quite literally impossible for a couple of reasons. The first reason why it's impossible to complete the map is because Nintendo decided to stick map tiles in places that certain respective rooms never actually meet the size requirements for, most notably the elevator rooms leading down into certain areas, therefore it's quite literally impossible to make the game register that Samus has been in that exact location on the map, normally and legitimately speaking that is. The second reason has to deal with Tourian and the way the game works, Tourian is larger than what the map allows you to see when you reach the area for the first time, what the map allows you to see goes up to Mother Brain, but the rooms past Mother Brain are hidden, these rooms can be explored around a bit, however there's another issue, the game doesn't save any information past the point of beating Mother Brain, you don't have access to any data save units past that point either, your gunship will just take you off the planet without giving you the ability to save the game and of course the game credits will roll, at no point during or after the credits does any of the information past your last save point ever get added to the save itself (though the text at the end of the save does change from "madadameyohn" to "supermetroid" to indicate that the game has been beaten at least once). I decided to build some small documentation about these realizations and some aspects of how the game works at this point, which led me to poking around the save data itself. Turns out there is a bit flag of sorts that gets marked in the save if you saved the animals or not, but because you don't have access to any data save units, and at no point does the game automatically register any actions made up to that point of the game, it's impossible to actually get that bit flag stored, normally and legitimately speaking that is. I tweaked the save data and enabled that bit flag just to see if the outcome of the game was any different doing that, I didn't see any differences personally, so you'll be happy to know that you aren't really missing anything. At this point I decided to work up a way to give access to a data save unit during the escape sequence, the one you pass on the way out of Crateria to be exact. This then grew to me unlocking all the hatches in the rooms you leave and go through during the escape sequence, allowing you to not only save any information past the point of beating Mother Brain, including saving the animals, but you can also retain the map information for the hidden map portions of Tourian too. This will allow the ability to have more "complete" saves, however there is some things worth noting.

- If you save the game during the escape sequence for the first time, then decide to reset the game via the system, the escape sequence will still play out as normal, but there won't be a timer present in the top right. This is likely due to the game not having any code that handles loading the timer after loading a save, not to mention that timer data doesn't get stored in the save at all, therefore information regarding how much time was left on the sequence timer isn't ever loaded at any point.

- Saving and resetting the system will cause you to lose the Hyper Beam, mostly because the Hyper Beam data doesn't get stored in the save. This actually exposes something the game does to your original beam arsenal whenever you are given the Hyper Beam, if you have all the beams enabled except for the Spazer Beam, then get the Hyper Beam, your Ice Beam automatically gets disabled. If you enable the Spazer Beam instead of the Plasma Beam, then get the Hyper Beam, the Plasma Beam automatically gets enabled and the Spazer Beam automatically gets disabled. Disabling all your beams, then getting the Hyper Beam, force enables the Charge, Wave, and Plasma Beams respectively. I decided to test further by literally removing the beam data from the save itself, that way all that existed was the regular Power Beam, getting the Hyper Beam after doing this force equips the Charge, Wave, and Plasma Beams respectively, however they will not show up in your list of beams in the Samus screen, the game is coded to have what's equipped separate from what you actually collected, so this makes sense as to why this happens, which means it's possible to equip beams or even regular items without having them present in the Samus screen.

- A bug occurs with the Tourian map whenever you enter the exit hatch in old Tourian (the one you leave through during the escape sequence). Bottom portions of the map that you explored will be rendered in blue as if you never explored those portions of the respective room(s), exposing what's supposed to be hidden in the map screen and the map display. No idea what really causes this bug, but if you want your map to be 100%, DO NOT enter the exit hatch in old Tourian, you'll have to circle all the way around, defeat Mother Brain again, then explore the spots you missed in the respective room(s). The only other solution would be providing a fix patch of sorts to correct this issue.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/9MhkmBja#4Y7YXhw9jIyAr2Ywl2AbOg
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]


ROM Resources Region Ports:

Super Metroid - Justin Bailey (v0.99b) (Europe) (En,Fr,De)
[spoiler=Description]
Many years ago I came up with a little challenge for myself in regards to ROM hacking, and that challenge was to port an existing ROM hack to another regional variant of the game. I can't really confirm if something like this has ever been done in the past, if not, then I guess this will be the first. Most people may find this to be completely useless, but for me it was a learning experience, I may keep going with this just for the hell of it.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/IQQSAZZY#cOCpQNQ7HXwGcU8j_jMvpw
[/spoiler]
[spoiler=Credits]
Auximines:
Creating the ROM hack.

DeadSkullzJr:
Porting the ROM hack to the European version of the game.

Nintendo:
Creating the video game.
[/spoiler]

Super Metroid - Phazon Suit (v1.0) (Grime) (Europe) (En,Fr,De)
[spoiler=Description]
Metroid Prime introduced me to the Phazon Suit for the first time, and since then I have always wanted to use such a suit in different Metroid titles. This is one of my small favorite hacks out there, unfortunately it's not anywhere in the resources section of the site like it is in the older form of the site, so I decided to port this to help bring some light back to this small Grime hack.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/cFR3EajT#z15Lyw1Tpxbk-rhLeDJxyA
[/spoiler]
[spoiler=Credits]
Grime:
Creating the ROM hack.

DeadSkullzJr:
Porting the ROM hack to the European version of the game.

Nintendo:
Creating the video game.
[/spoiler]

henree

Quote from: DeadSkullzJr on April 06, 2022, 09:37:16 PM
Hello everyone, today I decided to start my own little thread for any of my projects regarding Super Metroid research and or ROM hacking. The main reason I wanted to make a thread like this is because I wanted to keep everything I do in one location rather than scattered about in the Super Metroid section of this forum. If I ever do happen to release something worthy of a thread of its own, of course I will keep the tradition with said manner and release projects that way, however I will still proceed to at least link them here in this thread to again keep things unified. This thread will grow as time goes on the more project related activities I post about here. Hopefully whatever I post is enjoyable and or interesting to anyone willing to take a look in this thread.


Miscellaneous:

Super Metroid - Development HUD Font (v1.0.0)
[spoiler=Description]
Finding unused content in video games has always interested me. Super Metroid happens to be one of my favorite titles that I have played for years, but I never really knew the whole extent of what sat inside the game code. As the title of this implies, I ended up finding out about one of the few things left in from early development, the HUD font used during game development to be specific. On a personal note, I actually enjoy the unused font more than the original, while the nature of it seems slightly out of place compared to the original, I feel like the unused variant fills out the letters and numbers better. The "Auto" text is one pixel taller than the original, which I would assume is the reason the developers reduced the size by one pixel in the first place to even out the spacing between the arrows.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/RV4i3aDQ#P33FAIcXrvx_K-rWpvJT6g
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Kent Hansen:
Creating Tile Layer Pro.

Nintendo:
Creating the video game.
[/spoiler]

Super Metroid - Black Brinstar (v1.0.0)
[spoiler=Description]
Red Brinstar has a black tile set used only in one room, that room being the hallway leading to the boss statue room. Majority of the tiles technically go unused given you never actually see most of the tiles during gameplay. I decided to work up my own set of patches to enable the title set in Red Brinstar given there doesn't seem to be one already.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/EMIUjSZC#uEpX-T1oesdmTayRZgQt-A
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]

Super Metroid - Red Crateria (v1.0.0)
[spoiler=Description]
Apparently this tile set variant of Crateria went unused. I feel like it was intended for the escape sequence after fighting Mother Brain, but who knows really. You can't really sit around looking in rooms at the red tiles, so I just decided to put the tile set to use in majority of the rooms in Crateria.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/NYwEwbjJ#JwNIR5GNNY5k0MvzSZAxhQ
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]


ROM Hack Region Ports:

Super Metroid - Justin Bailey (v0.99b) (Europe) (En,Fr,De)
[spoiler=Description]
Many years ago I came up with a little challenge for myself in regards to ROM hacking, and that challenge was to port an existing ROM hack to another regional variant of the game. I can't really confirm if something like this has ever been done in the past, if not, then I guess this will be the first. Most people may find this to be completely useless, but for me it was a learning experience, I may keep going with this just for the hell of it.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/IQQSAZZY#cOCpQNQ7HXwGcU8j_jMvpw
[/spoiler]
[spoiler=Credits]
Auximines:
Creating the ROM hack.

DeadSkullzJr:
Porting the ROM hack to the European version of the game.

Nintendo:
Creating the video game.
[/spoiler]

Is the Justin Bailey (v0.99b) just a sprite change of the original Super Metroid? I really love the look of the Justin Bailey sprite. Is there  a way to apply this sprite to other hacks consistently?

DeadSkullzJr

#2
Added "Super Metroid - Unlocked Hatches During the Escape Sequence (v1.0.0)" to the list, information pertaining to this small hack is posted in the respective description spoiler. Whenever I post new contents for whatever projects I am working on I usually give some length of detail about it in the form of a topic reply, but there was a lot to unpack with the existence of this hack, hence my approach with the description spoilers this time around. I doubt it would benefit most who likely already know half if not all the stuff I talked about in the description, but it does benefit those who maybe aren't aware of certain things. If you want to backtrack in the game a little bit though, then this is the hack for you at least.

A bit of a disclaimer, my understanding of how certain things work may differ from how others perceive the same information, which means what I say may not translate universally, I wouldn't even consider it relatable to the general tech lingo terminologies (granted that might just be me underplaying my own knowledge, word choice used, etc.) so if something seems off, I would prefer a more respectable response about it and not just a "you are wrong, you are dumb" sort of response. I should mention that it's not my first time dealing with ROM hacks of sorts, I just work alone is all, I at least do my best to get to the same results (preferably accurate) through my own methods of understanding things however. I am growing like the rest of you, so maybe I'll get things perfected more eventually.

DeadSkullzJr

#3
Quote from: henree on August 26, 2022, 11:36:43 PM
Quote from: DeadSkullzJr on April 06, 2022, 09:37:16 PM
Hello everyone, today I decided to start my own little thread for any of my projects regarding Super Metroid research and or ROM hacking. The main reason I wanted to make a thread like this is because I wanted to keep everything I do in one location rather than scattered about in the Super Metroid section of this forum. If I ever do happen to release something worthy of a thread of its own, of course I will keep the tradition with said manner and release projects that way, however I will still proceed to at least link them here in this thread to again keep things unified. This thread will grow as time goes on the more project related activities I post about here. Hopefully whatever I post is enjoyable and or interesting to anyone willing to take a look in this thread.


Miscellaneous:

Super Metroid - Development HUD Font (v1.0.0)
[spoiler=Description]
Finding unused content in video games has always interested me. Super Metroid happens to be one of my favorite titles that I have played for years, but I never really knew the whole extent of what sat inside the game code. As the title of this implies, I ended up finding out about one of the few things left in from early development, the HUD font used during game development to be specific. On a personal note, I actually enjoy the unused font more than the original, while the nature of it seems slightly out of place compared to the original, I feel like the unused variant fills out the letters and numbers better. The "Auto" text is one pixel taller than the original, which I would assume is the reason the developers reduced the size by one pixel in the first place to even out the spacing between the arrows.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/RV4i3aDQ#P33FAIcXrvx_K-rWpvJT6g
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Kent Hansen:
Creating Tile Layer Pro.

Nintendo:
Creating the video game.
[/spoiler]

Super Metroid - Black Brinstar (v1.0.0)
[spoiler=Description]
Red Brinstar has a black tile set used only in one room, that room being the hallway leading to the boss statue room. Majority of the tiles technically go unused given you never actually see most of the tiles during gameplay. I decided to work up my own set of patches to enable the title set in Red Brinstar given there doesn't seem to be one already.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/EMIUjSZC#uEpX-T1oesdmTayRZgQt-A
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]

Super Metroid - Red Crateria (v1.0.0)
[spoiler=Description]
Apparently this tile set variant of Crateria went unused. I feel like it was intended for the escape sequence after fighting Mother Brain, but who knows really. You can't really sit around looking in rooms at the red tiles, so I just decided to put the tile set to use in majority of the rooms in Crateria.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/NYwEwbjJ#JwNIR5GNNY5k0MvzSZAxhQ
[/spoiler]
[spoiler=Credits]
DeadSkullzJr:
Creating the ROM hack.

Jathys:
Creating SMILE.

Nintendo:
Creating the video game.

Scyzer:
Creating SMILE RF.
[/spoiler]


ROM Hack Region Ports:

Super Metroid - Justin Bailey (v0.99b) (Europe) (En,Fr,De)
[spoiler=Description]
Many years ago I came up with a little challenge for myself in regards to ROM hacking, and that challenge was to port an existing ROM hack to another regional variant of the game. I can't really confirm if something like this has ever been done in the past, if not, then I guess this will be the first. Most people may find this to be completely useless, but for me it was a learning experience, I may keep going with this just for the hell of it.
[/spoiler]
[spoiler=Screenshots]

[/spoiler]
[spoiler=Download]
https://mega.nz/folder/IQQSAZZY#cOCpQNQ7HXwGcU8j_jMvpw
[/spoiler]
[spoiler=Credits]
Auximines:
Creating the ROM hack.

DeadSkullzJr:
Porting the ROM hack to the European version of the game.

Nintendo:
Creating the video game.
[/spoiler]

Is the Justin Bailey (v0.99b) just a sprite change of the original Super Metroid? I really love the look of the Justin Bailey sprite. Is there  a way to apply this sprite to other hacks consistently?
Nope, from my experience with messing with a few different ROM hacks of sorts, information isn't always guaranteed to be "static", or basically in the same locations across multiple hacks, if you wanted something like this done to another hack, there's a chance that it would have to be dealt with in a specific way catered to said hack(s). That doesn't mean that every hack is like this, changes may vary from hack to hack, some cases these concepts work, others not so much if at all. With the way hacking is done, it's not easy to keep changes relative to the original aspects of the game in a fluent way, even with something like a compiled variant of the game from a disassembly project of sorts, changes made in that is still dedicated to that exact build of the game and won't be universal, well, unless the change is small enough that it doesn't cause data shifting and such to occur throughout the ROM, but that's still assuming that every hack never touched the portions of the original data corresponding to said changes.

Side Note:
Sorry staff for the double post, didn't want to mix a general response meant for everyone with a response intended for one person.