Resident Evil 4 (2023)

So apparently, after a lot of requests regarding modding RE games audio, here's a little guide that will (hopefully) help you make (more) audio mods.
These should work on all modern-day Resident Evil games (and potentially other RE Engine games like MH or DMC).
It's what I followed when creating mods for RE2, and this mod for RE4R.

First, the process of modding bnk and pck are a little bit different (we'll see them in detail below).
But for both, I use these tools:
Fusion Tools for extracting the wems (can also extract them in WAV format)
RingingBloom for replacing the wems
VGMStream to listen to wems with FusionTools
Audacity for editing the extracted wav files
WWise Audiokinetic Launcher to convert the wavs to wems

Once you have a sbnk or spck you want to mod, place it in a folder somewhere, remove the extension (1.X64), and replace sbnk with bnk (and spck with pck).
That way, it'll be easier for the tools to read the files.




Note:
Check Update 1 & 2 if you don't hear your modded audio ingame.
Check Update 3 if a PCK is not working, for a potential workaround.


Modding a BNK

1- Open FusionTools

2- If you have downloaded VGMStream, you can listen directly to the tracks with the built-in player (set the path).
Extract the VGMStream archive, and in Fusion Tools, click on "Set VGMStream Path", and select the exe found inside the archive.


3- Click on "Wwise Editor", and then File options -> Open file and select your bnk. You'll have a list of all the tracks in this file.


4- When you have the track you want to mod, right-click on it, and choose "Export wem to wav" (make note of the ID). Select "No" in the popup window.


5- You now have the track in wav format. You can then open it, and modify it with Audacity. 



If you want to replace it, it's best to use a track that has the same length or less.
What I usually do is, if I want to replace a track, I leave the one I opened, add a new track, and "Solo" it.

The other tracks will then be muted.
(Important: "Soloing" the tracks only works for BNKs, for PCKs you'll need to keep all the tracks unmuted, and apply the steps in the Update 1 below).

Also, try to keep the same properties (the Format, the Rate, if it's mono or stereo, etc...). (Right-click on the track and change the Format, Rate, to match the original track. Also, split to mono if the original is a mono track, and keep a single track).
When you're done, export the track (File -> Export as WAV)


Update 1:

Generally, it you do the steps above, it'll work.
But sometimes, after producing the modded audio file and testing it ingame, you can't hear the part you modded.
If that's the case, you can try this:
In audacity, click on Edit -> Preferences


Click on the "Import/Export" option on the right, and on the new window, make sure you select "Use Advanced Mixing Options".
"OK" when you're done.


So, in the example above, we can see the original audio file has already 12 tracks.
And let's say the track you want to mod is the 9th track.
What you'll need to do is replace the other 11 tracks with silences (that have the same length as the original tracks).
We'll start by deleting all the tracks (leave one for reference, to get the exact length).


Once you've done that, you'll need to add 8 tracks (your modded track will be in the 9th position).
So do this, by clicking on Tracks -> Add New -> Mono Track, 8 times.



Now for each track, you're going to replace them with silences.
We'll be doing in for the 1st track.
Start by clicking on the track, hit the "Home" key on your keyboard, and then Shift+End, to select the whole track.


Now you need to click on Generate -> Silence, and click on "Generate" in the next window.
Now do these steps for the other 7 tracks.
(You can get rid of the first track we left for reference once you're finished)


Now insert your 9th modded track


And add the remaning 3 tracks, and silence them.


You can now export your wav.
When you do this, you'll get a new window.
You'll have to match tracks with their corresponding channel.
Audicity does that automatcally, but make sure your modded track is linked to the right channel (in our case, the modded audio must be attached to the 9th channel, since that was the case in the original audio file).


Once you do that, click OK, and you'll get your modded wav file.
It should have the exact same properties as the original one.


You can now continue with the rest of the steps.
End of update 1


6- Now that you have your modified wav file, open WWise launcher, and in the "Projects" tab, create a project (or select the one you created).


On the main page, you can import your modified wav. To do so, click on Project -> Import audio files, and then "Add files" in the new window.
And finally, "Import".


To convert it, click on Project -> Convert All Audio Files.
On the new window, click on "Convert".


To locate the converted files, click on Project -> File Manager, and then on the "Project folder", right-click on the path and select "Open Containing folder".


Your converted wem(s) will be in the ".cache\Windows\Voices\English(US)" folder (or "".cache\Windows\SFX"" if it's a SFX).


Update 2:

Now, it's possible that the converted wem file will be larger than the original one (and that would be a problem).

So, if that's the case, in Wwise, select the track you imported on the left (it should be inside "Default work unit"), and on the main window, click on the "Conversion" tab


Here, we can see the conversion setting is set to "Vorbis Quality High".
You can change by clicking on the 2 arrows on the left, Factory Conversion Settings -> Vorbis, and select another (lower) setting.


If the generated wem is still larger than the original one, we can try another solution.
Click on the button on the right side of the conversion setting.


On this new window, scroll to the right, until you see a "Format" column.


Click on the list, and select "Wem Opus".

The default quality is 64.
You can try different values until you get a size that's smaller than the original.
When you want to convert your file, right click on the source at the bottom, and select Convert (and then OK).

We can have an idea of the final size if we check the "Converted Size" column.
In our case, it's 145.4 kb, which is smaller than the original (165 kb).


You can finetune the quality to get a better file, and get a size as close to the original, but without exceeding it.
I managed to get a size of 163.9 kb with a quality of 84.


Once you're done, you can continue with the rest of the steps.

End of update 2

7- Now that you have your converted wems, rename them (it has to have same name as the original, I don't know if it's mandatory, but I do it anyway).


8- I noticed that replacing the wems using FusionTools doesn't always work, so we'll be using RinginBloom.
Open the program, select a "Mode" (it doesn't have a RE4R option (yet), but you can select any other RE option, and it'll work just fine), and then select "BNK editor".


Click on "Import BNK", and select the original bnk. Click on the "Data index" list, and you'll see all the tracks, names "Imported Wem #".
When you click on one, you'll have its detail (name, ID and length).


Select the one that has the same ID as the one you noted before, right-click on it, and select "Replace". Choose the wem you converted before.





Click on "Export BNK". You now have a modded bnk. Place it in the right folder where it belongs, with the right name, and create your archive.

Note:
If modding a bnk doesn't work (usually it does just by following these steps), you can try the method at the end of the PCK part.


Modding a PCK

The process is similar, but has some extra steps.
The same steps apply, but there's a difference in step 4. You'll also need to "Export wem" (leave it somewhere, we'll come back to it later).
Then, the following steps are the same, up to step 7. Step 8 is a bit different.

You now have the original wem, and the modded one. By experience, I noticed if you try to import a wem which has not the exact same size, you won't hear it ingame.

So this is what I do:
1- In the example, the original wem (we'll name it 934602276_1_orig.wem) has a size of 12860536 bytes, and your converted one (named 934602276_2_modded.wem) 835613.
The size is smaller (there's a difference of 12024923 bytes), but it won't work.



You'll have to create a "blank" file which has a size corresponding to that difference. You can do that with the following DOS command:
fsutil file createnew 934602276_3_blank.wem 12024923

After launching the command, you'll now have 3 files:


3- The next step will be to join them. You can do that with the following command:
copy /b 934602276_2_modded.wem+934602276_3_blank.wem 934602276_4_joined.wem
So what is does is concatenate the modded wem with the blank wem, and if all goes well, the "934602276_4_joined.wem" file will have the same size as the original wem.


4- You can now use RinginBloom to replace the wem. Same process as before, but select "PCK Editor" instead.
Import, select the original PCK, you'll have a list of all the tracks (like in FusionTools).
Select the track you want to replace, and select "Replace wem" in the menu.
Choose your "joined" wem (934602276_4_joined.wem, which you have renamed with its original name, 934602276.wem).


Once replaced, click on "Export" in the menu, save it in the right folder, with the right name, and create your archive.
If ALL went well, the modded PCK will have the same size as the original.


Update 3

So if after many efforts, no matter what you do, what parameters you used while exporting from Audaciy/Wwise, the final modded pck doesn't work for you and you don't hear your tracks ingame, maybe you can try this.

You have your original pck, with all the tracks in it (which you found in the "streaming" folder).
What you could do is search in the "normal" folder for the BNK that has the exact same name (but has sbnk instead of pck) and mod that one instead.

Let's say your PCK is ch_csa159_dialogue.spck.1.X64.En, that you found in natives/STM/streaming/_Chainsaw/Sound/Wwise.
Then, look inside the folder natives/STM/_Chainsaw/Sound/Wwise for the file ch_csa159_dialogue.sbnk.1.X64.En.


You'll see that its size is much smaller than the PCK, and if you try to play the tracks inside (by exporting them to wav or directly in Fusion Tools), you'll find that they are either silent or incomplete.

BNK:



PCK:



The first step of the process is to extract all the wems from the PCK.


Next wll be to import them into the bnk, replacing all the other ones (use RingingBloom for better results), also importing and replacing the track(s) you modded in the process.
When finished, export the BNK, and your exported BNK will have a bigger size than the original, a size much closer than the size of the original PCK.


Again, save it with the right name, put it in the right folder (the "normal" one, not the "streaming" one).

And it should work.

This solution doesn't work for ALL the pcks (there are some bnks that are empty, have no tracks in them to replace, and adding them manually doesn't solve the problem, I haven't found a proper solution for them yet), but the process works for most of the other files.

End of update 3

So now, you have all the knowledge and tools to make cool audio mods.
I hope that wasn't (that much) confusing, but feel free to ask if you need help.

Article information

Added on

Edited on

Written by

Bl17zKr136

73 comments

  1. Bl17zKr136
    Bl17zKr136
    • member
    • 31 kudos
    Locked
    Sticky
    Added updates (1 & 2) for a potential fix when you don't hear your modded audio ingame.
  2. Bl17zKr136
    Bl17zKr136
    • member
    • 31 kudos
    Locked
    Sticky
    Added another update (3) for a potential workaround for PCK files.
  3. SomaticChain
    SomaticChain
    • member
    • 0 kudos
    These programs don't work. I get errors telling me i need to download net cores, DILLs, and param2. Even with them downloaded, they still won't start.
  4. kTeoo
    kTeoo
    • member
    • 1 kudos
    the tutorial is wonderful, but after around 7 hours of attempts over here i am thinking it no longer works after the SW update. Can someone here confirm this?
    As a test i'm trying to change one single entry in ch_bgm_village.sbnk.1.x64 but it appears muted ingame, while the rest of the bgm still plays normally so only this one modded entry seems to be broken.
  5. Henk90
    Henk90
    • supporter
    • 7 kudos
    this is the best description i found!! thank you! repacking files is the issue for the most people i think. but i have questions

    1. what about uasset files from ue4.2.1 based on ogg files. i can't get the modified file back into uasset to run it in the game (drug dealer simulator). 

    2. in mafia 3 there are also no audio mods - based on pck files. i have the radio.pck in mind but there are only single wems and no own stations. there must be a possibility that the length of the file should not play a role anymore. i have prepared the west coast classic from gta5 as wem. longest track mafia 3 - 6min the westcoast over 1 hour
  6. m4nCh
    m4nCh
    • member
    • 3 kudos
    Hi, thank u for guid and soft!
    There is a one moment, I want to change all Leon`s voice to other, but when I open files like ch_csaXX_dialogue.sbnk... , it`s open with no sound. I mean there is 2-3 files, but there are no playable (In WAV too, like 0.1 sec file)
    Have idea what I do wrong?
  7. ddccjj
    ddccjj
    • member
    • 1 kudos
    I don't understand how to export wav with fusion tool, I follow the tutorial, only get a wem file and window, when I close the window nothing happens
  8. TheSorrow55
    TheSorrow55
    • member
    • 8 kudos
     the problem when u convert  use PCM not vorbis , vorbis = for others RE games , RE4 u need PCM , u should use this tool "ravioli explorer" if u find the files = wem use vorbis , if u find the files unknown wav "u cant play it" = PCM 
  9. Alexkander
    Alexkander
    • member
    • 1 kudos
    I understood the beginning of your tutorial, but the end blocks me. BNK modding does not work with RE4R and modding PCK files is complicated to understand. It is not easy to figure out how to do the DOS command and respect the original file size. As a result, the end of your tutorial is hard to follow.
    1. Bl17zKr136
      Bl17zKr136
      • member
      • 31 kudos
      Where are you stuck?

      It's not THAT complicated, really :
      Let's say
      A.wem is your original wem (size = SA)
      B.wem is your modded one (size = SB)
      C.wem is the blank wem (generated by the command)
      D.wem is the final wem (generated by the command)

      You launch the 1st command to generate a blank file:
      fsutil file createnew C.wem (SA SB)
      C.wem's size (SC) is the difference between SA and SB.
      SC = SA - SB
      (or SA = SB + SC)

      Next, you launch the 2nd command:
      copy /b B.wem+C.wem D.wem
      D.wem
      is the concatenation of B.wem and C.wem.
      SD = SB + SC
      And if you check D.wem's size (SD), it'll have the same size as A.wem, SA.
      If you check above, you can see and conclude that SD = SA

      I tried to be as clear and detailed as possible. I hope this helps.
      Also, BNK modding DOES work (for the demo at least), as I said, if it really doesn't work, you can apply this method.
      Good luck.
    2. Achi3ved
      Achi3ved
      • member
      • 0 kudos
      the 2nd command isn't working for me for some reason. using power shell btw.
      copy /b 704627075_2_modded.wem+704627075_blank.wem 704627075_joined.wem
      above is the command I put in.
      I get an error saying A positional Parameter cannot be found that accepts argument 704627075_joined.wem

      ****Edit I just saw the post below It worked on DOS***
  10. KimLeMonMk234
    KimLeMonMk234
    • supporter
    • 0 kudos
    Does that mean that we can change all the inventory UI sounds of RE4R to classic SFX?
  11. Hipping
    Hipping
    • member
    • 0 kudos
    Thank a lot for the guide! And I was wondering if you ever tried to mod the audio file for the intro. "ch_mva000_dialogue.spck.1.X64.En" I've tried everything, 3rd Update included but I get no audio.
    1. Bl17zKr136
      Bl17zKr136
      • member
      • 31 kudos
      Hey and thanks.
      As a matter of fact, I did (check my videos in my profile, where I "tried", with poor results, to use AI to replace the Leon's voice).
      I did it when I only had the demo, but it should work for the full game too.
      The thing is, you'll need to find the bnk for this part, in the "normal" folder, not the "streaming" one (it should be  called ch_mva000_dialogue.sbnk.1.X64.En).
    2. Hipping
      Hipping
      • member
      • 0 kudos
      Thx for replying,
      I have already followed Update 3 if that's what you meant.
      I also replaced the track of the .bnk from the normal folder with just the track extracted from the .pck (as a test) and it works, but when I replace it with the modded track it doesn't. So it's probably a problem when I'm exporting from audacity or converting to .wem but I've redone it a couple of times and can't understand what I do wrong. That's why I wanted to make sure the file is moddable before I kept trying.
    3. CuervoROM
      CuervoROM
      • supporter
      • 0 kudos
      Hi.
      I couldn't hear the modified audio intro either, I solved it by pasting the modified audio in all audio channels in audacity, before exporting the Wav, the rest of the steps as in the guide, and following the update 3.
  12. jpvo2003
    jpvo2003
    • member
    • 2 kudos
    hey, can you help me? i tried  the pck process, but when i try to create the "xxxx_4_joined" happen this:

    "Copy-Item : A positional parameter cannot be found that accepts argument '9048638_4_joined.wem'.
    At line:1 char:1
    + copy /b 9048638_2_mod.wem+9048638_3_blank.wem 9048638_4_joined.wem"


    what i can do?

    1. Bl17zKr136
      Bl17zKr136
      • member
      • 31 kudos
      Are you launching the command from the dos command prompt, or from powershell?
      It's better if you do it from the dos prompt.
    2. jpvo2003
      jpvo2003
      • member
      • 2 kudos
      oh, i was opening it with powershell :P
      I did it with CMD and it worked fine, but I'm still having a problem with the song not playing or the other songs being muted. I've tried all the options and none of them worked, modifying the SF6 bgm seems to be impossible😖
    3. Bl17zKr136
      Bl17zKr136
      • member
      • 31 kudos
      Well, it "seems" to be working.
      Someone even followed this guide, and make it work (but I don't know and can't verify since I don't have the game)
      SF6 modding

      Also see the comment below
    4. jpvo2003
      jpvo2003
      • member
      • 2 kudos
      I come back here to thank you, I made some mistakes during the tutorial and I was also selecting the wrong files XD. And an addendum, I think that using WWiseutil-gui gives better results than RingingBloom or FusionTools, it was the only one that managed to help me with the "silence" problem that I was having when replacing the BGM.
      again, thank you very much🙏