Modding Sound in Dota2

Discussion in 'DotA Chat' started by ZwelchX, Jan 24, 2012.

  1. ZwelchX

    ZwelchX Well-Known Member

    Is it possible to change the soundfiles of the announcer in Dota 2 and replace them with a different soundfile??

    if yes can anyone tell me how please.
  2. StraY_WolF

    StraY_WolF Well-Known Member

    I think you can, just like how they did with half life 2.
  3. Noxonius

    Noxonius Banned

    That should be possible, but I think that the sound files aren't in a regular form like wav. or mp3, so don't count on those...
  4. Jouten_X

    Jouten_X Well-Known Member

    The sound files are .wav like usual. The issue is that unlike other Source games, Dota2 ignores certain custom files. Or at least, it sure ignored my alternate AM texture I did.
  5. Deadstarrr

    Deadstarrr Member

    I wonder if they will keep the current announcer. Sounds a little strange.
  6. Jouten_X

    Jouten_X Well-Known Member

    She's stoic, but that's a big difference from TF2's which sounds more enthusiastic than Dota casters at times.
  7. ZwelchX

    ZwelchX Well-Known Member

    So can anyone tell me where exactly i can find the soundfiles in my dota folder im unable to do so ^^
  8. seru39

    seru39 Member

    The sound files can be found by using a .vpk viewing and extracting program like GCFscape ( on the following file:

    \steam\steamapps\common\dota 2 beta\dota\pak01_dir.vpk

    Note that it is not really a good idea to change .vpk file itself for various reasons, some of which I don't really know the details myself. To change the announcer (or any other) sounds, what you should ideally do is go into this folder:

    \steam\steamapps\common\dota 2 beta\dota\scripts

    Most, if not all of the .txt files used by dota 2 as pointers to the correct sound to play can be found here. The following directory contains all voiceover (vo) pointers, including the hero voices and the announcer voices:

    \steam\steamapps\common\dota 2 beta\dota\scripts\voscripts

    The announcer voice pointers are contained in the .txt files named game_sounds_vo_announcer.txt and game_sounds_vo_announcer_phonemes.txt. What you need to do now is, assuming you already have available the sound you want to play, to change the directory contained in the .txt files to the place where you have put your custom sound file. So, for example, if I were to place the sound custom.wav into the folder \steam\steamapps\common\dota 2 beta\dota\sound\custom, your text line containing the directory information in the .txt files should look like one of the following:

    "wave" "custom\custom.mp3"
    "wave" "*custom\custom.mp3"
    "wave" ")custom\custom.mp3"

    Note the presence or absence of a special character * or ) before the directory information, which varies across the .txt files. I admit I don't know what its purpose is for, so it's best to keep it there if it's already present in the .txt file. If you don't know what a sound that's listed in the .txt file is for, just open the .vpk file using GCFscape (or another program) and go into the directory as mentioned in the .txt file, then listen to the sound file.

    Note that you can also change the hero skill sounds (juggernaut's spin sound, for example, is lacking at best in dota 2 in my opinion). The .txt files can be found in:

    \steam\steamapps\common\dota 2 beta\dota\scripts\game_sounds_heroes

    You also need to make sure that your custom sound files match the format, bit rate, sampling frequency, and whether it is a mono or stereo sound, of the original sound found in the pak01_dir.vpk. Otherwise, your sound will not load in game and you'll be hearing silence whenever that sound is supposed to play.

    The format can be easily checked through the file extension (.wav or .mp3).

    To check the bitrate, go into the file properties and under the details tab match the Audio: Bit rate to the original sound file.

    To match the sampling frequency, you need a specialised audio program like Audacity ( Audacity will also allow you to convert one file format to another, and also tell you whether your sounds are mono or stereo.


    Once you've placed the custom sounds in the folders and edited the .txt script files, you must turn on the console in dota 2 (right click dota 2 in your games library in steam, go into properties, and in set launch options type -console) then use the snd_updateaudiocache command in the console. This needs to be done every time you've changed the script files and/or have placed new sounds.

    It is also a good idea to backup a copy of the .txt scripts you've edited, along with the custom sound files, in case you ever need to verify the integrity of your dota 2 data. You also cannot open dota 2 while GCFscape is browsing a .vpk file, as it causes steam to think your data is corrupt. If this is done by accident simply close dota 2 and GCFscape, then relaunch dota 2.


    Recheck the directory you've placed your custom sound in and check that it matches your .txt script files. Also check the name of your sound files.

    A general guideline is that if dota 2 expects a mono sound when you've fed in a stereo sound, the sound will not play, although the reverse will work (feeding in a mono sound when dota 2 expects a stereo sound generally functions OK). If you fed in the wrong audio format (.mp3 instead of .wav, for example), the sound will not play. If your bit rate and/or sampling frequency is higher than the original file in the pak01_dir.vpk, then the sound will not play (having the bit rate and/or sampling frequency lower than the original file generally works OK).

    Make sure you've updated the audio cache (snd_updateaudiocache in the console).

    Sorry for the long post, and I hope this helps!
  9. SpellBindeR

    SpellBindeR Banned

    Not bad for a first post. It can help OP certainly.
  10. sib0

    sib0 Well-Known Member

    seru39 dude im kinda confused about Textures you mentioned ...
    Please help me by explaining this in steps ... :S
  11. seru39

    seru39 Member

    Hi, I didn't mention any textures. Can you please clarify what you want to be done?
  12. ram231

    ram231 Well-Known Member

    its already done :|
  13. _soul_inferno_

    _soul_inferno_ New Member

    Hello Seru39,

    im very interested in making my own sounds to work with dota 2 and i followed your guide carefully. Now it will not play the custom sounds but the console says "Updated XX files" if i press "snd_updateaudiocache 1". It chooses instead the files of the .vpk archive to play.

    If i remove those "sound*.vpk" files from the directory then the sound plays correctly but if i keep them there they won't play :-(

    Do you maybe can assist me to figure out whats the problem? ...would be awesome :)

    ...If i check the console after the game has started it also states that "VScript is disabled." <- Maybe thats the problem?

    By the way your guide should really be sticky! It's the only post in the internet i found out about changing sound files with a save method.

    best regards

    soul inferno
  14. Wladxq

    Wladxq New Member

    i prepared the files and all that post said but how to replace them in the vpK? anyone? :unsure:
  15. seru39

    seru39 Member


    That guide I wrote is outdated and probably won't work anymore, as Valve changed the file structure of Dota 2. You need to change the .vpk files directly, and as long as you only modify the sound and script files referencing the sound, there should be no problems. I figured out how to do this a while back, pm me if you're interested.

    Otherwise, follow this excellent guide.
  16. DoomReigns

    DoomReigns New Member

    Hi, I've tried to send you a PM but it says I cannot :mellow:
    Whenever I try to open the vpk files via GCFScope in order to mod some stuff I receive "invalid characters in path" error or smth like that. My buddy is having the same issue.
    Anyway, thought you know how to get this shizzle to work.
    Any help would be appreciated.

  17. zonic_fs

    zonic_fs Active Member

    how is chenge music main menu dota 2 ???!!!