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

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

Previous topic - Next topic

OmegaDragnet9

Tundain, this is really great stuff. Been really enjoying the resources you put out this past year.

Chemical-X

Quote from: PHOSPHOTiDYL on March 30, 2017, 12:45:19 AM
Mother Brain Experiment.

I'm sick of the final boss just being a boring movie before I watch the credits.
So here's a patch making it a legit boss fight.

Set up for "hackmode" patch. Instruction included for vanilla or sylandro's patch.

No hyper beam. Instead missiles & supers so your prior exploration will cost you.
Those will be divided by two for hard mode. It's already a struggle on normal mode.

Mother brain's second form can be spammed with missiles & just stand there taking it.

Not anymore.

Whatever you hit her with will move the head. Regular beams will do no damage.
Also includes damage options for the final "hyper beam" so you can adjust accordingly.

Like not getting an energy refill after the first giant metroid drain, & relying on your reserves.
Hard mode would just end you with 598 damage.

Still some lag, but so do the other bosses.

Highly experimental.
$1A bytes free space bank $A9.

UPDATE:
Hack mode makes this near impossible without a perfect fight. Good luck.



Right, so your saying without any difficulty patch applied to the rom this will not work without it ?
That's a damn shame if it is true.

OmegaDragnet9

Bomb Reset Timer changed by equipping Spring Ball.

-07-16-2023-
Added a defines section for easier changing which item enables the Easy Bombs.

Added Bomb Interval switching.

-------------------------------------------------

Uses free space in Bank $90.

Equipping Spring Ball enables the user to IBJ easier (like Zero Mission or Project Base.)

Thanks to Begrimed for letting me use his PB hex tweaks, PJ Boy for the Bank Logs, and Scyzer for the tutorials.

This can really be tied to any item. Lots of potential for customization.




https://imgur.io/o8cpoWi



H A M

ridley can now ketchup

nodever2

SM: HUD Health and Ammo Counter Animation
Here's a fun little patch I made today which makes the health and ammo counts on the HUD animate when they change.
So, when you pick up 4 health, the health counter will slowly increase by 4 over the course of 16 frames at 1ammo/4frames, for example.
Note that this doesn't affect gameplay, only the HUD display, so behind the scenes all of the health and ammo counts get updated instantly still.

By default, the ammo counts update by 1 ammo every 4 frames, while the health counter dynamically changes it's increment speeds based on how desynchronized it is with Samus' actual health. This can be edited by changing the asm file.
Uses some freespace in $80. Tested with asar, should work with xkas as well.

A fun side effect is that when loading into the game, all of your equipment counts up from zero during the loading animation.
Uncomment the code at the end of the file to revert this change, but I think it looks cool, looks like your HUD is booting up or something.

Please give credit if you use it in your hack, and be sure to let me know if you have any issues with it. Thanks and happy hacking :)

UPDATE v2 March 30, 2023: Gave the health counter some special coding to scale it's animation speed based on how far behind Samus' actual health value is. It is much more responsive now.
UPDATE v3 April 1, 2023: Sorry for update spam, but this should be the last update. I kinda went back and forth on whether the ammo counters should use the updated health counter logic (which is a tiny bit more complex) for performance reasons, but in the end I decided it is better. In an isolated test I didn't experience any lag frames while all four counters were increasing using this logic, so it should be fine.



[spoiler=OPTIONAL BONUS FEATURES]FEATURE 1: Refill stations refill Samus' health and ammo as soon as she connects to them.
How to install: Paste this code into the asm file at the very bottom, below all the comments and stuff:
(It uses some freespace, repoint the $84FEE0 if you need to change where it points to)

;----HEALTH REFILL STATION-----
; Rewrite, removed redundant check to see if Samus' max health is full, and moved code to actually fill her health outside of the routine
org $84ADF1 : DW GotoAndEnableMovementIfHealthFullElseFillHealth
org $84AE13 : DW GotoAndEnableMovementIfHealthFullElseFillHealth

