Wavebank Custom Wave Bank Creation and Installation - 1.3.4.X, beyond

Custom wave banks (wavebanks? I prefer compounding it) are the method by which you can completely create a custom soundtrack for Terraria. As versions go on and new tracks get added, the only part of the process that changes is the tracklist.


~~~~~~~~~~~~~~~~~~~~~


The process for creating a wavebank goes something like this:

  1. Download and install Microsoft Visual Studio: https://www.visualstudio.com/downloads/
    • Opt for Visual Studio Community. While the program you're going to get next specifies VS 2010, later versions of Visual Studio should be backwards compatible.
  2. Download and install Microsoft XNA Game Studio: https://www.microsoft.com/en-gb/download/details.aspx?id=23714
    • Bundled with XNA is XACT, the program you'll use to create a wavebank.
  3. Make sure you have whatever you're going to use for editing audio files.
  4. With applications in hand, first ensure that you can run XACT - this is the program bundled inside XNA. The application's full name is "Microsoft Cross-Platform Audio Creation Tool", and whatever number's tacked on the end doesn't matter. As long as it's at least 3, I think.

  5. Consult this tracklist. The current tracklist as of 1.3.4 goes:
    • 1: Night
      2: Eerie (Meteor, Blood Moon)
      3: Overworld Day
      4: Boss 1 (King Slime, Eye of Cthulhu, Eater of Worlds, Skeletron // Skeletron Prime, Duke Fishron)
      5: Title Screen
      6: Jungle
      7: Corruption
      8: Hallow
      9: Underground Corruption
      10: Underground Hallow
      11: Boss 2 (Wall of Flesh // The Twins)
      12: Underground
      13: Boss 3 (Brain of Cthulhu // The Destroyer, Frost Legion)
      14: Snow
      15: Space
      16: Crimson
      17: Boss 4 (Golem)
      18: Overworld Day [alternate]
      19: Rain
      20: Ice
      21: Desert
      22: Ocean
      23: Dungeon
      24: Plantera
      25: Boss 5 (Queen Bee)
      26: Temple
      27: Solar Eclipse
      28: [rain SFX]
      29: Mushroom
      30: Pumpkin Moon
      31: Underground [alternate]
      32: Frost Moon
      33: Underground Crimson
      34: Lunar Event
      35: Pirate Invasion
      36: Hell
      37: Martian Madness
      38: Final Boss (Moon Lord)
      39: Goblin Event
      40: Sandstorm
      41: Old One's Army
    • This order is absolutely crucial, because wavebanks store tracks by the order they were put in, and Terraria plays the music corresponding with that. This is why the tracklist is so erratic; it's the actual order the game uses.
    • 19 is the song played during rain. 28 is the sound effect of rain played over it, and unless you're replacing what rain sounds like, just opt for some rain loop from http://www.freesound.org/ or something.
    • This is the only part of the procedure that might get updated from version to version, because new tracks can get added. Everything else should stay the same.
  6. Consulted? Good! You're gonna want to keep referring back to that.
    Get all your new tracks in order (no, you can't selectively replace; this wavebank needs to contain everything). Tips on doing this:
    • Make sure they're exported as WAVs.
    • If you're going for looping, then edit them so that they loop. Audacity lets you select with pinpoint precision by zooming far in, and you can always test the loop by copying and pasting the segment you want, and seeing what the transition is like.
    • I recommend storing your 41 tracks, exported as WAVs, in a folder. The files ought to be numbered, because this makes a next step very convenient.
  7. Open up XACT. Your interface probably looks something like this.
    - Go to File -> New Project (or just hit Ctrl+N), and create your new project in the folder you want. (Name the project whatever you want.) Now it should look like this.
    - Right click on Compression Presets (second-to-last item in the screenshots), and hit New Compression Preset. When that's popped up, change the Windows compression format to xWMA. Leave it on quality 60. Now it should look like this.
    - Right click on Wave Banks, and hit New Wave Bank. Now it should look like this.
    - Here's the careful part. Select all your tracks in the folder (once again, they should all be WAVs), then drag by the first track into the Wave Bank mini-window in XACT. Done right, now it should look like this. Done wrong (you didn't drag by the first track), it'll import them from where you dragged, and then from 1 upwards, like this.
    - In the bottom-left panel, open the Compression Preset dropdown, and select your compression preset. Now it should look like this.
    - Go to File -> Build (or just hit F7). This might show up. Just hit Finish, and wait for your wavebank to build. Now...

  8. You should be done! Navigate to the folder you saved the project in. You should have a Win folder, an Xbox folder, and a [project name].xap file.
    Go into your Win folder. You should have a [project name].xgs file (which you should ignore), and Wave Bank.xwb, your shiny new custom soundtrack.
~~~~~~~~~~~~~~~~~~~~~


The process for installing a wavebank goes something like this:

  1. Go into Steam's Terraria folder. You can go about this one of two ways:
    • Manually navigate to it (Steam\SteamApps\common\Terraria).
    • Right-click on Terraria in your Steam library, hit Properties, choose the Local Files tab, and hit Browse Local Files.
  2. From there, enter the Content folder. You should have a Fonts folder, Images folder, Sounds folder, and a bunch of files. One of those should be Wave Bank.xwb - given you've never replaced it before in this version, this is the game's vanilla wavebank, and it's what you want to replace with the custom wavebank.

  3. Back that wavebank up; renaming it will do. (My own backups have gotten a little out of hand over time, but better safe than sorry.)

  4. Paste in your new, custom wavebank. If you're installing what you made from the creation process, that's the Wave Bank.xwb inside your Win folder.

  5. Rename it to Wave Bank.xwb, if it isn't already called that.

  6. Open up your game, and if done correctly, your title screen should kick in with your custom soundtrack!

~~~~~~~~~~~~~~~~~~~~~


A possible query you might have:
  • All my sound is broken! If I go to the Settings menu and try to bring the Music slider up, it works for a moment and then resets itself again.
    • Your wavebank is inappropriate in some way - most likely, it's missing some files. Make sure the wavebank you're using is up to date and correct.

~~~~~~~~~~~~~~~~~~~~~


That should be everything! If you have any questions about this process, feel free to ask below. Credit to this wavebank and its author for clarifying the 1.3.4 tracklist.

(And hey, if you're looking for something new, I maintain the Lapfox Trax Music Mod.)
 
Last edited:
Great guide! Couple things you may want to add:

The program has to be XNA 4.0. I helped someone recently who had 3.0 and was having issues on loading the game until they updated the software to build the wavebank.

Microsoft XNA and specifically XACT can be installed without VS 2010 (http://www.gamefromscratch.com/post...ols-Like-XACT-without-Visual-Studio-2010.aspx).

Macs and Linux require the ADPCM compression else the audio will crash (volume continually set 0). However, you can't build them at the same time. More info here (http://forums.terraria.org/index.php?threads/tutorial-make-your-wavebanks-work-for-mac-linux.45592/)
 
I tried the gamesfromscratch method and I'm getting a missing dll error on windows 10 x64 when running xnags_shared.msi.

edit solved by running as admin
 
Last edited:
We may have a problem.png

[doublepost=1481792250,1481792182][/doublepost]So now what?
 
Also, remember to mention that renaming the wavebank file Wave Bank after it's been built won't work. You must build it with the wavebank being named Wave Bank to begin with.
 
Could someone help me with this? In the 1.3.3 update i tried this but it took me hours to get the visual studio program alone because it kept saying i didnt have the requirements. And even more hours to try to export everything. so instead of trying to reinstall all of that, can someone do it for me? It would be GREATLY appreciated.

Here's a zip file with each wav file (of mostly pokemon songs) numbered accordingly to the song list so you would just have to run it through game studio. Thanks so much in advance!!! https://www.dropbox.com/s/k1a16muwvs5dw0j/Wave Bank.rar?dl=0 ~:D
 
Thank you for this! I've been trying to make my own wavebank for a while but with the game updates I lost motivation. I also had a problem with my WAVs being too small to compress :nursewhat: so I had to get them from a different source.
 
Apparently, XNA is not supported on Windows 10. Does that make modding this impossible?

It is not supported; but when you install "games for windows live" it will be working fine. converting images and sounds to xnb without problems for a year now!
 
This post has been scratched up by some idiot's claws.. oh wait that's me. :dryadtongue:

No Doubleposting Edit: it's a point to know that the resulting tracks to be added to the wavebank via XACT must be 16-bit and no higher than 44 kHz (44100), otherwise XACT will complain that it couldn't apply xWMA compression to the audio.

Track designation is written in Notepad with each track assigned a number according to the Official Terraria Wavebank designation, e.g. 02 is "Eerie". This makes enumeration after step 2 much easier.

How I went about keeping track of all 41 tunes in linear order:
  1. Make a playlist in foobar2000, load it up with your tracks in various formats, if your tracks are in various directories (can pull from album view).
  2. Select all the tracks in the list and pull them to an open explorer window set to an empty directory (example: d:/pull), this spits all the files to the directory
  3. Rename all tracks to the spot in the music list they're in, with zero-padding (track 1 is "01", ... track 14 is "14", etc.)
  4. Important: make a new playlist call it whatever, select all files from that explorer window and pull them into the empty playlist, to populate it
  5. Provided you installed foobar2000 with encoding support...
    1. Select all, right-click, go "Convert > ..." to open convert dialog.
    2. Go to "Output Format", select WAV, and set "Output bit depth" to 16-bit.
    3. Leave dither alone or set to Never, if it's not Never.
    4. Go to "Destination", select "Source Track Folder" (or a set folder under "Specify Folder"), and select "Convert each track to an individual file:" and Name Format is "%filename%".
    5. Processing: either leave alone or select "Downmix to mono" from the right and hit the left arrow.
    6. Leave "other" alone.
    7. Hit "Convert" and it'll convert your chosen tracks to .WAV in the folder you pulled your tracks into, or the folder you specified.
  6. After you pull files from that folder to XACT, take note ones that it didn't compress. Use Audacity to import, then under "Project bitrate" in the lower-left of Audacity set "44100" if it isn't, then hit Export, and make sure it is saved as "Signed 16-bit waveform (WAV)". OK/Close dialogue after. Do this for all files that XACT complains about.
  7. Delete everything from the XACT wavebank and re-drag the files, re-compress, if there's no errors XACT is happy, and you can continue with Build as listed above.
One thing that must be done: if you did get the stock Terraria rain sound, make sure it is listed as "28.wav", and your desired listing goes from "... 26, 27, 29, 30 ..." Make sure when you pull your enumerated tracklisting into the new playlist that you remove the entry for 28 if it's already ".wav", but if you have a looping rain track other than stock Terraria, even if it is .wav*, make sure it's included and enumerated as "28".

(*You can exclude it, name it "28.wav" and use Audacity to ensure it's saved as 44100 and 16-bit signed (WAV) as per Step 6, so XACT won't complain.)

Hopefully I just saved someone's table. :dryadwink:

Foobar2000 is a free audio media player for Windows.
 
Last edited:
I can't make sense of it. Is there another way or a better explanation on how to do it?
Which part are you having trouble with? If it's opening command prompt you can do that by opening up the folder where you saved the XNA setup file, click on the "File" tab, and then click open command prompt. You will need to open it with admin privileges, so choose the option on the dropdown before clicking "open command prompt"
 
I figured out how to do it.

  • First go to a Command Prompt. (If you don't know how to do that, just type in cmd in the start menu search, and press enter.)
  • Once you're in the command prompt, type: cd\
  • Then press enter and and type in: cd
  • Next, make a space, and then type in the location of the XNA installer. If it's in your downloads folder, type in: users\yourname\downloads
  • After you've done that, press enter, and type in xnags40_setup.exe /x
  • Now, a window should pop up saying that XNA would like to make changes. Say yes.
  • Now it should say "Choose directory for extracted files." Choose a location, then click "Okay."
  • Go to where you chose to extract the files. There should now be a bunch of new files. Find "redists.msi" and run it. Then, go to your Program Files folder (or Program Files (x86) if you have 64 bit Windows). There should be a folder there called "Microsoft XNA." Open it.
  • Inside it, should be a folder called "XNA Game Studio." Inside that should be a folder called "v4.0"
  • Inside that, there should be a few different folders. One of them should be named "setup." Open that folder. Inside, there should be a few different files. Run "xnags_shared.msi" and "xnags_platform_tools.msi."
After that, there should be a bunch of new programs installed. One of them is called "Microsoft Cross-platform Audio Creation Tool. This is XACT. Now you can make the Wavebank.

Thanks for this. I'll save the comment on notepad.
 
Uhh..
I tried doing the wavebank thing but the program says all but one file is not in the right format, but the one that works has a pcm format, and so do all the rest.
What's going on??
EDIT:Figured out.
EDIT AGAIN: Wait.. I'm having the "query" and...Make sure my wavebank is upto date? How would i do that? i have no experience with XACT.
EDIT FOR THE THIRD FREAKING TIME: Wait, that was a stupid question..
 
Last edited:
(I don't think this is doubleposting, since i'm uploading it the next day but)
Please note that i run windows 10, and that my wavebank works fine with tmodloader, but the sounds don't work.
 
Back
Top Bottom