Mega Man 11

Mega Man 11

Not enough ratings
Sound Effect Modding Tutorial
By Nali
A step-by-step guide on how to implement your own custom sound effects.
   
Award
Favorite
Favorited
Unfavorite
Intro
Swapping out Mega Man 11's sound effects is unfortunately not as simple as swapping out its music. It takes more time, more software, and is prone to crashing the game when things go wrong.

But it's totally possible, so don't let any of that stop you.
Acknowledgements
Special thanks to one peterzhenhh, whose Resident Evil Revelations .xsew modding guide[residentevilmodding.boards.net] I've borrowed a couple tricks from, in addition to his work confirming that I was on the right track with my own.
Required Tools
To follow this guide, you will need the following software:
  1. FluffyQuack's Arctool and its corresponding batch files, as found here: https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=601818667
  2. GoldWave: https://www.goldwave.com/
    GoldWave is not free software, but for our purposes you shouldn't ever run into the limits of the evaluation version. Audacity is not a useful substitute in this case.

  3. A hex editor. I'll be using HxD for my examples: https://mh-nexus.de/en/hxd/
Before You Begin
Mega Man 11’s sound effect files are located within the following folder:
..\steamapps\common\Mega Man 11\nativeDX11x64\arc\
I recommend backing it up before making changes for easy recovery of specific files later on.

If you don’t know where to find \steamapps\, right click Mega Man 11 in your games list, then click Properties->Local Files->Browse Local Files to get to its directory.

A Word of Warning
Inside the \arc\ folder, you'll be greeted with a collection of files that looks like this:



.arc files are what contain almost all of the game's data, sound effects included. To avoid unpacking the entire game, it helps to have a decent idea of what each .arc file contains up front and what exactly it is you want to replace. The appendix contains a rough listing of that information, but let me give a quick example to explain why it often isn't that straightforward.

This is a Gabyoall:



One of the most common enemies in the game, showing up in several stages as a persistent menace. Let's say we want to change its siren to something else. With some time and effort, we deduce that the \em\ folder contains all of the game's enemy data, and em006 in particular is the Gabyoall. We unpack it, figure out which file is the siren sound effect, replace it, repack it, boot up the game, find one in a stage, and...

...absolutely nothing's changed. What gives?

Well, the game does reference \arc\em\, but only for displaying the models in the gallery. If you want to change the siren in actual gameplay, you'll need to find a stage that contains it, unpack that stage's .arc file, and replace the siren effect in the copy of the Gabyoall data tucked away there.

And you'll need to do that for every stage that contains a Gabyoall to comprehensively change that one sound effect across the entire game.

The following is an unfortunate fact of life:
  • Object data is extremely redundant and almost never centralized.

There are copies upon copies upon copies of the same data spread across multiple archives, over and over. There are thankfully some significant cases where this isn't true, like menus and Mega Man himself, but if you're looking to mod recurring elements like enemies, boss gates, or even bosses themselves, you're going to need to chase every instance of them down.

On the plus side, if you happen to want to mod a certain element differently based on what stage it's in, the game is already set up for that. Silver linings, eh?

MT Framework is also fairly touchy about file formatting being just right, and will freeze if it runs into one it doesn't like. I strongly advise testing replacement sound effects in small batches, if not one at a time. If you've implemented a bunch of effects at once and run into a crash, tracking down which one is causing the problem after the fact is a pain.
Finding Your File
Right then, onto the nitty gritty of actually making this work. For demo purposes, I'll be replacing the disappearing block sound effect in Wily Stage 1 with its Mega Man 10 version, because they just don't sound right if they don't go dvvvvvvvvt.

Extract Arctool and its batch files to the same folder. Of the batch files, you only need pc-re6.bat.

To unpack an .arc file:
  1. Copy the .arc file from its original location into the Arctool folder.



  2. Drag it onto pc-re6.bat. This extracts it to a folder of the same name containing all of the unpacked data, and a text file containing a listing of every file in it. Don't delete the text file, as it's required to repack the .arc later.


Inside the extracted folder, navigate to \sound\se\. Sound effects are contained in further subfolders here with a .724DF879 extension, but they're actually MS-ADPCM encoded .wav files. Rename the extension and you should be able to listen to them in most music players, while Goldwave can open them up directly, albeit with an error you can ignore.