org $848CAF
ActivateEnergyStation:
PHX : PHY
LDA #$0015 : JSL $858080 ; spawn message box
.PlaySFXAndReturn
LDA #$0001 : JSL $90F084 ; play sfx
PLY : PLX : RTS

org $84FEE0 ; rewrite of AE35, couldn't do it in place because AE13 is also used by the main refill station PLM,
            ; it's dumb and I don't want to talk about it
GotoAndEnableMovementIfHealthFullElseFillHealth:
LDA $09C4 : CMP $09C2 : BEQ .EnableMovementAndGoto
STA $09C2                ; refill health
INY : INY : RTS
.EnableMovementAndGoto
LDA #$0001 : JSL $90F084 ; enable movement
LDA $0000,y : TAY        ; go to [[Y]]
RTS

;-----MISSILE REFILL STATION-----
org $84AE7B : DW GotoAndEnableMovementIfMissilesFullElseFillMissiles
org $84AE9D : DW GotoAndEnableMovementIfMissilesFullElseFillMissiles

org $848CD0
ActivateMissileStation:
PHX : PHY
LDA #$0016 : JSL $858080
JMP ActivateEnergyStation_PlaySFXAndReturn

; rewrite of AEBF, same logic as the rewrite as AE35
GotoAndEnableMovementIfMissilesFullElseFillMissiles:
LDA $09C8 : CMP $09C6 : BNE +
JMP GotoAndEnableMovementIfHealthFullElseFillHealth_EnableMovementAndGoto
+ STA $09C6
INY : INY : RTS

warnpc $848CF1


Showcase:


OPTIONAL BONUS FEATURE 2: Uncomment the commented section of code at the very bottom of the asm file to disable the animation where the energy and ammo counters count up from zero briefly upon reloading the game from a save station or the gunship. Uncomment it by deleting the semicolons (;) at the beginning of each line. See the asm file for more details.
[/spoiler]

Tundain

Camera rework!

This patch makes some improvements to the camera, most notably:
-No more moonfall scrolling issues! the camera is now aware of the possibility that samus travels quicker than it can move, so instead it will start catching up to her.
-Manual mode: By holding down select and tapping run, you can toggle manual mode. Whilst in manual mode, the player takes control of the camera, but samus must stay within reach.

More details in the asm file.


TobiMikami

Do you think it would be possible to Hijack the camera to temporarily control another object like the spider robots in AM2R, or the command melody in Wind Waker? I figured if the cutscenes thing was possible with the ability to tweak the camera it would be more about controller wise and such. Interesting to think what could be done with this.

Tundain

Yes, it's definitely possible to hijack the camera into controlling another entity.
Spoiler warning, but this hack [spoiler]https://forum.metroidconstruction.com/index.php/topic,5624.0.html[/spoiler] does that already with [spoiler]Draygon[/spoiler]

Tundain

Spinning charge beam flare.

This patch makes it so that, when spinning around with a charging beam, the charge beam flare will circle around samus (like in am2r)

10/04/2023 (DMY):
Improved the patch
-doesn't need unused RAM anymore
-Removed now redundant routine, decreasing the patch's size
-The flare now spins in perfect sync with samus


TobiMikami

Quote from: Tundain on April 03, 2023, 05:41:54 AM
Yes, it's definitely possible to hijack the camera into controlling another entity.
Spoiler warning, but this hack [spoiler]https://forum.metroidconstruction.com/index.php/topic,5624.0.html[/spoiler] does that already with [spoiler]Draygon[/spoiler]
That's seriously awesome! When I first discovered hacking like day one I was like I wonder if you could make yourself play as a boss like Mini Kraid or something, of course back in like 2012-13 that was super farfetched, especially for a noon, but man having been around this scene for so long, I can say you personally alongside Oi27 and Moeher have really put out some AMAZING ASM in the last few years, definitely the next generation of great ASM hackers. I love how every time I think I've seen it all, you guys go LOL NOPE hold my beer. Yall are real American heroes!

