• 🏆 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!

Replacing Internal Sounds

Status
Not open for further replies.
Level 16
Joined
Mar 27, 2011
Messages
1,349
Hey Hive. I've noticed in my map that there is a problem with imported sounds. I have replaced the Human "no gold"
sound and various others with custom imported sounds. If I play a meele map before my map and the no gold sounds
plays within that meele game, my custom sound will not play in my new map, or vice versa.

I know this has to do with warcraft only loading the sounds once, then you need to reload warcraft to refresh them.
I know this can happen with any unit soundset.

You can try using less common unit soundsets, but they could have already been loaded by somebody in a previous
game and hence not work, or the custom sounds can be carried out to future games. Additionally, I chose certain
soundsets becuase of the variety they have in them (so Im using some common soudsets which amplifies my problem).

My game uses a lot of custom soundsets for various units so its important that they work correctly. Are there any
simple solutions to this whole problem?
 
Level 16
Joined
Mar 27, 2011
Messages
1,349
So turn response sound volume to 0% then create arrays of variables and trigger to play local sounds for each player when they click on multple different types of units?

Won't writing these triggers in GUI be laggier than if it were done the normal way? And that would be a lot of work. Also, I'm not sure how to trigger events like "your town is under siege" sound since it plays when your not looking at your town.
 
Level 16
Joined
Mar 27, 2011
Messages
1,349
It seems possible, but im concerned with any lag that would be involved with creating such a system.
The few triggers which make the system would be fired very frequently (8 players constantly
issuing move, attack and what orders on their units).

I would have to set the 100 or so sounds into variables in map initialization, and hence they are saved into memory.
Would this take up a large chunk of memory? This is what the triggers would look like:

This trigger to register a unit's "yes" orders:

  • Unit Response System
    • Events
      • Unit - A unit Is issued an order targeting a point
      • Unit - A unit Is issued an order targeting an object
      • Unit - A unit Is issued an order with no target
    • Conditions
    • Actions
This trigger to register a unit's "what" responses:

  • Unit What System
    • Events
      • Player - Player 1 (Red) Selects a unit
      • Player - Player 2 (Blue) Selects a unit
      • Player - Player 3 (Teal) Selects a unit
      • Player - Player 4 (Purple) Selects a unit
      • Player - Player 5 (Yellow) Selects a unit
      • Player - Player 6 (Orange) Selects a unit
      • Player - Player 7 (Green) Selects a unit
      • Player - Player 8 (Pink) Selects a unit
    • Conditions
    • Actions
Not to mention triggers for the "no gold" and "base is under siege" sounds, etc.
 
Last edited:
Status
Not open for further replies.
Top