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

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

Previous topic - Next topic

P.JBoy

Wow, that's a damn useful resource.  I have SMILE v0.1 and v0.3 if you're interested; never had any luck in finding v0.7 unfortunately

Quote58

even if he doesn't add that to the collection, I'd appreciate it if you could link those. I'd love to see what the original versions of smile were like.


Crashtour99

Spinjumping animation improvement.

As it is right now, you won't notice anything different.  But with this you can create some fancy new gfx for screwattack and/or spacejump since they no longer share the same gfx and tilemaps.

Included are .asm and .ips files.  Compatible with any hack/patch out there (since I don't think anyone has ever used freespace in $92 before).  Now show me what fancy new stuffs you folks can do with this.  (I'll probably upload a video later of my own special gfx for screwattack which I haven't finished yet).

Big thanks to Black Falcon and his Samus animation documentation.  Without it this wouldn't be possible.  Now to see what other animations I can play around with.


P.JBoy


FullOfFail


FullOfFail

Sorry for double-posting, but I think this is worth bumping.

First and foremost, I would like to thank Jathys, Mon732, Scyzer, and PJBoy. They all played their individual parts in making this. Jathys gave us the lead, Mon732 re-wrote the base-code, Scyzer tweaked it to perfection, and PJBoy added last-minute changes to make it more open-ended.

I felt it was a key part missing from the community, so decided to share it.

This is a fully working Destruction Timer, however it's set to go off after Draygon, so anybody using it would need to tweak it to their desires.

Destruction Timer - Draygon




Quote58

Merry Slightly After Christmas Metconst!

So, this is my first released asm/patch. Hope you like it, and if it can be of use to anyone, awesome.
Have you ever wanted missiles to simply upgrade to super missiles ala metroid fusion? Well now you can!
This patch makes missiles become super missiles when you pick up a super missile pack. After you pick it up, all your missiles are now super missiles. Missile tanks still increase your missiles even though they are now supers, and the same goes for enemy pickups. The missiles still use the same hud icon, so in the asm I've shifted all the icons accordingly (super missile icon no longer appears).

Bugs:
There are only two things I can think of that aren't there. First, item pickups still have the purple missile, that can probably be changed, but you can get around it by making pickups that don't use the colour, or that don't look like either missile or super.
Second, if in quickmet you give yourself super missiles to start with, then the hud is messed up and it doesn't work properly for obvious reasons. But if you're using the patch, there is no reason to give yourself supers.

Credit:
Crashtour99 has been a big help with my asm so far. Especially thanks to his disasemblies of various banks. And he'll probably be a big help in the future as well
Black Falcon, although not directly involved in this asm, has been a huge help with understanding asm and debugging and such. So huge thanks to him for all the help he's given me.
And of course to metconst in general for making it so easy to get started with asm, and to be able to talk to some of the best asm hackers around.
So thank you.

I've included the asm as well as a patch. The patch is the asm, plus the super missile gfx changed to look a bit more like normal missiles, and it makes supers move slightly faster than normal. Probably not noticeable, but they are as fast as they can be without getting buggy.
The asm is entirely commented by yours truly, so it should be pretty easy to understand how it works.

Lastly, it uses a small amount of free space, and you can find out exactly where in the asm file.

I'll have a video up to demonstrate it tomorrow hopefully.

Edit:
totally forgot to mention, this patch uses one of the unused bits in the item array. The first to be specific. So if you've set something to it, you'll have to change this is adapt. wouldn't be difficult.

Weterr123

Man, that sounds quite cool, and you could do some really cool stuff regarding the difficulty of a hack with that. I can't wait to get into this ASM stuff, I'm just not ready yet.

Nice work Shadow  :grin:

FullOfFail

Quote from: Weterr123 on December 26, 2012, 08:33:36 AM
I can't wait to get into this ASM stuff, I'm just not ready yet.

It took me 4 years, but I'm starting to learn it now. It can turn from being extremely straight-forward and simple to being extremely complex with a blink of an eye. Most of the difficulty seems to stem from it being a memory-game, and knowing how the codes interact with eachother. Most of the data is already there, just gotta know where to look.

JAM

Sorry guys! No NY present this time...

Quote from: P.JBoy on December 15, 2012, 05:45:52 PM
Wow, that's a damn useful resource.
Agree to this. Thank you for your work, FullOfFail!

FullOfFail
By the way, I have the earliest SMILE version that have a version number. I mean, 0.045. It's is third SMILE version ever made. Haven't checked the whole archive but I can attach it if you need it.

P.JBoy


Quote58

Hello again metconst, second public release time!
I've done a whole bunch more asm since the missile upgrade, but most of it is for my own hack.
This is just something I had been thinking about, and will probably be in Advent sometime.
The asm attached and linked is for use with one beam patches. It won't have a ton of use unless you're planning on splitting the beams up in your hack. That being said, this could make splitting up beams a lot better.
So the purpose of this asm is to enable much easier beam switching, and works much like in the megaman X series. To switch between beams, you use the L and R buttons (unless you put aim up and down on other buttons, in which case you will have to change the buttons in the asm file, or ask me to do it). To switch beams, hold down item cancel, and press L or R. R (aim up) will shift the beam over down if looking in the equip. screen.
Ex. Current beam = ice - hold item cancel, press R - new beam = wave

So ya, this works with redesign btw (well from about a minute and a half of testing at least).
One thing to note, is that I used Jam's one beam patch to test, so I'm not 100% sure it works with Sadi's, but I see no reason it wouldn't.

Space and Highkjacks:
809B4E - Highjack in HUD routine
80CDC0 - space used for code (don't know for sure where it ends, so if using other asm with space starting with 80, check with a hex editor to be sure)

I may update this with a patch to include 4 hud mini squares that indicate the beam, but that's for another time.

That's about it, here's a dropbox link for any non-members around.
[spoiler]http://dl.dropbox.com/u/60276829/Beamswitching.asm[/spoiler]

Edit: oops, forgot to fix a comment or two. I sometimes change a branch name and forget to change the comment accordingly. Oh well

devonodev

Quote from: IRC
<Justcarrotagain> stupid spazzy laptop
<+Devonodev> Now Spazzy beam would make a good weapon
<Justcarrotagain> Spazzy beam would be the ultimate weapon
<+Devonodev> I should change the item name,and use the game just for when I play normal SM
Move over Redesign, I'm in charge now.
[spoiler][/spoiler]


Quietus

The 'Y' is wrong, as it doesn't match the one in 'GRAVITY'. :heheh:

devonodev

Oh, so it doesn't. It does however match the one in 'HYPER'. Rats, all that work wasted. I could've spent that time eating or something.
I didn't realize they would be different. Oops

Quietus

I'm sure it's not going to end the world, so don't worry too much. :^_^:

Scyzer

And thus the world ends, because someone built a flux capacitor in the wrong shape.
Something like this would create a time paradox, the results of which could cause a chain reaction that would unravel the very fabric of the space time continuum, and destroy the entire universe! Granted, that's a worse case scenario. The destruction might in fact be very localized, limited to merely our own galaxy.

Cloud20

Quote from: Scyzer on January 30, 2013, 02:12:15 AM
And thus the world ends, because someone built a flux capacitor in the wrong shape.
Something like this would create a time paradox, the results of which could cause a chain reaction that would unravel the very fabric of the space time continuum, and destroy the entire universe! Granted, that's a worse case scenario. The destruction might in fact be very localized, limited to merely our own galaxy.

Yeah, "Back To The Future" rocks !!!  :grin:

Quietus


Lunaria

Quote from: Quietus on January 29, 2013, 08:54:00 AM
The 'Y' is wrong, as it doesn't match the one in 'GRAVITY'. :heheh:
The "T" in gravity is wrong though since they wanted to save space, I think it would be fair to say the same was applied to the "Y".

Yuki

Well, I've spent the past few days learning 6502 assembly, and with the help of Snarfblam, I already have completed my first set of patches for Metroid 1! These are all collaborations between me and Snarfblam.

The first one, http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/healyblocks.ips, creates a block that is shared across all of the tilesets in Metroid that when applied to a structure, heals Samus on contact by about 6 energy per second. To change which block in the structure editor is used, first find what the bit of the block is in the structure editor by clicking on it, then find the CMP command within http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/Healyblocks.asm that is commented with ;healyblock? and change that value to the blocks bit you found earlier. To assemble the .asm into an .ips, use https://dl.dropbox.com/u/12027218/snarfblasm.exe. To use this, simply drop it in the same folder as the assembly, and then open a command prompt and navigate to that folder. Then enter snarlblasm <asdfwhatever.asm>. This will create an IPS for you that can be patched directly onto a (U) Metroid ROM. These intructions are essentially the same for the other 2 patches, and therefore I will not repeat them, other than to tell you where to edit for the other patch. NOTE: The separate Healing Block and Damaging Blocks are not compatible. If you wish to use both, use or edit the final patch/.asm set I link in this post.

The second patch, the Damaging Block, http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/hurtyblocks.ips creates a block in the Structure Editor that, when placed on a structure, does 6 damage per second. An example of a use for this would be a superheated room, or a room with a similar environmental hazard. To edit which block is used in the structure editor, follow the instructions in the above paragraph for http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/hurtyblocks.asm, however, instead you must edit the CMP command at the line commented ;hurtyblock? with the bit value of the block you chose in Editroid.

The final patch is simply the Combined Blocks patch, http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/Combinedblocks.ips. This makes blocks in the same places as each of the separate block patches, however, it handles the data in a way that makes the two compatible. To edit the blocks used, simply edit the relevant values mentioned above in http://kenta.tireiron.us/ASM%20Patches/Metroid(NES)/CombinedBlocks.asm

Parabox

Why do you link a billion times to your stuff? Why can't you use sane, labelled links like the rest of us? (Or at least spoilers?)

That aside, cool stuff. NEStroid activity is always good to see.

Mettyk25jigsaw

Here is a different improvement version (in a way) of my previous IPS patch on page 26, where simply you don't have to have all 4 enemies in one patch if there are a couple you don't like, they are seperated into 4 different patches so you can have any amount of them you want and the ones you want.

  FREE SPACE = ENEMY 1....1078E2 TO 107921..............11F522 TO 11F541...........16F460 TO 16FA5F
                        ENEMY 2....107922 TO 107961..............1479C0 TO 1479DF..........186E00 TO 1871FF
                        ENEMY 3....107962 TO 1079A1..............11F364 TO 11F383...........187200 TO 1877FF
                        ENEMY 4....1079A2 TO 1079E1..............117600 TO 11761F...........187800 TO 187BFF

[spoiler][/spoiler]