This article's documentation is for anything that uses the Source engine. Click here for more information.

Env soundscape: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
(→‎Keyvalues: Confirmed effects of multiple same-targetname Sound Positions)
 
(38 intermediate revisions by 17 users not shown)
Line 1: Line 1:
{{wrongtitle|title=env_soundscape}}
{{LanguageBar}}
{{base_point}}[[Category:Sound System]]
{{TabsBar|main=Env soundscape}}
{{Preserved entity}}
{{CD|CEnvSoundscape|file1=soundscape.cpp}}
{{This is a|point entity|sprite=1|name=env_soundscape}} It changes the active [[soundscape]] of players, and defines where positioned sounds within it play from. A player must be within the entity's radius and be able to see it for the change to take place. The entity's soundscape will then play until another one takes over. If more than one soundscape entity is fighting for control, the nearest wins.
{{toc-right}}


== Entity description ==
{{ent|env_soundscape_triggerable}} is a related entity identical to env_soundscape, but for use in conjunction with the brush entity {{ent|trigger_soundscape}}.
 
[[Image:{{PAGENAME}}.png|left]]An entity used to place and activate [[Soundscapes]] inside a map.{{note|To use an individual sound that can be controlled through the [[Inputs and Outputs|I/O System]], use [[ambient_generic]].}}
 
 
== Keyvalues ==
 
* {{KV Targetname}}
* {{KV Parentname}}
* {{KV EnableDisable}}
* '''radius'''
: <integer> Radius - If set to <code>-1</code>, then the player can hear the soundscape as long as he can see it (regardless of distance to it).
* '''soundscape'''
: <string> Soundscape - The name of the soundscape to use.
:{| class=standard-table
! Literal Value || Description
|-
| Nothing || Nothing
|-
| Automatic || Automatic
|-
| Automatic_Dialog || Automatic (dialog)
|-
| GenericIndoor || Indoor
|-
| GenericOutdoor || Outdoor
|}
* '''position''0-7'''''
: <target_destination> Sound Position ''0-7'' - Sound positions that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world.


{{tip|In some games such as {{tf2|2}}, soundscape entities cannot be "seen" through water, in which case a [[env_soundscape_triggerable|triggerable]] soundscape is a useful workaround.}}
{{warning|This entity counts an [[edict]] in {{src13}} games (except {{tf2|2}}), inheriting the [[CPointEntity]] base class. In later branches{{which}} it is a server-only entity, inheriting the [[CServerOnlyEntity]] base class.}}
{{altnames|game={{hls|2}} and {{hldms|2}}|name1=env_sound|misc=<br>See [[List of HL:S Soundscapes]] for which soundscapes correspond to which {{goldsrc|2}} [[env_sound]] values.}}
==Keyvalues==
{{KV Targetname}}
{{KV|Radius|intn=radius|int|Defines the entity's sphere of influence. Players must also have [[LOS]] to the entity for it to trigger. -1 means infinite range.}}
{{KV|Soundscape|intn=soundscape|string|The name of the soundscape to play. Some examples are provided, but the actual list is not. The best way to browse soundscapes is from within the game with the <code>playsoundscape</code> console command.}}
{{KV|Sound Position 0|intn=position0|to=Sound Position 7|intn2=position7|targetname|Entities which define the location from which any positioned sounds play. Must be entities that the [[client]] knows about (e.g {{ent|info_target}} or anything visible).}}
:{{Note|If a targetname used for sound position is used by multiple entities, the sound plays from the first one found.}}
{{KV StartDisabled}}


== Inputs ==
== Inputs ==
 
{{I|ToggleEnabled|Toggle the soundscape on/off.}}
* {{I Targetname}}
{{I EnableDisable}}
* {{I Parentname}}
* {{I EnableDisable}}
* '''Disabled'''
: {{TODO|Write description. (It's not a typo - both ''Disable'' and ''Disabled'' exist.)}}
* '''ToggleEnabled'''
: Toggle the soundscape enabled state.
 


== Outputs ==
== Outputs ==
 
{{O|OnPlay|ac-is-this=1|Fired when this soundscape becomes the active one.}}
* {{O Targetname}}
* '''OnPlay'''
: Fired when this soundscape becomes the active one.
 


== See also ==
== See also ==
* {{ent|env_soundscape_proxy}}
* {{ent|env_soundscape_triggerable}}
* [[Soundscape lists]]


* [[Soundscapes]]
[[Category:Sound System]]
* [[env_soundscape_proxy]]
* {{Soundscape lists}}
* [[ambient_generic]]

Latest revision as of 19:50, 7 August 2025

English (en)Hrvatski (hr)Русский (ru)中文 (zh)Translate (Translate)
edit
Recycle-warning.png
This is a preserved entity in Counter-Strike: SourceHalf-Life 2: DeathmatchDay of Defeat: SourceTeam Fortress 2Left 4 DeadLeft 4 Dead 2Portal 2Counter-Strike: Global Offensive
If the game has round restart mechanics this entity may not behave as expected.
C++ Class hierarchy
CEnvSoundscape
CServerOnlyEntity
CBaseEntity
C++ soundscape.cpp
Env soundscape.png

env_soundscape is a point entity available in all Source Source games. It changes the active soundscape of players, and defines where positioned sounds within it play from. A player must be within the entity's radius and be able to see it for the change to take place. The entity's soundscape will then play until another one takes over. If more than one soundscape entity is fighting for control, the nearest wins.

env_soundscape_triggerable is a related entity identical to env_soundscape, but for use in conjunction with the brush entity trigger_soundscape.

Tip.pngTip:In some games such as Team Fortress 2 Team Fortress 2, soundscape entities cannot be "seen" through water, in which case a triggerable soundscape is a useful workaround.
Warning.pngWarning:This entity counts an edict in Source 2013 games (except Team Fortress 2 Team Fortress 2), inheriting the CPointEntity base class. In later branches[Which?] it is a server-only entity, inheriting the CServerOnlyEntity base class.
AltNames.pngAltNames: In Half-Life: Source Half-Life: Source and Half-Life Deathmatch: Source Half-Life Deathmatch: Source, this entity is also tied to env_sound.
See List of HL:S Soundscapes for which soundscapes correspond to which GoldSrc GoldSrc env_sound values.

Keyvalues

Name (targetname) <string>[ Edit ]
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Radius (radius) <integer>
Defines the entity's sphere of influence. Players must also have LOS to the entity for it to trigger. -1 means infinite range.
Soundscape (soundscape) <string>
The name of the soundscape to play. Some examples are provided, but the actual list is not. The best way to browse soundscapes is from within the game with the playsoundscape console command.
Sound Position 0 (position0) to Sound Position 7 (position7) <targetname>
Entities which define the location from which any positioned sounds play. Must be entities that the client knows about (e.g info_target or anything visible).
Note.pngNote:If a targetname used for sound position is used by multiple entities, the sound plays from the first one found.
Start Disabled (StartDisabled) <boolean>
Stay dormant until activated (with theEnableinput).

Inputs

ToggleEnabled
Toggle the soundscape on/off.

EnableDisable:

Enable / Disable
Enable/disable this entity from performing its task. It might also disappear from view.

Outputs

OnPlay
!activator = !caller = this entity
Fired when this soundscape becomes the active one.

See also