• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Important game sound setting modification.

Status
Not open for further replies.
Level 1
Joined
Nov 29, 2013
Messages
2
Hi, so I know it might not have something to do with map editing (please let me know if I should post this in another category) but im sure theres a lot of very knowledgeable people here about the game.

So I play Warcraft 3 TFT Solo Ladder, and I cant play with music on and unit sound response on so I disable both in the sound setting. I would like to know if it would be possible to modify the Unit response setting in Option in a way that it will work ONLY when clicling on building (normaly there is a unit response sound for both your units and building).

Now I understand you guys might be wondering why would I want that and that it doesnt seem really important, but I sworn that it is really really important for me.

I have a good knowledge with computer in general, so I have no problem at all navigating the warcraft folder, installing any kind of software or editing the registry.

I play a lot of warcraft 3 solo games with the elf race and I really enjoy the sound when clicking on the building, it relax me, but at the same time I cant stand hearing unit response every secondes.

Im sure there's a way I can edit that setting in a way or another.

Any help is very appreciate, Thanks a lot guys
 
There isn't really an "easy" way about it. But it is possible with some work.

The first step is to enable local files. With regedit, you can do this manually by changing the registry like so:
Code:
REGEDIT4

[HKEY_CURRENT_USER\Software\Blizzard Entertainment\Warcraft III]
"Allow Local Files"=dword:00000001
Using any registry editor. The key part to change is after "Allow Local Files"=, the dword:00000001. 0 = disabled, 1 = enabled.
Alternatively, you can just download Jass NewGen Pack here:
http://blizzardmodding.info/4263/the-jass-newgen-pack-jngp-2-0/
Make sure your antivirus is disabled. Just go to Extensions -> Enable Local Files, make sure it is checked.

You can overwrite the MPQ files by setting up the folders similar to the Warcraft III MPQ. Let's say you want to replace Units/Human/FootmanWhat1.wav, you would just go to your Warcraft III folder (in my case, it is C:/Program Files/Warcraft III) and then you would make a "Units" folder, and then a "Human" folder within it, and then a "Footman" folder within that. Then you would add whatever wav you want to replace it with. When Warcraft III starts, it'll use that file instead.

So how do we abuse this to help you out? You can overwrite the unit sound files with a blank wav, and then the sounds won't play! To do this:
  • Make a folder hierarchy for the unit you want to clear the sounds for. This should match the ones in the MPQ. You can easily look at what folders you need to make by opening the editor, and going to the sound editor. For example, if I want to remove the footman "What" noises, I would use Units/Human/Footman/.
  • Make the folder hierarchy. In the example above with the footman, I would make a Units folder, and inside it I'd make a Human, and inside that I'd make a Footman folder.
  • Right click anywhere in the folder, and select "Make a new text document". Rename it to the file you want to replace, and change the .txt extension to .wav. For example, I'd make one for FootmanWhat1.wav. Then you can copy and paste it for the rest, and just rename it (FootmanWhat2.wav, FootmanWhat3.wav, FootmanWhat4.wav). Then you're done. When you test it in game, the footman won't make the "what" noises. He'll still make all the other noises, such as when you click him several times or order him to move. You can replace those too. I only replaced the "what" noises for this little demonstration.

This is why local files are so neat. If you, for whatever reason, mess up or want to revert the changes, just close Wc3, rename the "Units" folder to something else (so that it won't overwrite the files in the MPQ), and then all the changes are reverted! It is a bit tedious to do for ALL sounds, but if you are up for it, nothing is stopping you. It just takes a lot of copy and pasting. If you mostly play NE, you might want to just replace the NE sounds. Or if you don't trigger the "pissed" noises that often, you can always ignore replacing those. ;)
 
Level 1
Joined
Nov 29, 2013
Messages
2
Reply

Hey thanks a lot man for helping me.
So i have created a DWORD key named "Allow Local Files" with the 00000001 value into the HKEY_CURRENT_USER/Software/Blizzard Entertainment/Warcraft III Path. Is that correct?

Now thanks again for your very well explained post. But im really not sure about many things.
First of all from which exact location in the wc3 folder that the game read the sound data?
Then when you say overwrite the mpq files, can you explain me about this.
And finaly, when you say after creating the folder hierarchy into the warcraft 3 root folder that "When Warcraft III starts, it'll use that file instead." I dont understand why the game would read those file instead; isnt it suppose to have a link from somehere to tell the game to change his behavior?

Please just give me a little bit more explaination if possible and im sure I will be able to do it by myself after that.

Thanks !!
 
Hey thanks a lot man for helping me.
So i have created a DWORD key named "Allow Local Files" with the 00000001 value into the HKEY_CURRENT_USER/Software/Blizzard Entertainment/Warcraft III Path. Is that correct?

That should be correct, yes.

First of all from which exact location in the wc3 folder that the game read the sound data?

Warcraft 3 reads all MPQ data in a particular order. Let's say it tries to fetch the model for a unit, such as the footman model. It will be found under Units/Human/Footman/Footman.mdx.
  1. Check if the map that is currently running has a model with that path (e.g. through imports). If it isn't there, then go to the next step.
  2. Check if local files are enabled. If so, scan the Warcraft III folder. If there is a file with the path Units/Human/Footman/Footman.mdx relative to the Warcraft III folder, then use that one instead of the mpq one. If it isn't there, then go to the next step.
  3. Check if that path exists in war3patch.mpq. If it doesn't exist there, go to the next step.
  4. Check the other MPQ's (war3xLocal.mpq, war3x.mpq, war3.mpq) for the path. If it doesn't exist in any of those, then it will fail to load the file.

I might be wrong about the order of war3xLocal. I don't remember which place it comes in. But the point is, Warcraft III checks the local files before checking its own mpq's. You can think of MPQ's as folders (they are very similar to compressed zip archives). The "local files" check just checks the wc3 folder before checking the mpq folders.

Then when you say overwrite the mpq files, can you explain me about this.

Well, it won't really "overwrite" the mpq files. It will just be loaded instead of the mpq's files. The mpq will still have the same files, and it will stay in tact. But as I explained above, it will load the local file version instead of the default mpq one. :)

And finaly, when you say after creating the folder hierarchy into the warcraft 3 root folder that "When Warcraft III starts, it'll use that file instead." I dont understand why the game would read those file instead; isnt it suppose to have a link from somehere to tell the game to change his behavior?

It could be for a lot of reasons. When Blizzard created Warcraft III, I don't think they expected modders to disect the game inch by inch. They probably left the local-files feature for their own purposes. Take for example, the maps folder, the replays folder, campaigns folder, etc. All those folders are within the Warcraft III root folder. Blizzard might've used the local files feature to read those (at one point).

But it could've been for a lot of reasons. Blizzard patched the game quite a bit over the years, so some things are left as legacy features that are no longer used.
 
Status
Not open for further replies.
Top