The Great Metroid Construction Collaboration Hunt - Post your resources here!

Started by Zhs2, July 20, 2009, 07:55:03 PM

Previous topic - Next topic

Qactis

I just happened to notice this zip on m2k2, but Kejardon admitted towards the end of last year that he couldn't finish Insanity, and being a nice guy, released all of his accumulated work.

For those of you curious about certain aspects of ASM programming in Super Metroid, this is most certainly worth a dig through (I was really excited to see his lengthy work on the "Fishing Line" grapple code.)

Edit: Apparently his Insanity.ips did not work in the Insanity Final zip, so a working IPS has been placed in Insanity Final 2 below

Edit Edit: This s*** is amazing

DSO

Edit 1: So, the multilayer3 patch had a bug I was unaware of and I am taking it down for the moment. A fixed version should be out shortly

Edit 2: Back up with a version with fixed pausing and unpausing. Thanks to Zeran for discovering the error I missed.
============================================================================
It's been a while since I put something up, so have a fun toy to play with. I've been using this for amazing stuff. You can use it to load new tilemaps for layer3 from anywhere in the ROM.
Guide is inside the .asm file, but I'll put it here too.
;Layer3 multiple tilemap patch by DSO
;this file makes it possible for you to choose which layer3 tilemap is loaded
;by *writing* the pointer out in BTS at the upper left of the room
;it does not contain any custom code to control how that layer is scrolled
;or animated tiles or the effect the FX1 has... acid will still hurt etc
;even if you make it look like water
;sadly because water lacks the animation on the top layer
;this doesn't *quite* look right if you try to use this for fake acid or fake lava
;that might be in a later expansion to this
;So fog is probably the easiest to use with this
;Black Falcon's subdomain has a document with a disassembly of the scrolling routines for fog
;if you want to mess with that

And a picture for clarity:


If you're still confused, it means I could load, say, the 'spores' FX3 tilemap even if I had fog selected in the FX1 dropdown list. What this is really useful for is you can create custom tilemaps and have them loaded in place of others, so you could have multiple styles of water, or fog, etc... can't wait until you get to see how far I'm taking it <_<

Black Falcon

Releasing my resources, lots of asm, custom tilesets and palettes made by me

Some pictures:
[spoiler]





[/spoiler]

It's possible that I left out a bunch of stuff, mainly because I can't find it and/or am too lazy to look for it.
If you want stuff that I made that's not listed here (some tiletables for instance) just go ahead and ask, I'll update the folder asap!
This also includes any asm or general hacking stuff, but not the things I once made for other people on request unless they are fine with it (I'll address it of course if necessary).

Things included (among other quirks):
- Orbital Space Station tileset + pal + ttb
- CRE + ttb
- Aveon City tileset + pal
- Vortoroc Desert tileset + pal
- B.O.X asm + GFX
- Aboretum Tileset + pal
- Custom Samus Palettes (power, varia, gravity)
- Beetle enemy with AI asm (messy) + gfx + pal
- random asm and other tidbits

NOTE: If any of the asm there is broken, I don't care, you're gonna have to fix it yourself!

Link to Dropbox folder

You don't really need to give credit, but it would be nice anyway, considering the amount of time I've spent on that stuff.
Now go and make AWESOME things with it! :awesome:

[spoiler=Warning]
But I'm warning you, don't you dare make a shitty hack with my super fancy stuff!* :evilno:
*Statement does not give away any information about actual quality, thank you for your understanding! ^.^ 
[/spoiler]




Seriously though, to everyone who's making a hack, please make good use of it. This may be my official retirement from hacking, but I still enjoy playing hacks from time to time just like you guys, don't let it go to waste like I did.

That is all.
Haffun!

Quietus

I seem to recall that years ago you created a patch / hack that allowed you to take back off in your ship, and choose other areas to land in.  Is that included, as I should think a few people would welcome it. :^_^:

Retroo

THANK YOU! i been wanting to use the tilesets you made for a long time! you are great

Black Falcon

Quietus:
Yeah I'm going to add that as soon as possible. Couldn't find that one either, my directories are a mess and they are split up over several HDD on multiple pcs.
Damn how could I mess things up that bad, lol...

Good thing is that while looking for it I found and added the thermal visor, the railgun asm (basically turns supers into an instantly fired laser of some sort, very basic) and an attempt at coding seeker missiles with moderate success.
And several other stuff you can see for yourself.  :^_^:

retro: np :)