In a stage archive's \se\ folder, you'll see the following subfolders:



  • \boss\ contains boss sound effects, unsurprisingly. \sound\se\boss\ is used when Japanese audio is selected, while \sound\eng\se\boss\ is the English dataset. Make sure you're working in the folder for the language you want to play in even if you're only changing nonvocal effects, as they're duplicated across both of them even inside the same archive like this.

  • \em\ contains enemy sound effects. Each \em###\ folder is a different enemy. The numbering is consistent across all archives, so once you identify an enemy, it'll use the same number no matter where you find it. \em_com\ contains shared effects like damage and death sounds, but as far as I know always goes unused in favor of a copy contained in Mega Man's data.

  • \gim\ contains stage gimmicks and other interactive objects. For Wily Stage 1, that means the disappearing blocks, the boss gate, and both types of gear axle platform, so I'll be coming back here shortly. Gimmick numbering is also consistent across all archives.

  • \st\ contains ambient sounds that play in the background of the stage.

In the Wily Stage 1 folders, \gim\gim000\wave\ only contains two files named gim000_appear and gim000_vanish and they sound like the disappearing block, so it's definitely the one I want. I don't really care about the vanish effect one way or the other, so there's an interesting quirk I can take advantage of here:
  • Effects can be selectively muted by deleting them. The engine is picky about the exact formatting of files that exist, but if one is just plain gone, it'll ignore it and carry on. Renaming it also works, since it'll be excluded from the repacking process by Arctool.

Once you've found the file you want, make a copy of it. We'll need it shortly.
Editing Your File
GoldWave time. We're using it instead of Audacity for a couple reasons:
  1. It lets you save your working file on the spot instead of having to specifically export a copy, which saves us some tedium.

  2. It natively supports the MS-ADPCM codec that MT Framework requires, which means we don't have to go dig the encoder out of the DirectX SDK.

Drag and drop both the original sound effect and the one you're replacing it with into GoldWave's window to open them:



Select the original file's window and hit delete to wipe its audio content:



Then copy and paste the audio track from the replacement file into the now-empty original:



If you think you need to adjust the volume, this is the time to do it (Effect -> Volume -> Change Volume/Loudness).

You may also want to pad the length out if your replacement audio is notably shorter than the original effect (Edit -> Insert Silence...). The engine is touchy, as I've noted before, and you can do everything right and still wind up with finished files that seem like they should be fine but crash the game on contact. I haven't nailed down exactly what it's looking for here, but getting close to the original length seems to be a meaningful condition in some cases. If you can come up with a more precise answer here, drop me a line.

When you're done tweaking the audio, save the file and exit GoldWave.

The last thing we need to do to the file is grab some metadata from the copy of the original file we made earlier, and the simplest way to do that is with a hex editor.

Open the copy of the original and your edited file in HxD:



If you have no idea what you're looking at here, don't worry, you don't need to. Scroll to the bottom of the copy and find this chunk of data:



Highlight everything from "smpl" to the end and copy it. Over in your edited file, scroll to the bottom and find this chunk of data:



Highlight everything from "fact" to the end, then paste the "smpl" chunk from the copy over it and save.



That's all we need to do here. Close the editor, delete the copy and the backup that HxD created if you want, and go back to the main Arctool folder. Drag the extracted folder back onto pc-re6.bat to repack it into an .arc file.



Overwrite the original .arc file in the Mega Man 11 folder with your edited copy and boot up the game! If everything went right, your new effect will play where the old one used to be. If not, the game will freeze the moment it tries to load the .arc and you'll have to kill it with Task Manager.


Good luck!
Appendix: Archive Contents
The following is a very broad and rough overview of the folders and .arc files to get you pointed in the right direction. More thorough and carefully checked documentation is a long term project.