Tundain

Miscellaneous sprites graphics free up.

This patch frees up gfx space in the misc. sprites VRAM section.
The now unused space can safely be used to make new fancy stuff, like more fancy beams, or a new kind of projectile.

More info on how to use it in the README and in the asm file

The GIF below shows you what gfx are now free (all the x's below are now unused space)


Tundain

Fusion Charge Flare Projectile!

This patch implements the charged flare projectile from fusion.
When firing a charged shot, a second projectile will spawn at the end of the arm cannon. This projectile deals twice the damage of a charged shot of your current beam.
This can incite players to live more dangerously by firing at enemies from point-blank range.
If successfully hitting an enemy with the flare, a twinkle will appear (this is purely cosmetic).

This patch needs to have the misc. sprites gfx free up patch applied as well, and as of such, it is included.

More info in the README


H A M

Quote from: Tundain on April 10, 2023, 06:44:33 AM
Miscellaneous sprites graphics free up.

This patch frees up gfx space in the misc. sprites VRAM section.
The now unused space can safely be used to make new fancy stuff, like more fancy beams, or a new kind of projectile.

More info on how to use it in the README and in the asm file

The GIF below shows you what gfx are now free (all the x's below are now unused space)


i use it to make benox50's escape timer optimise to work with draygon and mb


TobiMikami

I'm surprised that hasn't been done yet considering Metaquarius  got them into Super, I always thought it'd be easier to convert GBA to GBA than to SNES

H A M

u can also inject c code into gba for custom enemies and bosses

TobiMikami

Interesting, I always thought you were stuck with machine languages like Hex and Binary and low level ASM because of editing a compiled program, unless they basically found a way to compile C to a usable format which I'd say they should find a way to do with Super Metroid if at all possible, that'd be cool as fuck.

OmegaDragnet9

Artifact PLM

-01-18-2024-

This version is simplified. Each PLM sets an event and displays one message. When a predetermined list of events is set, a second message will display letting the player know they've got them all. (Two messages instead of nearly a dozen.)

An earthquake will happen, and a final event will be set.

Additionally I have included a PLM that displays a green light that will go dark if an artifact is collected.

The intent behind this is to have one or more navigation rooms (like in Phazon Hack.) Or you can place these in a G4 style room that locks off the final area.
(One could also use the Artifact PLMs themselves to have a shared index in the locked room much like Jiffy did in Arrival.)

At present I have no counter system (beyond in-game GFX) but this is far easier to keep up with. Events are plentiful and the code is already in the Vanilla game.

JAM's Messenger PLM helped me simplify this Artifact PLM.
I have included the old one, but ASAR really doesn't like the way I have the counter calculated. The old version is for XKAS only for now.

[spoiler]

Old Artifact PLM:

Artifact PLM, inspired by Prime, Eris, and Phazon Hack.
Collect 5 artifact PLMs, trigger an event and an earthquake.
See Readme for details.

Thanks Smiley, Tundain, Nodever2, Oi27, MetroidNerd9001, PJ.Boy, and Scyzer.

Uses free space in Banks $84 and $89. PLM routine displays main message. A second message displays indicating how many Artifact PLMs you have left.

Uses messages 20,21,22,23,24 and 25 in SMART. Be sure you only place as many artifact PLMs as you have secondary messages to display. Otherwise the game will crash.

This can be expanded to have even more messages and PLMs, but study the defines very carefully before doing so.

Messages not included, but screenshots are. Vanilla jingle will play unless you use Scyzer or PHOSPHOTiDYL's Item Sounds.

[/spoiler]



TobiMikami

Duuude that's fucking awesome, does it max out at five or is there a way people could add more if they wanted to repoint the extra ones or whatnot? I know redesign had 12 of the statues presuming they used the same or similar mechanism I'd think it'd be possible, but if not, somethings better than nothing. Makes for a good alternative to the gold statue tbh.

OmegaDragnet9

Quote from: TobiMikami on May 02, 2023, 02:43:26 AM
Duuude that's fucking awesome, does it max out at five or is there a way people could add more if they wanted to repoint the extra ones or whatnot? I know redesign had 12 of the statues presuming they used the same or similar mechanism I'd think it'd be possible, but if not, somethings better than nothing. Makes for a good alternative to the gold statue tbh.

Thanks a ton man! I just tested expanding the number of Artifacts. All you have to do is go into the "Defines" section, locate the "!PLM_Number" define and change it from #$0005 to whatever else you like, and create more message boxes accordingly. (I just changed it to #$000A just now, added five more PLMs in the room editor and added 5 more message boxes in SMART's Message Box Editor. Surely enough, the earthquake triggered, and the other room changed.)

As for repointing, I use SMART. Aside from being responsible for locating freespace in Banks $89 and $84 there isn't any of that needs to be done for this fortunately.

ocesse

Super Metroid - Store a Shinespark for later use

https://www.youtube.com/watch?v=jDwhdb7RWa8

You can now store a shinespark for later use if you charge two consecutive shinesparks. You can use it in the same room or in other rooms that you arrive at later. I would have liked that this game had brought an option like this when it came out back in its day.

Special thanks to P.JBoy for his disassemble of Super Metroid:
https://patrickjohnston.org/bank/index.html

OmegaDragnet9

Draygon Destruction Timer Modifications.

Customize and use Ceres and Zebes timers anywhere.

-08-20-2024

Should be compatible with ASAR. Fixed bad freespace location in one script.

------------------------------------‐------

-08-11-2023-

Zebes Timer now points to $0A02 in RAM.
Each timer script can have its own specific length now.
Added timers for area mini-bosses and Torizos.
Special Timer for Mother Brain.

-------------------------------------‐------‐--------

Five different conditions (Area Boss, Mini-Boss, and Torizo Defeated, Enemies Needed Matches Enemies Killed, Timer Triggered by Another Event.)

Event OE engaged in every timer (so you don't watch Ceres detonate.)

Unset options for the timers. (Safety zone.)

Special Ceres timer which engages the countdown at Ceres Station and changes room states.

Known issue: the room shake can be stopped by a super missile, no matter which Vanilla earthquake routine is summoned.

Credits:

FullOfFail, Scyzer, JAM, Smiley, Jathys, Mon73, PJBoy, Black Falcon, dewhi100, and Insane Firebat (for helping me figure out how to use events as conditions.)








Tundain

Dialogue!

Ever wanted Samus to be able to speak during her adventures? Interact with other characters?
This patch makes it possible!
What this does is allow you to create multiple dialogue scenes were text is displayed on the HUD.
More information in the .ASM file itself!
Included is an example patch which has the example dialogues from the ASM file in place
(one dialogue when collecting morph ball, one at kraid, and one after collecting pbs)

Don't forget to credit please!


MarioFanGamer


I've made the destroyable blocks get revealed by (Super) Missiles à la Dread since the hack I'm making has late bombs. As a bonus, the bomb blocks can be revealed by beams like in Zero Mission, though I've also made it work with missiles only. It also makes PBs able to reveal blocks as well as that's the easier implementation than explicitely excluding them while including Missiles.


That's why I made a standalone version thereof. In addition, you can set both patches up to make the blocks get revealed by Grapple Beam as well (either changing a define in the former or by commenting out a line in the latter).

Tundain

Alternate Equipment Screen

I've always felt it was a bit disappointing that you only get to see the item gfx of major items one time (when you collect them), and then never again for the rest of the game.
So i've made this alternate equipment screen which displays the item gfx in the equipment screen, fully toggleable and navigable.
Enjoy!
Instructions are in the README

Special thx to Nodever2 for his helpful feedback!

Update (18/11/2023: DMY):
-It now actually works when you don't have all, but some items equipped