personitis

Quote from: Black Falcon on January 28, 2015, 03:41:56 PM
Seriously though, to everyone who's making a hack, please make good use of it. This may be my official retirement from hacking, but I still enjoy playing hacks from time to time just like you guys, don't let it go to waste like I did.
This makes me a little sad. I suppose I'll see you around from time to time though so it's not all bad. Not to mention at least you are releasing all your goodies. :)

Black Falcon

Added the ship asm, but I'm not sure how to set it up properly.
Extra things are Plasma Cutter asm, Repulsion ball, Prime-like Spacejump (had some slight issues iirc), an advanced scrolling sky fix and lotsa other tidbits :)

RealRed

This is code by Drewseph, NOT me.
This is code for bombs to break blocks in a 3x3 space rather than just the block up, left, down, and right of the bomb exploding.
He said anyone could use it, and it seemed like really cool stuff, so I wanted it to be archived on here.
here's a vid in action:
<Drewseph> https://dl.dropboxusercontent.com/u/34822142/bomb_blast.avi

{  ; bomb block collision routine
org $949CF9
        JML BOMB_COL_CHECK
BOMB_COL_CONTINUE:
        JSR $A052       ; Checks Tile
                RTL                             ; NOP
       
BOMB_COL_CHECK_RETURN:
        RTS
       

;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
;       NOP
}     

{ ; Plug this into any free space address
org $freespace
BOMB_COL_CHECK:
        LDA $0C18,x
        BIT #$0001
        BNE +
        ORA #$0001
        STA $0C18,x
        LDA $0DC4
        CMP #$FFFF
        BEQ +
        LDY #$0000
        LDA $0DC4
        ASL A
        TAX
        JSL BOMB_COL_CONTINUE
       
        JSR TOP_LEFT_TILE_SET
        JSL BOMB_COL_CONTINUE
               
        JSR TILE_TO_THE_RIGHT_SET
        JSL BOMB_COL_CONTINUE
               
        JSR TILE_TO_THE_RIGHT_SET
        JSL BOMB_COL_CONTINUE
                       
        JSR RIGHT_TILE_SET
        JSL BOMB_COL_CONTINUE
                       
        JSR LEFT_TILE_SET
        JSL BOMB_COL_CONTINUE
                       
        JSR BOTTOM_TILE_SET
        JSL BOMB_COL_CONTINUE
                       
        JSR TILE_TO_THE_RIGHT_SET
        JSL BOMB_COL_CONTINUE
                       
        JSR TILE_TO_THE_RIGHT_SET
        JSL BOMB_COL_CONTINUE
       
       
+       JML BOMB_COL_CHECK_RETURN

TOP_LEFT_TILE_SET:
        TXA
        SEC
        SBC $07A5
        SBC $07A5
        DEC A
        DEC A
        TAX
        RTS

TILE_TO_THE_RIGHT_SET:
        INX
        INX
        RTS

RIGHT_TILE_SET:
        TXA
        CLC
        ADC $07A5
        ADC $07A5
        TAX
        RTS
       
LEFT_TILE_SET:
        DEX
        DEX
        DEX
        DEX
        RTS
       
BOTTOM_TILE_SET:
        TXA
        CLC
        ADC $07A5
        ADC $07A5
        TAX
        RTS
}


I haven't editted, tried or touched it in any way, so I dunno if it works or needs to be changed or what have you, but enjoy!


Cpt.Glitch


Crashtour99

Quote from: Bloodsonic on February 01, 2015, 03:24:20 PM
This is code by Drewseph, NOT me.
This is code for bombs to break blocks in a 3x3 space rather than just the block up, left, down, and right of the bomb exploding.
He said anyone could use it, and it seemed like really cool stuff, so I wanted it to be archived on here.
here's a vid in action:
<Drewseph> https://dl.dropboxusercontent.com/u/34822142/bomb_blast.avi

