Skip to main content

Mod Using WWise

Modding via WWise is more involved than the Overlay method but comes without the limitations. You can replace any sound event and also add custom music to your mod.

info

There are two WWise projects for the game. They can be found in your DOOM Eternal: idStudio install at

  • πŸ“\DOOMEternal\idStudio\wwise_converts_project.zip
  • πŸ“\DOOMEternal\idStudio\wwise_mods_music_project.zip

Converts WWise Project​

The Converts project was released to help modders convert wavs to wems correctly. It is intended to be used for everything but music.

β”œβ”€β”€ πŸ“ Converts
β”‚ β”œβ”€β”€ πŸ“ Actor-Mixer-Hierarchy
β”‚ β”œβ”€β”€ πŸ“ Attenuations
β”‚ β”œβ”€β”€ πŸ“ Audio Devices
β”‚ β”œβ”€β”€ πŸ“ Control Surface Sessions
β”‚ β”œβ”€β”€ πŸ“ Conversion Settings
β”‚ β”œβ”€β”€ πŸ“ Dynamic Dialogue
β”‚ β”œβ”€β”€ πŸ“ Effects
β”‚ β”œβ”€β”€ πŸ“ Events
β”‚ β”œβ”€β”€ πŸ“ Game Parameters
β”‚ β”œβ”€β”€ πŸ“ GeneratedSoundBanks
β”‚ β”œβ”€β”€ πŸ“ Interactive Music Hierarchy
β”‚ β”œβ”€β”€ πŸ“ Master-Mixer Hierarchy
β”‚ β”œβ”€β”€ πŸ“ Metadata
β”‚ β”œβ”€β”€ πŸ“ Mixing Sessions
β”‚ β”œβ”€β”€ πŸ“ Modulators
β”‚ β”œβ”€β”€ πŸ“ Originals
β”‚ β”œβ”€β”€ πŸ“ Presets
β”‚ β”œβ”€β”€ πŸ“ Queries
β”‚ β”œβ”€β”€ πŸ“ SoundBanks
β”‚ β”œβ”€β”€ πŸ“ Soundcaster Sessions
β”‚ β”œβ”€β”€ πŸ“ States
β”‚ β”œβ”€β”€ πŸ“ Switches
β”‚ β”œβ”€β”€ πŸ“ Triggers
β”‚ β”œβ”€β”€ πŸ“ Virtual Acoustics
β”‚ β”œβ”€β”€ converts.wproj

Music_Mods WWise Project​

The Music_Mods project was released to help modders with the conversion of music tracks from wav to wem.

