News:

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

Main Menu

Metroid 2 - Zero Suit Samus Hack

Started by Xekolax, September 15, 2016, 04:58:53 PM

Previous topic - Next topic

Xekolax

Hi there, I'm a new member of this epic forum, although I was lurking around for many years. I'm a very big fan of the series and the hacking community, and a contributor to a couple of things here and there: I am one of the few Beastiary artists of the Metroid Database (under the name Smolb) and I've also helped DocM64 to add the mod/sprite of Zero Suit Samus to his Metroid Confrontation early test world for AM2R.  :^_^:

What you see here is an early attempt to hack Metroid 2:

[spoiler] [/spoiler]

(Work in progress)

I've been replacing many of the graphics through TileLayerPro, with the most notable Samus's sprite, of course. It is still WIP. I also know it's been done before, in Shaktool's Justin Bailey if I'm correct, but this is kinda more... modern, as you can see. I hope it counts as a hack.

Lately, although I knew it's existence since almost the beginning, I got into Met2edit, and I managed to hack/modify some rooms as well, and added some simple puzzle/exploration elements within the known limited boundaries of the game. I've also blocked the access to the early Plasma Beam, now it's only obtainable in area 4. We all know this editor is unfinished and, err... not very friendly. Thing is, I have lots of gameplay ideas for the underappreciated Metroid 2, in order to make this hack something more than simply a graphic hack mod with some light room hacking. If only the editor could move around enemies, rooms and items! Imagine a non linear cycle of M2 gameplay pacing where you have to:

-Kill Metroids to lower lava/acid to proceed, as usual
-Kill Metroids to access a certain Item/upgrade (like a boss battle). This can be tricky, because Metroid fights are not mandatory. The only fight of this kind is with Arachnus, in order to acquire the Spring Ball. And the Queen, of course, duh.
-Use that Item/Upgrade to go to new, previously inaccessible parts for fighting new Metroids for more items, or more lowered lava, etc.
-Repeat

All the above can be done with a much more thoughtful design, perhaps with a branching gameplay, not quite like the vanilla game does: 5 successive areas that you have to clear. Add to all this and a sequence breaking element and you're off.

Of course, to keep things low, I'm not a fully fledged hacker (I'm just a mere graphic artist) and I don't think I'll ever be one, because I lack hex editing skills, and due to my schedules, but that's another story. So for the time being, I'll be working on this simple hack, while learning more stuff from other members. That post from RT-55J is simply amazing.

I'll update as soon as I have some new info. Thanks.

Lunaria

Looks like a neat project. Sadly for me I'll probably never replay M2, it's lacking in quite many areas and I'd honestly just rather replay AM2R if I want to get the M2 experience. :P

IIRC someone was messing around with M2 and was looking into maybe making an editor, but yeah, you're probably stuck with the limited range of Me2edit for now, godspeed to you~

RT-55J

Welcome welcome, Xekolax! That looks very nice!

In addition to that thread of mine, there is also some information on the wiki I added a while back. Notably, I was able to decipher the formats for the enemy data (relatively simple) and screen transitions (quite sophisticated). Theoretically you could edit both of those things right now, but doing all the pointer arithmetic manually in a hex editor is painful (trust me).

At this point, enough information has been found that we can make an editor capable of making a "full hack". The main issue now is just... making it. A while back a few of us were trying to do just that. I found a lot of the data and disassembled a good amount of stuff, but I ended up getting burnt out sometime around June/July 2015. Since then no progress has been made to my knowledge.

However, since AM2R came out, my interest in pursuing that project has been rekindled. Unfortunately, a new semester of school has recently started for me, so I don't really have much time between school/work/etc. to work on this. I have some preliminary work written down on paper, but not nothing in code for myself. (Although I am a decent programmer, I don't have much experience on the gui/application side of things. Engineering a large project from scratch is quite daunting.)

Zero One

This looks good. Somebody really needs to get cracking on a proper MII editor.


:colonrightv:


* Zero One runs

Xekolax

#4
Thanks for the heads up guys  :^_^:

Here are a few more screens:

[spoiler] [/spoiler]

I'm slowly changing the tileset of the first cave, which is shaping really nice. A bit contrasty to make Samus pop. Also, Hornoads from Fusion.  :yay:
It's true that the Gameboy Metroid is completely obsolete, with the release of the AM2R. Nevertheless, I think M2 has it's own strengths (I find it really creepy - perhaps due to the lack of color? who knows).
That wiki is amazing. I guess with enough reading I could manage to modify one or two things. I'd like to change the names of some upgrades, for a starter. For instance, Varia --> Zero Suit. Perhaps its here,
0x8C00-8E2F: Characters if room has message box (probably loaded with chozo?)
but I'm not sure. Even if I was, I don't have a clue how to change that. Arrgh :mad:.

RT-55J

Nice tileset!

In the HUD, I suggest removing the top-left pixel on the 'a's in 'area'. Right now it almost looks like it says "RRER" imo.

The item names are in bank 1 in the ROM. They start at ROM offset 0x5911, and are strictly 16 bytes each. Keep in mind also that the whitespace is baked into the strings themselves.

Attached is a .zip with a .tbl file. The .tbl is a table file that can make the text readable in a hex editor (specifically, Translhextion). To use it, open the ROM, then under the Script menu select the "Open Thingy Table" option to open the table. The text should be easily viewable if you scroll down to 0x5911 in the editor.

The easiest way to edit the string you want to change is to (1) select the string you want to change (the way you would in any text editor), (2) right-click and select "Dump Script", (3) make the modification you want, making sure the new string is the same number of characters (it'll warn you otherwise), and then (4) click the reinsert button.

Make sure to create a backup before using the hex editor, and also test afterwards to see if it looks good.

(Yes, there are 4 unused strings for energy tanks and the like. No, I don't know how to use them.)

The other text in the game is formatted much differently.

Xekolax

SUCCESS!  :grin:



Thanks for the awesome help RT! This is exciting! :heheh:

Quote58

This looks awesome, keep up the great work!

Steel Sparkle

It's nice to see someone hacking M2! M2,fusion and Zero Mission need some love. The only hacks out for Zero mission sadly are difficulty hacks which really don't appeal to me(Not sure about fusion though) but fusion does have some promising stuff that may come out but im getting side tracked.. I will give this a shot when this comes out seeing all the hard work you are putting into this. good luck my friend!

RealRed


Grimlock

Fantastic work, I'll definitely be interested in picking this up when you're complete.  Don't compare your project to AM2R either, there's still a place for what you're doing and it's in no way obsolete!

Flower

Personally i always liked Metroid II (and i still do since AM2R), despite its bizarre und unfamiliar presentation and gameplay, and i like to see someone hacking it.
Move on! I like Samus Sprites a lot and your Terrain work as well.