sound_mix_layer

From Valve Developer Community
Jump to: navigation, search

Left 4 Dead 2 sound_mix_layer is a point entity available in Left 4 Dead 2. It is an entity used to set a mix layer to a specific value.

Note.png Note: Developers seeking how to manage priorities of specific sounds should refer to mixgroups found in pak01_dir.vpk: /scripts/soundmixers.txt

Keyvalues

Mix Layer Name <string>
Name of the mix layer to be setting the level of.
Level <float>
Set the Mix Layer Level

Targetname:
Name (targetname) <string>
The targetname that other entities refer to this entity by.

Inputs

Level <float>
Set the Mix Layer Level

Targetname:
Kill
Removes this entity from the world.
KillHierarchy
Removes this entity and its children from the world.
Note.png Note: Entities already remove orphaned children upon being removed, but this input removes all children on the same frame, being marginally faster than Kill.
AddOutput <string>
Adds a keyvalue/output to this entity. It can be potentially very dangerous, use with care.
KV Format: <key> <value>
I/O Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>
FireUser1 to FireUser4
Fire the OnUser outputs; see User Inputs and Outputs.
Use  !FGD
Same as a player invoking +use; may not do anything depending on the entity. Can also be invoked by firing an output that does not specify an input.
RunScriptFile <script> (in all games since Left 4 Dead 2)
Execute a VScript file from disk, without file extension. The script contents are merged with the script scope of the receiving entity.
RunScriptCode <string> (in all games since Left 4 Dead 2)
Execute a string of VScript source code in the scope of the entity receiving the input. String quotation may be needed when fired via console.
Bug.png Bug: In Left 4 Dead 2, the code is executed in the script scope of the entity that fires the output, not the one receiving the input.
Warning.png Warning: Never try to pass string parameters to a script function with this input. It will corrupt the VMF structure because of the nested quotation marks, which then must be removed manually with a text editor.
CallScriptFunction <string> (in all games since Left 4 Dead 2) !FGD
Execute a VScript function in the scope of the receiving entity.
SetLocalOrigin <coordinates> (in all games since Alien Swarm) !FGD
Send this entity to a spot in the map. If the entity is parented to something, it will be offset from the parent by this amount.
SetLocalAngles <angles> (in all games since Alien Swarm) !FGD
Set this entity's angles.

Outputs


Targetname:
OnUser1 to OnUser4
These outputs each fire in response to the firing of the like-numbered FireUser1 to FireUser4 Input; see User Inputs and Outputs.
OnKilled  (only in Left 4 Dead Left 4 Dead 2)
This output fires when the entity is killed and removed from the game.

Mix layers

More information regarding MixLayers can be found in pak01_dir.vpk: /scripts/soundmixers.txt

These are listed in the dev console commmand snd_list_mixers

  • mobBeatingLayer
  • mobRulesLayer
  • zombatMusicLayer
  • zombatMusic2Layer
  • zombatMusic3Layer
  • witchRageLayer
  • safeRoomLayer
  • unaliveLayer
  • PZVOWarnLayer
  • chargerAttackLayer
  • commentaryLayer
  • undeathLayer
  • adrenalineLayer
  • fluMusicLayer
  • rainLayer
  • stormLayer
  • voipLayer

Entries listed under the dev console command snd_list_mix_groups may work with a "Layer" post-fix, but need further testing.

External links

Audio Mixing (recorded music) - Wikipedia article regarding technical aspects of audio mixing