Download Charge Shot Sound Fade Out ROM Hack

Charge Shot Sound Fade Out Game
Spread the love:
Parameter Info
Console: NES
Original Game: Mega Man 4
Type: Improvement
Genre: Action > Platformer
Modifications: S
Creator: MetHy
Date Created: 04/17/2020
Last Modified: 04/17/2020
Parameter Info
File Name: MM4_ChargeSoundFadeOut.zip
Downloads: 18
Requirements: No Special Requirements
Version: 1.0
Rating:

Charge Shot Sound Fade OutDescription

Don’t think this is gonna be a 100% Gold Remake, it’ll have its differences. Extra battles (some’ll be optionals, tough but rewarding), Hoenn Pokemon (in every area, and hard to find) New areas, Remapped some dungeons (so your old guides wont work) , Extra recurring characters (some’ll hate you, some’ll help you)

Note that the hack is incomplete but feel free to enjoy the hack as-is.

Charge Shot Sound Fade OutRead Me

            Mega Man 4 / Rockman 4
            Charge Sound Fade Out
            v1.0, 14th of April 2020


1) General Info
2) Patching
3) Compatibility with other hacks
4) Technical information
5) Credits



     1) General Info

This hack is for Mega Man 4 and/or Rockman 4 on NES/Famicom.

It alters Mega Man's charge shot charging sound so that upon holding the charge, 
the sound fades out after a short while instead of looping forever.

See also my Charge Sound Fade Out hack for MM5 and MM6.



     2) Patching

Patch a "Mega Man 4 (U).nes" rom or a "Rockman 4 - Aratanaru Yabou!! (Japan).nes" rom.

Using an IPS patcher such as Lunar IPS.



     3) Compatibility with other hacks

I made sure that this hack is compatible with Puresabe's excellent lag reduction and optimization hack.
This way you can enjoy his hacks' lag free experience with this hack fading out charge shot sound as well.

Order of patching shouldn't matter, since my hack shouldn't modify any byte that his hacks modify,
but I tested by first patching a "Rockman 4 - Aratanaru Yabou!! (Japan).nes" rom with his patch, then mine.

I tested with both versions of his lag reduction patch: the "Rock4Opt_Std" lag reduction version which is the one I
recommend, as well as the "Rock4Opt_Exp" version which adds weapon switching mid gameplay but also and gets rid of 
other things like the autoscrolling sections or the wind effect in Toad Man stage.

You can find Puresabe's hacks here:
http://borokobo.web.fc2.com/
The ones I mentionned are called "Execution speed optimization and function expansion patch" for Rockman 4 when you use
Google Translate.
While my hack is compatible with both MM4 (USA) and RM4 (JAP), I think his hacks are only compatible with RM4.

Compatibility with other hacks is uncertain due to the ASM code changes, see the next section.

If you're making a hack and want to include this charge sound fade out, see the next section.



     4) Technical information

Unlike MM5 and MM6 which handles the looping of the charge sound by sound definition (the sound plays once,
and the def handles the looping), in MM4 the looping is done by code (the sound itself does not loop, and it's
code that makes it plays over and over).

Therefore, I had to alter not just sound defs, but ASM code no matter what, and went with this solution:
I used the un-used ram address 004F, to create another counter on top of the charge shot counter. 
Depending on where that counter is at, 2 variants of the charge sound play, before not playing anything at all.
I also had to reset 004F back to 00 when the player shoots or when he spawns (start of level or after death).

This code is located between 7FFC3 (FFB3) and 80004 (FFF4). There are also 3 jumps from the main game's routines
you can find from there.

For the sounds, I created 2 new sounds:
sound ID 42 and 44. 42 was an un-used sound in the game, and 44 was non existant (pointer was 00 00).

I also increased the priority of the charge loop sound, which due to how sound priority worked and work,
seems to make sense here.



     5) Credits

ASM editing and sound editing: MetHy aka Ness

Thanks to Matrixz and MartsINY for their documentations on MM4 and its sound engine.
Thanks to the FCEU X devs for their Hex Editor and Debugger.


Feel free to use this hack in your own hacks, no need to ask me, just a small credit is enough.