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

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

Previous topic - Next topic

raygun

In case someone wants it: made a patch for MZM that makes landing on the ground after a jump or fall no longer reset your speed. So you hit the ground running. Also: You can now jump and land, while maintaining a speed boost.

Note(s): Controls may take a while to get used to. And this patch uses free space at the end of the ROM.

Also a table of some Zero Mission enemy pointers to stuff like stats, AI, etc.

And a dissassembly of MZM's Main Enemy Handling Routine
[spoiler=if it's not ugly, this is why]I modeled it after pjboy's fusion one[/spoiler]

EDIT- I fixed the problem with the patch. It's now fully functional and glitch free! :yay:   LMK if you come across any issues.
EDIT 2- Forgot to mention: I do not care about credit for any of these things; do whatever you wish with them.

Cpt.Glitch


Quietus

That could make a TAS of the game ridiculous, as it'd almost be a permanent shinespark to the end of the game. :grin:

RealRed

.val files to put in files\menus in your SMILE folder. I made these for Hyper, but they should be at least 90% accurate to the original tilesets, so you won't have to go around setting slopes/solids/air-xrays for the most part.

Enjoy!

begrimed

Useless for most of you and not much of a resource, but, these can be applied to any unheadered SM ROM/hack. Heavier physics has about the same gravity and falling speed as Redesign, while floatier is closer to NEStroid.

Vismund Cygnus

Do you want space pirates to suck less? Of course you do!

So here's Better Pirates!

..okay, so really all this patch does is increases the speed of space pirate projectiles, similar to the hex edits found by Grime, however unlike those, this doesn't crash the game, and also uses less free space than his edits.
Credit to Quote58 for doing this.

raygun

Smooth Landing patch for Metroid Fusion.
Samus retains speed after hitting the ground.
Also retains speed boost.

use freely, credit unnecessary, etc..

JAM

Don't sure where to post it. It not a patch, not a hex tweak, just a usefull info. There is actually a brick-shaped slope that allows to make layout parts like this:


__
/  \


or that:

      __
____/
/


1 symbol = 1 8*8 tile.

So, it's a 2*1 block that pushing you up or down if mirrored, like slopes with BTS $08-0F and $13 do. BTS of this block is $07 ($87 to push down).

Also, perfect use for them is in escapse state of Crateria shaft to break through them. Because it's a bit unfair that you'll fly only through first platform in NTSC version while you can fly through both in PAL version.

EDIT: Made room of the day, showing this as example.


RedMetal

Made a quick little improvement to how fast the pausing/unpausing fade-in/fade-outs happen (And brightness changes in general).

It's a lot faster than Hyper Metroid. Project Base

EDIT: I just realized I made the patch using the wrong ROM. (I accidentally used the test rom, so there were things that weren't supposed to be changed/weren't changed at all.)
Specifically when you unpause the game how it cuts to black with no smooth transition in brightness.

RealRed

Quote from: RedMetal on August 05, 2015, 08:11:09 PM
It's a lot faster than Hyper Metroid.
Probably because I never changed it in the first place... Why did you feel the need to point that out?

Quote58

Quote from: RealRed on August 05, 2015, 09:27:42 PM
Quote from: RedMetal on August 05, 2015, 08:11:09 PM
It's a lot faster than Hyper Metroid.
Probably because I never changed it in the first place... Why did you feel the need to point that out?

Presumably because he thought that it had in fact been made faster, as well as it being one of the most recent hacks, so it was a prime candidate for use as an example of a super metroid hack on many people's minds that had slower pause speeds than the patch he is proposing.
It wasn't an insult to your hack, or more accurately to the changes project base has made to super metroid's engine.

Why did you feel the need to be so defensive about it?

Lazymoth

Quote from: RealRed on August 05, 2015, 09:27:42 PMProbably because I never changed it in the first place... Why did you feel the need to point that out?

Their name is "RedMetal," so they are obviously your robotic counterpart rival built to deliver on features your hacks arbitrarily lack :razz:

Welcome RedMetal, kudos on your first post being a contribution!

RedMetal

Quote from: RealRed on August 05, 2015, 09:27:42 PM
Probably because I never changed it in the first place... Why did you feel the need to point that out?

Whoops, I meant Project Base, I have no clue how I got the two mixed up.

personitis

 :O_o: I know exactly how you got the two mixed up. :lol: Anyway, welcome to the forums and points to you for your first post being a resource.

Quote58

Quote from: RedMetal on August 05, 2015, 10:33:31 PM
Quote from: RealRed on August 05, 2015, 09:27:42 PM
Probably because I never changed it in the first place... Why did you feel the need to point that out?

Whoops, I meant Project Base, I have no clue how I got the two mixed up.

Hyper metroid was built off of project base, so if it is faster in project base it's faster in hyper metroid.

RealRed

Quote from: Quote58 on August 05, 2015, 09:55:43 PM
Why did you feel the need to be so defensive about it?
Just seemed odd to point it out as if a flaw if it was something I hadn't modified.
I wouldn't necessarily say defensive. Well, maprobably.
Anyway, it sounds like an awesome patch. I might have to real some RedMetal into hyper metroid because fast menus sounds fantastic.

Mettyk25jigsaw

Cre Free Up Patch.

What it does is:

1. Changes the tiles the Missile, S.Missile, PB and grey doors use in relation to animation, though it still leaves the main GFX Door (An unopened door) unchanged. Instead it has a cool gfx effect that makes it look like the doors have been unlocked and thence fore uses the beam door GFX to use as the animation when you shoot a Missile, s.missile (etc.) door open or it closes on the other side...For a video of what I am talking about, look down further...

2. Frees '48' 16 X 16 tiles in the CRE Tiletable, the ones you can change are shown in the image file below and are the ones with a white circle block. However I'm not clearing any tiles for you, you'll have to do that part for yourself, you can just change them (overwrite them) anyway, easy...

3. Frees '18' 8 X 8 tiles in the GFX Set, the ones you can change are also shown in the image file and have a similar look, though is a quarter circle.





https://youtu.be/VkqyDf-dhY8



Enjoy..

Quietus

Looks fine to me, and I can't see it being a downer for most people, since all doors end up blue after opening them anyway. :^_^:

CrAzY

Great idea to free up a ton of tiles! Not only does it not look bad, it looks way better than I would have imagined. Surprised that wasn't done before!

JAM

Quote from: Mettyk25jigsaw on August 14, 2015, 12:38:28 AM
2. Frees '48' 16 X 16 tiles in the CRE Tiletable, the ones you can change are shown in the image file below and are the ones with a white circle block. However I'm not clearing any tiles for you, you'll have to do that part for yourself, you can just change them (overwrite them) anyway, easy...
Well, you don't really need to free these tiles to make something new. You can use all tiles in CRE table, marked as "X".

Quote from: Mettyk25jigsaw on August 14, 2015, 12:38:28 AM
3. Frees '18' 8 X 8 tiles in the GFX Set, the ones you can change are also shown in the image file and have a similar look, though is a quarter circle.
You can free 4 more tiles.

Bottom of piedestal is similar.
Tile $150 = $152, $151 = $153.

Left block of Power Bomb tile is similar to right one, only flipped.
Tile $E8 = flipped $E9, $12E = flipped $12F.

Mettyk25jigsaw

Well JAM, now you have all the X's + an extra 48 in 16 X 16...Yeppee...

And as for the 8 X 8 issue, can't people do that for themselves in an exported GFX file? As my patch repoints all the Miss, s.miss, pb and grey doors to use the blue door for animation instead of the normal doors, but the main gfx door (unopened door) is left alone. Otherwise when you open the door using these tiles without using my patch with these tiles edited, you will end up with a major glitch everytime you open a door...

Jordan5

Here's a little something that alters an existing routine in the game to make it actually useful. In SM, when you're health drops below 30 the drop chance of energy is increased, and stays that way until your energy goes back over 50. This can be helpful early on, but the chances are later on in the game that one hit will kill you if your energy is this low. This is why I have altered this routine so that the routine for more health drops turns on when your health is below a certain percentage, so that it stays relevant and useful throughout the game. The values I picked were rough guesses for usefulness, and I have added in limits (if you look at the code you will see what I mean) so if you plan to use it then some tweaking of value will likely be needed to make it balanced for your hack. You can get it here or at the bottom of the post.

Uses free space in $86

[spoiler=Too lazy to download?]


;this routine changes the one in vanilla such that energy bombs (defeating a boss with low health is the most common sight of this) are based on your max energy
;the original turned on below 30 and off when above 50
;thanks to Quote58 for helping me with this and some ASM in general

!On = #$000A ;routine will turn on when health < 1/!On of max health (ie. 1/10th of max health)
!Off = #$0004 ;routine will turn off when health > 1/!Off of max health (ie. 1/4th of max health)
!OnMax = #$0064 ;maximum value that will turn on the routine (100)
!OffMax = #$00FA ;maximum value that will turn off the routine (250)


lorom

org $86F13F ;original routine location
JSR $F4A6 ;free space in $86
BRA $0C ;jump over old routine

org $86F4A6
LDA $12 : PHA ;free up direct page address for energy check
LDA !On : STA $12 : JSR Division ;calculate energy value to turn on routine
CMP !OnMax : BPL $03 : LDA !OnMax ;if above !OnMax, set value to !OnMax (comment line out to remove maximum on value)
CMP $09C2 : BMI ++ ;if energy is sufficiently low, jump to routine activation
LDA !Off : STA $12 : JSR Division ;calculate energy value to turn off routine
CMP !OffMax : BPL $03 : LDA !OffMax ;if above !OffMax, set value to !OffMax (comment line out to remove maximum off value)
CMP $09C2 : BPL + : BRA ++ ;if energy is sufficiently high, jump to routine deactivation, else, go to activation

+
DEY ;if routine is on, Y = 1, else Y = 0. Mark routine as turned off.
++
PLA
STA $12 : RTS ;restore what was in $12, then return to routine that increases energy drop chance


Division:
LDA $09C4 : STA $4204 : LDA $12 : STA $4206 ;max energy into dividend($4204), dividing factor into divisor($4206)
PHA : PLA : PHA : PLA ;wait 16 cycles for division (NOP #16 uses more bytes)
LDA $1414 : RTS ;store division result in A


[/spoiler]

Quietus

Sounds useful, though speedrunners may curse you when they're deliberately running on low health, yet want Supers. :^_^:

PKstarship

Here's something I finished making an hour ago. It is an ASM patch that, when compiled to Super Metroid, lets Samus use the Hyper Beam ONLY while she is at full energy. I apologize for the beam looking a bit weird, I'm still very new to ASM. Considering that the Hyper Beam isn't normally used throughout the game, it might be just a bit unstable, but I haven't had any problems with that yet. Credit would be much appreciated if you want to use this in your hack.

Also, I would like to thank Scyzer, Black Falcon, and Jordan5 for helping me learn the ASM knowledge that allowed me to make this :^_^:

Edit: Fixed a routine issue that prevented Samus from dying.

Jordan5

The only issue with this is that you've hijacked the routine that allows Samus to die, thus she can't.

[spoiler=Take a look]
I happen to be invisible that frame from invincibility
[/spoiler]