\Mega Man 11\nativeDX11x64\arc\ \briefing\ — The files for a robot master's Stage Start sequence, after being selected \demo\ — Cutscene and credits files \em\ — Enemy and boss models for the gallery \pl\pl000.arc — Mega Man's data \sound\se\ \em\em_com\ — Common enemy sounds (taking damage, death, etc.) \mt\ — Variant effects for movement in ice and water environments \pl\ - Japanese language player sound bank \pl000\ — Mega Man's sound effects \pl200\ — Rush Coil sound effects \pl201\ — Rush Jet sound effects \pl202\ — Beat sound effects \pl203\ — Eddie sound effects \sound\eng\se\pl\ — English language player sound bank, organized as above \st\ — Stages st001.arc — Block Man Stage st002.arc — Acid Man Stage st003.arc — Impact Man Stage st004.arc — Bounce Man Stage st005.arc — Fuse Man Stage st006.arc — Tundra Man Stage st007.arc — Torch Man Stage st008.arc — Blast Man Stage st100.arc — Wily Stage 1 st101.arc — Wily Stage 2 st102.arc — Wily Stage 3 st103.arc — Wily Stage 4 st200.arc — st201.arc — st202.arc — st203.arc — st204.arc — st206.arc — st207.arc — Staff Roll st208.arc — st300.arc — some Weapon Get room; unsure if this is used st301.arc — st400.arc — Challenges: Dr. Light's Trial st401.arc — Challenges: Boyorn Bounce st402.arc — Challenges: Tank Oven Panic st403.arc — Challenges: One Hit Wonders loose files: boss_sel.arc — Stage select screen sounds gallery.arc — no sound effect assets; the relevant menu noises are in special.arc, while the VO files are in .sngw format in \Mega Man 11\nativeDX11x64\sound\stream\gallery\ Refer to the music modding guide to change those. game_common.arc \sound\se\ \system\ — Various pickup item sound effects \ui\ \challenge\ — In-game Challenge mode effects \data_slot\ — Save menu effects \game_over\ — Game Over menu effects \laboratory\ — Shop menu effects \option\ — Options menu effects \sub\ — Pause menu effects \title\ — Title screen and title menu effects \tutorial\ — Tutorial effects gameover.arc — no sound effect assets; see game_common.arc logo.arc — Pre-title screen dialog box effects, possibly special.arc — Challenge results, gallery menu, and what's probably the challenge menu and leaderboard menu effects system.arc — Another set of the \dialog\ effects, as also seen in logo and special; usage uncertain; more analysis is needed with these last few thankyou.arc — no sound effects title.arc — unused copy of the title screen sounds; see game_common.arc weaponget800.arc — weaponget801.arc — weaponget802.arc — weaponget803.arc — weaponget804.arc — weaponget805.arc — weaponget806.arc — weaponget807.arc — wily_sel.arc — Gear Fortress stage select screen sounds
FAQ
Q: My sounds sound weird sometimes.

A: Many of the game's sound effects have their pitch slightly randomized when they're played to introduce a little variance. It's a subtle effect with the stock sounds, but if you go around implementing the classic 8-bit effects, it becomes very obvious. I don't know of any way to disable the effect. Sorry!
Version History
v1.0 — Initial publication, 10/16/2018
7 Comments
Nali  [author] 13 Nov, 2024 @ 11:18pm 
Depends on which voice lines you want to mess with. In-game voice samples are handled here as sound effects, while cutscene dialogue is handled like music.
UstinUser2000 13 Nov, 2024 @ 2:25pm 
this works for voice modding?
Nali  [author] 7 Jun, 2024 @ 12:12am 
glad to hear it :)
TomokoFZ 7 Jun, 2024 @ 12:03am 
bro, thanks for the tutorial, I was finally able to do it!!! The truth is that it is "relatively simple", as long as you know what you are doing it becomes quite easy just by copying and pasting the "smpl" and "fact", I thank you very much!!!

:MM_1up::8bitheart::8bitheart::8bitheart:
Nali  [author] 6 Jun, 2024 @ 5:48pm 
I've got an 8-bit SFX pack linked in the description of this video (that I should probably edit into the guide) if that's your thing: https://www.youtube.com/watch?v=Ds8wlB3EOO8

As for doing anything yourself, I'm not sure I can add any tips that the guide itself doesn't already cover. MM's sound effect data is listed in the appendix, but you'll need to poke around it yourself to find the exact effect file to replace.
TomokoFZ 6 Jun, 2024 @ 3:07pm 
Hello, I'm looking at how I could do this with Mega Man's sound effects, since I don't like the annoying sound when reloading the buster, from what I see no one has made a mod for this, so I see myself in the need to see how change it myself, bad luck for me :b
TheSorrow55 1 Feb, 2020 @ 2:28pm 
thank u sciz i will try this for RE