So, it's basically like this thing I did a few years back with about 1/3rd the coding?  Really, why so many NOPs?  :P
https://www.youtube.com/watch?v=w92LNeGXZmU
Sorry, the link to Drew's vid doesn't seem to work.

Also, sad to see you stop hacking Black Falcon.  Definitely gonna have to take a look at yer stuff.  You made some awesome things and contributed greatly to the community.

Retroo

Black Falcon, sorry for asking but could you add some more tiletables for the tilesets?  :^_^:

adamf

#763
I felt like messing around with the energy tanks, so here are a couple of ASM patches for you.  Happy Valentine's weekend!


  • single-tank: energy tanks give Samus one energy tank instead of being a full refill.
  • reserve-full: reserve tanks are full of energy when Samus picks them up.  Hopefully, this makes them slightly less useless.

While writing single-tank, I realized you could make energy tanks completely empty by writing EA EA EA at 20972 (84:8972).  So there's that, too.  EDIT: nope, that doesn't work, the new tank doesn't show up in the HUD.  See over here in the hex tweak submission thread.

Also, hi everyone.

personitis

Hey there, welcome aboard. Should I remember correctly, crashtour has wrote code for the energy tank which does exactly like you have. I haven't seen such code for reserve tanks before though. But, the more the merrier! :yay:

Aran;Jaeger

Quote from: adamf on February 15, 2015, 07:24:49 PM
reserve-full: reserve tanks are full of energy when Samus picks them up.  Hopefully, this makes them slightly less useless.
What?! Reserve-Tanks are not useless at all. They can be used for Reserve-Bombjumps (which can be used to start IBJ. or a diagonal bombjump while falling, and for TAS it can even be combined with Pause Abuse), humanly doable partial Pause Abuse in hellruns to survive much longer if done correctly, entering Reserve-Mode (with which one can then get Blue-Suit, Shinespark-Suit or use Force-Stand to clip through platforms from below), and one can use them to stay in spinjump animation and continue climbing if reserves kick in when getting hit by a projectile during a spinjump.

adamf

Quote from: person701 on February 15, 2015, 09:41:02 PM
Hey there, welcome aboard. Should I remember correctly, crashtour has wrote code for the energy tank which does exactly like you have. I haven't seen such code for reserve tanks before though. But, the more the merrier! :yay:

Oh hey, you're right.  Crashtour did do that.  I guess I should check the Patches page before doing stuff....

Quote from: Aran;JaegerReserve-Tanks are not useless at all.

Wow.  I had no idea.  I've just heard complaints that they're like energy but not, and they don't even come with any energy inside.

Jordan5

Quote from: adamf on February 16, 2015, 11:32:51 AM
Wow.  I had no idea.  I've just heard complaints that they're like energy but not, and they don't even come with any energy inside.

Someone has been listening to Mst far too much, anyone who knows him will realise not to believe anything he says :heheh:


personitis

Quote from: Jordan5 on February 16, 2015, 12:31:56 PM
Someone has been listening to Mst far too much, anyone who knows him will realise not to believe anything he says :heheh:
While trying not to go too far off topic, I take a similar stance.
Quote from: Aran;Jaeger on February 16, 2015, 07:41:46 AM
What?! Reserve-Tanks are not useless at all.
Maybe to someone more technically inclined and knowledgeable with the game, no. To a common player however, I find R-Tanks more of a shoddy system that tried to act as backup energy. Given that if you have enough energy in them when hit, you lose your invincibility and take damage making it so you would technically have less energy them. From a gameplay prospective, having four E-Tanks would be the same (if not better, imo) than having four R-Tanks. The game wouldn't pause to refill you, you wouldn't take the "extra hit" described earlier, and you lose out on nothing when having just 400 more energy.

Sure, some have argued that "you get an extra chance if you aren't paying attention to your energy" but if that's the case, you pretty much deserve to game over.

For the techniques mentioned, I've only ever seen/heard of one being actively using and also reasonable to preform by a human player and that's using the invincibility to break into Lower Norfair. As far as I'm concerned, I've only ever seen TAS use the pause abuse and nothing else between all those techniques. The game (and the hacks made here) are built more for human players anyway, not frame-by-frame replays.

Aran;Jaeger

