My fellow tankers,
We live in dark times. Since time immemorial (the game's v9, in fact), FMOD Designer has been replaced by its cousin, WWise. Ever since, the numerous voice packs that could be found throughout these lands have all but disappeared ; and those most courageous who intended on bringing them back only managed, so far, to do so with limited success and horribly impractical methods. Furthermore, the most important pioneer of these forums, NoblePlatoon, has not come back to make things right.
Therefore, I have decided to take action and put together this wee tutorial, which will help you to make World of Tanks great again.
However, please do note that this will only cover full voicepacks for now, nothing more and nothing less; because I have not really had the time to experiment with everything else. Such is life.
Let's now start with the beginning :
Prerequisites :
- The soundbank-making program mentioned above, WWISE. Available here. Well, not quite, because this link points to the WWISE Launcher, which is necessary to manage and download the various versions of the program. Be careful ! Only one of those versions is compatible with the game, the #2017.2.5 6619. If you take ANY other version, your mod WILL NOT WORK.
- A basic knowledge of the program's inner workings, so as to not be completely lost when reading this, and also knowing how to apply more advanced effects to your mod if the need arises (sequential play, etc.). I therefore recommend this YouTube series that will let you understand the basics.
- A decent audio editing/recording program, which will let you, just like I do, go get the source material in the desired movie / series / etc. As far as I'm concerned, Audacity is the best free program as far as I'm concerned. I'll take that occasion to give you some useful advice if you want your mod to be the best there is :
* Keep a constant sound volume through all your recordings. What does that mean? Simply, that if you're extracting sounds from a movie, you should avoid AT ALL COSTS to change the sound volume. Why that? Because if you do change the volume, some sounds will be louder than others, and your mod will suffer from it. One moment you can't hear anything, the next you'll have to lower the volume because your neighbor heard everything. My method is simple : I let VLC's volume at 100% whenever I'm recording. If the sound is too loud, I'll just turn the knob on my speakers without touching VLC's sound.
* Avoid editing the original file once it's recorded. Either keep it as untouched as you can, or keep the original somewhere in an archive folder, so as to find it easily if there is a problem with the edited version.* Try to record your sounds from the best possible sources. Hearing dialogues that sound like they're coming from the inside of a small bathroom isn't great, so avoid taking your sound from a youtube video that someone recorded with a phone.
* Don't use 20-second sentences, firstly because ain't nobody got time for dat, but also because the game is going to cut it off halfway through anyway. Try to keep a hard limit around 6-8 seconds for all your sounds, except maybe the Start Battle and Vehicle Destroyed sounds.
- Audio files to put in the sound bank (duh), but be careful : no mp3 here. Those aren't compatible with WWISE, you'll have to use WAV files, and only 24 bits at most. 32 bit WAV files aren't compatible with WWISE despite what the website says (I know that because I lost two hours of work because of this crap, so don't make the same mistake).
- An empty mod template, which you'll find right here (link provided by yours truly, which will be updated as soon as I can if there's any change in the structure and such). Because it's practical to not do everything by hand everytime, like most modders apparently did so far.
- The WWISE user licence, which will allow you to remove all the limitations of the free version. It's sitting right beside the template, just click the link above.
- Time and determination, because even with this much easier method, it's kinda tedious the first time you do it.
Methodology
Step 1 : Setting up the audio files
Mods aren't particularly hard to understand, but you can't have ADHD if you want to do anything half decent. And by that I mean that if you want to make, like me, a mod with 600+ audio files, you're going to have to make at least 600 individual copy-pastes in order to avoid losing your sanity after twenty minutes. If you don't, you're going to forget half of your files when using the program.
Therefore, once you've downloaded the mod template, you're going to extract it somewhere on your computer. Rename the folder to whatever suits you (I simply put the movie or series' name, all those being into another folder which is dedicated to modding). Then, get inside and rename the "template.wproj" to something related to the targeted movie/series (otherwise you'll get lost if you make several mods).
Once this is done, the first part of what's tedious comes : you're going to have to sort every single one of your source files according to the soundbank's categorization. Which means that you'll open, inside the mod's folder, the Originals folder, and the SFX subfolder.
Inside the SFX folder, you'll see notifications_dp ; notifications_vo_female ; and notifications_vo_male.
notifications_dp contains all files related to in-game platoon invites (retarded functionality by the way, so I only ever put dialogue that mocks whoever invites the player, because it's always a tomato).
The two other folders are related to all the in-game voices, one for the male commanders, and the other for the female commanders (thank you Captain obvious).
Inside all these folders, you'll find subfolders with a naming structure looking like "vo_something_something". Each of those names designate an in-game event.
In-game events are, simply put, things that happen inside the game, and trigger an audio file whenever they happen. Your job now is basically to tell the program which sounds should be tied to all those triggers. In order to do that, you're going to put your audio files inside the related subfolders. Since you speak english, I won't insult you by explaining what they mean, except for one or two which really aren't self-explanatory.
That being said, I also would like to add that unless you make a mod that has different voices for men and women (in which case you certainly have a lot of source material), you don't have to copy paste your files everywhere. Just keep one of the folders empty, either the male or female one, and you'll do everything with the program. That way your mod will be way lighter.
So here's the list of the weird events :
Inside notifications_dp :
assistance_been_requested : Whenever you get a platoon invite from a random player, in which you should put audio files that mock this guy.
In the two others :
crew_deactivated : The entire crew died at the same time without having the tank destroyed. So either the player drowned, or he drove an ELC and fought a Panzer 1 C with Deadeye.enemy_killed : no idea what this one is for. Currently doesn't play any sound as far as I know. The only one that really works is enemy_killed_by_player, as far as I know. Though, in doubt, I've duplicated the sounds anyway so both events are exactly the same as far as audio files go.
enemy_no_hp_damaged by_projectile_at_attempt_and_chassis_damaged_by_player : Zero damage critical shots, as far as I understood. I don't really use the category anyway, but it's been sort of hard to pinpoint exactly when it's triggered.
enemy_no_hp_damaged by_projectile_at_attempt_and_gun_damaged_by_player : Enemy gun broken, 0 damage crit.
enemy_no_hp_damaged by_projectile_at_no_attempt_and_chassis_damaged_by_player : Not sure what it does since there's "no attempt". How are you supposed to damage the enemy without an attempt?
enemy_no_hp_damaged by_projectile_at_no_attempt_and_gun_damaged_by_player : No idea either.
enemy_no_hp_damaged by_projectile_at_no_attempt_by_player : Still no idea.
surveying_devices_crit_damaged : Same thing as the one below, not sure why it even exists.
surveying_devices_damaged : Self-explanatory.
target_captured : Target locked with right click (nothing to do with the flag capture)
target_lost : target lost because the enemy player disappeared or was killed by someone else.
target_unlocked : You can guess that one.
track_functional : That one too.
track_functional_can_move : Well, one more duplicate, not sure why that one exists either.
Once all your WAV 16/24 bits sound files have all been sorted in the appropriate folders, you've done about half the work. Now let's fire up WWISE and get to part 2 of this tutorial.
Step 2 : Getting to the heart of things
Whenever you open your nice little template with WWISE, you get this :
Of course, even after watching the videos, the first time you see everything, it isn't exactly clear as crystal.
Basically, the screen is divided in 3 parts : on the left, the navigation panels ; in the middle, the actual work panels ; on the right, the sound volume panel so you can feel like a DJ. This display can be modified to work more efficiently if you do something else, but since we're doing modding it's perfectly useless to change anything as far as layouts go.
In order to get to work, you have to go take a look at the various tabs on the upper box in the left part of the screen. Those tabs are as follow : Audio, Events, SoundBanks, Game Syncs, ShareSers, Sessions and Queries.
Only two of those will be of use to us : Audio and SoundBanks.
The Audio tab contains the list of in-game events, and allows users to tie these events to the desired sound files. The SoundBanks tab, on the other side, allows to generate the actual soundbank file once the work is done.
Therefore we'll stay in the Audio tab for now. Inside the Default Work Unit, which you won't touch, several categories can be found : ambient, effects, gui, etc. If the template was more complete, you could also replace all those other sounds and generate the appropriate soundbanks easily, but I haven't had time to properly implement such a thing (at least for music and gui). MAYBE I'll have time to complete them later; for now they're entirely useless, except for the "voice" one, which contains what we want.
Inside that category, you'll see all the events that you've painstakingly learned to know while copy pasting all your audio files.
From then on, it's quite simple : for every single one of those events, there's a subgroup called "male" and another called "female". Once again, pretty self-explanatory. No matter which one you pick, you'll have to select one and right click it, which will offer you the following menu :
You'll select Import Audio Files, the sixth option, and get this window :
Spoiler
The program then asks you to, either : take one or several files in particular, take an entire folder's contents, or take a list of files which is contained in a text file. The one option we'll take is, of course, Add Folders, since you've taken the time to properly sort your audio files already. You'll select the related folder, and get something like this :
Spoiler
That is the list of the WAV files inside the folder, and a bunch of menus allowing you to pick how to and if you want to import them. As far as sound files go, don't touch anything. However, we'll change the status of the folder itself, which is automatically added as a Random Container. Since the "male" and "female" groups already are Random Containers, this is perfectly redundant. You'll therefore prevent it from being imported, by selecting the "No object" option in the related menu.
Once this is done, that's the result :
You can now see that all my files appear in the group I selected. If you click on the group and press Space, you'll hear all those sounds played randomly, just as they would in-game.
Now, unless you have two different sets of voices, you have to ensure that those voices will be played no matter the commander's favourite kind of underpants. You'll therefore select all the files in that category with a left click on the very first one, followed by a CTRL+SHIFT+click on the very last one in the list. Once this is done, you can either right click and copy or press CTRL+C.
Then, click on the other group (in my case, "male", and paste all that, either with a right click => Paste, or with CTRL+V.
The two lists now should be entirely identical.
If you did this correctly, congratulations, the only thing left is to do it again 54 times.
NOTE: Just as you've seen, it's entirely unnecessary to have the same actual audio file copied in two or more folders in order for this to work. Therefore, it is best to copy/paste inside the program whenever you want to use a single file inside several events, so as to limit your sound bank's size.
Step 3 : Small touchups with WWISE
For those who wish to lightly modify the audio files once they've been tied to the related event, it can be done quite easily. First, you have to select the desired file in the navigation panel.
You'll get a menu like this :
Inside the yellow circle, you can see the audio file's name, with a small logo on the left. Double-click on that logo and you'll get an editing window that lets you modify the way in which WWISE plays the file. On the upper part, you can manage transitions (fade in and fade out) with the blue triangles ; on the lower part you can cut the parts you don't want at the beginning or the end. All that, without modifying the source file, or the other events that use the same file.
Which means that if you do that after having copy pasted everything between the male and female folders, you'll have to delete the original and copy-paste the one you fixed in its place.
Step 4 :Volume management
Most of the time you won't record sounds that would wake up the residents of your local cemetery. The consequence of this is that in WoT, you most probably won't hear anything with standard volume settings, and you'll just think that this whole tutorial is a bunch of hogwash. For some reason that I cannot hope to ever understand, voices in World of Tanks are played at a hilariously low volume. Therefore, it is mandatory to boost the volume to an acceptable level, WITH WWISE ONLY. Because if you choose to modify the original sound files, you won't make it halfway through to the required volume before transforming your audio files into something that could very well have been recorded with a dirty phonograph.
To change the volume at which sounds are played, it's actually quite easy. WWISE allows you to manage the sound volume on a case by case basis, but also with entire categories. Therefore you'll simply have to select the "voice" group on the left, and look at the "Output Bus" in the middle of the screen. Inside of it, three boxes, one of which is Volume. Just write "15" in it, press Enter and it'll be done, your voices will actually be heard by the mod's users.
Step 5 : Generating the sound bank
Now that all the editing work is done, all that's left is to compile everything and put it in the required folder.
To generate the sound bank, head to the SoundBank tab, and click on the "voiceover" soundbank. Right click, and "Generate soundbank for current platform". Your copmputer will take a few seconds (or years of you're one of those guys with a coal-powered PC), and the work will finally be done.
All that will be left is to go get the file (voiceover.bnk), in the mod's folder first, then the GeneratedSoundBanks folder, then the Windows folder.
Take your voiceover.bnk file, put it in the World of Tanks\res_mods\[version]\audioww folder, and everything should work.
In order to test it without losing any more time, I'd advise you head to the replays folder. It boots up faster.
This is the end of this tutorial. If there's any question, i'm all ears.
Have fun !
Edited by Kyphros, 31 August 2018 - 08:20 PM.