β”œβ”€β”€ πŸ“ Wwise Music Mod
β”‚ β”œβ”€β”€ πŸ“ ModsWwise
β”‚ β”‚ β”œβ”€β”€ πŸ“ Actor-Mixer-Hierarchy
β”‚ β”‚ β”œβ”€β”€ πŸ“ Attenuations
β”‚ β”‚ β”œβ”€β”€ πŸ“ Audio Devices
β”‚ β”‚ β”œβ”€β”€ πŸ“ Control Surface Sessions
β”‚ β”‚ β”œβ”€β”€ πŸ“ Conversion Settings
β”‚ β”‚ β”œβ”€β”€ πŸ“ Dynamic Dialogue
β”‚ β”‚ β”œβ”€β”€ πŸ“ Effects
β”‚ β”‚ β”œβ”€β”€ πŸ“ Events
β”‚ β”‚ β”œβ”€β”€ πŸ“ Game Parameters
β”‚ β”‚ β”œβ”€β”€ πŸ“ GeneratedSoundBanks
β”‚ β”‚ β”œβ”€β”€ πŸ“ Interactive Music Hierarchy
β”‚ β”‚ β”œβ”€β”€ πŸ“ Master-Mixer Hierarchy
β”‚ β”‚ β”œβ”€β”€ πŸ“ Metadata
β”‚ β”‚ β”œβ”€β”€ πŸ“ Mixing Sessions
β”‚ β”‚ β”œβ”€β”€ πŸ“ Modulators
β”‚ β”‚ β”œβ”€β”€ πŸ“ Originals
β”‚ β”‚ β”œβ”€β”€ πŸ“ Package Projects
β”‚ β”‚ β”œβ”€β”€ πŸ“ Presets
β”‚ β”‚ β”œβ”€β”€ πŸ“ Queries
β”‚ β”‚ β”œβ”€β”€ πŸ“ Scripts
β”‚ β”‚ β”œβ”€β”€ πŸ“ SoundBanks
β”‚ β”‚ β”œβ”€β”€ πŸ“ Soundcaster Sessions
β”‚ β”‚ β”œβ”€β”€ πŸ“ States
β”‚ β”‚ β”œβ”€β”€ πŸ“ Switches
β”‚ β”‚ β”œβ”€β”€ πŸ“ Triggers
β”‚ β”‚ β”œβ”€β”€ πŸ“ Virtual Acoustics
β”‚ β”‚ β”œβ”€β”€ music_mods.wproj
β”‚ β”œβ”€β”€ πŸ“ ModWavs
β”‚ β”‚ │── πŸ“ ambience
β”‚ β”‚ β”‚ │── ambience*.wav
β”‚ β”‚ │── πŸ“ fodder
β”‚ β”‚ β”‚ │── fodder*.wav
β”‚ β”‚ │── πŸ“ generic
β”‚ β”‚ β”‚ │── generic*.wav
β”‚ β”‚ │── πŸ“ weapons
β”‚ β”‚ β”‚ │── mod*.wav
β”‚ β”‚ │── test.wsources
β”‚ β”œβ”€β”€ πŸ“ soundbanks
β”‚ β”‚ │── πŸ“ pc
β”‚ β”‚ β”‚ │── mods.pck
β”‚ β”‚ β”‚ │── music_mods.pck
β”‚ β”‚ │── SoundbanksInfo.xml
β”‚ β”œβ”€β”€ converts.wproj

Prerequisites​


Several external tools are needed to create the right environment for making modified audio.

EternalAudioExtractor​

This is a community developed tool which will let you extract audio from the vanilla game's soundbanks. The Extractor relies on revorb and ww2ogg. You can download each component separately or as a combined package. If you download them separately you'll need to place revorb.exe and ww2ogg.ese into a πŸ“\utils directory next to EternalAudioExtractor.exe.

info

The links for these tools can be found here.

Digital Audio Workstation DAW​

You will need a DAW to work on the audio files themselves. We recommend using Audacity but you're welcome to use any DAW you like.

WWise​

We have provided a WWise project for the game. In order to add or change audio in your mod you'll need to download WWise itself.

Initial Setup​


To prepare for modifying audio for a given mod you are working on here are the setup steps.

  1. Extract the EternalAudioExtractor somewhere on your computer.
    • Create a πŸ“\utils folder next to EternalAudioExtractor.exe.
    • Put revorb.exe and ww2ogg in the utils folder.
  2. Create a πŸ“\converts folder next to EternalAudioExtractor.exe.
  3. Get and extract the game's WWise project to the converts folder.
  4. Inside the converts folder create the following folders
    • πŸ“\Originals\Exports\output
    • πŸ“\Originals\Exports\wavs
  5. Create or open a mod in idStudio
    • Locate the mod folder on your drive
  6. Open the soundbankinfo.xml in your mod folder
    • Example location πŸ“C:\Users\<username>\Documents\id Software\idStudio\<mod-folder>\base\sound\soundbanks\soundbanksinfo.xml

The xml file is a manifest of all the sound files used in the game. We'll need certain information from this file in order to modify wems later.

Using EternalAudioExtractor​


Locating Sounds​