Quote from: person701 on February 16, 2015, 02:22:25 PM
Maybe to someone more technically inclined and knowledgeable with the game, no. To a common player however, I find R-Tanks more of a shoddy system that tried to act as backup energy. Given that if you have enough energy in them when hit, you lose your invincibility and take damage making it so you would technically have less energy them. From a gameplay prospective, having four E-Tanks would be the same (if not better, imo) than having four R-Tanks. The game wouldn't pause to refill you, you wouldn't take the "extra hit" described earlier, and you lose out on nothing when having just 400 more energy.

Sure, some have argued that "you get an extra chance if you aren't paying attention to your energy" but if that's the case, you pretty much deserve to game over.
Agree on all of that. Sure, getting hit twice via direct enemy contact provided the reserve energy transfer takes longer than the induced temporary invincibility can indeed be annoying, on the other hand though, in some cases in a few hacks that contain enemies that insta-kill samus, reserves can be a life-saver if one just puts little energy into the reserves since contact damage with enemies can at most cost all of the E-tank energy then.

Quote from: person701 on February 16, 2015, 02:22:25 PM
For the techniques mentioned, I've only ever seen/heard of one being actively using and also reasonable to preform by a human player and that's using the invincibility to break into Lower Norfair. As far as I'm concerned, I've only ever seen TAS use the pause abuse and nothing else between all those techniques. The game (and the hacks made here) are built more for human players anyway, not frame-by-frame replays.
I was talking about the following tricks that all use R-Tanks:
Reserve-Bombjump variations at part 4,5 and 6 in there:
https://www.youtube.com/watch?v=ItaseeTNhWI

partial Pause Abuse [note the word "partial" which makes these kinds of pause abuses less effective than those that are used for TASes but will at least make them humanly doable without much effort]:
https://www.youtube.com/watch?v=gHaEljO16js

In here is one example of an R-Mode Force-Stand aswell as the easiest Blue-Suit method within all the existing methods which can be set up in a lot of rooms:
https://www.youtube.com/watch?v=ats12sA_Ad0

Here would be a more practical use of the Force-Stand method:
https://www.youtube.com/watch?v=i_S75DqLOaw

And this is a doable Shinespark-Suit method, but I admit that it would probably require some attempts to perform it:
https://www.youtube.com/watch?v=52POqq4ncrE

Quietus

I'd echo Person here: Under normal circumstances an average player would have very little use for reserve tanks.  The stuff you're referring to would only ever be used under very specific circumstances if somebody were to create a trick based hack, which would likely be designed for tool assistance (to one degree or another).  Otherwise, even basic health management would mean that reserves are unlikely to be used.  And if a player were reckless enough to keep being damaged to the point where reserves may be required, the chances would be that they wouldn't have had their health high enough for long enough to have any surplus go into the reserve tanks anyway. :^_^:

JAM

Quote from: person701 on February 16, 2015, 02:22:25 PM
The game wouldn't pause to refill you, you wouldn't take the "extra hit" described earlier, and you lose out on nothing when having just 400 more energy.
That "extra hit" was fixed by me agies ago. Look at Reserve Energy Safety Fuse patch. With hit, you could have 1 Energy and 400 Reserve Energy, take 100 damage, refill your energy and still have 400 Energy after refilling (and even could make a backflip aka Spike Jumping after refilling). No double damage. With manual refill, player will get 401 Energy and 301 will be left after taking 100 damage.

SED, that almost no one using that patch.

Black Falcon

Complete Ship AI disassembly

Title says it all.
Use it to play around with the ship's timers (eg how long you have to wait until you can get into the ship) or for coding purposes.
Didn't bother to include sprite data or gfx instructions, though. File can be applied using xkas v06, by default it doesn't change a single byte.
To view it, I suggest using N++ and this stylesheet.

Haffun!  :^_^:

Quote58

Holy shit, this will save me a lot of time, thanks! Awesome stuff as usual

adamf

Reserve Missiles Disassembly: the code handling missile pickups (the item drops) manages reserve missiles, that went unused in the final game.  So I disassembled it to see what Nintendo was up to; this code refills reserve missiles to the lesser of 99, or Samus' max missile capacity, once her regular missiles are full.