You'll need to locate where the sound files you want to work with are located. They can be in a number of different banks. The soundbanksinfo.xml file will tell you which.

  • VO (Voice Overs) will have an entry in each localized language pck and snd files.
  • SFX (Sound FX) will be in the sfx pck and snd files.
    • Mod SFX are already loose wem files so the extract is not needed.
  • Music tracks are located in the music pck and snd files.
  • Mod music tracks are located in the music_mod pck and snd files.

Extracting Sounds​

Next you will run the extractor. After you run the extractor successfully you should see several ogg files in your output directory.

Format:

EternalAudioExtractor.exe <filepath>\soundbank.snd <filepath to soundmetadata.bin> <output path> -c -u

Example:

EternalAudioExtractor.exe "C:Users\username\Documents\id Software\idStudio\modfolder\base\sound\soundbanks\pc\music_mod.snd" "C:Users\username\Documents\id Software\idStudio\modfolder\base\sound\soundbanks\pc" .\converts\Originals\Exports\output -c -u

Replacing Audio​


Next you will need to replace the contents of the audio file you wish to modify.

  1. Open the ogg file in your DAW of choice.
    • The ogg file will either be labeled with the sound id or filename from the soundbanksinfo.xml
  2. Modify the contents of the ogg with your own.
  3. Export the file to 48000Hz 32 float wav.
    • Make sure you export it to πŸ“Originals\Exports\wavs
  4. Note the path from soundbanksinfo.xml. We will need this info when importing into WWise.

Converting Wav to Wem​


Now we need to convert the wavs to wem files.

  1. Open the provided project file in WWise.
  2. Locate the exported wav file in πŸ“Originals\Exports\wavs folder.
  3. Drag and drop the wav file onto the Actor Mixer Hierarchy default work unit.
  4. An import dialog will appear.
    • The import path should match the path in soundbanksinfo.xml
    • The filename should also match the short name in soundbanksinfo.xml
  5. Import
    • You should now see a sound in the Actor Mixer Hierarchy with the correct name and source file path.
    • For music ensure that you set the conversion settings to vorbis.
    • For sfx ensure that you set the conversion settings to wav.
  6. Convert
    • Option one, right click the sound in the Actor Mixer Hierarchy and click convert. Best for single sounds.
    • Option two, use the file menu to convert all audio. Best for batch conversion.
  7. Copy
    • Locate your new wem file in your converts.cache folder. It should have the name you specified with a hash appended on the end.
    • Copy the wem file to your mod's sound\soundbanks\pc folder.
    • Rename the file to <fileid>.wem where fileid matches the id in soundbanksinfo.xml

Testing in idStudio​


You can now load your mod and test to see if the sound is working properly.

  1. Load idStudio with your selected mod.
  2. If you are using the sound inside a map make sure the map is built and ready to play.
  3. Switch to the engine tab and load your map. ( any map if the sound is generic )
  4. Make sure you can hear the sound or music given the proper events.
    • If you are testing music make sure the correct switch and states are tested.

Packaging Audio​


Once you are satisfied with how your mod sounds you can package it up.

  1. Open the Mod Packer.
  2. Ensure that advanced / unmodified file filters are enabled.
  3. Follow the standard packaging steps as outlined in Mod Packer
  4. Test your mod in Sandbox.

Modding Music with WWise​


To modify music sounds you will need to use the Wwise Music_Mods project.

  1. Open the project in Wwise.
  2. Modify the mod1, mod2, ... mod(n) structure with your music tracks.
    • Test the game state changes to verify your track plays correctly.
  3. In πŸ“ModsWwise\Scripts open a command prompt and run the build.bat file.
  4. In the Music_Mods project locate mod_music.pck in the πŸ“soundbanks\pc folder.
  5. Copy mod_music.pck to your mod's folder
    • πŸ“C:\Users\<username>\Documents\id Software\idStudio\<mod-folder>\base\sound\soundbanks\pc
  6. Modify your map to trigger the music and states you want.
  7. To package music follow the same steps for packaging other sounds.