lightingorigin(target_destination) : "Lighting Origin" : "" : "Select an entity to specify a location to sample lighting from, instead of using this entity's origin."
input BecomeRagdoll(void) : "This entity will instantly become a ragdoll with ZERO force (just go limp). OnDeath, OnHalfHealth, etc. outputs will **NOT** BE FIRED."
skin(integer) : "Skin" : 0 : "Some models have multiple versions of their textures, called skins. Set this to a number other than 0 to use that skin instead of the default."
modelscale(float) : "Model Scale" : "1.0" : "A multiplier for the size of the model."
SetBodyGroup(integer) : "Bodygroup" : : "Sets this model's bodygroup (from 0 - n). You can do things like put headcrabs on zombie ragdolls by using '1' here, but it's probably best not to mess with it if you don't know what it is."
input AlternativeSorting(bool) : "Used to attempt to fix sorting problems when rendering. True activates, false deactivates"
input SetModelScale(string) : "Takes two values separated by a space. The first is the target model scale. The second value is the number of seconds the change in scale will be spread over."
input AddOutput(string) : "Adds an entity I/O connection or a keyvalue to this entity. Format: '<output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>'. You could also use it on regular keyvalues: '<key name> <key value>'. Very dangerous, use with care."
input ChangeVariable(string) : "Similar to AddOutput, except it changes an internal variable similar to logic_datadesc_accessor instead. Very dangerous, use with care."
input PassUser1(string) : "Causes this entity's OutUser1 output to be fired. Can pass any parameter."
input PassUser2(string) : "Causes this entity's OutUser2 output to be fired. Can pass any parameter."
input PassUser3(string) : "Causes this entity's OutUser3 output to be fired. Can pass any parameter."
input PassUser4(string) : "Causes this entity's OutUser4 output to be fired. Can pass any parameter."
input FireRandomUser(void) : "Fires OnUser1, OnUser2, OnUser3, or OnUser4 with a 25% chance of each."
input PassRandomUser(string) : "Fires OutUser1, OutUser2, OutUser3, or OutUser4 with a 25% chance of each. Can pass any parameter."
// Mapbase -- BaseEntity I/O
input FireOutput(string) : "Fires the named output on this entity. Format: '<output name>:<activator>:<caller>:<parameter>:<delay>' (OnDeath:hl3cardgame:gaben). Everything beyond the output name is optional."
input RemoveOutput(string) : "Removes all instances of the named output on this entity. Wildcards are supported, meaning you could just pass '*' to wipe all outputs from this entity."
input AcceptInput(string) : "Fires the named input on this entity. Format: '<input name>:<parameter>:<activator>:<caller>:<output ID>' (SetTarget:cheese). Everything beyond the input name is optional. Mind the fact this is arranged differently from FireOutput, having the parameter right after the input name."
input CancelPending(void) : "Cancels any events fired by this entity that are currently pending in the I/O event queue."
input SetTarget(target_destination) : "Sets this entity's target. This is specific to certain entities, particularly logic entities that involve a target."
input SetOwnerEntity(target_destination) : "Sets this entity's owner entity. This has nothing to do with parenting and has more to do with collision and kill credits."
input SetThinkNull(void) : "Sets this entity's general think function to null. Behavior varies from entity to entity.."
input Use(void) : "More or less replicates the player interacting with an entity. (+USE)"
parentname(target_destination) : "Parent" : : "The name of this entity's parent in the movement hierarchy. Entities with parents move with their parent. Use the format ''<parent name>, <attachment>'' to parent to a specific attachment point."
input SetParentAttachment(string) : "Change this entity to attach to a specific attachment point on its parent. Entities must be parented before being sent this input. The parameter passed in should be the name of the attachment."
input SetParentAttachmentMaintainOffset(string) : "Change this entity to attach to a specific attachment point on it's parent. Entities must be parented before being sent this input. The parameter passed in should be the name of the attachment. The entity will maintain it's position relative to the parent at the time it is attached."
input ClearParent(void) : "Removes this entity from the the movement hierarchy, leaving it free to move independently."
rendermode(choices) : "Render Mode" : 0 : "Used to set a non-standard rendering mode on this entity. See also 'FX Amount' and 'FX Color'. Most of these are only used by sprites." =
viewhideflags(choices) : "View ID nodraw" : 0 : "This keyvalue can control whether an entity should only draw on things like monitors or mirrors, or the opposite. The code for this is { m_iViewHideFlags & (1 << CurrentViewID()) } and supports any combination of view IDs." =
[
0 : "Draw normally"
193 : "Hide in main view (player's eyes)" // VIEW_MAIN + VIEW_INTRO_CAMERA + VIEW_SHADOW_DEPTH_TEXTURE
36 : "Hide in cameras" // VIEW_MONITOR + VIEW_INTRO_PLAYER
24 : "Hide in mirrors/water" // VIEW_REFLECTION + VIEW_REFRACTION
60 : "Hide in cameras and mirrors/water" // VIEW_MONITOR + VIEW_INTRO_PLAYER + VIEW_REFLECTION + VIEW_REFRACTION
input Alpha(integer) : "Sets the sprite's alpha (0 - 255)."
input Color(color255) : "Sets the sprite's color (R G B)."
input SetRenderMode(integer) : "Sets this entity's render mode."
input SetRenderFX(integer) : "Sets this entity's render FX."
input SetViewHideFlags(integer) : "Sets this entity's view ID nodraw flags (takes raw flag combination)."
input AddEffects(integer) : "Adds an entity effect."
input RemoveEffects(integer) : "Removes an entity effect."
input EnableDraw(void) : "Draws an entity if it is not drawn. Equivalent to RemoveEffects > 32."
input DisableDraw(void) : "Undraws an entity if it is drawn. Equivalent to AddEffects > 32."
input AddEFlags(integer) : "Adds an entity flag. NOTE: Entity flags are not the spawn flags you see in Hammer. Use AddSpawnFlags to add spawnflags."
input RemoveEFlags(integer) : "Removes an entity flag. NOTE: Entity flags are not the spawn flags you see in Hammer. Use RemoveSpawnFlags to remove spawnflags."
// This is the closest I could get without putting this in Targetname, as most entities that use collision groups usually use render fields as well
input SetCollisionGroup(integer) : "Sets this entity's collision group."
// Inherit from this to get the ability to only include an object in a range of dx levels.
// NOTE!!: MAKE SURE THAT YOU DON'T USE THIS WITH ANYTHING THAT WILL BREAK SAVE-GAMES SWITCHING
// BETWEEN DXLEVELS!!!!
@BaseClass = DXLevelChoice
[
mindxlevel(choices) : "Minimum DX Level" : 0 =
[
0 : "default (lowest)"
70 : "dx7"
80 : "dx8.0 (4600Ti)"
81 : "dx8.1 (FX5200)"
90 : "dx9 SM2.0"
95 : "dx9 SM3.0"
]
maxdxlevel(choices) : "Maximum DX Level" : 0 =
[
0 : "default (highest)"
60 : "dx6"
70 : "dx7"
80 : "dx8.0 (4600Ti)"
81 : "dx8.1 (FX5200)"
90 : "dx9 SM2.0"
95 : "dx9 SM3.0"
]
]
@BaseClass = Inputfilter
[
InputFilter(choices) : "Input Filter" : 0 : "Used to specify which inputs this entity will accept." =
[
0 : "Allow all inputs"
8 : "Ignore Touch/Untouch"
16 : "Ignore Use"
32 : "Ignore All"
]
]
@BaseClass = Global
[
globalname(string) : "Global Entity Name" : "" : "Name by which this entity is linked to another entity in a different map. When the player transitions to a new map, entities in the new map with globalnames matching entities in the previous map will have the previous map's state copied over their state."
]
// Base class for env_global
@BaseClass base(Targetname) = EnvGlobal :
"An entity to control a global game state, with an optional associated counter, that persists across level transitions."
[
initialstate(choices) : "Initial State" : 0 =
[
0 : "Off"
1 : "On"
2 : "Dead"
]
counter(integer) : "Counter" : 0 : "An integer counter value associated with this global."
input AddContext(string) : "Adds a context to this entity's list of response contexts. The format should be 'key:value'."
input RemoveContext(string) : "Remove a context from this entity's list of response contexts. The name should match the 'key' of a previously added context."
input ClearContext(void) : "Removes all contexts in this entity's list of response contexts."
// Pre-defined contexts at server startup time (set by mapper)
ResponseContext(string) : "Response Contexts" : "" : "Response system context(s) for this entity. Format should be: 'key:value,key2:value2,etc'. When this entity speaks, the list of keys & values will be passed to the response rules system."
ExplodeDamage(float) : "Explosion Damage" : 0 : "If non-zero, when this entity breaks it will create an explosion that causes the specified amount of damage. See also 'Explosion Radius'."
ExplodeRadius(float) : "Explosion Radius" : 0 : "If non-zero, when this entity breaks it will create an explosion with a radius of the specified amount. See also 'Explosion Damage'."
PerformanceMode(choices) : "Performance Mode" : 0 : "Used to limit the amount of gibs produced when this entity breaks, for performance reasons." =
[
0 : "Normal"
1 : "No Gibs"
2 : "Full Gibs on All Platforms"
3 : "Reduced gibs"
]
BreakModelMessage(string) : "Break Model Message" : "" : "If set, will use this break model message instead of the normal break behavior."
// Inputs
input Break(void) : "Breaks the breakable."
input SetHealth(integer) : "Sets a new value for the breakable's health. If the breakable's health reaches zero it will break."
input AddHealth(integer) : "Adds health to the breakable. If the breakable's health reaches zero it will break."
input RemoveHealth(integer) : "Removes health from the breakable. If the breakable's health reaches zero it will break."
input EnablePhyscannonPickup(void) : "Makes the breakable able to picked up by the physcannon."
input DisablePhyscannonPickup(void) : "Makes the breakable not able to picked up by the physcannon."
input SetMass(float) : "Set mass of this object."
// Outputs
output OnBreak(void) : "Fired when this breakable breaks."
output OnTakeDamage(void) : "Fired each time this breakable takes any damage."
output OnHealthChanged(float) : "Fired when the health of this breakable changes, passing the new value of health as a percentage of max health, from [0..1]."
output OnPhysCannonDetach(void) : "Fired when the physcannon has ripped this breakable off of the wall. Only fired if ACT_PHYSCANNON_DETACH is defined in the model this breakable is using."
output OnPhysCannonAnimatePreStarted(void) : "Fired when this prop starts playing the Pre physcannon-pull activity, caused by the player trying to grab this prop with the physcannon. Only fired if the ACT_PHYSCANNON_ANIMATE_PRE activity is defined in the model this breakable is using."
output OnPhysCannonAnimatePullStarted(void) : "Fired when this prop starts playing the physcannon-pull activity, caused by the player trying to grab this prop with the physcannon. Only fired if the ACT_PHYSCANNON_ANIMATE activity is defined in the model this breakable is using. If the prop has Pre pull anim, this will be fired after the Pre anim has finished playing."
output OnPhysCannonPullAnimFinished(void) : "Fired when this prop has finished playing the physcannon-pull activity, caused by the player trying to grab this prop with the physcannon. Only fired if the ACT_PHYSCANNON_ANIMATE activity is defined in the model this breakable is using. If the prop has Pre & Post pull anims, this will be fired after the Post anim has finished playing."
output OnPhysCannonAnimatePostStarted(void) : "Fired when this prop starts playing the Post physcannon-pull activity. Only fired if the ACT_PHYSCANNON_ANIMATE_POST activity is defined in the model this breakable is using."
propdata(choices) : "Prop Data" : 0 : "Set to the best approximation of the size and material of this entity's brushes. If set, it will override this entity's health and damage taken from various weapons. See the propdata.txt file in the scripts directory of your MOD to get a detailed list of what each entry specifies." =
[
0 : "None"
1 : "Wooden.Tiny"
2 : "Wooden.Small"
3 : "Wooden.Medium"
4 : "Wooden.Large"
5 : "Wooden.Huge"
6 : "Metal.Small"
7 : "Metal.Medium"
8 : "Metal.Large"
9 : "Cardboard.Small"
10 : "Cardboard.Medium"
11 : "Cardboard.Large"
12 : "Stone.Small"
13 : "Stone.Medium"
14 : "Stone.Large"
15 : "Stone.Huge"
16 : "Glass.Small"
17 : "Plastic.Small"
18 : "Plastic.Medium"
19 : "Plastic.Large"
20 : "Pottery.Small"
21 : "Pottery.Medium"
22 : "Pottery.Large"
23 : "Pottery.Huge"
24 : "Glass.Window"
]
health(integer) : "Strength" : 1 : "Number of points of damage to take before breaking. 0 means don't break."
material(choices) :"Material Type" : 0 : "Set to the material type of the brush. Used to decide what sounds to make when damaged, and what gibs to produce when broken." =
[
0: "Glass"
1: "Wood"
2: "Metal"
3: "Flesh"
4: "CinderBlock"
5: "Ceiling Tile"
6: "Computer"
7: "Unbreakable Glass"
8: "Rocks"
// 9: "Web(defunct)"
10: "None"
]
explosion(choices) : "Gibs Direction" : 0 : "Used to decide which direction to throw gibs when broken." =
[
0: "Random"
1: "Relative to Attack"
2: "Use Precise Gib Dir"
]
gibdir(angle) : "Precise Gib Direction" : "0 0 0" : "Specifies the direction to throw gibs when this breakable breaks. Be sure to select Use Precise Gib Dir in the Gibs Direction field!"
nodamageforces(choices) : "Damaging it Doesn't Push It" : 0 : "Used to determine whether or not damage should cause the brush to move." =
[
0: "No"
1: "Yes"
]
// Inputs
input EnableDamageForces(void) : "Damaging the entity applies physics forces to it."
input DisableDamageForces(void) : "Damaging the entity does *not* apply physics forces to it."
gibmodel(string) : "Gib Model" : "" : "Used by HL1Port to specify a custom gib model to break into, overriding the 'Material Type'."
spawnobject(choices) : "Spawn On Break" : 0 : "When broken, an entity of the selected type will be created." =
[
1: "item_battery"
2: "item_healthkit"
3: "item_ammo_pistol"
4: "item_ammo_pistol_large"
5: "item_ammo_smg1"
6: "item_ammo_smg1_large"
7: "item_ammo_ar2"
8: "item_ammo_ar2_large"
9: "item_box_buckshot"
10: "item_flare_round"
11: "item_box_flare_rounds"
12: "item_ml_grenade"
13: "item_smg1_grenade"
14: "item_box_sniper_rounds"
15: "unused1"
16: "weapon_stunstick"
17: "weapon_ar1"
18: "weapon_ar2"
19: "unused2"
20: "weapon_ml"
21: "weapon_smg1"
22: "weapon_smg2"
23: "weapon_slam"
24: "weapon_shotgun"
25: "weapon_molotov"
26: "item_dynamic_resupply"
]
explodemagnitude(integer) : "Explode Magnitude" : 0 : "If non-zero, when this entity breaks it will create an explosion that causes the specified amount of damage."
pressuredelay(float) : "Pressure Delay" : 0 : "Delay, in seconds, after 'broken' by pressure before breaking apart (allows for sound to play before breaking apart)."
pressuredelay(float) : "Pressure Delay" : 0 : "Delay, in seconds, after 'broken' by pressure before breaking apart (allows for sound to play before breaking apart)."
input HolsterWeapon(void) : "Forces the NPC/player to holster their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already holstered, or if the NPC doesn't use weapons."
input HolsterAndDestroyWeapon(void) : "Identical to HolsterWeapon, except the weapon is destroyed once it has been holstered and concealed."
input UnholsterWeapon(string) : "Forces the NPC/player to draw their weapon. Ignored if the NPC is scripting, if the NPC's weapon is already drawn, or if the NPC doesn't use weapons. You can specify to unholster a specific weapon if they have it in their inventory."
input SwitchToWeapon(string) : "Causes the NPC/player to instantly switch to the specified weapon. If they do not have the specified weapon in their inventory, it will be created."
input PickupWeaponInstant(target_destination) : "Instantly picks up the specified weapon. This refers to a weapon entity in the world, not a weapon classname."
input SetRelationship(target_destination) : "Changes this NPC/player's relationship with another entity or class. Format: <entityname/classname> <D_HT/D_FR/D_LI/D_NU> <priority>"
input SetBloodColor(integer) : "Changes this entity's blood color based on the internal enum in shareddefs.h."
output OnWeaponEquip(void) : "Fires when this NPC/player acquires a weapon through any means, including spawn equipment. Passes the weapon as the activator."
output OnWeaponDrop(void) : "Fires when this NPC/player drops a weapon, including when they die."
output OnKilledNPC(ehandle) : "Fires when we kill a NPC. Passes the victim."
output OnKilledPlayer(ehandle) : "Fires when we kill a player. Passes the killed player."
output OnHealthChanged(float) : "Fired when the health of this entity changes, passing the new value of health as a percentage of max health, from [0..1]."
squadname(String) : "Squad Name" : : "NPCs that are in the same squad (i.e. have matching squad names) will share information about enemies, take turns attacking and covering each other, etc. Squads work differently from NPC to NPC and some don't support them by default."
hintgroup(String) : "Hint Group" : "" : "Hint groups are used by NPCs to restrict their hint searching to a subset of the map's hint nodes. Only hint nodes with matching hint group names will be considered by this NPC."
hintlimiting(choices) : "Hint Limit Nav" : 0 : "Limits NPC to using its specified hint group for navigation requests, but does not limit local navigation." =
ignoreunseenenemies(choices) : "Ignore unseen enemies" : 0 : "Prefer visible enemies, regardless of distance or relationship priority" =
[
0 : "No"
1 : "Yes"
]
physdamagescale(float) : "Physics Impact Damage Scale" : "1.0" : "Scales damage energy when this character is hit by a physics object. With a value of 0 the NPC will take no damage from physics."
FriendlyFireOverride(choices) : "Friendly fire override" : 2 : "Overrides whether friendly fire is allowed on this NPC or not. 'Disabled' makes this NPC immune to damage from its allies. 'Enabled' makes this NPC vulnerable to damage from its allies, including players. 'Default' uses the NPC's settings and won't change anything." =
[
0 : "Disabled"
1 : "Enabled"
2 : "Default (No override)"
]
SetDynamicInteractions(choices) : "Dynamic interactions enabled" : 2 : "Episodic only. Enables or disables dynamic interactions on this NPC, if it has them. If set to Default, only dynamic interactions from the original episodes (Alyx, vorts, etc.) will be enabled. If set to Yes, dynamic interactions introduced with Mapbase will be enabled as well. If set to No, this NPC will never perform dynamic interactions." =
SetForceServerRagdoll(choices) : "Force server ragdoll" : 0 : "Forces this NPC to turn into a serverside prop_ragdoll instead of a clientside ragdoll when it dies." =
[
0 : "No"
1 : "Yes"
]
SpawnWithStartScripting(choices) : "Spawn with StartScripting" : 0 : "Spawns the NPC in the StartScripting state." =
output OnDamaged(void) : "Fired when this NPC takes damage."
output OnDeath(void) : "Fired when this NPC is killed."
output OnHalfHealth(void) : "Fired when this NPC reaches half of its maximum health."
output OnHearWorld(void) : "Fired when this NPC hears a sound (other than combat or the player)."
output OnHearPlayer(void) : "Fired when this NPC hears the player."
output OnHearCombat(void) : "Fired when this NPC hears combat sounds."
output OnFoundEnemy(string) : "Fired when this NPC establishes line of sight to its enemy (outputs entity)."
output OnLostEnemyLOS(void) : "Fired when this NPC loses line of sight to its enemy."
output OnLostEnemy(void) : "Fired when this NPC loses its enemy. Usually due to the enemy being killed/removed, or because this NPC has selected a newer, more dangerous enemy."
output OnFoundPlayer(string) : "Fired when this NPC establishes line of sight to its enemy, and that enemy is a player (outputs player entity)."
output OnLostPlayerLOS(void) : "Fired when this NPC loses line of sight to its enemy, and that enemy is a player."
output OnLostPlayer(void) : "Fired when this NPC loses its enemy, and that enemy was a player. Usually due to the enemy being killed/removed, or because this NPC has selected a newer, more dangerous enemy."
output OnDamagedByPlayer(void) : "Fired when this NPC is hurt by a player."
output OnDamagedByPlayerSquad(void) : "Fired when this NPC is hurt by a player OR by one of the player's squadmates."
output OnDenyCommanderUse(void) : "Fired when this NPC has refused to join the player's squad."
output OnSleep(void) : "Fired when this NPC enters a sleep state."
output OnWake(void) : "Fired when this NPC comes out of a sleep state."
output OnForcedInteractionStarted(void) : "Fired when the NPC starts a forced interaction."
output OnForcedInteractionAborted(void) : "Fired when the NPC aborts a forced interaction for some reason (target NPC died, couldn't be pathed to, etc)"
output OnForcedInteractionFinished(void) : "Fired when the NPC successfully finishes a forced interaction."
output OnItemPickup(void) : "Fires when a NPC picks up an item, e.g. a citizen picking up a health kit or a scripted item picked up in response to PickupItem."
output OnStateChange(integer) : "Fires when a NPC's state changes, outputting the new state. (1 = Idle, 2 = Alert, 3 = Combat...)"
input SetBodyGroup(integer) : "HACK: Sets this NPC's body group (from 0 - n). You'd better know what you are doing!"
input physdamagescale(float) : "Sets the value that scales damage energy when this character is hit by a physics object. NOTE: 0 means this feature is disabled for backwards compatibility."
input Ignite(void) : "Ignite, burst into flames"
input IgniteLifetime(float) : "Ignite, with a parameter lifetime."
input IgniteNumHitboxFires(integer) : "Ignite, with a parameter number of hitbox fires."
input IgniteHitboxFireScale(float) : "Ignite, with a parameter hitbox fire scale."
input Break(void) : "Break, smash into pieces"
input StartScripting(void) : "Enter scripting state. In this state, NPCs ignore a variety of stimulus that would make them break out of their scripts: They ignore danger sounds, ignore +USE, don't idle speak or respond to other NPC's idle speech, and so on."
input SetSquad(string) : "Set the name of this NPC's squad. It will be removed from any existing squad automatically. Leaving the parameter blank will remove the NPC from any existing squad."
input Wake(void) : "Wakes up the NPC if it is sleeping."
input ForceInteractionWithNPC(target_destination) : "Force the NPC to use a dynamic interaction with another NPC. Parameter format: <target NPC name> <dynamic interaction name>"
input UpdateEnemyMemory(target_destination) : "Update (or Create) this NPC's memory of an enemy and its location"
input SetMoveType(integer) : "Sets this NPC's movetype."
input AddCapabilities(integer) : "Adds capabilities to this NPC."
input RemoveCapabilities(integer) : "Removes capabilities from this NPC."
input SetCondition(integer) : "Sets a condition. Can use a condition's string ID or its integer."
input RemoveCondition(integer) : "Removes a condition. Can use a condition's string ID or its integer."
input GiveWeapon(string) : "Gives the NPC a weapon of the specified class name. They will drop their current weapon if it is not holstered."
input GiveWeaponHolstered(string) : "Puts the weapon of the specified class name in the NPC's inventory. If they do not have a weapon equipped, they will unholster it when given the 'UnholsterWeapon' input or when they see an enemy."
input DropWeapon(string) : "Forces the NPC to drop its current weapon in front of it. No animation will play."
input ChangeWeapon(string) : "Causes the NPC to change to the specified weapon. They will holster their current weapon and unholster the specified weapon, creating it if they don't already have it."
input PickupWeapon(target_destination) : "Causes the NPC to seek and pick up the specified weapon."
input PickupItem(target_destination) : "Causes the NPC to seek and pick up the specified item."
input SetFriendlyFire(integer) : "Overrides our friendly fire. 0 = No friendly fire, 1 = Friendly fire enabled, 2 = Default (No override)"
input SetDynamicInteractions(integer) : "Sets whether we could use dynamic interactions. 0 = Disabled, 1 = Enabled, 2 = Default."
input SetProficiencyOverride(integer) : "Sets our weapon's proficiency. Use integer."
input SetForceServerRagdoll(bool) : "Sets whether we should be a serverside ragdoll when we die."
input SetThinkNPC(float) : "Sets this entity's general think function to CallNPCThink. This is only necessary if it was disabled by SetThinkNull before."
"NPC Spawn Destination. (Consult npc_template_maker help for more info)"
[
ReuseDelay(float) : "Reuse Delay" : 1 : "After an NPC is spawned at this destination, the delay before this destination is eligible for selection again."
RenameNPC(string) : "New NPC Name" : "" : "If an NPC spawns at this destination, change that NPC's targetname to this."
// Outputs
output OnSpawnNPC(void) : "Fired when an NPC spawns at this destination."
MaxNPCCount(integer) : "Num. of NPCs" : 1 : "Number of NPCs that will spawn before this spawner is exhausted."
SpawnFrequency(string) : "Frequency" : "5" : "How often (in seconds) a new NPC will be spawned. If set to -1, a new NPC will be made when the last NPC dies."
MaxLiveChildren(integer) : "Max Live NPCs" : 5 : "Maximum number of live children allowed at any one time (new ones will not be made until one dies). If set to -1, no limit is applied."
output OnAllSpawned(void) : "Fired when the spawned is exhausted (all children have been spawned)."
output OnAllSpawnedDead(void) : "Fired when the spawner is exhausted (all children have been spawned) and all spawned children have died."
output OnAllLiveChildrenDead(void) : "Fired when all spawned children have died. This does not mean the spawned is exhausted, so a new child may be spawned any time after this (unless the maker is disabled)."
// Inputs
input Spawn(void) : "Spawns an NPC."
input Toggle(void) : "Toggles the spawner enabled/disabled state."
input Enable(void) : "Enables the spawner."
input Disable(void) : "Disables the spawner."
input AddMaxChildren(integer) : "Adds to the number of NPCs that can spawn before the spawner is exhausted. If an exhausted spawner is given some children to spawn, it still wont begin spawning until it is re-enabled with the Enable input."
input SetMaxChildren(integer) : "Sets the number of NPCs that can spawn before the spawner is exhausted. If an exhausted spawner is given some children to spawn, it still won't begin spawning until it is re-enabled with the Enable input."
input SetMaxLiveChildren(integer) : "Sets the maximum number of NPCs that can be alive at any one time from this spawner."
input SetSpawnFrequency(float) : "Sets how often (in seconds) a new NPC will be spawned."
"An entity that creates NPCs. The NPCs it creates are clones of a template NPC. NPCs are spawned around this maker's origin, or at specified destination points."
TemplateName(target_destination) : "Name of template NPC" : "" : "Template NPC that this maker should be creating clones of."
Radius(float) : "Radius" : 256 : "Radius around this maker within which NPCs are to be placed. Spawned NPCs will try and find empty space within this radius to spawn."
DestinationGroup(target_destination) : "Name of Destination Group" : : "If you'd like spawned NPCs to be created at an info_npc_spawn_destination entity, enter the name of that entity here. If you have more than one destination entity by that name, the Destination Criteria will be used to select one from the group."
CriterionVisibility(Choices) : "Dest. Criterion: Visible to player?" : 2 : "Should the NPC try to spawn at a destination that the player can see? Only applicable if a Destination Group is being used." =
[
0 : "Yes"
1 : "No"
2 : "Don't Care"
]
CriterionDistance(Choices) : "Dest. Criterion: Distance to player?" : 2 : "Should the NPC try to spawn nearest to or farthest from the player's current location? Only applicable if a Destination Group is being used." =
[
0 : "Nearest"
1 : "Farthest"
2 : "Don't Care"
]
MinSpawnDistance(integer) : "Minimum spawn distance from player" : 0 : "The spawn destination node distance to the player will have to be further or equal than this value."
//Inputs
input SpawnNPCInRadius(void) : "Spawn an NPC somewhere within the maker's radius."
input SpawnNPCInLine(void) : "Spawn an NPC somewhere within a line behind the maker."
AllowsAnyDamage(Choices) : "Allows any damage" : 0 : "Allows this NPC to take any amount of any type of damage, including bullet or melee damage. This is supposed to allow this NPC to be taken down in a previously impossible way and should be used with an actual damage filter." =
input MoveTopSpeed(void) : "The helicopter will immediately move at top speed toward its current goal, or in its current orientation if it's on top of its goal."
input MoveSpecifiedSpeed(float): "The helicopter will immediately move at the specified speed (you provide this as parameter override in units per second) towards its current goal."
input ChangePathCorner(target_destination) : "Tell the helicopter to move to a path corner on a new path."
input SelfDestruct(void) : "Self Destruct."
input Activate(void) : "Activate. Use to wake up a helicopter that spawned with the 'Await Input' spawnflag on."
input SetTrack(target_destination) : "Set a track for the helicopter to adhere to. The helicopter will do nothing if he's on the same path, and will move to the closest point on the specified track if he's on a different path."
input FlyToSpecificTrackViaPath(target_destination) : "The helicopter will first fly to the closest point on the path if he's on a different path. Then he'll fly along the path to the specified track point."
input StartPatrol(void) : "Start patrolling back and forth along the current track."
input StopPatrol(void) : "Stop patrolling back and forth along the track. This will cause the helicopter to come to rest at the track which he's currently flying toward."
input ChooseFarthestPathPoint(void) : "When tracking an enemy, choose the point on the path furthest from the enemy, but still in firing range."
input ChooseNearestPathPoint(void) : "When tracking an enemy, choose the point on the path nearest from the enemy."
input StartBreakableMovement(void) : "The helicopter is now allowed to disobey direct commands to go to particular points if he senses an enemy. He will move to the closest point (or farthest point, if ChooseFarthestPathPoint is used), on the path if he senses an enemy."
input StopBreakableMovement(void) : "The helicopter can not disobey direct commands. He will continue to fly along his patrol path or to his specified target even if he senses an enemy."
spawnflags(Flags) =
[
// AWAIT INPUT will make the helicopter spawn disabled, awaiting
@NPCClass base(BaseHelicopter, Studiomodel) studioprop() = npc_helicopter_custom : "A custom helicopter. It can't attack. Aww..."
[
model(studio) : "World Model" : "models/combine_helicopter.mdl" : "Should probably still have the right attachments."
MaxSpeed(float) : "Max Speed" : "1056" : "The helicopter's maximum speed."
//MaxFiringSpeed(float) : "Max Firing Speed" : "" : "The helicopter's maximum firing speed...you know, if it could DO THAT!"
Acceleration(float) : "Acceleration" : "5.0" : "The helicopter's acceleration rate."
RotorSound(sound) : "Rotor Sound" : "NPC_AttackHelicopter.Rotors" : "The helicopter's looping rotor sound. Supports Game Sounds and direct filenames."
RotorBlast(sound) : "Rotor Blast" : "NPC_AttackHelicopter.RotorBlast" : "The helicopter's rotor blast sound, which plays when the helicopter is pushing away physics objects under it. Supports Game Sounds and direct filenames."
_lightscaleHDR(float) : "BrightnessScaleHDR" : "1" : "Amount to scale the light by when compiling for HDR."
style(Choices) : "Appearance" : 0 =
[
0 : "Normal"
10: "Fluorescent flicker"
2 : "Slow, strong pulse"
11: "Slow pulse, noblack"
5 : "Gentle pulse"
1 : "Flicker A"
6 : "Flicker B"
3 : "Candle A"
7 : "Candle B"
8 : "Candle C"
4 : "Fast strobe"
9 : "Slow strobe"
]
pattern(string) : "Custom Appearance" : "" : "Set a custom pattern of light brightness for this light. Pattern format is a string of characters, where 'a' is total darkness, 'z' fully bright. i.e. 'aaggnnttzz' would be a steppy fade in from dark to light."
_constant_attn(string) : "Constant" : "0"
_linear_attn(string) : "Linear" : "0"
_quadratic_attn(string) : "Quadratic" : "1"
_fifty_percent_distance(string) : "50 percent falloff distance" : "0": "Distance at which brightness should fall off to 50%. If set, overrides linear constant and quadratic paramaters."
_zero_percent_distance(string) : "0 percent falloff distance" : "0": "Distance at which brightness should fall off to negligible (1/256)%. Must set _fifty_percent_distance to use."
_hardfalloff(integer) : "Hard falloff" : 0 : "If set, causes lights to fall to exactly zero beyond the zero percent distance. May cause unrealistic lightijng if not used carefully."
input Toggle(void) : "Toggle the light's current state."
input SetPattern(string) : "Set a custom pattern of light brightness for this light. Pattern format is a string of characters, where 'a' is total darkness, 'z' fully bright. i.e. 'aaggnnttzz' would be a steppy fade in from dark to light."
input FadeToPattern(string) : "Fades from first value in old pattern, to first value in the new given pattern. Pattern format is a string of characters, where 'a' is total darkness, 'z' fully bright. i.e. 'aaggnnttzz' would be a steppy fade in from dark to light."
hintactivity(string) : "Hint Activity" : "" : "Activity associated with this hint node. Various parts of the NPC AI play this activity at times. i.e. Actbusy nodes will play this activity when an NPC acts busy on the node."
nodeFOV(choices) : "Node FOV" : 180 : "Imagine this node requires that an NPC be in the node's field of view in order to use this hint." =
[
45 : "45 Degrees"
90 : "90 Degrees"
180 : "180 Degrees"
360 : "360 Degrees"
]
// Does not inherit from EnableDisable, as node itself will
// use that. This is enabling/disabling of the hint only
StartHintDisabled(choices) : "Start Hint Disabled" : 0 =
Group(string) : "Hint Group" : "" : "If specified, gives the hint a specific group name. NPCs may refuse to use hint nodes that don't match their hint group. Also useful for hints that need to be logically grouped together. Wildcards are supported."
TargetNode(node_dest) : "Target node" : -1 : "The node ID of an associated target node, if any. This can be used if the hint node acts as a path_corner, or for overriding jumping permission."
filtername(filterclass) : "Filter Name" : : "Filter to use to see if activator triggers me. See filter_activator_name for more explanation."
// Inputs
input Toggle(void) : "Toggles this trigger between enabled and disabled states."
// Outputs
output OnStartTouch(void) : "Fired when an entity starts touching this trigger. The touching entity must pass this trigger's filters to cause this output to fire."
output OnStartTouchAll(void) : "Fired when an entity starts touching this trigger, and no other entities are touching it. Only entities that passed this trigger's filters are considered."
output OnEndTouch(void) : "Fired when an entity stops touching this trigger. Only entities that passed this trigger's filters will cause this output to fire."
output OnEndTouchAll(void) : "Fires when an entity stops touching this trigger, and no other entities are touching it. Only entities that passed this trigger's filters are considered."
message(string) : "Map Description / Title" : : "A description/title for your map. This is not used in the code, but it's saved in the VMF and can be used for metadata purposes."
chaptertitle(string) : "Chapter/Savegame Title" : "" : "A ''chapter'' title that this map should identify with. Outside of Mapbase, this is used to make the chapter title appear onscreen when the level starts, but now it can change the message seen in the save/load menus, can be seen in Discord RPC, and the onscreen message behavior is now disabled by default (doesn't affect existing maps) through the ''Display Chapter Title Message'' keyvalue."
chaptertitlenomessage(choices) : "Display Chapter Title Message" : 1 : "Controls whether the Chapter Title Message should show up in a generated env_message when the map loads or whether it should only be used for savegame comments and RPC. This would normally be set to ''Yes'' outside of Mapbase." =
newunit(choices) : "New Level Unit" : 0 : "Used to clear out savegame data of previous levels to keep the savegame size as small as possible. Only set it to Yes if the player cannot return to any previous levels." =
[
0 : "No, keep current"
1 : "Yes, clear previous levels"
]
maxoccludeearea(float) : "Max occludee area" : "0" : "[Used on PC] Prevents occlusion testing for entities that take up more than X% of the screen."
minoccluderarea(float) : "Min occluder area" : "0" : "[Used on PC] Prevents occluders from being used if they take up less than X% of the screen."
maxoccludeearea_x360(float) : "Max occludee area (Xbox)" : "0" : "[Used on 360] Prevents occlusion testing for entities that take up more than X% of the screen."
minoccluderarea_x360(float) : "Min occluder area (Xbox)" : "0" : "[Used on 360] Prevents occluders from being used if they take up less than X% of the screen."
maxpropscreenwidth(float) : "Start Fade Pixels" : -1 : "Number of pixels wide at which all props in the level start to fade (<0 = use fademaxdist). This number is ignored if the prop has a specific fade distance specified."
minpropscreenwidth(float) : "End Fade Pixels" : 0 : "Minimum number of pixels wide at which the prop is visible (0 = don't fade out). This number is ignored if the prop has a specific fade distance specified."
detailvbsp(string) : "Detail.vbsp file" : "detail.vbsp" : "Detail.vbsp file to use for emitting detail props (found in directory <root>/modname)"
detailmaterial(string) : "Detail material file" : "detail/detailsprites" : "Material for detail sprites to use for drawing detail props"
@PointClass base(Targetname, Parentname) iconsprite("editor/ambient_generic.vmt") sphere(radius) = ambient_generic : "Universal ambient sound. Use it to play and control a single sound."
SourceEntityName(target_destination) : "SourceEntityName" : : "If an entity is specified, sound will come from this named entity instead of the location of ambient_generic."
// Inputs
input Pitch(integer) : "Sets the sound pitch, expressed as a range from 1 to 255, where 100 is the sound's default pitch."
input PlaySound(void) : "Starts the sound."
input StopSound(void) : "Stops the sound if it is playing."
input ToggleSound(void) : "Toggles the sound between playing and stopping."
input Volume(integer) : "Sets the sound volume, expressed as a range from 0 to 10, where 10 is the loudest."
input FadeIn(integer) : "Fades the sound up to full volume over a specified number of seconds, with a range from 0 to 100 seconds."
input FadeOut(integer) : "Fades the sound to silence over a specified number of seconds, with a range from 0 to 100 seconds."
"Brush-built model that fades out over a specified distance. Useful for creating world detail that doesn't need to be drawn far away, for performance reasons."
DisappearDist(integer) : "Disappear Distance" : 2000 : "Distance at which these brushes should start to fade out."
DisappearMaxDist(integer) : "Maximum Disappear Distance" : 0 : "If specified, this would be distance at which these brushes should fade out completely. If 0, it will combine the regular disappear distance with the value stored in the 'lod_TransitionDist' convar, which is 800 by default."
Solid(choices) : "Solid" : 0 : "Set whether or not these brushes should collide with other entities." =
[
0: "Solid"
1: "Nonsolid"
]
]
@PointClass base(Targetname) = env_zoom :
"An entity that can be used to control the player's FOV. Useful for scenes where the player's view is being controlled, or player-usable binoculars/telescopes, etc."
[
Rate(float) : "Seconds to reach target" : "1.0" : "Amount of time it should take to reach the specified FOV."
FOV(integer) : "Target FOV" : 75 : "FOV that this entity should set the player's FOV to when active."
// Inputs
input Zoom(void) : "Start controlling the player's FOV."
input UnZoom(void) : "Stop controlling the player's FOV."
"An entity that can display and control a set of screen overlays, to be displayed over the player's view. Useful for view effects like drunkenness, or teleporter afterimages, etc."
[
OverlayName1(string) : "Overlay Name 1" : "" : "Name of the first overlay material to display."
OverlayTime1(float) : "Overlay Duration 1" : "1.0" : "Amount of time that the first overlay should be displayed for, after which it will begin showing the second overlay."
OverlayName2(string) : "Overlay Name 2" : "" : "Name of the second overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime2(float) : "Overlay Duration 2" : "1.0" : "Amount of time that the second overlay should be displayed for, after which it will begin showing the third overlay."
OverlayName3(string) : "Overlay Name 3" : "" : "Name of the third overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime3(float) : "Overlay Duration 3" : "1.0" : "Amount of time that the third overlay should be displayed for, after which it will begin showing the fourth overlay."
OverlayName4(string) : "Overlay Name 4" : "" : "Name of the fourth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime4(float) : "Overlay Duration 4" : "1.0" : "Amount of time that the fourth overlay should be displayed for, after which it will begin showing the fifth overlay."
OverlayName5(string) : "Overlay Name 5" : "" : "Name of the fifth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime5(float) : "Overlay Duration 5" : "1.0" : "Amount of time that the fifth overlay should be displayed for, after which it will begin showing the sixth overlay."
OverlayName6(string) : "Overlay Name 6" : "" : "Name of the sixth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime6(float) : "Overlay Duration 6" : "1.0" : "Amount of time that the sixth overlay should be displayed for, after which it will begin showing the seventh overlay."
OverlayName7(string) : "Overlay Name 7" : "" : "Name of the seventh overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime7(float) : "Overlay Duration 7" : "1.0" : "Amount of time that the seventh overlay should be displayed for, after which it will begin showing the eighth overlay."
OverlayName8(string) : "Overlay Name 8" : "" : "Name of the eighth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime8(float) : "Overlay Duration 8" : "1.0" : "Amount of time that the eighth overlay should be displayed for, after which it will begin showing the ninth overlay."
OverlayName9(string) : "Overlay Name 9" : "" : "Name of the ninth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime9(float) : "Overlay Duration 9" : "1.0" : "Amount of time that the ninth overlay should be displayed for, after which it will begin showing the tenth overlay."
OverlayName10(string) : "Overlay Name 10" : "" : "Name of the tenth overlay material to display. If left blank, overlay displaying will finish, and this entity will consider itself done."
OverlayTime10(float) : "Overlay Duration 10" : "1.0" : "Amount of time that the tenth overlay should be displayed for, after which this entity will stop displaying overlays."
// Inputs
input StartOverlays(void) : "Start displaying the first overlay."
input StopOverlays(void) : "Stop displaying any overlays."
input SwitchOverlay(float) : "Switch to displaying a specific overlay. Pass in the desired overlay number in the parameter."
]
@PointClass base(Targetname) = env_screeneffect :
"Allows screenspace effects to be played on the player's view."
"An entity that creates a splash effect at its origin. If the 'find water surface' spawnflag is set, it will instead trace down below itself to find the water surface on which to create splashes."
"An entity that can be used to light the smoke particles emitted by env_smokestack entities. Does not light any other particle types."
[
Color(color255) : "Color" : "255 0 0" : "Color emitted by this light."
Intensity(integer) : "Intensity" : 5000
directional(choices) : "Directional" : 0 : "If this is specified, then this light will use the bump map on the particles. Each particle system can have one ambient and one directional light." =
"An entity to control & draw a sun effect in the sky."
[
target(target_destination) : "Viewer entity" : : "Name of an entity used to determine where the sun is in the skybox. The sun should be lined up on a line from this entity to the env_sun entity."
use_angles(choices) : "UseAngles" : 0 : "The old way to orient env_sun is to point it at a target. The new way is to specify the angles. If you use the new way, set this property to YES." =
[
0 : "No"
1 : "Yes"
]
pitch(integer) : "Pitch" : 0
rendercolor(color255) : "Sun Color (R G B)" : "100 80 80"
overlaycolor(color255) : "Overlay Color (R G B)" : "0 0 0" : "A value of 0 0 0 will act the old way."
size(integer) : "Size" : 16
overlaysize(integer) : "Overlay Size" : -1 : "A value of -1 means the overlay will act the old way."
material(sprite) : "Material Name" : "sprites/light_glow02_add_noz" : "Material of the inner glow."
overlaymaterial(sprite) : "Overlay Material Name" : "sprites/light_glow02_add_noz" : "Material of the overlay glow."
HDRColorScale(float) : "HDR color scale." : "1.0" : "float value to multiply sprite color by when running in HDR mode."
"An entity to control the number of ragdolls in the world, for performance reasons."
[
MaxRagdollCount(integer) : "Max Ragdoll Count" : -1 : "Sets the max number of ragdolls that can be in the world at a time (if they are flagged to fade). Set to -1 if you want to use the default value (g_ragdoll_maxcount)."
MaxRagdollCountDX8(integer) : "Max Ragdoll Count DX8" : -1 : "Sets the max number of ragdolls that can be in the world at a time on DX8 hardware (if they are flagged to fade). Set to -1 if you want to use the 'Max Ragdoll Count' value."
SaveImportant(choices) : "Save Important Ragdolls" : 0 : "Should the ragdoll manager make sure ally ragdolls aren't deleted?" =
[
0 : "No"
1 : "Yes"
]
// Inputs
input SetMaxRagdollCount(integer) : "Set the Max Ragdoll Count."
input SetMaxRagdollCountDX8(integer) : "Set the Max Ragdoll Count on DX8 hardware."
]
@PointClass base(Targetname) = game_gib_manager : "An entity to control the number of gibs in the world, for performance reasons."
[
maxpieces(integer) : "Max Gib Count" : -1 : "Sets the max number of gib that can be spawned at a time. (-1=no limit)"
maxpiecesdx8(integer) : "Max Gib Count On DX8" : -1 : "Sets the max number of gib that can be spawned at a time under DX8. (-1=use Max Gib Count setting)"
allownewgibs(choices) : "Allow New Gibs To Spawn" : 0 : "If true, when the max gib count is reached, oldest gibs are removed as new gibs spawn. If false, new gibs will not be spawned once the gib limit is reached." =
[
0 : "No"
1 : "Yes"
]
input SetMaxPieces(integer) : "Set the max gib count."
input SetMaxPiecesDX8(integer) : "Set the max gib count under DX8."
MinDist(integer) : "Minimum Distance" : 500 : "The distance at which this effect will be fully translucent."
MaxDist(integer) : "Maximum Distance" : 2000 : "The distance at which this effect will be at full intensity."
OuterMaxDist(integer) : "Outer Maximum Distance" : 0 : "If larger than the maximum distance, this is the length at which the glow will fade completely out, between the span of the maximum distance and this length."
GlowProxySize(float) : "Glow Proxy Geometry Size" : "2.0" : "Size of the glow to be rendered for visibility testing. Must be larger than the distance from the sprite center to empty space. So if this glow is inside geometry (like a light bulb), set this value to be bigger than the bulb's radius. Any time a sphere of this radius would be visible (poking through any nearby geometry), the glow will be rendered."
HDRColorScale(float) : "HDR color scale." : "1.0" : "float value to multiply sprite color by when running in HDR mode."
// Inputs
input Color(color255) : "Change the render color of the glow. Format: <Red 0-255> <Green 0-255> <Blue 0-255>"
"An entity that spits out a constant stream of smoke. See particlezoo.vmf for sample usage. You can place up to two env_particlelight entities near the smoke stack to add ambient light to its particles."
BaseSpread(integer) : "Spread at the base" : 20 : "Amount of random spread in the origins of the smoke particles when they're spawned."
SpreadSpeed(integer) : "Spread Speed" : 15 : "Amount of random spread in the velocity of the smoke particles after they're spawned."
Speed(integer) : "Speed" : 30 : "The speed at which the smoke particles move after they're spawned."
StartSize(integer) : "Particle start size" : 20 : "Size of the smoke particles when they're first emitted."
EndSize(integer) : "Particle end size" : 30 : "Size of the smoke particles at the point they fade out completely."
Rate(integer) : "Emission rate" : 20 : "Rate at which to emit smoke particles (i.e. particles to emit per second)."
JetLength(integer) : "Length of smoke trail" : 180 : "Length of the smokestack. Lifetime of the smoke particles is derived from this & particle speed."
WindAngle(integer) : "Wind X/Y Angle" : 0 : "This specifies the wind direction. It is an angle in the XY plane. WindSpeed specifies the strength of the wind."
WindSpeed(integer) : "Wind Speed" : 0 : "The strength of the wind."
SmokeMaterial(string) : "Particle material" : "particle/SmokeStack.vmt" : "Material of the smoke particles emitted by this stack."
twist(integer) : "Twist" : 0 : "The amount, in degrees per second, that the smoke particles twist around the origin."
roll(float) : "Roll Speed": 0 : "Amount of roll in degrees per second."
rendercolor(color255) : "Base Color (R G B)" : "255 255 255"
renderamt(integer) : "Translucency" : 255
// Inputs
input TurnOn(void) : "Turn on the smokestack."
input TurnOff(void) : "Turn off the smokestack."
input Toggle(void) : "Toggles the smokestack between on and off state."
input JetLength(integer): "Set the length of the smoke trail."
input Rate(integer) : "Set the rate at which to emit smoke particles (particles per second)."
input Speed(integer) : "Set the speed at which the smoke particles move after they're spawned."
input SpreadSpeed(integer) : "Set the amount of random spread in the velocity of the smoke particles after they're spawned."
"An entity that monitors the material of the surface the player is standing on, and fires outputs whenever it changes to/from a specific material."
[
gamematerial(choices) : "Game Material to Watch" : "0" : "The material to watch. When the player stands on/off this material, this entity's outputs will be fired." =
[
0 : "None (player's in the air)"
67 : "Concrete"
77 : "Metal"
68 : "Dirt"
86 : "Vent"
71 : "Grate"
84 : "Tile"
83 : "Slosh"
87 : "Wood"
80 : "Computer"
89 : "Glass"
70 : "Flesh"
73 : "Clip"
79 : "Foliage"
78 : "Sand"
]
// Inputs
input Enable(void) : "Start watching the player's surface."
input Disable(void) : "Stop watching the player's surface."
// Outputs
output OnSurfaceChangedToTarget(void) : "Fired when the player moves onto the specified game material."
output OnSurfaceChangedFromTarget(void) : "Fired when the player moves off the specified game material."
input SetTonemapScale(float) : "Set the player's tonemap scale. It should be a value between 0 and 2, where 0 is the eyes fully closed, 1 is use the unchanged autoexposure (default), and 2 is the eye fully wide open."
input BlendTonemapScale(string) : "Blend from the player's current tonemap scale to a new one. The parameter syntax is as follows: <target tonemap scale> <blend duration>. For example: '0.5 10' would blend from the current tonemap scale to 0.5 over a period of 10 seconds. Tonemap scale is a value between 0 and 2, where 0 is the eyes fully closed, 1 is use the unchanged autoexposure (default), and 2 is the eye fully wide open."
input UseDefaultAutoExposure(void) : "Revert to using the default tonemap auto exposure."
"An entity to handle endpoints for multiple ladders that are too close to each other."
[
target(target_destination) : "LadderName" : : "If multiple ladders are near multiple endpoints, use this to stop them from interfering with each other."
"An entity that can be used to optimize the visibility in a map. If you seal off an area with them, when the viewer moves the specified distance away from them, they will go opaque and the parts inside the area will not be drawn. The 'target' brush model should enclose the func_areaportal window so no parts of it are culled by the window. If you use the optional foreground brush model, then it should enclose the 'target' brush model."
[
target(target_destination) : "Rendered Window" : : "The name of a brush model to render as the window."
FadeStartDist(integer) : "Fade Start Distance" : 128 : "When the viewer is closer than this distance, the alpha is set to 'TranslucencyLimit'."
FadeDist(integer) : "Fade End Distance" : 512 : "When the viewer is at this distance, the portal becomes solid and closes off."
TranslucencyLimit(string) : "Translucency limit" : "0.2" : "This value limits the translucency of the bmodel and prevents it from becoming invisible when the viewer is right on top of it."
BackgroundBModel(string) : "Foreground bmodel" : "" : "(Optional) brush model that is drawn after the fading brush model. This model should have alpha in its textures so you can see through it."
PortalVersion(integer) readonly : "Portal Version" : 1 : "(Don't change). Differentiates between shipping HL2 maps and maps using new engine features."
"A brush entity that's considered solid to vphysics."
[
filtername(filterclass) : "Filter Name" : : "Filter to use to see if activator collides with me. See filter_activator_name for more explanation. Allow means 'Allow to Block' for this entity."
excludednpc(target_name_or_class) : "NPC class excluded from collisions" : "" : "If an NPC classname is specified here, NPCs of that type won't collide with these brushes. In Episodic, you may also specify an individual entity's name."
invert_exclusion(choices) : "Invert NPC class exclusion" : 0 : "If set, then the excluded NPC class will consider this brush solid, and all other NPC classes will consider it non-solid." =
[
0 : "No"
1 : "Yes"
]
solidbsp(choices) : "Solid BSP" : 0 : "Set this if this brush is in heirarchy with a moving object of some kind, and the player can stand on this brush." =
[
0 : "No"
1 : "Yes"
]
vrad_brush_cast_shadows(choices) : "Shadows" : 0 : "Set this if this brush casts lightmap shadows." =
[
0 : "No"
1 : "Yes"
]
input Alpha(integer) : "Sets the brush's alpha value."
overlaymaterial(string) : "Overlay Material" : "" : "Name of a material to overlay over the top of the VGUI screen. NOTE: This material must write Z for the VGUI screen to work."
width(integer) : "Panel Width in World" : 32 : "Width of the panel in units."
height(integer) : "Panel Height in World" : 32 : "Height of the panel in units."
// Inputs
input SetActive(void) : "Make the vgui screen visible."
input SetInactive(void) : "Make the vgui screen invisible."
skin(integer) : "Skin" : 0 : "Some models have multiple versions of their textures, called skins. Set this to a number other than 0 to use that skin instead of the default."
sequence(integer) : "Sequence" : 0 : "Default animation sequence for the model to be playing after spawning."
// Inputs
input SetSequence(string) : "Sets the cycler's sequence."
angles(string) : "Gib Direction (Pitch Yaw Roll)" : "0 0 0" : "The direction the gibs will fly."
m_iGibs(integer) : "Number of Gibs" : 3 : "Total number of gibs to shoot each time it's activated."
delay(string) : "Delay between shots" : "0" : "Delay (in seconds) between shooting each gib. If 0, all gibs shoot at once."
gibangles(string) : "Gib Angles (Pitch Yaw Roll)" : "0 0 0" : "The orientation of the spawned gibs."
gibanglevelocity(string) : "Max angular velocity" : "0" : "How fast (degrees/sec) the gib pieces should spin. They will spin on x and y axis at between 10% and 100% of this speed."
m_flVelocity(integer) : "Gib Velocity" : 200 : "Speed of the fired gibs"
m_flVariance(string) : "Course Variance" : "0.15" : "How much variance in the direction gibs are fired."
m_flGibLife(string) : "Gib Life" : "4" : "Time in seconds for gibs to live +/- 5%"
lightingorigin(target_destination) : "Lighting Origin" : "" : "Select an info_lighting to specify a location to sample lighting from for all gibs spawned by this shooter, instead of their own origins."
"An entity that creates a visible beam between two points. The points can be attached to entities to make the beam move around."
[
renderamt(integer) : "Brightness (1 - 255)" : 100
rendercolor(color255) : "Beam Color (R G B)" : "255 255 255"
Radius(integer) : "Radius" : 256 : "If the 'Random Strike' spawnflag is set, this radius determines the area within which the endpoints will randomly strike."
life(string) : "Life (seconds 0 = infinite)" : "1" : "Amount of time before the beam dies. Setting to zero will make the beam stay forever."
BoltWidth(float) : "Width of beam" : 2 : "Pixel width of the beam."
NoiseAmplitude(float) : "Amount of noise (0-255)" : 0 : "The amount of noise in the beam. 0 is a perfectly straight beam."
texture(sprite) : "Sprite Name" : "sprites/laserbeam.spr" : "The material used to draw the beam."
TextureScroll(integer) : "Texture Scroll Rate (0-100)" : 35 : "Rate at which the beam texture should scroll along the beam."
framerate(integer) : "Frames per 10 seconds" : 0 : "Framerate at which the beam texture should animate, if it has multiple frames."
framestart(integer) : "Starting Frame" : 0 : "The frame to start the beam texture on."
StrikeTime(string) : "Strike again time (secs)" : "1" : "Refire time between random strikes of the beam. Only used if the 'Random Strike' spawnflag is set."
damage(string) : "Damage / second" : "0" : "How much damage this beam does per second to things it hits when it is continually on, or instantaneously if it strikes. For continuous damage, the value should be greater than 10 or it may not work."
LightningStart(target_destination) : "Start Entity" : "" : "Entity that the beam starts at."
LightningEnd(target_destination) : "Ending Entity" : "" : "Entity that the beam ends at."
decalname(string) : "Decal Name" : "Bigshot" : "Decal to be applied at the end of the beam"
HDRColorScale(float) : "HDR color scale." : "1.0" : "float value to multiply sprite color by when running in HDR mode."
TouchType(choices) : "Touch Type (tripwire)" : 0 : "If you want the beam to fire an output when touched by entities, choose the entity type here." =
[
0 : "Not a tripwire"
1 : "Player Only"
2 : "NPC Only"
3 : "Player or NPC"
4 : "Player or NPC or Physprop"
]
filtername(filterclass) : "Filter Name" : : "Filter to use to see if activator triggers me. See filter_activator_name for more explanation."
// Inputs
input TurnOn(void) : "Turns the beam on."
input TurnOff(void) : "Turns the beam off."
input Toggle(void) : "Toggles the beam between on and off."
input StrikeOnce(void) : "Causes the beam to strike once. It will stay on for its set Life and then turn off (it will never turn off if Life is set to zero)."
input Alpha(integer) : "Sets the beam's alpha (0 - 255)."
input Color(color255) : "Sets the beam's render color (R G B)."
input ColorRedValue(float) : "Sets the red color channel's value (0 - 255)."
input ColorGreenValue(float) : "Sets the green color channel's value (0 - 255)."
input ColorBlueValue(float) : "Sets the blue color channel's value (0 - 255)."
input Amplitude(float) : "Set the amplitude of beam noise (0 - 255)."
input ScrollSpeed(float) : "Set the scroll speed in units per second (0 - 100)."
input Width(float) : "Set the width of the beam, in pixels."
spraydir(angle) : "Spray Direction (Pitch Yaw Roll)" : "0 0 0" : "The general direction that the blood should spray and the direction to trace to apply the decal."
color(choices) : "Blood Color" : 0 =
[
0 : "Red (Human)"
1 : "Yellow (Alien)"
]
amount(string) : "Amount of blood (damage to simulate)" : "100"
"An entity that creates an explosion at its origin."
[
iMagnitude(Integer) : "Magnitude" : 100 : "The amount of damage done by the explosion."
// If no radius override, magnitude will determine radius.
iRadiusOverride(Integer) : "Radius Override" : 0 : "If specified, the radius in which the explosion damages entities. If unspecified, the radius will be based on the magnitude."
opacity(float) : "Sprite Opacity" : "0.75" : "Opacity of the sprites (range from 0 - 1)."
spawnrate(float) : "Spawn Rate" : "20" : "Number of particles to emit each second."
lifetime(float) : "Particle Life Time" : "5.0" : "Number of seconds until each particle dies."
startcolor(color255) : "Start Color" : "192 192 192" : "Starting color of the emitted particles."
endcolor(color255) : "End Color" : "160 160 160" : "Ending color of the emitted particles."
emittime(float) : "Emitter Life Time" : "0" : "Number of seconds until the env_smoketrail stops emitting particles. 0 means never stop emitting particles."
minspeed(float) : "Minimum Random Speed" : "10" : "Minimum randomly-directed speed to use for emitted particles."
maxspeed(float) : "Maximum Random Speed" : "20" : "Maximum randomly-directed speed to use for emitted particles."
mindirectedspeed(float) : "Minimum Directed Speed" : "0" : "Minimum speed along the env_smoketrail's forward direction (x axis) to use for emitted particles."
maxdirectedspeed(float) : "Maximum Directed Speed" : "0" : "Maximum speed along the env_smoketrail's forward direction (x axis) to use for emitted particles."
"An entity that creates an explosion at its origin. If the no-damage spawnflag is set, the explosion won't be visible, but will apply force to any physics objects within its radius."
[
magnitude(string) : "Magnitude" : "100" : "Amount of physics force applied by the explosion."
radius(string) : "Clamp Radius (0 = auto)" : "0" : "If specified, the radius in which the explosion damages entities. If unspecified, the radius will be based on the magnitude."
targetentityname(target_destination) : "Limit to Entity" : "" : "If specified, the explosion will only affect the matching entity."
magnitude(integer) : "Magnitude" : 100 : "Strength of the impact."
distance(integer) : "Distance" : 0 : "How far to project the impact (if 0 uses a default value)."
directionentityname(target_destination) : "Point to Entity" : "" : "If set, 'Distance' and Angle settings are ignored and the direction and distance to the target entity will be used."
"An entity that handles a single flame at its origin. The flame causes heat 'damage' to other env_fire entities around it, and will eventually ignite non-flaming env_fire entities nearby, causing the fire to spread."
[
health(integer) : "Duration" : 30 : "Amount of time the fire will burn."
firesize(integer) : "Size" : 64 : "Height (in world units) of the flame."
fireattack(integer) : "Attack" : 4 : "Amount of time the fire takes to grow to full strength."
fireradius(float) : "Radius" : 128 : "The radius around this entity in which to detect heat changes."
heatlevel(float) : "Heat level" : 32 : "The target heat level to check for. Outputs are fired when the heat moves over this target level (increasing or decreasing)."
heattime(float) : "Time at level" : 0 : "The amount of time the heat level must spend over the target level before the 'OnHeatLevelStart' output is fired."
// Inputs
input Enable(void) : "Enable fire sensor."
input Disable(void) : "Disable fire sensor."
output OnHeatLevelStart(void) : "Fires when the heat level has been sustained for the specified length of time."
output OnHeatLevelEnd(void) : "Fires when the heat level drops below the target level."
"An entity that catches a target entity on fire. If the entity is an animating model, it will have sprite flames attached to its skeleton. Otherwise the entity will emit particle flame puffs."
[
target(target_destination) : "Entity to ignite" : : "Name of the entity to catch on fire."
lifetime(float) : "Lifetime in seconds" : 10 : "Duration of flames."
"An entity that creates a laser beam between itself and a given target."
[
LaserTarget(target_destination) : "Target of Laser" : : "Name of entity, or entities, to strike at. The target is randomly chosen if there are multiple entities matching the given name."
renderamt(integer) : "Brightness (1 - 255)" : 100
rendercolor(color255) : "Beam Color (R G B)" : "255 255 255"
width(float) : "Width of Beam" : 2 : "The width of the laser beam, in pixels."
NoiseAmplitude(integer) : "Amount of noise (0-255)" : 0 : "The amount of noise in the beam. 0 is a perfectly straight beam."
texture(sprite) : "Sprite Name" : "sprites/laserbeam.spr" : "The material used to draw the laser beam."
EndSprite(sprite) : "End Sprite" : "" : "If specified, this sprite will be drawn at the end of the laser beam."
TextureScroll(integer) : "Texture Scroll Rate (0-100)" : 35 : "Rate at which the beam texture should scroll along the beam."
framestart(integer) : "Starting Frame" : 0 : "The frame to start the beam texture on."
damage(string) : "Damage / second" : "100" : "How much damage this laser does. per second. to things it hits."
input SetTarget(target_destination) : "Sets the laser's target."
// Outputs
output OnTouchedByEntity(void) : "Fired when an entity touches the laser. Please note this fires for each frame the entity is touching, unlike env_beam."
amplitude(float) : "Amplitude (0-16)" : "4" : "The amount of noise in the screen shake. Should be a range between 0 and 16."
radius(float) : "Effect Radius" : "500" : "The radius around this entity in which to affect players."
duration(float) : "Duration (seconds)" : "1" : "The length of time in which to shake the player's screens."
frequency(float) : "Frequency" : "2.5" : "The frequency used to apply the screen shake. Should be a value between 0 and 255, where 0.1 = jerk, and 255.0 = rumble."
// Inputs
input Amplitude(string) : "Set the amplitude (0-16)"
input Frequency(string) : "Set the frequence. Should be a value between 0 and 255, where 0.1 = jerk, and 255.0 = rumble."
"An entity that shoots models, or sprites, out of its origin."
[
shootmodel(studio) : "Model" : "" : "Thing to shoot out. Can be a .mdl or a .vmt."
shootsounds(choices) :"Material Sound" : -1 =
[
-1: "None"
0: "Glass"
1: "Wood"
2: "Metal"
3: "Flesh"
4: "Concrete"
]
simulation(choices) :"Simulate" : 0 =
[
0: "Point"
1: "Physics"
2: "Ragdoll"
]
skin(integer) : "Gib Skin" : 0 : "Some models have multiple versions of their textures, called skins. Set this to a number other than 0 to use that skin on all gibs produced by this shooter."
nogibshadows(choices) :"Disable Shadows on Gibs" : 0 =
[
0: "No"
1: "Yes"
]
gibgravityscale(float) : "Gib gravity scale" : "1" : "ONLY WORKS FOR POINT GIBS. This field allows you to scale gravity so that gibs fall faster, slower, or not at all."
massoverride(float) : "Mass override" : "0" : "EPISODIC ONLY. Specify an arbitrary mass for the gibs emitted by me."
"An entity that creates gibs when it's within the influence of a helicopter's rotor wash."
[
shootmodel(studio) : "Model" : "" : "Thing to shoot out. Can be a .mdl or a .vmt."
shootsounds(choices) :"Material Sound" : -1 =
[
-1: "None"
0: "Glass"
1: "Wood"
2: "Metal"
3: "Flesh"
4: "Concrete"
]
simulation(choices) :"Simulate" : 0 =
[
0: "Point"
1: "Physics"
2: "Ragdoll"
]
skin(integer) : "Gib Skin" : 0 : "Some models have multiple versions of their textures, called skins. Set this to a number other than 0 to use that skin on all gibs produced by this shooter."
angles(angle) : "Gib Direction (Pitch Yaw Roll)" : "0 0 0" : "The direction the gibs will fly."
model(choices) : "Model" : "WoodChunks" : "Thing(s) to shoot out. The choices only matter when the model type is Breakable Chunks. If a specific model is needed, enter its file path. If a point_template is needed, enter the point_template's name." =
[
"WoodChunks" : "WoodChunks"
"GlassChunks" : "GlassChunks"
"MetalChunks" : "MetalChunks"
"ConcreteChunks" : "ConcreteChunks"
//"ComputerGibs" : "ComputerGibs"
//"CeilingTile" : "CeilingTile"
//"FleshGibs" : "FleshGibs"
//"WebGibs" : "WebGibs"
]
modeltype(choices) :"Model Type" : 0 : "The type of model to use." =
[
0: "Breakable Chunks"
1: "Specific Model"
2: "point_template"
]
SetCount(integer) : "Gib Count" : 15 : "Number of gibs to create."
SetDelay(float) : "Delay" : "0.0" : "Delay until gibs are shot."
SetGibSize(vector) : "Gib Size" : "0 0 0" : "The size of each gib."
SetGibSpeed(float) : "Gib Speed" : "200" : "The speed of each gib."
SetRandomization(integer) : "Randomization" : 100 : "The gib direction randomization factor."
SetLifetime(float) : "Lifetime" : "5" : "The lifetime of each gib."
SetGibFlags(integer) : "Gib Flags" : 0 : "The flags for each gib."
// Inputs
input Shoot(void) : "Shoots the gibs."
input SetCount(integer) : "Sets the number of gibs to create."
input SetDelay(float) : "Sets the delay until gibs are shot."
input SetGibSize(vector) : "Sets the size of each gib."
input SetGibSpeed(float) : "Sets the speed of each gib."
input SetRandomization(integer) : "Sets the gib direction randomization factor."
input SetLifetime(float) : "Sets the lifetime of each gib."
input SetGibFlags(integer) : "Sets the flags for each gib."
"An entity to control sound in an area. The active soundscape at any time is the last one that had line-of-sight to the player, and was within the radius."
[
radius(integer) : "Radius" : 128 : "If set to -1, then the player can hear the soundscape as long as he can see it (regardless of distance to it)."
soundscape(choices) : "Soundscape" : "Nothing" : "The name of the soundscape to use. Corresponds to an entry in the soundscapes*.txt file in the hl2\scripts directory." =
[
"Nothing" : "Nothing"
"Automatic" : "Automatic"
"Automatic_Dialog" : "Automatic (dialog)"
"GenericIndoor" : "Indoor"
"GenericOutdoor" : "Outdoor"
]
position0(target_destination) : "Sound Position 0" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position1(target_destination) : "Sound Position 1" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position2(target_destination) : "Sound Position 2" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position3(target_destination) : "Sound Position 3" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position4(target_destination) : "Sound Position 4" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position5(target_destination) : "Sound Position 5" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position6(target_destination) : "Sound Position 6" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
position7(target_destination) : "Sound Position 7" : "" : "A sound position that will be referenced inside the soundscape text file. Usually used to position a set of sounds within the world."
// Inputs
input Enable(void) : "Enable the soundscape."
input Disabled(void) : "Disable the soundscape."
input ToggleEnabled(void) : "Toggle the soundscape enabled state."
// Outputs
output OnPlay(void) : "Fired when this soundscape becomes the active one."
GlowProxySize(float) : "Size of Glow Proxy Geometry." : "2.0" : "Size of the glow to be rendered for visibility testing. Must be larger than the distance from the sprite center to empty space. So if this glow is inside geometry (like a light bulb), set this value to be bigger than the bulb's radius. Any time a sphere of this radius would be visible (poking through any nearby geometry), the glow will be rendered."
HDRColorScale(float) : "HDR color scale." : "1.0" : "float value to multiply sprite color by when running in HDR mode."
// Inputs
input ColorRedValue(float) : "Sets the red color channel's value (0 - 255)."
input ColorGreenValue(float) : "Sets the green color channel's value (0 - 255)."
input ColorBlueValue(float) : "Sets the blue color channel's value (0 - 255)."
input SetScale(float) : "Set the sprite's scale (0 - 8.0)."
input HideSprite(void) : "Hide the sprite. Won't be drawn until the 'ShowSprite' input is received."
input ShowSprite(void) : "Show the sprite."
input ToggleSprite(void) : "Toggle the sprite between hidden and shown."
GlowProxySize(float) : "Size of Glow Proxy Geometry." : "2.0" : "Size of the glow to be rendered for visibility testing. Must be larger than the distance from the sprite center to empty space. So if this glow is inside geometry (like a light bulb), set this value to be bigger than the bulb's radius. Any time a sphere of this radius would be visible (poking through any nearby geometry), the glow will be rendered."
HDRColorScale(float) : "HDR color scale." : "1.0" : "float value to multiply sprite color by when running in HDR mode."
// Inputs
input ColorRedValue(float) : "Sets the red color channel's value (0 - 255)."
input ColorGreenValue(float) : "Sets the green color channel's value (0 - 255)."
input ColorBlueValue(float) : "Sets the blue color channel's value (0 - 255)."
input SetScale(float) : "Set the sprite's scale (0 - 8.0)."
input HideSprite(void) : "Hide the sprite. Won't be drawn until the 'ShowSprite' input is received."
input ShowSprite(void) : "Show the sprite."
input ToggleSprite(void) : "Toggle the sprite between hidden and shown."
windradius(float) : "Radius" : "-1" : "The radius in which this env_wind should simulate wind. -1 = everywhere"
windradiusinner(float) : "Inner Radius" : "0" : "The inner-radius for the env_wind, which enables varying intensities at certain distances. 0 = no inner radius"
"An entity used to control the 3D Skybox. Its origin is used to determine the 3D Skybox's position relative to the map. Place this entity, in the 3D Skybox, at the point where the origin of the map should be."
parentname(target_destination) : "Parent" : : "The name of the entity to move with. NOTE: sky_camera's position is normally only updated on spawn. Fire the ForceUpdate or StartUpdating inputs to update the sky_camera's position! You might also want to enable Use Angles for Sky."
2: "[2] Continuously update position (for moving sky_cameras)" : 0
]
skycolor(color255) : "Sky Color" : "255 255 255 0" : "Causes the skybox to use a solid color instead of the sky texture specified in worldspawn. Blended alpha is unfortunately not supported, but an alpha of '0' disables the effect and any alpha greater than that (e.g. 255) enables the effect."
use_angles_for_sky(choices) : "Use Angles for Sky" : 0 : "Uses angles for actual skybox rotation, as if the world were tilted on this entity's axis." =
target(target_destination) : "Speaker entity" : "" : "All responses, including scenes, will be redirected to this entity if specified. Use the SetTarget input to change mid-game."
"An entity used to limit the number of a particular weapon type in the world. Useful in places where NPCs are spawning rapidly, dying, and dropping weapons."
[
weaponname(string) : "Weapon Classname" : "" : "Classname of the weapon type to limit."
maxpieces(integer) : "Max Allowed in Level" : 0 : "The maximum amount of the specified weapon type allowed in the world."
ammomod(float) : "Ammo modifier" : 1 : "Modifier for ammount of ammo dropped by a weapon."
// Inputs
input SetAmmoModifier(float): "Adjust the ammo modifier."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
"An entity that gives equipment to the player who activates it. To use, add new keys to this entity, where each key is the classname of a weapon/item, and the corresponding value is the number of those weapons/items to give to the player who uses this entity. If the 'Use Only' spawnflag isn't set, then players can just touch this entity to get the equipment."
//master(target_destination) : "Team Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
target(target_destination) : "game_team_master to use"
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
x(string) : "X (0 - 1.0 = left to right) (-1 centers)" : "-1" : "Horizontal position on the player's screens to draw the text. The value should be between 0 and 1, where 0 is the far left of the screen and 1 is the far right. -1 centers the text."
y(string) : "Y (0 - 1.0 = top to bottom) (-1 centers)" : "-1" : "Vertical position on the player's screens to draw the text. The value should be between 0 and 1, where 0 is the top of the screen and 1 is the bottom. -1 centers the text."
effect(Choices) : "Text Effect" : 0 =
[
0 : "Fade In/Out"
1 : "Credits"
2 : "Scan Out"
]
color(color255) : "Color1" : "100 100 100"
color2(color255) : "Color2" : "240 110 0"
fadein(string) : "Fade in Time (or character scan time)" : "1.5" : "The time it should take for the text to fully fade in."
fadeout(string) : "Fade Out Time" : "0.5" : "The time it should take for the text to fade out, after the hold time has expired."
holdtime(string) : "Hold Time" : "1.2" : "The time the text should stay onscreen, after fading in, before it begins to fade out."
fxtime(string) : "Scan time (scan effect only)" : "0.25" : "If the 'Text Effect' is set to Scan Out, this is the time it should take to scan out all the letters in the text."
channel(choices) : "Text Channel" : 1 : "You can have up to four individual game_text messages onscreen at once, stored in channels. Select which channel this text should be placed in, which will overwrite any active message already in that channel." =
master(target_destination) : "Master" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
"An entity that provides metadata for things like Discord."
[
spawnflags(flags) =
[
1: "[1] Update Steam" : 1
2: "[2] Update Discord" : 1
]
SetRPCState(string) : "RPC State" : "" : "Sets the 'state' that should be reported to rich presence clients like Discord. Shows the mod's name from gameinfo.txt by default."
SetRPCDetails(string) : "RPC Details" : "" : "Sets the 'details' that should be reported to rich presence clients like Discord. Shows the map being played by default."
input SetRPCState(string) : "Sets the RPC state."
input SetRPCDetails(string) : "Sets the RPC details."
"An entity used to move a motion-disabled prop when it enables motion. Parent this entity to the prop, and when the prop has its motion enabled, it will immediately teleport to the origin of this entity."
m_SourceEntityName(target_destination) : "Source Entity" : "" : "If specified, tesla lightning will originate from the specified entity. Otherwise, they originate from this entity."
"An entity that issues commands to the client console, as if it was typed in by the player (if activator is a player, or the local player in single player)."
FieldOfView(float) : "FieldOfView" : "-1.0" : "The amount of tolerance in the view checking when determining whether the player's input is still under control. 1.0 = straight ahead, 0.0 = +/- 90 degrees, -1.0 = all directions. If the player isn't within the tolerance, the player regains control."
output XAxis(string) : "An output that fires whenever the X axis of the player's input changes. i.e. -1 when the player has moveleft key down, 1 when the player has moveright key down, and 0 if neither."
output YAxis(string) : "An output that fires whenever the Y axis of the player's input changes. i.e. -1 when the player has backward key down, 1 when the player has forward key down, and 0 if neither."
output AttackAxis(string) : "An output that fires whenever the state of the player's attack key changes. i.e. 1 when the player has the attack key down, 0 otherwise."
output Attack2Axis(string) : "An output that fires whenever the state of the player's secondary attack key changes. i.e. 1 when the player has the secondary attack key down, 0 otherwise."
"An entity that will find an entity and pass it along as the !Caller with the OutEntity output. Requires using !Caller as the parameter on the input."
[
filtername(filterclass) : "Filter Name" : : "Filter to use to narrow set of findable entities. See filter_activator_name for more explanation."
referencename(target_destination) : "Reference Entity" : "" : "Name of the entity to use when evaluating criteria. For example, when using 'Nearest', this is the entity that distance will be measured from. If left blank will use the point_entity_finder."
Method(choices) : "Search Method" : "0" =
[
0 : "Nearest"
1 : "Farthest"
2 : "Random"
]
// Inputs
input FindEntity(void) : "Find an entity that meets the specified criteria. Will fire OutEntity if found and pass the entity as !Caller."
// Outputs
output OnFoundEntity(void) : "Fired when FindEntity is input and an entity was found. Passes the found entity as !Caller."
"An enhanced entity finder that finds entities that pass a filter and fires OnFoundEntity for each of them."
[
//
// This used to have an actual limit, 64, but now we've moved to a different model that has no limit.
// "The number of entities that can be found by this finder. 0 = No limit. Cannot exceed 64 when firing mode isn't none or output delay is greater than zero."
//
SearchFilter(filterclass) : "Filter Name" : : "The filter to use that finds what entit(ies) we're looking for."
SearchPoint(target_destination) : "Search Point" : "" : "This is the entity in which distance and radius is measured from. Leave blank to use the finder itself."
radius(float) : "Radius" : "0.0" : "The radius in which entities can be found. Leave 0 for infinite."
NumberOfEntities(integer) : "Max Results" : 0 : "The number of entities that can be found by this finder. 0 = No limit."
OutputDelay(float) : "Output Delay" : "0.0" : "OnFoundEntity fires once for each entity every X number of seconds. Deleted/killed/removed entities will not be skipped and a chain cannot be canceled, even if the finder is removed. Look into a more manual alternative if you do not want these side effects. Leave 0 for no delay."
Method(choices) : "Search Method" : "0" =
[
-1 : "None (first in ent list)"
0 : "Nearest"
1 : "Farthest"
2 : "Random"
]
// Inputs
input BeginSearch(void) : "Begins finding entities with all of the current options."
input SetSearchFilter(target_destination) : "Sets the search filter."
input SetSearchPoint(target_destination) : "Sets the search point."
input SetRadius(float) : "Sets the search radius."
input SetMaxResults(integer) : "Sets the maximum entities that could be found by this finder."
input SetOutputDelay(float) : "Sets the delay in between outputs."
input SetFiringMethod(integer) : "Sets the search method."
// Outputs
output OnFoundEntity(ehandle) : "Fires for each entity found, passing it as the parameter and the activator."
output OnSearchFailed(void) : "Fired when this finder couldn't find any entities."
"An entity that acts as a landmark for transitions to another level. There should be a corresponding info_landmark entity in the next map. Entities will be transitioned to the next level relative to the info_landmark entities."
"An entity that spawns a particle system built using the particle editor."
[
effect_name(string) : "Particle System Name"
start_active(choices) : "Start Active?" : 0 =
[
0 : "No"
1 : "Yes"
]
flag_as_weather(choices) : "Flag as Weather?" : 0 : "Is this particle system going to be used as a weather effect?" =
[
0 : "No"
1 : "Yes"
]
cpoint1(target_destination) : "Control Point 1" : : "If set, control point 1 of the effect will be at this entity's location."
cpoint2(target_destination) : "Control Point 2" : : "If set, control point 2 of the effect will be at this entity's location. If control point 1 is not set, this will be ignored."
cpoint3(target_destination) : "Control Point 3" : : "If set, control point 3 of the effect will be at this entity's location. If control point 2 is not set, this will be ignored."
cpoint4(target_destination) : "Control Point 4" : : "If set, control point 4 of the effect will be at this entity's location. If control point 3 is not set, this will be ignored."
cpoint5(target_destination) : "Control Point 5" : : "If set, control point 5 of the effect will be at this entity's location. If control point 4 is not set, this will be ignored."
cpoint6(target_destination) : "Control Point 6" : : "If set, control point 6 of the effect will be at this entity's location. If control point 5 is not set, this will be ignored."
cpoint7(target_destination) : "Control Point 7" : : "If set, control point 7 of the effect will be at this entity's location. If control point 6 is not set, this will be ignored."
cpoint8(target_destination) : "Control Point 8" : : "If set, control point 8 of the effect will be at this entity's location. If control point 7 is not set, this will be ignored."
cpoint9(target_destination) : "Control Point 9" : : "If set, control point 9 of the effect will be at this entity's location. If control point 8 is not set, this will be ignored."
cpoint10(target_destination) : "Control Point 10" : : "If set, control point 10 of the effect will be at this entity's location. If control point 9 is not set, this will be ignored."
cpoint11(target_destination) : "Control Point 11" : : "If set, control point 11 of the effect will be at this entity's location. If control point 10 is not set, this will be ignored."
cpoint12(target_destination) : "Control Point 12" : : "If set, control point 12 of the effect will be at this entity's location. If control point 11 is not set, this will be ignored."
cpoint13(target_destination) : "Control Point 13" : : "If set, control point 13 of the effect will be at this entity's location. If control point 12 is not set, this will be ignored."
cpoint14(target_destination) : "Control Point 14" : : "If set, control point 14 of the effect will be at this entity's location. If control point 13 is not set, this will be ignored."
cpoint15(target_destination) : "Control Point 15" : : "If set, control point 15 of the effect will be at this entity's location. If control point 14 is not set, this will be ignored."
cpoint16(target_destination) : "Control Point 16" : : "If set, control point 16 of the effect will be at this entity's location. If control point 15 is not set, this will be ignored."
cpoint17(target_destination) : "Control Point 17" : : "If set, control point 17 of the effect will be at this entity's location. If control point 16 is not set, this will be ignored."
cpoint18(target_destination) : "Control Point 18" : : "If set, control point 18 of the effect will be at this entity's location. If control point 17 is not set, this will be ignored."
cpoint19(target_destination) : "Control Point 19" : : "If set, control point 19 of the effect will be at this entity's location. If control point 18 is not set, this will be ignored."
cpoint20(target_destination) : "Control Point 20" : : "If set, control point 20 of the effect will be at this entity's location. If control point 19 is not set, this will be ignored."
cpoint21(target_destination) : "Control Point 21" : : "If set, control point 21 of the effect will be at this entity's location. If control point 10 is not set, this will be ignored."
cpoint22(target_destination) : "Control Point 22" : : "If set, control point 22 of the effect will be at this entity's location. If control point 21 is not set, this will be ignored."
cpoint23(target_destination) : "Control Point 23" : : "If set, control point 23 of the effect will be at this entity's location. If control point 22 is not set, this will be ignored."
cpoint24(target_destination) : "Control Point 24" : : "If set, control point 24 of the effect will be at this entity's location. If control point 23 is not set, this will be ignored."
cpoint25(target_destination) : "Control Point 25" : : "If set, control point 25 of the effect will be at this entity's location. If control point 24 is not set, this will be ignored."
cpoint26(target_destination) : "Control Point 26" : : "If set, control point 26 of the effect will be at this entity's location. If control point 25 is not set, this will be ignored."
cpoint27(target_destination) : "Control Point 27" : : "If set, control point 27 of the effect will be at this entity's location. If control point 26 is not set, this will be ignored."
cpoint28(target_destination) : "Control Point 28" : : "If set, control point 28 of the effect will be at this entity's location. If control point 27 is not set, this will be ignored."
cpoint29(target_destination) : "Control Point 29" : : "If set, control point 29 of the effect will be at this entity's location. If control point 28 is not set, this will be ignored."
cpoint30(target_destination) : "Control Point 30" : : "If set, control point 30 of the effect will be at this entity's location. If control point 29 is not set, this will be ignored."
cpoint31(target_destination) : "Control Point 31" : : "If set, control point 31 of the effect will be at this entity's location. If control point 30 is not set, this will be ignored."
cpoint32(target_destination) : "Control Point 32" : : "If set, control point 32 of the effect will be at this entity's location. If control point 31 is not set, this will be ignored."
cpoint33(target_destination) : "Control Point 33" : : "If set, control point 33 of the effect will be at this entity's location. If control point 32 is not set, this will be ignored."
cpoint34(target_destination) : "Control Point 34" : : "If set, control point 34 of the effect will be at this entity's location. If control point 33 is not set, this will be ignored."
cpoint35(target_destination) : "Control Point 35" : : "If set, control point 35 of the effect will be at this entity's location. If control point 34 is not set, this will be ignored."
cpoint36(target_destination) : "Control Point 36" : : "If set, control point 36 of the effect will be at this entity's location. If control point 35 is not set, this will be ignored."
cpoint37(target_destination) : "Control Point 37" : : "If set, control point 37 of the effect will be at this entity's location. If control point 36 is not set, this will be ignored."
cpoint38(target_destination) : "Control Point 38" : : "If set, control point 38 of the effect will be at this entity's location. If control point 37 is not set, this will be ignored."
cpoint39(target_destination) : "Control Point 39" : : "If set, control point 39 of the effect will be at this entity's location. If control point 38 is not set, this will be ignored."
cpoint40(target_destination) : "Control Point 40" : : "If set, control point 40 of the effect will be at this entity's location. If control point 39 is not set, this will be ignored."
cpoint41(target_destination) : "Control Point 41" : : "If set, control point 41 of the effect will be at this entity's location. If control point 40 is not set, this will be ignored."
cpoint42(target_destination) : "Control Point 42" : : "If set, control point 42 of the effect will be at this entity's location. If control point 41 is not set, this will be ignored."
cpoint43(target_destination) : "Control Point 43" : : "If set, control point 43 of the effect will be at this entity's location. If control point 42 is not set, this will be ignored."
cpoint44(target_destination) : "Control Point 44" : : "If set, control point 44 of the effect will be at this entity's location. If control point 43 is not set, this will be ignored."
cpoint45(target_destination) : "Control Point 45" : : "If set, control point 45 of the effect will be at this entity's location. If control point 44 is not set, this will be ignored."
cpoint46(target_destination) : "Control Point 46" : : "If set, control point 46 of the effect will be at this entity's location. If control point 45 is not set, this will be ignored."
cpoint47(target_destination) : "Control Point 47" : : "If set, control point 47 of the effect will be at this entity's location. If control point 46 is not set, this will be ignored."
cpoint48(target_destination) : "Control Point 48" : : "If set, control point 48 of the effect will be at this entity's location. If control point 47 is not set, this will be ignored."
cpoint49(target_destination) : "Control Point 49" : : "If set, control point 49 of the effect will be at this entity's location. If control point 48 is not set, this will be ignored."
cpoint50(target_destination) : "Control Point 50" : : "If set, control point 50 of the effect will be at this entity's location. If control point 49 is not set, this will be ignored."
cpoint51(target_destination) : "Control Point 51" : : "If set, control point 51 of the effect will be at this entity's location. If control point 50 is not set, this will be ignored."
cpoint52(target_destination) : "Control Point 52" : : "If set, control point 52 of the effect will be at this entity's location. If control point 51 is not set, this will be ignored."
cpoint53(target_destination) : "Control Point 53" : : "If set, control point 53 of the effect will be at this entity's location. If control point 52 is not set, this will be ignored."
cpoint54(target_destination) : "Control Point 54" : : "If set, control point 54 of the effect will be at this entity's location. If control point 53 is not set, this will be ignored."
cpoint55(target_destination) : "Control Point 55" : : "If set, control point 55 of the effect will be at this entity's location. If control point 54 is not set, this will be ignored."
cpoint56(target_destination) : "Control Point 56" : : "If set, control point 56 of the effect will be at this entity's location. If control point 55 is not set, this will be ignored."
cpoint57(target_destination) : "Control Point 57" : : "If set, control point 57 of the effect will be at this entity's location. If control point 56 is not set, this will be ignored."
cpoint58(target_destination) : "Control Point 58" : : "If set, control point 58 of the effect will be at this entity's location. If control point 57 is not set, this will be ignored."
cpoint59(target_destination) : "Control Point 59" : : "If set, control point 59 of the effect will be at this entity's location. If control point 58 is not set, this will be ignored."
cpoint60(target_destination) : "Control Point 60" : : "If set, control point 60 of the effect will be at this entity's location. If control point 59 is not set, this will be ignored."
cpoint61(target_destination) : "Control Point 61" : : "If set, control point 61 of the effect will be at this entity's location. If control point 60 is not set, this will be ignored."
cpoint62(target_destination) : "Control Point 62" : : "If set, control point 62 of the effect will be at this entity's location. If control point 61 is not set, this will be ignored."
cpoint63(target_destination) : "Control Point 63" : : "If set, control point 63 of the effect will be at this entity's location. If control point 62 is not set, this will be ignored."
cpoint1_parent(integer) : "Control Point 1's Parent" : 0 : "If set and nonzero, control point 1 of the effect will use this point for its parent."
cpoint2_parent(integer) : "Control Point 2's Parent" : 0 : "If set and nonzero, control point 2 of the effect will use this point for its parent."
cpoint3_parent(integer) : "Control Point 3's Parent" : 0 : "If set and nonzero, control point 3 of the effect will use this point for its parent."
cpoint4_parent(integer) : "Control Point 4's Parent" : 0 : "If set and nonzero, control point 4 of the effect will use this point for its parent."
cpoint5_parent(integer) : "Control Point 5's Parent" : 0 : "If set and nonzero, control point 5 of the effect will use this point for its parent."
cpoint6_parent(integer) : "Control Point 6's Parent" : 0 : "If set and nonzero, control point 6 of the effect will use this point for its parent."
cpoint7_parent(integer) : "Control Point 7's Parent" : 0 : "If set and nonzero, control point 7 of the effect will use this point for its parent."
"An entity that acts like a magnet for ragdolls. Useful for crafting exaggerated ragdoll behavior (i.e. guys falling over rails on death). If the "+
"Bar Magnet spawnflag is set, the magnet works like it was a cylindrical magnet i.e. it attracts ragdolls to the nearest point on a line."
[
axis(vecline) : "Bar Magnet Axis"
radius(float) : "Effective Radius" : "512" : "Radius in which ragdolls are affected around this entity's origin."
force(float) : "Force" : "5000" : "Magnetic force to apply to ragdolls within the radius. Expressed as kilograms per inch per second. So a force of 1000 will add 10 inches/second to a 100kg man. It will add 100 inches per second to a 10kg headcrab."
"An entity that can be used to change the lighting origin of a prop_static. Set the prop_static's Lighting Origin to point at this entity to "+
"make the prop_static light as if it was at the info_lighting's origin. Good for prop_static entities that are embedded in world geometry (like rocks/windows/etc)."
[
]
// This is obsolete, info_target is all you need now.
"A navigation node for ground moving NPCs that includes some context information for NPCs that are interested in it. The hint might " +
"indicate a window that could be looked out of, or an item of interest that could be commented on. Many hint nodes are NPC-specific, " +
"so it's helpful to use naming conventions like 'Crow: Fly to point' in the hint choices list. The angles of a hint node indicate what direction " +
"the NPC should face to perform the hint behavior.\n\n" +
"It's important to understand the distinction between scripts, such as scripted_sequence and scripted_schedule, and info_hint entities. Scripts summon " +
"NPCs to specific cue points to play their parts, while hints provide context information to the AI that they use to perform their " +
"behaviors. Hints require code support in the NPC, while scripts are generic and may require only animations to play. Use a hint if the behavior is driven " +
"by the AI, use a script if the behavior is driven by the map."
[
// Outputs
output OnNPCStartedUsing(string) : "Fired when an NPC has reached this node and started using it. Passes along the NPC."
output OnNPCStoppedUsing(string) : "Fired when an NPC has stopped using this node. Passes along the NPC."
AllowUse(target_name_or_class) : "Allow Pass When Off" : : "Entity or class to allow passage even when node is off"
InvertAllow(choices) : "Invert exclusion rules" : 0 : "Allowed entity is the only entity NOT allowed when this is set to 'yes'. The link must still be disabled for exclusion rules to apply." =
"A variant of info_node_link that only works from one direction. " +
"Navigation requests from the start node to the end node will always pass, but requests from the end node to the start node will not be allowed. " +
"If the link is disabled, the link will work from neither direction. Exclusion rules still apply and excluded NPCs will be able to cross from the opposite direction."
[
StartNode(node_dest) : "Start node ID" : : "The node ID that will always be allowed to pass."
EndNode(node_dest) : "End node ID" : : "The node ID that will not be allowed to pass unless the NPC follows exclusion rules."
AllowUse(target_name_or_class) : "Allow Pass When Off" : : "Entity or class to allow passage regardless of which node they're coming from."
Usage(choices) : "Usage" : 0 : "Causes the link to use slightly different behavior." =
"A variant of info_node_link that uses an entity filter. " +
"Only entities that pass the specified filter can use this link. While disabled, the filter is disregarded and filtering is handed to the regular exclusion rules."
[
damagefilter(filterclass) : "Link Filter" : "" : "Name of the filter entity that controls which entities can use this link."
Usage(choices) : "Usage" : 0 : "Causes the link to use slightly different behavior." =
[
0 : "Enabled uses filter, disabled hands to exclusion rules"
1 : "Enabled is free-to-use, disabled uses filter"
]
// Inputs
input SetLinkFilter(target_destination) : "Sets the link's filter."
"An entity that controls all connections between nodes that intersect the controller's volume. "+
"This allows for mass enabling/disabling of all node connections through a volume.\n\n"+
"NOTE: Due to the way this works, using info_node_link_logic may cause several identical instances of the outputs to be fired instead of one. One way to remedy this by passing your action through a relay with fast refire disabled."
[
ReferenceTemplate(target_destination) : "Reference Template" : : "The point_template whose first template would be used as a reference for all of this controller's links. The first template MUST be info_node_link or an entity derived from it, like info_node_link_filtered."
target(target_destination) : "Entity To Point At" : : "The name of an entity in the map that the spotlight will point at. This will override the spotlight's angles."
_AmbientScaleHDR(float) : "AmbientScaleHDR" : "1" : "Amount to scale the ambient light by when compiling for hdr."
pitch(integer) : "Pitch" : 0 : "The downward pitch of the light from the sun. 0 is horizontal, -90 is straight down."
SunSpreadAngle(float) : "SunSpreadAngle" : 0 : "The angular extent of the sun for casting soft shadows. Higher numbers are more diffuse. 5 is a good starting value."
target(target_destination) : "Entity to point at" : : "The name of an entity in the map that the spotlight will point at. This will override the spotlight's angles."
angles(angle) : "Pitch Yaw Roll (Y Z X)" : "80 30 0" : "This is the shadow direction. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, and roll is the rotation around the X axis."
enableshadowsfromlocallights(Choices) : "Enable Local Light Shadows" : 0 : "Enables RTT dynamic shadow angles, which cause shadows to face away from the nearest light source instead of always using this entity's direction. This is a new feature and the original Half-Life 2 had no dynamic shadow angles. Leave this off if they are not desired." =
parentname(target_destination) : "Parent" : : "The name of this entity's parent in the movement hierarchy. Entities with parents move with their parent. Please don't use any parenting inputs with func_movelinear."
startposition(float) : "Start Position" : 0 : "Position of brush when spawned. The range is a value between 0.0 and 1.0, where 0 is the starting position and 1 is the starting position + (move direction * move distance)."
speed(integer) : "Speed" : 100 : "The speed that the brush moves, in inches per second."
movedistance(float) : "Move Distance" : 100 : "The distance from the starting point that the brush should move, in inches."
blockdamage(float) : "Block Damage" : 0 : "The amount of damage to do to any entity that blocks the brushes, per frame."
startsound(sound) : "Sound played when the brush starts moving."
stopsound(sound) : "Sound played when the brush stops moving."
// Inputs
input Open(void) : "Move the brush to the end position (starting position + (move direction * move distance))."
input Close(void) : "Move the brush to the starting position."
input SetPosition(string) : "Move the brush to a specific position between 0.0 and 1.0, where 0 is the starting position and 1 is the starting position + (move direction * move distance)."
input SetSpeed(float) : "Set the speed and update immediately."
// Outputs
output OnFullyOpen(void) : "Fired when the brush reaches the end position (starting position + (move direction * move distance))."
output OnFullyClosed(void) : "Fired when the brush reaches the starting position."
"A water brush entity that moves linearly along a given distance, in a given direction"
[
movedir(angle) : "Move Direction (Pitch Yaw Roll)" : "0 0 0" : "The direction the water will move, when told to 'Open'."
startposition(float) : "Start Position" : 0 : "Position of the water brush when spawned. The range is a value between 0.0 and 1.0, where 0 is the starting position and 1 is the starting position + (move direction * move distance)."
speed(integer) : "Speed" : 100 : "The speed that the water brush moves, in inches per second."
movedistance(float) : "Move Distance" : 100 : "The distance from the starting point that the water brush should move, in inches."
startsound(sound) : "Sound played when the water brush starts moving."
stopsound(sound) : "Sound played when the water brush stops moving."
WaveHeight(string) : "Wave Height" : "3.0"
// Inputs
input Open(void) : "Move the water brush to the end position (starting position + (move direction * move distance))."
input Close(void) : "Move the water brush to the starting position."
input SetPosition(string) : "Move the water brush to a specific position between 0.0 and 1.0, where 0 is the starting position and 1 is the starting position + (move direction * move distance)."
// Outputs
output OnFullyOpen(void) : "Fired when the water brush reaches the end position (starting position + (move direction * move distance))."
output OnFullyClosed(void) : "Fired when the water brush reaches the starting position."
noise1(sound) : "Movement Sound" : : "The sound to play when the brush moves."
noise2(sound) : "Stop Sound" : : "The sound to play when the brush stops moving."
speed(integer) : "Speed of Rotation" : 50 : "Speed at which the brush rotates, in degrees per second."
height(integer) : "Travel Altitude" : 0 : "The vertical distance from the starting position that this platform moves. If negative, the platform will lower."
rotation(integer) : "Spin amount" : 0 : "The amount this platform should rotate as it moves, in degrees."
_minlight(string) : "Minimum Light Level" : : "The minimum level of ambient light that hits this brush."
Slack(integer) : "Slack" : 25 : "How much extra length the rope has (by default it has the length between its two endpoints in the editor)."
Type(choices) : "Type" : 0 =
[
0 : "Rope"
1 : "Semi-rigid"
2 : "Rigid"
]
Subdiv(integer) : "Subdivision" : 2 : "Number of subdivisions between each rope segment. Maximum value is 8. Higher values make smoother ropes, but are slower to render."
Barbed(choices) : "Barbed" : 0 : "Test effect that makes the rope look sharper and more barbed." =
TextureScale(string) : "Texture Scale" : "1" : "This changes the texture resolution. The default resolution is 4 pixels per inch. Larger values stretch the texture and smaller values scrunch it up."
Collide(choices) : "Collide with world" : 0 =
[
0 : "No"
1 : "Yes"
]
Dangling(choices) : "Start Dangling" : 0 : "When set to Yes, the rope starts out detached from its target endpoint." =
[
0 : "No"
1 : "Yes"
]
Breakable(choices) : "Breakable" : 0 : "When set to yes, the rope can be detached from either endpoint when shot." =
[
0 : "No"
1 : "Yes"
]
RopeMaterial(material) : "Rope Material" : "cable/cable.vmt" : "The material to use when rendering the rope."
// Inputs
input SetScrollSpeed(float) : "Set the speed at which the texture scrolls."
input SetForce(string) : "Apply a force instantaneously to the rope. The parameter should be a vector containing the force to be applied (X Y Z)."
input Break(void) : "Break the rope, if it's marked to do so."
//health(integer) : "Health (Obsolete)" : 0 : "Legacy method of specifying whether or not the button can be shot to activate it. Use the 'Damage Activates' spawnflag instead."
lip(integer) : "Lip" : 0 : "The amount, in inches, of the button to leave sticking out of the wall it recedes into when pressed. Negative values make the button recede even further into the wall."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this button cannot be pressed."
wait(integer) : "Delay Before Reset (-1 stay)" : 3 : "Amount of time, in seconds, after the button has been pressed before it returns to the starting position. Once it has returned, it can be used again. If the value is set to -1, the button never returns."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this button cannot be used."
//health(integer) : "Health (Obsolete)" : 0 : "Legacy method of specifying whether or not the button can be shot to activate it. Use the 'Damage Activates' spawnflag instead."
wait(integer) : "Delay Before Reset (-1 stay)" : 3 : "Amount of time, in seconds, after the button has been pressed before it returns to the starting position. Once it has returned, it can be used again. If the value is set to -1, the button never returns."
distance(integer) : "Distance (deg)" : 90 : "The amount, in degrees, that the button should rotate when it's pressed."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this button cannot be used."
distance(integer) : "Distance" : 90 : "The maximum amount, in degrees, that the wheel is allowed to rotate."
returnspeed(integer) : "Auto-return speed" : 0 : "If the 'Toggle' spawnflag is not set, the speed at which the wheel auto-returns when left alone, in degrees per second."
_minlight(string) : "Minimum Light Level" : : "The minimum level of ambient light that hits this brush."
startposition(float) : "Start Position" : 0 : "Postion when spawned. The value is a range between 0.0 and 1.0, where 0 is the unrotated position and 1 is the rotated position + 'Distance'."
input Lock(void) : "Lock the button, preventing it from functioning."
input Unlock(void) : "Unlock the button, allowing it to function."
input SetPosition(string) : "Move to a position. The parameter must be a value between 0 and 1, where 0 is the unrotated position and 1 is the rotated position + 'Distance'."
input SetPositionImmediately(string) : "Immediately teleport to a position. The parameter must be a value between 0 and 1, where 0 is the unrotated position and 1 is the rotated position + 'Distance'."
// Outputs
output Position(integer) : "Fired whenever the button moves. The output is the position of button from 0 to 1, where 0 is the unrotated position and 1 is the rotated position + 'Distance'."
output OnPressed(integer) : "Fired when the button is first pressed."
output OnUnpressed(integer): "Fired when the button is first released from being pressed."
output OnFullyClosed(void) : "Fired when the button has reached position 1, the rotated position + 'Distance'."
output OnFullyOpen(void) : "Fired when the button has reached position 0, the unrotated starting position."
output OnReachedPosition(void) : "Fired whenever the button reaches a goal position: i.e. when it becomes open, becomes closed, or reaches the point specified by a 'SetPosition' input."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this button cannot be used."
noise1(sound) : "Start Sound" : : "Sound to play when the door starts moving."
noise2(sound) : "Stop Sound" : : "Sound to play when the door stops moving."
startclosesound(sound) : "Start Close Sound" : : "(Optional) Sound to play when the door starts closing."
closesound(sound) : "Stop Close Sound" : : "(Optional) Sound to play when the door stops closing."
wait(integer) : "Delay Before Reset (-1 stay)" : 4 : "Amount of time, in seconds, after the door has opened before it closes. Once it has closed, it can be used again. If the value is set to -1, the door never closes itself."
lip(integer) : "Lip" : 0 : "The amount, in inches, of the button to leave sticking out of the wall it recedes into when pressed. Negative values make the button recede even further into the wall."
dmg(integer) : "Blocking Damage" : 0 : "Amount of damage done to entities that block the movement of this door, per frame."
forceclosed(choices) : "Force Closed" : 0 : "If set, this door will close no matter what. Useful for doors that have to close even if the player tries to block them with objects." =
[
0 : "No"
1 : "Yes"
]
ignoredebris(choices) : "Ignore Debris" : 0 : "If set this will change the door's collision group to one that ignore collisions with debris objects (note that this is not compatible with the non-solid-to-player spawnflag)." =
_minlight(string) : "Minimum Light Level" : : "The minimum level of ambient light that hits this brush."
loopmovesound(choices) : "Loop Moving Sound?" : 0 : "If set to true, the door's 'Start Sound' will be continually looped until the door finishes moving." =
[
0: "No"
1: "Yes"
]
// Outputs
output OnClose(void) : "Fired when the door starts closing."
output OnOpen(void) : "Fired when the door starts opening."
output OnFullyOpen(void) : "Fired when the door reaches the fully open position. Reversed if 'Start Open' flag is set."
output OnFullyClosed(void) : "Fired when the door reaches the fully closed position. Reversed if 'Start Open' flag is set."
output OnBlockedClosing(void) : "Fired when the door is blocked while closing."
output OnBlockedOpening(void) : "Fired when the door is blocked while opening."
output OnUnblockedClosing(void) : "Fired when the door is unblocked while closing."
output OnUnblockedOpening(void) : "Fired when the door is unblocked while opening."
output OnLockedUse(void) : "Fired when the player uses the door, but it is locked."
// Inputs
input Open(void) : "Open the door, if it is not fully open."
input Close(void) : "Close the door, if it is not fully closed."
input Toggle(void) : "Toggle the door between open and closed."
input Lock(void) : "Lock the door."
input Unlock(void) : "Unlock the door."
input SetSpeed(float) : "Set the door speed."
]
@SolidClass base(Door, Origin) = func_door :
"A brush entity for use as a player-useable door."
[
movedir(angle) : "Move Direction (Pitch Yaw Roll)" : "0 0 0" : "The direction the door will move, when it opens."
filtername(filterclass) : "Block Filter Name" : : "Filter to use to determine entities that block the door. ( Half-Life: Source port only )"
slavename(target_destination) : "Slave Name" : : "The name of any doors that should be slaved to this door (i.e. should open when this one opens, and close when this one closes)."
hardware(choices) : "Hardware Type" : 1 =
[
0 : "<None>"
1 : "Lever"
2 : "Push bar"
3 : "Keypad"
]
ajarangles(angle) : "Ajar Angles (Pitch Yaw Roll)" : "0 0 0" : "If the door 'Spawn Position' is set to Ajar, these are the angles to spawn at, instead of being open or closed."
spawnpos(choices) : "Spawn Position" : 0 =
[
0 : "Closed"
1 : "Open forward"
2 : "Open back"
3 : "Ajar (use Ajar Angles)"
]
axis(axis) : "Hinge Axis"
distance(float) : "Rotation Distance (deg)" : 90 : "The amount, in degrees, that the door should rotate when opened."
speed(integer) : "Speed" : 100 : "The speed at which the door moves."
soundopenoverride(sound) : "Fully Open Sound" : : "Sound played when the door has finished opening."
soundcloseoverride(sound) : "Fully Closed Sound" : : "Sound played when the door has finished closing."
soundmoveoverride(sound) : "Moving Sound" : : "Sound played when the door starts to move."
returndelay(integer) : "Delay Before close (-1 stay open)" : -1 : "Amount of time, in seconds, after the door has opened before it closes. If the value is set to -1, the door never closes itself."
dmg(integer) : "Damage Inflicted When Blocked" : 0 : "Amount of damage done to entities that block the movement of this door, per frame."
lightingorigin(target_destination) : "Lighting Origin" : "" : "Select an entity to specify a location to sample lighting from, instead of using this entity's origin."
forceclosed(choices) : "Force Closed" : 0 : "If set, this door will close no matter what. Useful for doors that have to close even if the player tries to block them with objects." =
"An entity that creates a sample point for the Cubic Environment Map."
[
cubemapsize(choices) : "Cubemap Size" : 0 =
[
0 : "Default"
1 : "1x1"
2 : "2x2"
3 : "4x4"
4 : "8x8"
5 : "16x16"
6 : "32x32"
7 : "64x64"
8 : "128x128"
9 : "256x256"
]
sides(sidelist) : "Brush faces": : "(Optional) Brushes faces to directly attach to the env_cubemap. Press Pick then click on faces in the 3D View to select them. Use CTRL while clicking to add or remove from the selection."
parallaxobb(target_destination) : "Cubemap Bounds" : : "MAPBASE VBSP ONLY: Optionally assigns this cubemap a bounding box for parallax correction (brush entity tied to parallax_obb). This means the cubemap reflection will move as the camera moves, similar to func_reflective_glass."
Color(color255) : "Particle Color (R G B)" : "255 255 255"
SpawnRate(integer) : "Particle Per Second" : 40 : "Number of particles to spawn, per second."
SpeedMax(string) : "Maximum Particle Speed" : 13 : "Maximum speed that the particles can move after spawning."
LifetimeMin(string) : "Minimum Particle Lifetime" : 3 : "Minimum number of seconds until each particle dies. Particles live for a random duration between this and 'Maximum Particle Lifetime'."
LifetimeMax(string) : "Maximum Particle Lifetime" : 5 : "Maximum number of seconds until each particle dies. Particles live for a random duration between 'Minimum Particle Lifetime' and this."
DistMax(integer) : "Maximum Visible Distance" : 1024 : "Maximum distance at which particles are visible. They fade to translucent at this distance."
Frozen(choices) : "Frozen" : 0 : "When set, this entity spawns the number of particles in SpawnRate immediately, and then goes inactive." =
material(material) : "Material" : "particle/particle_smokegrenade" : "The material to use for the particles"
ParticleDrawWidth(float) : "Particle Draw Width (units)" : 120 : "The size of the particles, in units/inches."
ParticleSpacingDistance(float) : "Particle Spacing Distance (units)" : 80 : "The distance between the particles inside the volume. The lower the number, the denser the particles, and the more overdraw there will be. It is best to keep it as high as you can without it looking bad."
DensityRampSpeed(float) : "Density Ramp Speed (seconds)" : 1 : "Time to go from density 0 to density 1, in seconds."
RotationSpeed(float) : "Rotation Speed (degrees/sec)" : 10 : "The speed that the particles should rotate, in degrees per second."
MovementSpeed(float) : "Movement Speed (units/sec)" : 10 : "The speed that the particles should move around, in units/inches per second."
Density(float) : "Density [0..1]" : 1
// Inputs
input SetRotationSpeed(float) : "Set the particle rotation speed (in degrees per second)."
input SetMovementSpeed(float) : "Set the particle movement speed (in inches per second)."
input SetDensity(float) : "Set the particle density. It should be a range from 0 to 1."
globalstate(choices) : "Global State to Read" : : "If set, this specifies a global state to check before firing. The OnMapSpawn output will only fire if the global state is set." =
[
"" : "--- None ---"
"gordon_precriminal" : "Gordon pre-criminal"
"antlion_allied" : "Antlions are player allies"
// "player_stealth" : "Player in APC is disguised as combine"
"suit_no_sprint" : "Suit sprint function not yet enabled"
// "citizens_passive" : "Citizens are *not* player allies (cannot be commanded)"
"gordon_invulnerable" : "Gordon is invulnerable"
"no_seagulls_on_jeep" : "Don't spawn seagulls on the jeep"
"is_console" : "Game is running on a console"
"is_pc" : "Game is running on a PC"
]
// Outputs
output OnMapSpawn(void) : "Fired when the map is loaded for any reason."
output OnNewGame(void) : "Fired when the map is loaded to start a new game."
output OnLoadGame(void) : "Fired when the map is loaded from a saved game."
output OnMapTransition(void) : "Fired when the map is loaded due to a level transition."
output OnBackgroundMap(void) : "Fired when the map is loaded as a background to the main menu."
output OnMultiNewMap(void) : "Fired only in multiplayer, when a new map is loaded."
output OnMultiNewRound(void) : "Fired only in multiplayer, when a new round is started. Only fired in multiplayer games that use round-based gameplay."
"A camera entity that controls the player's view. While it's active, the player will see out of the camera."
[
target(target_destination) : "Entity to Look At" : : "Name of the entity that the camera should point at and track while active."
targetattachment(string) : "Target Attachment Name" : : "If set, the camera will focus on the specified attachment on the 'Entity to Look At'."
wait(integer) : "Hold Time" : 10 : "The amount of time the camera should control the player's view for, after which it deactivates itself. If the camera should stay active until told to deactive, set the 'Infinite Hold Time' spawnflag."
moveto(target_destination) : "Path Corner" : : "The first path corner in a track that the camera should move along once it's activated. If not specified, the camera won't move. This can actually be literally any entity, but don't worry about that."
interpolatepositiontoplayer(choices) : "Interpolate Position To Player" : 0 : "Gradually interpolate player's position to here on start. (Episodic only)" =
fov(float) : "FOV" : "90" : "The player's FOV when using this camera. Be sure to have the 'Set FOV' spawnflag enabled if you want to use this."
fov_rate(float) : "FOV rate" : "0" : "How quickly the FOV should be set. Be sure to have the 'Set FOV' spawnflag enabled if you want to use this."
DontSetPlayerView(choices) : "Don't set player view" : 0 : "Prevents this point_viewcontrol from actually controlling the player's view. FOV, player-affecting spawnflags, etc. may still happen." =
input Enable(void) : "Enable the point_viewcontrol, and start controlling the player's view."
input Disable(void) : "Disable the point_viewcontrol, and stop controlling the player's view."
// Outputs
output OnEndFollow(void) : "Fired when the point_viewcontrol deactivates, due to the Disable input being received, the Entity to Look At being destroyed, or the Hold Time expiring."
MultipleCasesAllowed(choices) : "Multiple case hits allowed" : 0 : "If an input value matches a given case, are we allowed to test the rest of the cases or should we stop there? Don't worry about this if you're only using this entity for PickRandom." =
input InValue(string) : "Compares the Input value to the case values, and fires the appropriate output, if any."
input PickRandom(void) : "Fires a random OnCase output with at least one connection."
input PickRandomShuffle(void) : "Fires a random OnCase output with at least one connection, with no repeats until all cases have been picked, at which point the shuffle starts over."
// Outputs
output OnCase01(void) : "Fired when the input value equals the Case01 value."
output OnCase02(void) : "Fired when the input value equals the Case02 value."
output OnCase03(void) : "Fired when the input value equals the Case03 value."
output OnCase04(void) : "Fired when the input value equals the Case04 value."
output OnCase05(void) : "Fired when the input value equals the Case05 value."
output OnCase06(void) : "Fired when the input value equals the Case06 value."
output OnCase07(void) : "Fired when the input value equals the Case07 value."
output OnCase08(void) : "Fired when the input value equals the Case08 value."
output OnCase09(void) : "Fired when the input value equals the Case09 value."
output OnCase10(void) : "Fired when the input value equals the Case10 value."
output OnCase11(void) : "Fired when the input value equals the Case11 value."
output OnCase12(void) : "Fired when the input value equals the Case12 value."
output OnCase13(void) : "Fired when the input value equals the Case13 value."
output OnCase14(void) : "Fired when the input value equals the Case14 value."
output OnCase15(void) : "Fired when the input value equals the Case15 value."
output OnCase16(void) : "Fired when the input value equals the Case16 value."
IntegerValue(string) : "Reference Value (optional)" : : "The value all inputs are compared to if ''Should use Reference Value'' is enabled."
ShouldComparetoValue(choices) : "Should use Reference Value" : 0 : "If enabled, all inputs are compared to the reference value. If not enabled, they are instead compared to the last input added." =
input InputValue(string) : "Adds a value to our set of inputs and fires CompareValues automatically, comparing existing inputs to this one if set to do so."
input InputValueNoFire(string) : "Adds a value to our set of inputs without firing CompareValues."
"Stores an entity and sends messages with it as the activator\n" +
"Useful for keeping track of entities with mangled names due " +
"to template spawners and instances."
[
// Inputs
input Toggle(void) : "Toggle between enabled and disabled."
input FireRegisteredAsActivator1(void) : "Start a message from this entity using the matching OnRegisteredActivating - but the activator is the registered entity."
input FireRegisteredAsActivator2(void) : "Start a message from this entity using the matching OnRegisteredActivating - but the activator is the registered entity."
input FireRegisteredAsActivator3(void) : "Start a message from this entity using the matching OnRegisteredActivating - but the activator is the registered entity."
input FireRegisteredAsActivator4(void) : "Start a message from this entity using the matching OnRegisteredActivating - but the activator is the registered entity."
input RegisterEntity(target_destination) : "Stores an entity to later be used as an activator."
"A special variant of logic_relay designed to queue trigger inputs. " +
"If the relay is still handling its I/O connections after being triggered, additional Trigger inputs will be queued and automatically fire when the relay is able to be re-fired. Activator, output ID, and parameter are all kept and saved. " +
"Inputs are added to the queue each time Trigger or TriggerWithParameter are received while the relay is disabled or still handling its current I/O connections. The first one in the queue will trigger the moment an opportunity becomes available and the next one in the queue will wait for that one.\n\n" +
"This is useful for when you don't want something to happen multiple times at once, but don't want to discard further requests either."
[
SetMaxQueueItems(integer) : "Maximum Items" : 3 : "The maximum number of Trigger and TriggerWithParameter inputs allowed in the queue. Any others received while this value is full will be discarded. Keep in mind this does not count the I/O chain currently being handled."
DontQueueWhenDisabled(choices) : "Don't queue when disabled" : 0 : "Prevents the relay from queuing inputs when disabled. This means inputs will only be queued when enabled and still handling its current I/O connections." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input Trigger(void) : "Triggers the relay, causing its OnTrigger output to fire if it is enabled."
input TriggerWithParameter(string) : "Triggers the relay with a parameter, causing its OnTriggerParameter output to fire if it is enabled."
input Toggle(void) : "Toggle the relay between enabled and disabled."
//input CancelPending(void) : "Cancel any events fired by this relay that are currently pending in the I/O event queue."
input EnableRefire(void) : "If fast retrigger is disabled, the relay will not be able to fire again until its most delayed output has been fired. "+
"This input allows the relay to fire again early if it is in this state."
input ClearQueue(void) : "Clears the input queue."
input SetMaxQueueItems(integer) : "Sets the maximum queue items."
// Outputs
output OnTrigger(void) : "Fired when the relay is triggered."
output OnTriggerParameter(string) : "Fired when the relay is triggered with a parameter."
LowerRandomBound(string) : "Minimum Random Interval" : : "If 'Use Random Time' is set, this is the minimum time between timer fires. The time will be a random number between this and the 'Maximum Random Interval'."
UpperRandomBound(string) : "Maximum Random Interval" : : "If 'Use Random Time' is set, this is the maximum time between timer fires. The time will be a random number between the 'Minimum Random Interval' and this."
RefireTime(string) : "Refire Interval" : : "If 'Use Random Time' isn't set, this is the time between timer fires, in seconds."
// Inputs
input RefireTime(integer) : "Set a new Refire Interval."
input ResetTimer(void) : "Reset the timer. It will fire after the Refire Interval expires."
input FireTimer(void) : "Force the timer to fire immediately."
input Enable(void) : "Enable the timer."
input Disable(void) : "Disable the timer."
input Toggle(void) : "Toggle the timer on/off."
input LowerRandomBound(float) : "Set a new Minimum Random Interval."
input UpperRandomBound(float) : "Set a new Maximum Random Interval."
input AddToTimer(float) : "Add time to the timer if it is currently enabled. Does not change the Refire Interval."
input SubtractFromTimer(float) : "Subtract time from the timer if it is currently enabled. Does not change the Refire Interval."
// Outputs
output OnTimer(void) : "Fired when the timer expires."
output OnTimerHigh(void) : "Fired every other time for an oscillating timer."
output OnTimerLow(void) : "Fired every other time for an oscillating timer."
"An entity that acts as a microphone. It works in one of two modes. If it has a 'Speaker' set, it picks up all sounds within the specified sound range, " +
"and rebroadcasts them through the Speaker entity. In this Speaker mode, it ignores the Hears X spawnflags and does not fire the SoundLevel output. " +
"If it has no Speaker set, it measures the sound level at a point, and outputs the sound level as a value between 0 and 1. In Measuring mode, it only hears sounds that match the Hear X spawnflags."
[
target(target_destination) : "Measure target" : : "If the speaker is in Measuring mode, this is the name of the entity where the sound level is to be measured."
SpeakerName(target_destination) : "Speaker target" : "" : "The name of an info_target entity through which to play any sounds heard by this microphone. If specified, the microphone will consider itself in Speaker mode."
ListenFilter(filterclass) : "Listen Filter" : "" : "The name of an filter entity which specifies the only entities the microphone can hear. Sounds emitted by other entities will not be heard."
speaker_dsp_preset(choices) : "Speaker DSP Preset" : 0 : "Only useful in Speaker mode. If specified, when the microphone is enabled, it'll set the global dsp_speaker preset to this value. Sounds played back through speakers will then be affected by the selected DSP." =
landmark(target_destination) : "Local Destination Landmark" : : "If specified, then sounds offset from the speaker by their initial offset from this landmark. Only applicable in Speaker mode."
inmin(integer) : "Minimum Valid Input Value" : 0 : "Input values below this value will be ignored."
inmax(integer) : "Maximum Valid Input Value" : 1 : "Input values above this value will be ignored."
colormin(color255) : "Output RGB color when input is min." : "0 0 0" : "When the input value is equal to 'Minimum Valid Input Value', this is the output RGB color."
colormax(color255) : "Output RGB color when input is max." : "255 255 255" : "When the input value is equal to 'Maximum Valid Input Value', this is the output RGB color."
// Inputs
input InValue(float) : "Input value and fire the output with the remapped value."
// Outputs
output OutColor(color255) : "Fired when the InValue input is received, with the remapped RGB color as the parameter."
startvalue(float) : "Initial Value" : 0 : "Starting value for the counter."
min(float) : "Minimum Legal Value" : 0 : "Minimum legal value for the counter. If min=0 and max=0, no clamping is performed."
max(float) : "Maximum Legal Value" : 0 : "Maximum legal value for the counter. If min=0 and max=0, no clamping is performed."
// Inputs
input Add(float) : "Add an amount to the counter and fire the OutValue output with the result."
input Divide(float): "Divide the counter by an amount and fire the OutValue output with the result."
input Multiply(float): "Multiply the counter by an amount and fire the OutValue output with the result."
input SetValue(float): "Set the counter to a new value and fire the OutValue output with the result."
input SetValueNoFire(float): "Set the counter to a new value without firing any outputs."
input Subtract(float): "Subtract an amount from the counter and fire the OutValue output with the result."
input SetHitMax(float): "Set the upper bound of the counter and fire the OutValue output with the current value."
input SetHitMin(float): "Set the lower bound of the counter and fire the OutValue output with the current value."
input GetValue(void): "Causes the counter to fire its OnGetValue output with the current value of the counter. Used for polling the counter when you don't want constant updates from the OutValue output."
input SetMaxValueNoFire(float): "Set the upper bound of the counter without firing any outputs."
input SetMinValueNoFire(float): "Set the lower bound of the counter without firing any outputs."
output OnHitMin(void) : "Fired when the counter value meets or goes below the min value. The counter must go back above the min value before the output will fire again."
output OnHitMax(void) : "Fired when the counter value meets or exceeds the max value. The counter must go below the max value before the output will fire again."
output OnGetValue(float) : "Fired in response to the GetValue input. Used for polling the counter when you don't want constant updates from the OutValue output."
"A special version of math_counter with the ability to perform advanced calculations. " +
"Otherwise functions identically to math_counter."
[
// Keys
PreserveValue(choices) : "Preserve Value?" : 0 : "If set to 'Yes', calculations will fire OutValue with the resulting value, but the actual value stored in this entity will stay the same, allowing future calculations to use a constant value. If you want to change the value, you must use SetValueNoFire to set the counter's value or the PreserveValue input to toggle this feature. This also disables min/max functionality." =
[
0 : "No"
1 : "Yes"
]
AlwaysOutputAsInt(choices) : "Always Output As Int" : 0 : "If set to 'Yes', the stored value (and OutValue) will always be rounded to an integer before firing." =
input PreserveValue(bool): "Sets whether this counter's value should be preserved after calculations. 1 = Yes, 0 = No"
input AlwaysOutputAsInt(bool): "Sets whether this counter's value should always output as an integer. 1 = Yes, 0 = No"
input SetValueToPi(void) : "Sets the counter's value to 3.14159265358979323846 and fires the OutValue output with it."
input SquareRoot(void) : "Calculates the square root of the counter's current value. Fires the OutValue output with the result."
input Power(integer) : "Raises the power of the counter's current value to this value. Fires the OutValue output with the result."
input Round(integer) : "Rounds the counter's current value to the specified number place. For example, rounding 256 to 100 will round it to 300 and rounding 256 to 10 will round it to 260. Use 0 to round decimals to integers. Fires the OutValue output with the result."
input Floor(integer) : "Floors, or rounds down, the counter's current value to the specified number place. Fires the OutValue output with the result."
input Ceil(integer) : "Ceils, or rounds up, the counter's current value to the specified number place. Fires the OutValue output with the result."
input Trunc(integer) : "Truncates, or rounds toward zero, the counter's current value to the specified number place. Fires the OutValue output with the result."
input Sin(void) : "Applies sine to the counter's current value. Fires the OutValue output with the result."
input Cos(void) : "Applies cosine to the counter's current value. Fires the OutValue output with the result."
input Tan(void) : "Applies tangent to the counter's current value. Fires the OutValue output with the result."
input RandomInt(string) : "Generates a random integer between the specified bounds. Format = 'lowerbound upperbound', like '22 65'. Fires the OutValue output with the result."
input RandomFloat(string) : "Generates a random float between the specified bounds. Format = 'lowerbound upperbound', like '22.5 48.721'. Fires the OutValue output with the result."
"An entity that is used to set navigation properties on other entities. Useful to make NPCs ignore physics props in their way that they can easily push."
NewLevelUnit(choices) : "Force New Level Unit" : 0 : "If set, the save will discard any savedata from previous levels, for the purpose of keeping savegame filesizes down. Can only be safely used if there is no way for the player to return to previous levels." =
[
0 : "No"
1 : "Yes"
]
MinimumHitPoints(integer): "Minimum Hit Points" : 0 : "Don't save dangerous when player has less than this many hitpoints."
MinHitPointsToCommit(integer) : "Minimum Hit Points to Commit" : 0 : "Minimum hitpoints required to commit to save. The save will be made if you have at least Minimum Hit Points, but when the autosave timer expires, the autosave is only kept if you have at least Min Hitpoints to Commit."
// Inputs
input Save(void) : "Force an autosave."
input SaveDangerous(float) : "Force an autosave as autosavedangerous.sav. If the player is alive after the passed number of seconds it replaces the standard auto save."
input SetMinHitpointsThreshold(integer) : "Set MinimumHitPoints to this."
EntityTemplate(target_destination) : "Point_template To Spawn" : "" : "Name of the point_template to spawn here."
PostSpawnSpeed(float) : "PostSpawn Movement Speed" : "0" : "If specified, all the entities created in the template will move this fast in the specified PostSpawn Movement Direction."
PostSpawnDirection(angle) : "PostSpawn Movement Direction" : "0 0 0" : "If a PostSpawn Movement Speed is specified, all the entities created in the template will move in this direction."
PostSpawnDirectionVariance(float) : "PostSpawn Direction Variance" : "0.15" : "This variance is applied to the PostSpawn Movement Direction for each spawned entity in the template. Use it to apply some randomness to the directions."
PostSpawnInheritAngles(choices) : "PostSpawn Inherit Angles" : 0 : "If in hierarchy, is spawn direction in world space, or object local space of parent" =
[
0 : "No"
1 : "Yes"
]
// Inputs
input ForceSpawn(void) : "Spawn an instance of the template at this origin and angle."
output OnEntitySpawned(void) : "Fired when an instance of the entity template has been spawned."
output OnEntityFailedSpawn(void) : "Fired when a ForceSpawn input failed to spawn the template, either due to lack of space or being in player's view, depending on the spawnflags."
"Fires various inputs and outputs related to difficulty levels. " +
"You can use this entity to figure out what difficulty the player is using."
[
ListenForSkillChange(choices) : "Listen for skill changes?" : 1 : "If enabled, this entity will fire the 'OnSkillChanged' output every time the difficulty is changed. This can also be toggled during the game with inputs." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input Test(void) : "Test the skill level and fire an input based on the returning value."
input StartListening(void) : "Starts listening for difficulty level changes."
input StopListening(void) : "Stops listening for difficulty level changes."
// Outputs
output OnSkillChanged(void) : "Fired when the difficulty is changed."
output OnEasy(void) : "Fired when the tested difficulty is on Easy."
output OnNormal(void) : "Fired when the tested difficulty is on Normal."
output OnHard(void) : "Fired when the tested difficulty is on Hard."
SetMsgColor(color255) : "Message Color" : "210 250 255 255" : "The color of standard messages."
SetWarningColor(color255) : "Warning Color" : "255 210 210 255" : "The color of warning messages."
SetNewLineNotAuto(choices) : "Don't automatically append \n?" : 0 : "Prevents this logic_console from automatically appending a new line each time it prints." =
"A powerful entity that can read the specified ConVar's value. " +
"It functions similarly to a logic_branch, except you could also output the value directly. " +
"Due to theoretical abuse, players have the option to disable logic_ConVar usage on a map. " +
"Use the 'OnDenied' output to prevent any issues from players who have disabled logic_ConVar."
[
// Keys
SetConVar(string) : "ConVar" : : "The ConVar to read. Can be serverside or clientside(?)"
SetTestValue(string) : "Compare value" : : "The value to compare with the ConVar's value during comparisons. You could use <, !=, etc. at the beginning similar to a Response System criterion."
"Formats a line of text akin to C# String.Format.\n" +
"As curly brackets cannot be used in the help window, please see Mapbase documentation for clear instructions."
//"For example, take the following values:\n\n" +
//"Input Value: 'A {0} there and a \{1\} {1} there\n" +
//"Parameter 0: 'poot'\n" +
//"Parameter 1: 'doot'\n" +
//"\n" +
//"The 'GetFormattedString' input will create the following text:\n\n" +
//"'A poot poot there and a doot doot there'\n\n" +
//"This will be sent out via the OutFormattedValue output."
[
// Keys
SetInputValue(string) : "Input Value" : : "The input value. Should contain {0}, {1}, etc, which will be replaced by the parameters and then output as OutFormattedValue."
SetParameter0(string) : "Parameter 0" : : "Will replace all instances of {0} in the input value."
SetParameter1(string) : "Parameter 1" : : "Will replace all instances of {1} in the input value."
SetParameter2(string) : "Parameter 2" : : "Will replace all instances of {2} in the input value."
SetParameter3(string) : "Parameter 3" : : "Will replace all instances of {3} in the input value."
SetParameter4(string) : "Parameter 4" : : "Will replace all instances of {4} in the input value."
SetParameter5(string) : "Parameter 5" : : "Will replace all instances of {5} in the input value."
SetParameter6(string) : "Parameter 6" : : "Will replace all instances of {6} in the input value."
SetParameter7(string) : "Parameter 7" : : "Will replace all instances of {7} in the input value."
SetBackupParameter(string) : "Backup Parameter" : : "If an invalid parameter is used (e.g. null parameter or asks for a parameter beyond {7}), then this will be used instead. Otherwise just uses '<null>'."
// Inputs
input GetFormattedValue(void) : "Fires OutFormattedValue, which passes the formatted input value."
input SetInputValue(string) : "Sets the input value. Should contain {0}, {1}, etc. enclosed by curly brackets, which will be replaced by the parameters and then output as OutFormattedValue."
input SetParameter0(string) : "Sets the text that will replace all instances of {0}."
input SetParameter1(string) : "Sets the text that will replace all instances of {1}."
input SetParameter2(string) : "Sets the text that will replace all instances of {2}."
input SetParameter3(string) : "Sets the text that will replace all instances of {3}."
input SetParameter4(string) : "Sets the text that will replace all instances of {4}."
input SetParameter5(string) : "Sets the text that will replace all instances of {5}."
input SetParameter6(string) : "Sets the text that will replace all instances of {6}."
input SetParameter7(string) : "Sets the text that will replace all instances of {7}."
input SetBackupParameter(string) : "Sets the text that will replace all invalid parameters."
// Outputs
output OutFormattedValue(string) : "Fired when the formatted value is requested. Outputs the formatted value."
"A logic entity that could read an entity's keyfields. " +
"Use the target and key name options if you want to store a specific target and/or keyvalue. " +
"Use the 'Test' input to look for the key within the target's datadesc. " +
"The 'OutValue' output will fire with the keyfield's value if it is found." +
"\n\nPlease note that some keyvalues do not work with this entity. (most do though, so don't worry about it)"
[
// Keys
target(target_destination) : "Target Entity" : : "The entity with the key to measure."
keyname(string) : "Key Name" : : "The name of the key to measure."
// Inputs
input Test(void) : "Gets the stored key's value from stored target."
input TestKey(string) : "Tests the specified key against the target instead of using the stored key. Does not change the stored key."
input TestTarget(target_destination) : "Tests the specified target against the key instead of using the stored target. Does not change the stored target."
input SetKey(string) : "Sets the key to measure."
input SetValue(string) : "Sets the stored target's stored key value to the specified string."
input SetTarget(target_destination) : "Sets the target entity."
"A logic entity that could read or write any field in an entity's data description, keyvalue or not, based on its internal name. It otherwise functions identically to logic_keyfield.\n\n" +
target(target_destination) : "Target Entity" : : "The entity whose data description will be measured."
keyname(string) : "Element Name" : : "The internal name (e.g. m_iName) of the field to measure. Use the ''ent_info_datatable'' command followed by an entity's class name to see all of their fields."
// Inputs
input Test(void) : "Gets the stored field's value from stored target."
input TestKey(string) : "Tests the specified field against the target instead of using the stored field. Does not change the stored field."
input TestTarget(target_destination) : "Tests the specified target against the field instead of using the stored target. Does not change the stored target."
input SetKey(string) : "Sets the field to measure."
input SetValue(string) : "Sets the stored target's stored field to the specified string."
input SetTarget(target_destination) : "Sets the target entity."
// Outputs
output OutValue(string) : "Fires when a field is found. Passes its value."
output OnFailed(void) : "Fires when this entity fails to find the specified field."
"A math_counter variant that specializes in bitwise operations."
[
// Keys
startvalue(integer) : "Initial Value" : 0 : "The bits this entity should start with."
// Inputs
input Add(integer) : "Adds bit(s) to this entity's value and fires the OutValue output with the result."
input Subtract(integer): "Subtracts bit(s) to this entity's value and fires the OutValue output with the result."
input ShiftLeft(integer): "Shifts this entity's value to the left by the specified number and fires the OutValue output with the result."
input ShiftRight(integer): "Shifts this entity's value to the right by the specified number and fires the OutValue output with the result."
input SetValue(integer): "Changes this entity's value and fires the OutValue output with the result."
input SetValueNoFire(integer): "Changes this entity's value without firing any outputs."
input GetValue(void): "Causes this entity to fire its OnGetValue output with its current bits. Used for polling the current bits when you don't want constant updates from the OutValue output."
input ContainsBits(integer): "Tests whether this entity's current value contains at least one of the specified bit(s)."
input ContainsAllBits(integer): "Tests whether this entity's current value contains all of the specified bit(s)."
// Outputs
output OutValue(integer) : "Fired when the value changes."
output OnGetValue(integer) : "Fired in response to the GetValue input. Used for polling the current bits when you don't want constant updates from the OutValue output."
output OnTrue(void) : "Fired by ContainsBits when the current value contains the specified bit."
output OnFalse(void) : "Fired by ContainsBits when the current value does not contain the specified bit."
input Add(vector) : "Adds a vector to this entity's current value and fires the OutValue output with the result."
input Divide(vector): "Divides a vector from this entity's current value and fire the OutValue output with the result."
input Multiply(vector): "Multiplies a vector from this entity's current value and fires the OutValue output with the result."
input SetValue(vector): "Sets this entity's current vector to a new value and fires the OutValue output with the result."
input SetValueNoFire(vector): "Sets this entity's current vector to a new value without firing any outputs."
input Subtract(vector): "Subtracts a vector from this entity's current value and fires the OutValue output with the result."
input GetValue(void): "Causes this entity to fire its OnGetValue output with its current vector. Used for polling the counter when you don't want constant updates from the OutValue output."
input PointAtLocation(vector): "Creates an angle pointing from the entity's current vector to the specified point and fires the OutValue output with the result."
input PointAtEntity(target_destination): "Creates an angle pointing from the entity's current vector to the specified entity and fires the OutValue output with the result."
input VectorAngles(void): "Converts this entity's vector to an angle, assuming the current vector is a direction vector. Fires the OutValue output with the result."
input AngleVectorForward(void): "Converts this entity's vector angles to a vector in the forward direction. Fires the OutValue output with the result."
input AngleVectorRight(void): "Converts this entity's vector angles to a vector in the right direction. Fires the OutValue output with the result."
input AngleVectorUp(void): "Converts this entity's vector angles to a vector in the up direction. Fires the OutValue output with the result."
input SetX(float) : "Sets this entity's X coordinate."
input SetY(float) : "Sets this entity's Y coordinate."
input SetZ(float) : "Sets this entity's Z coordinate."
input GetX(void) : "Gets this entity's X coordinate."
input GetY(void) : "Gets this entity's Y coordinate."
input GetZ(void) : "Gets this entity's Z coordinate."
input AddX(float) : "Adds to this entity's X coordinate."
input AddY(float) : "Adds to this entity's Y coordinate."
input AddZ(float) : "Adds to this entity's Z coordinate."
input SubtractX(float) : "Subtracts from this entity's X coordinate."
input SubtractY(float) : "Subtracts from this entity's Y coordinate."
input SubtractZ(float) : "Subtracts from this entity's Z coordinate."
// Outputs
output OutValue(vector) : "Fired when the value changes."
output OutX(float) : "Fired when the value changes, passing the resulting X coordinate."
output OutY(float) : "Fired when the value changes, passing the resulting Y coordinate."
output OutZ(float) : "Fired when the value changes, passing the resulting Z coordinate."
output OnGetValue(vector) : "Fired in response to the GetValue input. Used for polling this entity's current value when you don't want constant updates from the OutValue output."
output OnGetX(float) : "Fired in response to the GetX input."
output OnGetY(float) : "Fired in response to the GetY input."
output OnGetZ(float) : "Fired in response to the GetZ input."
input LookupActivity(string) : "Looks up the specified activity on the target entity. Uses the sequence outputs and outputs the first sequence with the given activity."
"Outputs an entity's position. Prediction operations can be performed as well."
[
target(target_destination) : "Target" : "" : "Who's position should be measured? Use the SetTarget input to change mid-game."
PositionType(choices) : "Position Type" : 0 : "What position should be measured." =
[
0 : "Origin (default)"
1 : "Local Origin"
2 : "Worldspace Center"
3 : "Eyes"
4 : "Ears"
5 : "Attachment (use parameter keyvalue)"
]
PositionParameter(string) : "Position Type Parameter" : "" : "If using an attachment's position, enter the name of the attachment here."
// Inputs
input GetPosition(void) : "Gets the target's position."
input SetPosition(vector) : "Sets the target's position. Using the default 'Origin' will set absolute origin while using 'Local Origin' will set local origin."
input PredictPosition(float) : "Predicts what position the target will be at in the specified number of seconds."
// Outputs
output OutPosition(vector) : "Outputs the position."
"A logic entity that could read an entity's response contexts. " +
"Use the target and context name keyvalues if you want to store a specific target and/or context. " +
"Use the 'Test' input to look for the context on the target. " +
"The 'OutValue' output will fire with the context's value if it is found."
[
// Keys
target(target_destination) : "Target Entity" : : "The entity with the context to measure."
context(string) : "Context Name" : : "The name of the context to measure."
// Inputs
input Test(void) : "Gets the stored context's value from stored target."
input TestContext(string) : "Tests the specified context against the target instead of using the stored context. Does not change the stored context."
input TestTarget(target_destination) : "Tests the specified target against the context instead of using the stored target. Does not change the stored target."
input SetContext(string) : "Sets the context to measure."
input SetValue(string) : "Sets the stored target's stored context value to the specified string."
input SetTarget(target_destination) : "Sets the target entity."
// Outputs
output OutValue(string) : "Fires when a context is found. Passes its value."
output OnFailed(void) : "Fires when this entity fails to find the specified context."
pattern(string) : "Custom Appearance" : : "A custom pattern to use. a = fully dark, z = fully bright. This should always contain lowercase letters for light patterns. Uppercase letters or other types of characters won't work with actual light patterns. (although they shouldn't break the whole entity either)"
PatternSpeed(float) : "Pattern Speed" : "0.1" : "The speed of the pattern."
// Inputs
input SetStyle(integer) : "Sets the pattern from the style presets."
input SetPattern(string) : "Sets the pattern directly."
input Enable(void) : "Enables this entity."
input Disable(void) : "Disables this entity."
input Toggle(void) : "Toggles this entity."
// Outputs
output OutValue(float) : "Outputs with a brightness equivalent to the current letter."
output OutLetter(string) : "Outputs with the current letter itself."
output OnLightOn(void) : "Fires when the current letter is equivalnt to 'on' (greater than a)."
output OnLightOff(void) : "Fires when the current letter is equivalent to 'off' (equal to a)."
"Coordinates a sequence out of up to 16 preset values. If the input value matches " +
"the sequence's current case value, an output is fired and (by default) the sequence increments to the next case.\n\n" +
"This is intended for things like passwords in keypads, which usually demand a specific combination of numbers."
[
InitialCase(integer) : "Initial Case" : 1 : "Which case to start on, meaning inputs will initially compare with this case. Uses the case's index. (e.g. 4 for Case 04)"
StartDisabled(choices) : "Start Disabled" : 0 : "If this entity is disabled, it will not accept any case tests. It will still accept other inputs, like SetSequenceIndex." =
InitialValue(float) : "Initial Value" : 0 : "Starting value for the math_generate."
SetHitMin(float) : "Minimum Legal Value" : 0 : "Minimum legal value for generation."
SetHitMax(float) : "Maximum Legal Value" : 1 : "Maximum legal value for generation."
SetParam1(float) : "Parameter 1" : 0 : "Multi-purpose parameter #1 for the generation algorithms to use for their own needs."
SetParam2(float) : "Parameter 2" : 0 : "Multi-purpose parameter #2 for the generation algorithms to use for their own needs."
// Inputs
input SetValue(float): "Sets the math_generate to a new value and fires the OutValue output with the result, performing all generation from that value."
input SetValueNoFire(float): "Sets the math_generate to a new value without firing any outputs."
input GetValue(void): "Causes the math_generate to fire its OnGetValue output with the current value. Used for polling the value when you don't want constant updates from the OutValue output."
output OnHitMin(void) : "Fired when generation meets the min value. Generation must go back above the min value before the output will fire again."
output OnHitMax(void) : "Fired when generation meets the max value. Generation must go below the max value before the output will fire again."
output OnGetValue(float) : "Fired in response to the GetValue input. Used for polling the value when you don't want constant updates from the OutValue output."
output OnChangedFromMin(void) : "Fired when the current generation value changes from the minimum value."
output OnChangedFromMax(void) : "Fired when the current generation value changes from the maximum value."
131072: "[131072] Narrow arcs (must be electrical)" : 0
]
target(target_destination) : "Boogie target(s)" : : "The one(s) that must boogie. prop_ragdolls have no hassle, but NPCs will have to break them elbows and become prop_ragdolls themselves (a.k.a. die) in order to boogie."
StartTime(float) : "Start time" : "0" : "How long after we've received the 'Activate' input should ragdolls boogie?"
BoogieLength(float) : "Boogie length" : "5.0" : "How long should the boogie last? Can be a range with a lower bound and a higher bound, e.g. ''2.5,4.0'' (no quotes)"
//16 : "[16] FREEZE" // This does not appear to exist.
16 : "[16] VEHICLE"
32 : "[32] FALL"
64 : "[64] BLAST"
128 : "[128] CLUB"
256 : "[256] SHOCK"
512 : "[512] SONIC"
1024 : "[1024] ENERGYBEAM"
16384: "[16384] DROWN"
32768 : "[32768] PARALYSE"
65536 : "[65536] NERVEGAS"
131072 : "[131072] POISON"
262144 : "[262144] RADIATION"
524288 : "[524288] DROWNRECOVER"
1048576 : "[1048576] ACID"
2097152 : "[2097152] SLOWBURN"
//4194304 : "[4194304] SLOWFREEZE" // This does not appear to exist.
4194304 : "[4194304] REMOVENORAGDOLL"
16777216 : "[16777216] PLASMA"
33554432 : "[33554432] AIRBOAT (gun)"
67108864 : "[67108864] DISSOLVE"
134217728 : "[134217728] BLAST_SURFACE"
268435456 : "[268435456] DIRECT"
536870912 : "[536870912] BUCKSHOT"
]
damagepresets(choices) : "Damage Presets" : 0 : "User-friendly 'presets' based on combined damage types. This is accompanied by the damage type and damage or, if they are specified." =
134217792 : "[134217792] All Blast Types (BLAST + BLAST_SURFACE)"
]
damageor(choices) : "Damage Or" : 0 : "Optional flags that can accompany the damage type." =
[
0 : "None"
2048 : "[2048] PREVENT_PHYSICS_FORCE (no physics force)"
4096 : "[4096] NEVERGIB (no gibs)"
8192 : "[8192] ALWAYSGIB (always gib if possible)"
4194304 : "[4194304] REMOVENORAGDOLL (no ragdoll on death)"
134217728 : "[134217728] BLAST_SURFACE (no damage underwater)"
268435456 : "[268435456] DIRECT (With burn, NPCs treat as being on fire)"
]
]
// So we can arrange the DamageTypes base class in point_damageinfo
@BaseClass = PointDamageInfoInit
[
Target(target_destination) : "Target/Victim" : : "The entit(ies) that will take all of this damage. This is optional if you're only using the 'ApplyDamageToEntity' input."
Inflictor(target_destination) : "Inflictor" : : "The entity that actually supposedly dealt the damage. This isn't supposed to be the attacker as much as it's supposed to be their weapon or a projectile from their weapon."
Attacker(target_destination) : "Attacker" : : "The entity that the damage is credited to."
Weapon(target_destination) : "Weapon" : : "The weapon that did the damage. This is usually used when the inflictor would already be used for something else. For example, when the inflictor is a rocket, this would be the RPG."
MaxEnts(integer) : "Maximum Victims" : 1 : "When ApplyDamage is called, how many entities that match the target's description should be victimized? Use 0 for no limit."
Damage(integer) : "Damage" : 0 : "How much damage to inflict."
MaxDamage(integer) : "Max Damage" : : "Function not fully understood, likely something related to multidamage"
ForceFriendlyFire(choices) : "Force Friendly Fire" : 0 : "Disregards friendly fire safechecks and applies the damage regardless of the attacker's relationship to the victim." =
AmmoType(integer) : "Ammo Type" : : "Uses a specific ammo type by order in the ammo def. (not to be confused with damage type)"
PlayerPenetrationCount(integer) : "Player Penetration Count" : : "Presumably how many players the inflictor has gone through before reaching the current victim. Appears to be unused in singleplayer games."
Target(target_destination) : "Entity to be replaced" : : "The entity that should be replaced. This is optional if you're only using the 'ReplaceEntity' input."
ReplacementEntity(target_destination) : "Replacement Entity" : : "The entity that should serve as the replacement."
ReplacementType(choices) : "Replacement Type" : 0 : "What IS the replacement entity?" =
[
0 : "Specific Entity (teleports directly)"
1 : "Classname (creates new entity)"
2 : "Template (target is point_template, uses contents)"
4 : "Random Template (target is point_template, uses random template)"
5 : "Random Template Relative (same as Random Template, keeps entity's relative position)"
]
ReplacementLocation(choices) : "Replacement Location" : 0 : "Where should the replacement entit(ies) be teleported to?" =
[
0 : "Target Origin"
1 : "Target Center (WorldSpaceCenter)"
]
RemoveOriginalEntity(choices) : "Remove original entity" : 1 : "Removes the entity being replaced." =
[
0 : "No"
1 : "Yes"
]
TakeTargetname(choices) : "Take Targetname" : 0 : "Causes the replacement entity to take the target's name." =
[
0 : "No"
1 : "Yes"
]
TakeParent(choices) : "Take Parent" : 0 : "Causes the replacement entity to take the target's current parent as well as its children." =
[
0 : "No"
1 : "Yes"
]
TakeOwner(choices) : "Take Owner" : 0 : "Causes the replacement entity to take the target's owner." =
[
0 : "No"
1 : "Yes"
]
TakeModelStuff(choices) : "Take Model Stuff" : 0 : "Causes the replacement entity to take the target's model stuff, including render fields and animation data." =
[
0 : "No"
1 : "Yes"
]
OtherStuff(string) : "Other Fields" : : "Specific variables that should transfer. Uses internal field names (e.g. ''m_bBoolean''), not keyvalues. This is really delicate, so be careful."
TargetIsCaller(choices) : "Fire outputs with original entity as caller" : 0 : "If enabled, OnReplace will fire with the original entity as the caller instead of this." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input Replace(void) : "Replaces the target entity with the replacement entity."
input ReplaceEntity(target_destination) : "Replaces the specified entity with the replacement entity."
input SetTarget(target_destination) : "Sets the entity to be replaced."
input SetReplacementEntity(target_destination) : "Sets the entity to replace the target."
// Outputs
output OnReplace(ehandle) : "Fires for each replacement we undergo, passing the replacement entity as the activator and parameter. The caller can be the replaced entity or this entity depending on this entity's settings."
"You can use this entity to either watch an entity for conditions/schedules or test whether they have them. "+
"TODO: Task support."
[
StartDisabled(choices) : "Start Disabled" : 1 =
[
0 : "No"
1 : "Yes"
]
Target(target_destination) : "Target NPC(s)" : : "The NPCs that should be monitored."
MaxEnts(integer) : "Maximum Targets" : 1 : "How many NPCs we're allowed to monitor. Each one will fire outputs. 0 = no limit."
SetMonitorInterval(float) : "Monitor Interval" : "0.25" : "The amount of time in between monitor checks. Use 0 to monitor each tick."
SetCooldownTime(float) : "Cooldown Time" : "1.0" : "Whenever a monitor check succeeds, how long should this entity wait before checking again? Use -1 to disable cooldown."
CooldownAt(choices) : "Cooldown upon first success" : 0 : "While actively monitoring, engage cooldown as soon as a NPC fulfills any of the evaluators instead of checking the other NPCs and letting them fire outputs as well." =
[
0 : "No"
1 : "Yes"
]
ConditionsSimple(choices) : "Condition" : 0 : "Which condition to monitor. Use 'Conditions (advanced)' to use conditions outside of this list or use multiple conditions." =
[
0 : "None"
4 : "No ammo"
10 : "See enemy"
13 : "Enemy occluded"
15 : "Have enemy LOS"
20 : "Repeated damage"
28 : "Enemy facing me"
29 : "Behind enemy"
31 : "Enemy unreachable"
51 : "Hear thumper"
]
Conditions(string) : "Conditions (advanced)" : : "Allows you to specify exactly which conditions to monitor, either by their actual integer ID or their string name. Separate multiple conditions with colons: 'COND_BEHIND_ENEMY:COND_ENEMY_OCCLUDED:11'"
Schedules(string) : "Schedules (advanced)" : : "Allows you to specify exactly which schedules to monitor, either by their actual integer ID or their string name. Separate multiple schedules with colons: 'SCHED_INVESTIGATE_SOUND:SCHED_COMBAT_FACE:14'"
TranslateSchedules(choices) : "Translate shcedules" : 0 : "Translates schedules based on each NPC's behavior each time they're checked. This depends on how the NPC remaps that schedule, which may be either their own version of it or something completely different that may not be desirable. The performance impact of this setting is not known." =
[
0 : "No"
1 : "Yes"
]
HintsSimple(choices) : "Hint Node" : 0 : "Which hint to monitor. Use 'Hints (advanced)' to use conditions outside of this list or use multiple hints." =
[
0 : "None"
100: "Crouch Cover Medium"
101: "Crouch Cover Low"
103: "Entrance / Exit Pinch"
104: "Guard Point"
105: "Enemy Disadvantage Point"
900: "Follower: Wait point"
950: "Player Ally: Push away destination"
951: "Player Ally: Fear withdrawal destination"
]
Hints(string) : "Hint Nodes (advanced)" : : "Allows you to specify exactly which hints to monitor by their integer ID. Separate multiple hints with colons: '100:101:104'"
HintDistance(float) : "Hint Distance" : "32.0" : "The maximum distance a NPC must be from their current hint node before we are allowed to check."
// Inputs
input SetTarget(target_destination) : "Sets the NPC(s) to be monitored."
input UpdateActors(void) : "Updates the NPCs."
input Test(void) : "Tests all of the current NPCs. This entity does not have to be enabled to do this."
input TestNPC(target_destination) : "Tests the specified NPC. This entity does not have to be enabled to do this."
input GetConditionName(integer) : "Looks up the specified condition ID and outputs its name through OutConditionName."
input GetScheduleName(integer) : "Looks up the specified schedule ID and outputs its name through OutScheduleName."
input SetCondition(integer) : "Adds a condition."
input ClearCondition(integer) : "Removes a condition."
input ClearAllConditions(void) : "Removes all conditions."
input SetSchedule(integer) : "Sets a schedule."
input ClearSchedule(integer) : "Removes a schedule."
input ClearAllSchedules(void) : "Removes all schedules."
input SetHint(integer) : "Sets a hint."
input ClearHint(integer) : "Removes a hint."
input ClearAllHints(void) : "Removes all hints."
// Outputs
output OutConditionName(string) : "Fires each time a condition is evaluated or a condition name is requested, outputting its actual name from its ID."
output OutScheduleName(string) : "Fires each time a schedule is evaluated or a schedule name is requested, outputting its actual name from its ID."
output OnNPCHasCondition(integer) : "Fires when a NPC has one of the conditions. Outputs the condition ID and uses the NPC as the activator. This fires for each condition on each NPC."
output OnNPCLacksCondition(integer) : "Fires when a NPC does not have one of the conditions. Outputs the condition ID and uses the NPC as the activator. This fires for each condition on each NPC."
output OnNPCRunningSchedule(integer) : "Fires when a NPC is running any of the schedules. Outputs the schedule ID and uses the NPC as the activator. This fires for each schedule on each NPC."
output OnNPCUsingHint(integer) : "Fires when a NPC is using any of the hints. Outputs the hint ID and uses the NPC as the activator. This fires for each hint on each NPC."
output OnNPCNotUsingHint(integer) : "Fires when a NPC is not using any of the hints. Outputs the hint ID and uses the NPC as the activator. This fires for each hint on each NPC."
]
@PointClass base(Targetname) = point_copy_size :
"Copies the size of one entity to another."
[
Source(target_destination) : "Size source" : : "The entity whose size would be measured and copied from."
Target(target_destination) : "Resize target" : : "The entity that will receive the copied size."
SetScale(float) : "Scale" : "1" : "Multiplies the source's size by this number. Useful for bullseyes."
// Inputs
input SetTarget(target_destination) : "Sets the resize target."
input SetSource(target_destination) : "Sets the size source."
input CopySize(void) : "Copies the source's size to the target."
input CopySizeToEntity(target_destination) : "Copies the source's size to the specified entity."
input CopySizeFromEntity(target_destination) : "Copies the specified entity's size to the target."
// Outputs
output OnCopy(void) : "Fires each time the size is successfully copied with the target as the activator."
Target(target_destination) : "Target(s)" : : "The NPC(s) that will be modified by default."
BurstInterval(string) : "Burst Interval" : "0.1:0.25" : "The range for a random amount of time the should pass between each shot in a burst. Format: 'min:max'"
RestInterval(string) : "Rest Interval" : "0.25:1.25" : "The range for a random amount of time the should pass between bursts. Format: 'min:max'"
BurstShotCountRange(string) : "Burst Shot Count Range" : "2:5" : "The range for a random amount of shots that should be fired in a bursts. Format: 'min:max'"
//BurstShotsRemaining(string) : "Burst Shots Remaining" : "2" : "How many shots are left in the current burst."
// Inputs
input EnableOnNPC(target_destination) : "Applies weapon modification to a specific NPC."
input DisableOnNPC(target_destination) : "Stops applying weapon modification to a specific NPC."
input SetBurstInterval(string) : "Sets the burst interval. Follows the same format as the keyvalue."
input SetRestInterval(string) : "Sets the rest interval. Follows the same format as the keyvalue."
input SetBurstShotCountRange(string) : "Sets the burst shot count range. Follows the same format as the keyvalue."
input SetBurstShotsRemaining(integer) : "Sets how many shots are left in the current burst."
input EnableShooting(void) : "Enables shooting if it was disabled."
input FireNoEarlierThan(float) : "Causes the NPC to stop firing for this amount of time."
input Reset(bool) : "Causes the shot regulator to reset. If 1 is passed, the NPC will immediately start firing instead of waiting for the next burst interval."
]
@PointClass base(Targetname) = env_closecaption :
"Sends a CC token via the 'Send' input. Unfortunately, this does not allow you to make your own and you can only use existing ones."
[
flags(choices) : "Flags" : 0 : "Flags." =
[
1 : "Warn if missing"
2 : "From player"
4 : "Male"
8 : "Female"
]
duration(float) : "Duration" : "2.5" : "The duration of the CC."
"Saves and reads keyvalue data from %mapname%_externaldata.txt. Useful for when you want to read and write data across multiple playthroughs."
[
Target(string) : "Block" : "!self" : "The key whose subkeys should be read from/written to. Using '!self' just uses this entity's name as the block name."
SaveEachChange(choices) : "Save after each change" : 1 : "Saves each change without having to use the 'Save' input." =
[
0 : "No"
1 : "Yes"
]
ReloadBeforeEachAction(choices) : "Reload file before each action" : 0 : "Reloads the file before each change this entity makes. This is mostly useful when there is a possibility that the file could change by other means which could be overwritten, like another logic_externaldata somewhere." =
Mapname(string) : "Map Name" : : "logic_externaldata normally uses ''<current map's name>_externaldata.txt'', but you could override the map name here to create/access external data intended for other maps. You could also just use this to write to additional external data files whether they're intended for another map or not."
input WriteKeyValue(string) : "Writes the specified keyvalue. If the keyvalue already exists, it will be overwritten. If not, it will be created. Format is '<key> <value>', like AddOutput. (Spaces after the first will still be incorporated into the value)"
input RemoveKeyValue(string) : "Removes the specified key."
input ReadKey(string) : "Reads the specified key, firing OutValue with its value."
input SetBlock(string) : "Sets the block of keyvalues the logic_externaldata reads from. Using !activator or !caller uses their respective entity names."
input Save(void) : "Saves to %mapname%_externaldata.txt."
Target(pointentityclass) : "Projectile Classname" : "crossbow_bolt" : "The classname of the projectile."
Owner(target_destination) : "Owner Entity" : : "The projectile's owner entity, or whoever kills will be credited to."
Damage(float) : "Damage" : "100.0" : "The damage of the projectile."
Speed(float) : "Speed" : "1500" : "How fast the projectile should move."
FireFromOwner(choices) : "Fire From Owner" : 0 : "Fires the projectile from the owner entity's origin instead of our own." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input Fire(void) : "Fires a projectile with our current angles."
input FireAtEntity(target_destination) : "Fires a projectile at a specific entity."
input FireAtPosition(vector) : "Fires a projectile at a specific position."
input SetDamage(float) : "Sets the projectile's damage."
input SetOwnerEntity(target_destination) : "Sets the owner."
input SetSpeed(float) : "Sets the projectile's starting speed."
input SetProjectileClass(string) : "Sets the class of the projectile to spawn."
// Outputs
output OnFire(ehandle) : "Fires each time a projectile is fired, passing the projectile as the activator. The owner entity is the caller if it exists."
Negated(choices) : "Filter mode" : "Allow entities that match criteria" : "If set to Allow, only entities who match the criteria will pass the filter. "+
"If set to Disallow, only entities who do NOT match the criteria will pass the filter." =
[
0 : "Allow entities that match criteria"
1 : "Disallow entities that match criteria"
]
PassCallerWhenTested(choices) : "Pass caller when tested" : 0 : "When tested with TestActivator or TestEntity, this causes the OnPass and OnFail outputs to use either this filter as the caller or the entity that called the test as the caller." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input TestActivator(void) : "Tests the activator against the filter and fires the OnPass or OnFail output."
input TestEntity(target_destination) : "Tests the target entity against the specified entity and fires the OnPass or OnFail output."
input SetField(string) : "Sets this filter's primary test criteria. (e.g. the name to test against the activator)"
// Outputs
output OnPass(void) : "Fired in response to TestActivator input if the activator passes the filter."
output OnFail(void) : "Fired in response to TestActivator input if the activator fails to pass the filter."
"A filter that filters by the model of the activator."
[
filtermodel(studio) : "Filter Model" : : "The model to filter by. If the filter mode is Allow, only entities whose "+
"model matches the given string will pass the filter. If the filter mode is Disallow, "+
"all entities EXCEPT those whose model matches the given string will pass the filter."
skin(string) : "Skin" : -1 : "Some models have multiple versions of their textures, called skins. Use this if you want to filter by skins as well. If you want any skin to be allowed, be sure to leave this at -1! It might automatically change when you choose a model."
"A filter that filters by the response contexts of the activator."
[
ResponseContext(string) : "Filter Context" : : "The context(s) to filter by. Syntax is 'key:value,key:value'. "+
"Values in this field can use wilcards. For example, if this filter contains 'lastname:*', it will pass any entity with the context 'lastname', regardless of its value. "+
"Wildcards do not apply to context names and you cannot define the same context multiple times, but inputs like AddContext or RemoveContext can be used to add to the filter context."
any(choices) : "Pass if entity has any of these contexts" : 0 : "Should this filter only pass if the entity contains all of these contexts or can it pass if the entity has at least one of them?" =
[
0 : "No"
1 : "Yes"
]
// Inputs
input AddContext(string) : "Adds a context to this fitler's list of response contexts. The format should be 'key:value'."
input RemoveContext(string) : "Remove a context from this filter's list of response contexts. The name should match the 'key' of a previously added context."
input ClearContext(void) : "Removes all contexts in this filter's list of response contexts."
"A filter that filters by the squad of the activator."
[
filtername(string) : "Filter Squad" : : "The squad name to filter by. If the filter mode is Allow, only entities who are "+
"in the squad of the given string will pass the filter. If the filter mode is Disallow, "+
"all entities EXCEPT those who are in the squad of the given string will pass the filter."
allowsilentmembers(choices) : "Allow Silent Members" : 1 : "Allows silent squad members to pass the filter. Silent squad members are enemy finders and vital allies in player_squad." =
"A filter that filters by the activator's relationship with another entity. Please note that any entity incapable of supporting relationships is automatically passed if this filter is set to 'Neutral'."
[
target(target_destination) : "Subject" : : "The entity whose relationships we should test with. If empty, the entity using the filter will be used."
rank(string) : "Priority" : : "The priority the subject should have with the target. If empty, priority will be disregarded."
disposition(choices) : "Disposition" : 3 : "What relationship the subject should have with the activator." =
[
1 : "Hate"
2 : "Fear"
3 : "Like"
4 : "Neutral"
]
inverttarget(choices) : "Invert Subject" : 0 : "Should we use the activator's relationship to the subject instead?" =
[
0 : "No"
1 : "Yes"
]
Reciprocal(choices) : "Reciprocal" : 0 : "Should we only pass if both entities have the same relationship with each other? Makes 'Invert Subject' useless." =
"A filter that tests whether the activator is within a volume."
[
target(target_destination) : "Volume" : : "The volume to be tested with. This filter passes if the activator is within this volume. Intended to be a brush entity. (e.g. a trigger)"
tester(target_destination) : "Volume Tester" : "!activator" : "Who should be in the volume for the filter to pass?"
"Whenever an entity using this as a damage filter takes damage, that damage is transferred to another entity. The entity using this filter will not take the damage unless a secondary filter is specified and passed or caller damage is allowed. All damage information including force, type, attacker, etc. should be retained during the transfer and it obeys the target entity's own damage filters."
[
target(target_destination) : "Transfer Target" : "" : "The name of the entity/entities that will receive the damage. Please note that this complies with their own damage filters."
input SetTarget(target_destination) : "Sets the transfer target."
AdjustDamagePosition(choices) : "Adjust Damage Position" : 0 : "Adjusts the damage position to be relative to the target entity." =
[
0 : "No"
1 : "Yes"
]
MaxEntities(integer) : "Max Entities" : 1 : "The maximum number of entities matching the criteria who can be damaged. 0 = no limit. (0 is actually changed to 2048 internally, but don't worry about that)"
CallerDamageAllowed(choices) : "Caller Damage Allowed" : 0 : "Sets whether the caller using this filter is allowed to take the transferred damage as well." =
[
0 : "No"
1 : "Yes"
]
damagefilter(filterclass) : "Secondary Filter" : "" : "A secondary filter that can be used for certain things. See the Secondary Filter Mode for different ways you can use this. This is optional."
SecondaryFilterMode(choices) : "Secondary Filter Mode" : 0 : "How should the secondary filter be used?" =
[
0 : "Must pass to damage caller (if damage is allowed)"
1 : "Must pass to transfer damage to targets"
2 : "Each transfer target must pass"
]
input SetField(target_destination) : "Sets the secondary filter."
"A filter that controls the blood an entity emits. Must be used as a damage filter to work properly."
[
BloodDisabled(choices) : "Blood Disabled" : 0 : "Sets whether blood shouldn't be produced by damage. Overrides the secondary filter, if any." =
[
0 : "No"
1 : "Yes"
]
damagefilter(filterclass) : "Secondary Filter" : "" : "An optional secondary filter that can be used for either whose damage could produce blood or as a real damage filter for whether any damage should be taken at all."
SecondaryFilterMode(choices) : "Secondary filter is damage filter" : 0 : "Sets whether the secondary filter should be treated as a redirected damage filter (must pass to take actual damage) instead of just permitting blood." =
[
0 : "No"
1 : "Yes"
]
input SetField(target_destination) : "Sets the secondary filter."
input DisableBlood(void) : "Disables blood."
input EnableBlood(void) : "Enables blood if it was previously disabled."
SetDamageMultiplier(float) : "Damage Multiplier" : "1.0" : "Multiplies the damage by this scale."
SetDamageAddend(float) : "Damage Addend" : "0" : "Adds to or subtracts the damage by this number. This is done after the damage is multiplied by the damage scale."
SetDamageBitsAdded(integer) : "Damage Bits Added" : 0 : "Adds bits to the damage type. See a damage type keyvalue in an entity like filter_damage_type to get their bit representation."
SetDamageBitsRemoved(integer) : "Damage Bits Removed" : 0 : "Removes bits from the damage type. See a damage type keyvalue in an entity like filter_damage_type to get their bit representation."
NewAttacker(target_destination) : "New Attacker" : : "If specified, the damage will be credited to this entity instead of the original attacker."
NewInflictor(target_destination) : "New Inflictor" : : "If specified, the damage's inflictor will be changed to this entity instead of the original inflictor."
NewWeapon(target_destination) : "New Weapon" : : "If specified, the damage's weapon will be changed to this entity instead of the original weapon."
damagefilter(filterclass) : "Secondary Filter" : "" : "An optional secondary filter that can be used for either whose damage could be modified or as a real damage filter for whether any damage should be taken at all."
SecondaryFilterMode(choices) : "Secondary Filter Mode" : 0 : "Sets whether the secondary filter should be treated as a redirected damage filter (must pass to take actual damage) instead of just permitting modification." =
[
0 : "Must pass to damage caller (and therefore mod damage)"
1 : "Must pass to modify damage (others use the original damage)"
2 : "Attackers must pass to modify damage"
]
input SetDamageMultiplier(float) : "Sets the damage multiplier."
input SetDamageAddend(float) : "Sets the damage addend."
damagefilter(filterclass) : "Secondary Filter" : "" : "An optional secondary filter that can be used as an actual damage filter, which damage to operate with, etc."
SecondaryFilterMode(choices) : "Secondary Filter Mode" : 0 : "Sets how the secondary filter should be treated." =
[
0 : "Use as a regular damage filter; must pass to fire outputs"
1 : "Use as a regular damage filter, but fire outputs even if it fails"
2 : "Use only to permit outputs, failed damage is dealt anyway"
]
input SetField(target_destination) : "Sets the secondary filter."
// Outputs
output OutInflictor(ehandle) : "Outputs the damage inflictor."
output OutAttacker(ehandle) : "Outputs the damage attacker."
output OutWeapon(ehandle) : "Outputs the damage weapon."
output OutDamage(float) : "Outputs the damage."
output OutMaxDamage(float) : "Outputs the max damage."
output OutBaseDamage(float) : "Outputs the base damage."
output OutDamageType(integer) : "Outputs the damage type."
output OutDamageCustom(integer) : "Outputs the damage custom."
output OutDamageStats(integer) : "Outputs the damage stats."
output OutAmmoType(integer) : "Outputs the ammo type."
output OutDamageForce(vector) : "Outputs the damage force."
output OutDamagePosition(vector) : "Outputs the damage position."
output OutForceFriendlyFire(bool) : "Outputs whether the damage info forces friendly fire."
target(string) : "Manifest File" : : "The manifest file to load. Keep in mind ''maps/%mapname%_manifest.txt'' is always loaded automatically without this entity."
target(string) : "ConVars" : "" : "The convars to modify. Multiple cvars can be modded with ';', e.g. 'host_timescale 0.5; npc_alyx_interact_manhacks 1'"
UseServer(choices) : "Command from Server" : 0 : "Mods convars directly from the server instead of acting as if the convars were typed into the local player's console, similar to using point_servercommand as opposed to point_clientcommand. Required to function in MP games." =
"An entity that detects if another entity points in a given direction for a period of time."
[
target(target_destination) : "Target Entity Name" : : "Name of the entity whose angles will be sensed."
lookatname(target_destination) : "Look At Entity" : : "The entity we want to check to see if the Target Entity is looking at."
duration(float) : "Duration" : : "The amount of time the Target Entity must look at the 'Look at Entity' to trigger this entity, in seconds."
tolerance(integer) : "Tolerance" : : "The tolerance, in degrees, in the checking to determine when the Target Entity is looking at the Look At Entity."
input Toggle(void) : "Toggle the sensor between enabled and disabled."
input Test(void) : "Check to see if the Target Entity is facing the Look At Entity within the specified tolerance, firing either the OnFacingLookat or OnNotFacingLookat output based on the result."
// Outputs
output TargetDir(vector) : "Fired when the forward direction of the Target Entity changes. Passes the new forward direction as a parameter."
output OnFacingLookat(void) : "Fired when the Target Entity points at the Look At Entity for more than the specified Duration, or in response to a Test input."
output OnNotFacingLookat(void) : "Fires in response to a Test input when the Target Entity is not pointing at the Look At Entity."
output FacingPercentage(float) : "Normalized value (0..1) where 1 is facing directly at target and 0 is at or beyond the angle of tolerance."
input Test(void) : "Checks to see if the Target Entity's angular velocity meets or exceeds the Threshold Velocity, " +
"firing either the OnGreaterThanOrEqualTo or OnLessThan output based on the result."
input TestWithInterval(void) : "Checks to see if the Target Entity's angular velocity meets or exceeds the Threshold Velocity. Once the Fire Interval expires, " +
"fires the appropriate test result output if the result is stable throughout the Fire Interval."
// Outputs
output AngularVelocity(float) : "Fired when the Target's Angular Velocity changes, passing the new magnitude of the angular velocity."
output OnGreaterThan(void) : "Fired when the Target Entity goes from slower than the threshold angular velocity to faster than the threshold angular velocity."
output OnGreaterThanOrEqualTo(void) : "Fired when the Target Entity goes from slower than the threshold angular velocity to faster than the threshold angular velocity."
output OnLessThan(void) : "Fired when the Target Entity goes from faster than the threshold angular velocity to slower than the threshold angular velocity."
output OnLessThanOrEqualTo(void) : "Fired when the Target Entity goes from faster than the threshold angular velocity to slower than the threshold angular velocity."
output OnEqualTo(void) : "Fired when the Target Entity reaches the threshold angular velocity from a different velocity."
DamageTarget(target_destination) : "Target Entity" : "" : "If specified, only this entity will take damage. Otherwise, all entities within the Radius will take damage."
DamageRadius(float) : "Radius" : 256 : "All entities within this radius of this entity will take damage. If a 'Target Entity' is specified, only that entity will take damage."
Damage(integer) : "Damage" : 5 : "Damage done to all affected entities each time this entity fires."
DamageDelay(float) : "Delay" : 1 : "Delay between refires, in seconds."
// Inputs
input Hurt(void) : "Force a single fire, damaging either the Target Entity or all entities within the radius."
input TurnOn(void) : "Enable this entity. It will start damaging entities everytime it fires, and refire based upon the specified Delay."
input TurnOff(void) : "Disable this entity. It will stop damaging entities."
input Toggle(void) : "Toggle this entity between On/Off state."
width(float) : "Constraint Width" : "75.0" : "Width of the constraint edge. This is the distance in which to start slowing players down as they approach the edge of the radius."
speedfactor(float) : "Speed Factor" : "0.15" : "Factor applied to the player's max speed as they approach the radius edge."
// Inputs
input TurnOn(void) : "Start constraining any players within the radius."
input TurnOff(void) : "Stop constraining any players previously constrained."
// Outputs
output OnConstraintBroken(void) : "Fired when a player breaks through the constraint."
massScale(float) : "Mass Scale" : "0" : "A scale multiplier for the object's mass."
overridescript(string) : "Override Parameters" : "" : "A list of physics key/value pairs that are usually in a physics prop .qc file. Format is 'key,value,key,value,etc'."
damagetoenablemotion(integer) : "Health Level to Override Motion" : 0 : "If specified, this object will start motion disabled. Once its health has dropped below this specified amount, it will enable motion."
forcetoenablemotion(float) : "Physics Impact Force to Override Motion" : 0 : "If specified, this object will start motion disabled. Any impact that imparts a force greater than this value on the physbox will enable motion."
health(integer) : "Strength" : 0 : "Number of points of damage to take before breaking. 0 means don't break."
preferredcarryangles(vector) : "Preferred Player-carry Angles" : "0 0 0" : "If the 'Use Preferred Carry Angles' spawnflag is set, this angle is the angle which the object should orient to when the player picks it up, with the physgun or +USE."
notsolid(choices) : "Not solid to world" : 0 =
[
0: "Solid to World"
1: "Passes through World"
]
// Inputs
input Wake(void) : "Wake up this physics object, if it is sleeping."
input Sleep(void) : "Put this physics object to sleep. It will wake if given the Wake input, or if force is applied to it. Note that physics objects go to sleep automatically after coming to rest for a while, so you don't really need to use this."
output OnDamaged(void) : "Fired when this entity is damaged."
output OnAwakened(void) : "Fired when this entity becomes awake (collision/force is applied)."
output OnMotionEnabled(void) : "Fired when motion is enabled due to damage/physcannon/force."
output OnPhysGunPickup(void) : "Fired when a player picks this object up, either with the physgun or +USE."
output OnPhysGunPunt(void) : "Fired when a player punts this object with the physgun."
output OnPhysGunOnlyPickup(void) : "Fired when a player picks this object up WITH THE PHYSGUN. +USE pickups do not fire this output."
output OnPhysGunDrop(void) : "Fired when a player drops this object."
output OnPlayerUse(void) : "Fired when the player tries to +USE the physbox. This output will fire only if the Generate output on +USE spawnflag is set."
constraintsystem(target_destination) : "Constraint System Manager" : "" : "The name of a phys_constraintsystem that this constraint should be a part of. All constraints on a set of entities should be placed in the same system, or they will fight each other during simulation."
forcelimit(float) : "Force Limit to Break (lbs)" : "0" : "The amount of force an impact must apply to the constraint to break it. A way of calculating this is to set it to the mass of an object that would break this constraint if it were resting on the constrainted objects."
torquelimit(float) : "Torque Limit to Break (lbs * distance)" : "0" : "The amount of torque required to break the constraint. A way of calculating this is to multiply any reference mass by the resting distance (from the center of mass of the object) needed to break the constraint."
breaksound(sound) : "Play Sound on Break" : "" : "A sound played when the constraint is broken."
teleportfollowdistance(float) : "Follow teleport distance" : "0" : "If one object teleports more than this many units away it will cause the other constrained object to teleport to an appropriate relative position."
// Inputs
input Break(void) : "Force the constraint to break."
input TurnOn(void) : "Enable the constraint. Do this when the objects don't exist when the constraint spawns - or when you have deactivated the constraint. Broken constraints can NOT be turned on. They have been deleted."
input TurnOff(void) : "Disable this constraint."
// Outputs
output OnBreak(void) : "Fired when the constraint breaks."
"An entity used to manage a group of interacting constraints and keep them stable. " +
"All constraints on a set of entities should be placed in the same system, or they will fight each other during simulation."
[
additionaliterations(integer) : "Additional System Iterations" : 0 : "Adding iterations makes the interactions among constraints in a system tighter. It will not compensate for errors due to collision, but will help in cases where objects of disparate mass are constrained to each other."
]
@PointClass base(Targetname,Angles) = phys_keepupright : "A controller that tries to keep an entity facing a particular direction."
"A physically simulated gas cannister that can have its cap shot off, at which point gas will start escaping and cause the cannister to fly around. If it takes enough damage, it will explode."
health(integer) : "Health" : 25 : "The amount of damage the cannister takes before exploding."
thrust(string) : "Thrust" : "3000.0" : "When the cap has been blown off, and the escaping gas is thrusting the cannister about, this is the amount of thrust generated."
fuel(string) : "Fuel Seconds" : "12.0" : "The amount of time that gas leaks from the cannister before being considered empty."
rendercolor(color255) : "Smoke Color (R G B)" : "255 255 255"
gassound(sound) : "Thruster Sound" : "TODO_REPLACE_WITH_SOUNDSCRIPT_FOR_MAPBASE_PLEASE" : "The sound played when the gas is escaping from the cannister."
springaxis(vecline) : "Spring Axis" : "" : "Use the helper. Drag it out to match the virtual spring."
length(string) : "Spring Length" : "0" : "How long the spring would be if it was at rest (nothing hanging on it or attached). 0 means the length of the brush."
constant(string) : "Spring Constant" : "50" : "Stiffness of the spring. The larger the number the less the spring will stretch."
damping(string) : "Damping Constant" : "2.0" : "How much energy the spring loses. The larger the number, the less bouncy the spring."
relativedamping(string) : "Relative Damping Constant" : "0.1" : "The amount of energy the spring loses proportional to the relative velocity of the two objects the spring is attached to."
// UNDONE: add max tension and what event to fire when it breaks
breaklength(string) : "Break on Length" : "0" : "If the spring's length ever exceeds this length, the spring breaks."
// Inputs
input SetSpringConstant(float) : "Set the Spring Constant."
input SetSpringLength(float) : "Set the Spring Length."
input SetSpringDamping(float) : "Set the Spring Damping."
reversalsoundthresholdSmall(float) : "Reversal sound threshold (small)" : "0" : "Episodic only. When accelerating by more than this many units/sec^2 opposite to direction of travel, play the small reversal sound."
reversalsoundthresholdMedium(float) : "Reversal sound threshold (medium)" : "0" : "Episodic only. When accelerating by more than this many units/sec^2 opposite to direction of travel, play the medium reversal sound."
reversalsoundthresholdLarge(float) : "Reversal sound threshold (large)" : "0" : "Episodic only. When accelerating by more than this many units/sec^2 opposite to direction of travel, play the large reversal sound."
reversalsoundSmall(sound) : "Reversal sound (small)" : "" : "Episodic only. Play this sound when making a hard reverse over the small threshold but less than medium"
reversalsoundMedium(sound) : "Reversal sound (medium)" : "" : "Episodic only. Play this sound when making a hard reverse over the medium threshold but less than large"
reversalsoundLarge(sound) : "Reversal sound (large)" : "" : "Episodic only. Play this sound when making a hard reverse over the large threshold"
"A constraint that is essentially two length constraints and two points. Imagine it as a virtual rope connected to two objects, each suspended from a pulley above them."+
"The constraint keeps the sum of the distances between the pulley points and their suspended objects constant."
[
addlength(float) : "Additional Length" : "0" : "Add (or subtract) this amount to the rest length of the pulley rope."
gearratio(float) : "Pulley Gear Ratio" : "1" : "Add (or subtract) this amount to the rest length of the pulley rope."
position2(vecline) : "Pulley Position 2" : : "The position of the pulley for Entity 2. The pulley for Entity 1 is the origin of this constraint entity. Entity 1 is always suspended from pulley point 1, and Entity 2 is always suspended from pulley point 2."
slidefriction(float) : "Friction" : "0" : "Resistance/friction in the constraint"
SystemLoadScale(float) : "Load Scale" : "1" : "Scale of the mass load connected to this constraint (1=just the objects directly connected)"
// Inputs
input SetVelocity(float) : "Set linear velocity along the constraint"
//// Episodic only -- for now.
minSoundThreshold(float) : "Minimum Sound Velocity" : "6" : "When travelling below this many units/sec, will not play any sound."
maxSoundThreshold(float) : "Full Sound Velocity" : "80" : "When travelling at this speed or above, will play sound at full volume."
slidesoundfwd(sound) : "Travel sound (forward)" : "" : "Play this sound when travelling forward on helper axis"
slidesoundback(sound) : "Travel sound (backward)" : "" : "Play this sound when travelling backward on helper axis"
reversalsoundthresholdSmall(float) : "Reversal sound threshold (small)" : "0" : "When accelerating by more than this many units/sec^2 opposite to direction of travel, play the small reversal sound."
reversalsoundthresholdMedium(float) : "Reversal sound threshold (medium)" : "0" : "When accelerating by more than this many units/sec^2 opposite to direction of travel, play the medium reversal sound."
reversalsoundthresholdLarge(float) : "Reversal sound threshold (large)" : "0" : "When accelerating by more than this many units/sec^2 opposite to direction of travel, play the large reversal sound."
reversalsoundSmall(sound) : "Reversal sound (small)" : "" : "Play this sound when making a hard reverse over the small threshold but less than medium"
reversalsoundMedium(sound) : "Reversal sound (medium)" : "" : "Play this sound when making a hard reverse over the medium threshold but less than large"
reversalsoundLarge(sound) : "Reversal sound (large)" : "" : "Play this sound when making a hard reverse over the large threshold"
"A constraint that preserves the distance between two entities. If the 'Keep Rigid' flag is set, think of it as a rod. If not, think off it as a virtual rope."
[
addlength(float) : "Additional Length" : "0" : "Add (or subtract) this amount to the rest length of the rope."
minlength(float) : "Minimum Length" : "0" : "If the constraint is not rigid, this is the minimum length it can be."
attachpoint(vecline) : "Attached object 2 point" : "The position the rope attaches to object 2"
"A constraint that fixes the position of two entities, relative to this constraint's origin. Also allows for limits on the rotation around each axis, in the space of this constraint."
"Turns an arbitrary entity into a physically simulated entity. i.e. brush entities will behave like func_physbox, model entities behave like prop_physics."
target(target_destination) : "Entity to convert" : : "Name of the entity that will be converted to a physics object when the ConvertTarget input is fired."
forcelimit(float) : "Force Limit to Break (lbs)" : "0" : "The amount of force necessary to break a stuck object off the magnet. A way of calculating this is to set it to the mass of an object that would break this constraint if it were resting on the magnet."
torquelimit(float) : "Torque Limit to Break (lbs * distance)" : "0" : "The amount of torque necessary to break a stuck object off the magnet. A way of calculating this is to multiply any reference mass by the resting distance (from the center of mass of the object) needed to break the constraint."
massScale(float) : "Mass Scale" : "0" : "A scale multiplier for the object's mass."
overridescript(string) : "Override parameters" : "" : "A list of physics key/value pairs that are usually in a physics prop .qc file. Format is 'key,value,key,value,etc'."
maxobjects(integer) : "Maximum Attached Objects" : 0 : "The maximum number of physics objects that can be stuck to the magnet at once. 0 = no limit."
// Inputs
input TurnOn(void) : "Turn the magnet on."
input TurnOff(void) : "The the magnet off. This will detach anything current stuck to the magnet."
// Outputs
output OnAttach(void) : "Fired when an entity is grabbed by the magnet."
output OnDetach(void) : "Fired when an entity is released by the magnet."
skin(integer) : "Skin" : 0 : "Some models have multiple versions of their textures, called skins. Set this to a number other than 0 to use that skin instead of the default."
solid(choices) : "Collisions" : 6 =
[
0: "Not Solid"
2: "Use Bounding Box"
6: "Use VPhysics"
]
disableshadows(choices) : "Disable Shadows" : 0 =
[
0 : "No"
1 : "Yes"
]
screenspacefade(choices) : "Screen Space Fade" : 0 : "The method by which the fading distance should be determined. If 'No', the fade distances is the distance from the player's view to the object, in inches. If 'Yes', the fade distance is the size of the object onscreen, in pixels." =
[
0 : "No"
1 : "Yes"
]
fademindist(float) : "Start Fade Dist/Pixels" : -1 : "Distance at which the prop starts to fade (<0 = use fademaxdist). If 'Screen Space Fade' is selected, this represents the number of pixels wide covered by the prop when it starts to fade."
fademaxdist(float) : "End Fade Dist/Pixels" : 0 : "Maximum distance at which the prop is visible (0 = don't fade out). If 'Screen Space Fade' is selected, this represents the *minimum* number of pixels wide covered by the prop when it fades."
fadescale(float) : "Fade Scale" : 1 : "If you specify a fade in the worldspawn, or if the engine is running under dx7 [hl2/ep1/portal] or dx8 [ep2/tf], then the engine will forcibly fade out props even if fademindist/fademaxdist isn't specified." +
" This scale factor gives you some control over the fade. Using 0 here turns off the forcible fades." +
" Numbers smaller than 1 cause the prop to fade out at further distances, and greater than 1 cause it to fade out at closer distances."
lightingorigin(target_destination) : "Lighting Origin" : "" : "Select an info_lighting to specify a location to sample lighting from, instead of using this entity's origin."
disableselfshadowing(choices) : "Disable Self-Shadowing with vertex lighting" : 0 =
[
0 : "No"
1 : "Yes"
]
ignorenormals(choices) : "Ignore surface normal for computing vertex lighting" : 0 =
[
0 : "No"
1 : "Yes"
]
]
@BaseClass = BaseFadeProp
[
fademindist(float) : "Start Fade Dist" : -1 : "Distance at which the prop starts to fade (<0 = use fademaxdist)."
fademaxdist(float) : "End Fade Dist" : 0 : "Max fade distance at which the prop is visible (0 = don't fade out)"
fadescale(float) : "Fade Scale" : 1 : "If you specify a fade in the worldspawn, or if the engine is running under dx7, then the engine will forcibly fade out props even if fademindist/fademaxdist isn't specified." +
" This scale factor gives you some control over the fade. Using 0 here turns off the forcible fades." +
" Numbers smaller than 1 cause the prop to fade out at further distances, and greater than 1 cause it to fade out at closer distances."
DefaultAnim(string) : "Default Animation" : "" : "The name of the idle animation that this prop will revert to whenever it finishes a random or forced animation."
RandomAnimation(choices) : "Randomly Animate" : 0 : "If set, this prop will randomly choose and play animations, based upon the times specified in 'Min/Max Random Anim Time'. Inbetween the random animations, it will revert to playing the 'Default Animation'." =
[
0: "No"
1: "Yes"
]
MinAnimTime(float) : "Min Random Anim Time" : "5" : "Minimum time between random animations."
MaxAnimTime(float) : "Max Random Anim Time" : "10" : "Maximum time between random animations."
DisableBoneFollowers(choices) : "Disable Bone Followers" : 0 : "If set, this prop won't generate bone followers, even if they're listed in the model's .qc" =
"A prop designed to be interacted with like a button. It has all of the properties of prop_dynamic without having to use an accompanying func_door or func_button."
[
spawnflags(flags) =
[
512 : "[512] +USE interactable" : 1
1024 : "[1024] Touch interactable" : 0
2048 : "[2048] Disable interaction commands when locked" : 0
4096 : "[4096] Radius use" : 0
]
Locked(choices) : "Start locked" : 0 : "If set, this prop_interactable will start locked, making it uninteractable." =
[
0: "No"
1: "Yes"
]
SetCooldown(float) : "Cooldown" : "1.0" : "The amount of time after this prop_interactable is used before it can be interacted with again. This is always based on when the prop_interactable was pressed, disregarding any active In Sequence, but an optional Out Sequence will play after the cooldown is over. It is also used when the prop_interactable is locked."
PressedSound(sound) : "Pressed Sound" : "" : "The sound to play when the button is successfully pressed."
LockedSound(sound) : "Locked Sound" : "" : "The sound to play when the button is interacted with while locked."
InSequence(string) : "In Sequence" : "" : "Optional sequence to play when the button is pressed, representing a button going 'in'."
OutSequence(string) : "Out Sequence" : "" : "Optional sequence to play after the button was interacted with and the cooldown is finished, representing a button coming back 'out' after an 'in' animation."
LockedSequence(string) : "Locked Sequence" : "" : "Optional sequence to play when the prop_interactable is interacted with while locked."
// Inputs
input Lock(void) : "Locks this prop_interactable, making it uninteractable."
input Unlock(void) : "Unlocks this prop_interactable, making it interactable."
input Press(void) : "Presses this prop_interactable as if someone interacted with it."
input EnableUseInteraction(void) : "Enables use interaction if it was disabled before."
input DisableUseInteraction(void) : "Disables use interaction if it was enabled before."
input EnableTouchInteraction(void) : "Enables touch interaction if it was disabled before."
input DisableTouchInteraction(void) : "Disables touch interaction if it was enabled before."
input StartIgnoringCommandsWhenLocked(void) : "Starts ignoring commands when this prop_interactable is locked."
input StopIgnoringCommandsWhenLocked(void) : "Stops ignoring commands when this prop_interactable is locked."
minhealthdmg(integer) : "Min Damage to Hurt" : 0 : "The prop will ignore any damage events if the damage is less than this amount."
shadowcastdist(integer) : "Shadow Cast Distance" : 0 : "Use this to override how far this object casts shadows. 0 = default distance."
physdamagescale(float) : "Physics Impact Damage Scale" : "0.1" : "Scales damage energy when this object is hit by a physics object. NOTE: 0 means this feature is disabled for backwards compatibility.\nSet to 1.0 for materials as strong as flesh, smaller numbers indicate stronger materials."
Damagetype(choices) : "Impact damage type" : 0 =
[
0: "Blunt"
1: "Sharp"
]
nodamageforces(choices) : "Damaging it Doesn't Push It" : 0 : "Used to determine whether or not damage should cause the brush to move." =
[
0: "No"
1: "Yes"
]
inertiaScale(float) : "Scale Factor For Inertia" : "1.0" : "Scales the angular mass of an object. Used to hack angular damage and collision response."
massScale(float) : "Mass Scale" : "0" : "A scale multiplier for the object's mass."
overridescript(string) : "Override Parameters" : "" : "A list of physics key/value pairs that are usually in a physics prop .qc file. Format is 'key,value,key,value,etc'."
damagetoenablemotion(integer) : "Health Level to Override Motion" : 0 : "If specified, this object will start motion disabled. Once its health has dropped below this specified amount, it will enable motion."
forcetoenablemotion(float) : "Physics Impact Force to Override Motion" : 0 : "If specified, this object will start motion disabled. Any impact that imparts a force greater than this value on the physbox will enable motion."
puntsound(sound) : "Sound to make when punted"
// Inputs
input Wake(void) : "Wake up this physics object, if it is sleeping."
input Sleep(void) : "Put this physics object to sleep. It will wake if given the Wake input, or if force is applied to it. Note that physics objects go to sleep automatically after coming to rest for a while, so you don't really need to use this."
input DisableFloating(void) : "Disable fluid/floating simulation to reduce cost."
input SetBodyGroup(integer) : "Set this prop's body group (from 0 - n)."
input physdamagescale(float) : "Set the Physics Impact Damage Scale for this character. NOTE: 0 means this feature is disabled for backwards compatibility."
input EnableDamageForces(void) : "Damaging the entity applies physics forces to it."
input DisableDamageForces(void) : "Damaging the entity does *not* apply physics forces to it."
input EnablePuntSound(void) : "Allow this prop to play its own sound when punted"
input DisablePuntSound(void) : "Prevent this prop from playing its own sound when punted"
output OnMotionEnabled(void) : "Fired when motion is enabled on this prop, either via 'Health Level to Override Motion' or from the EnableMotion input."
output OnAwakened(void) : "Fired when this entity becomes awake (collision/force is applied to it while it's asleep)."
output OnPhysGunPickup(void) : "Fired when the player picks up the prop with the physcannon or +USE."
output OnPhysGunPunt(void) : "Fired when a player punts this object with the physgun."
output OnPhysGunOnlyPickup(void) : "Fired when a player picks this object up WITH THE PHYSGUN. +USE pickups do not fire this output."
output OnPhysGunDrop(void) : "Fired when the player drops the prop with the physcannon or USE."
output OnPlayerUse(void) : "Fired when the player tries to +USE the prop. This output will fire only if the Generate output on +USE spawnflag is set."
output OnPlayerPickup(void) : "Fired whenever the player picks up this prop (with the physcannon or with +USE)."
output OnOutOfWorld(void) : "Fired whenever the prop is out of the allowed world bounds."
"or other constraints. It can also be configured to break when it takes enough damage. Props not meant to be used with prop_physics (dynamic or static props) can be used with this and it can also override health or interactions."
health(integer) : "Health" : 0 : "Number of points of damage to take before breaking. 0 means don't break. Use -1 to use default health, which could be 0 depending on the model."
InitialInteractions(choices) : "Interaction Override" : "" : "Overrides this prop's default interactions. If you want to combine them, enter each number with a space or comma in between. (e.g. '1 5 7')" =
[
"": "None"
"0": "0 : When punted: Stick to world (sawblades)"
"1": "1 : When punted: Break on impact (explosive barrels)"
"2": "2 : When punted: Paint surfaces (paint cans)"
"3": "3 : When punted: Impale (harpoons)"
"4": "4 : When punted: Don't spin"
"5": "5 : When punted: Spin on Z axis (sawblades, propellers)"
"6": "6 : When broken: Gas explosion (propane tanks, gas cans)"
"10": "10 : Fire: Ignite on half health (explosive barrels)"
//"11": "11 : Flare" // This is what prop_flare is for
"12": "12 : Allow player to hold directly overhead"
]
preferredcarryangles(angle) : "Preferred Player-carry Angles" : "0" : "The angle which the object should orient to when the player picks it up with the physgun or +USE. Overrides the prop's own QC carry angles if it has any. '0' doesn't override the carry angles."
input Wake(void) : "Wakes up this physics object, if it is sleeping."
input Sleep(void) : "Puts this physics object to sleep. It will wake if given the Wake input, or if force is applied to it. Note that physics objects go to sleep automatically after coming to rest for a while, so you don't really need to use this."
"A simple physics prop with no unique properties. Model-based entities converted by phys_convert are turned into this entity. See prop_physics for more options."
[
spawnflags(flags) =
[
1 : "[1] Start Asleep" : 0
4 : "[4] Debris - Don't collide with the player or other debris" : 0
"A simple physics brush with no unique properties. Brush-based entities converted by phys_convert are turned into this entity. See func_physbox for more options."
[
spawnflags(flags) =
[
4096 : "[4096] Start Asleep" : 0
16384 : "[16384] Debris - Don't collide with the player or other debris" : 0
"A portal brush used to manage visibility in maps. Portals define areas, which are spaces " +
"that are connected in the map. Both sides of a portal cannot touch the same area, for example, a " +
"doughnut shaped map would require at least two portals to divide the map into two areas. A linear map " +
"could be divided into two areas with a single area portal."
[
target(target_destination) : "Name of Linked Door" : : "(Optional) The name of a door whose open/closed state controls the on/off state of this area portal."
StartOpen(choices) : "Initial State" : 1 =
[
0 : "Closed"
1 : "Open"
]
PortalVersion(integer) readonly : "Portal Version" : 1 : "(Don't change). Differentiates between shipping HL2 maps and maps using new engine features."
// Inputs
input Open(void) : "Open the portal. When the portal is open is can be seen through."
input Close(void) : "Close the portal. When the portal is closed it cannot be seen through."
input Toggle(void) : "Toggle the open/closed state of the portal."
@SolidClass base(func_areaportal) color(0 255 255) = func_areaportal_oneway : "An areaportal that is only open when viewed from one direction."
[
origin_(origin) readonly : "Origin" : : "Point from which the areaportal's location is determined (they are a special case and cannot use the normal value). Read-only."
group(string) : "One-way group" : : "Optimisation: oneway portals in the same group share a single closed/open state. Use this, for example, on walls full of one-way windows."
onewayfacing(angle) : "Open direction" : "0 0 0" : "The portal will be open when the player is within 90 degrees of this direction."
avoidpop(choices) : "Avoid latency pop" : 0 : "Enable this if it becomes noticeable that the portal stays closed momentarily after the player walks past it. The portal will open 80 units in advance." =
[
0 : "No"
1 : "Yes"
]
input DisableOneWay(void) : "Disable the one-way behaviour of the portal."
input EnableOneWay(void) : "Enable the one-way behaviour of the portal."
input ToggleOneWay(void) : "Toggle the one-way behaviour of the portal."
input InvertOneWay(void) : "Flip the one-way direction."
"A brush entity that can be broken from damage, or an input."
[
minhealthdmg(integer) : "Min Damage to Hurt" : 0 : "The prop will ignore any damage events if the damage is less than this amount."
_minlight(string) : "Minimum Light Level" : : "The minimum level of ambient light that hits this brush."
physdamagescale(float) : "Physics Impact Damage Scale" : "1.0" : "Scales damage energy when this object is hit by a physics object. NOTE: 0 means this feature is disabled for backwards compatibility.\nSet to 1.0 for materials as strong as flesh, smaller numbers indicate stronger materials."
health(integer) : "Health" : 5 : "The amount of damage the surface takes before breaking."
fragility(integer) : "Fragility" : 100 : "If the 'Surface Type' is set to Glass, this value sets how fragile the glass pieces are after the surface has been broken."
surfacetype(choices) : "Surface Type" : 0 =
[
0 : "Glass"
1 : "Tile"
]
// Inputs
input Shatter(vector) : "Shatter the window. Input a vector. First two coordinates are the X,Y center of the shattering (as values from from 0-1). The third coordinate is the radius of the shatter, in inches."
"An entity used to build paths for other entities to follow. Each path_track is a node on the path, each holding the name of the next path_track in the path."
target(target_destination) : "Next Stop Target" : : "The next path_track in the path."
altpath(target_destination) : "Branch Path" : : "An alternative path_track to be the next node in the path. Useful for making branching paths. Use the ToggleAlternatePath / EnableAlternatePath inputs to make the alternative path active."
speed(float) : "New Train Speed" : 0 : "When the train reaches this path_track, it will set its speed to this speed. "+
"This speed must be a positive value that is less than the train's max speed. A value of 0 will cause no change in the train's speed."
radius(float) : "Path radius" : 0 : "Used by NPCs who follow track paths (attack chopper/gunship). This tells them the maximum distance they're allowed to be from the path at this node."
orientationtype(choices) : "Orientation Type" : 1 : "The way that the path follower faces as it moves through this path track." =
[
0 : "No change"
1 : "Face direction of motion"
2 : "Face this path_track's angles"
]
// Inputs
input ToggleAlternatePath(void) : "Cause the track to toggle to/from its alternate path."
input EnableAlternatePath(void) : "Enable the alternate path of the track."
input DisableAlternatePath(void) : "Disable the alternate path of the track."
input TogglePath(void) : "Cause the track to toggle on/off/"
input EnablePath(void) : "Enable the track."
input DisablePath(void) : "Disable the track."
// Outputs
output OnPass(void) : "Fired when any entity following this path passes this path_track node."
output OnTeleport(void) : "Fired when any entity following this path teleports directly to this path_track node."
master(target_destination) : "Master" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
NewLevelUnit(choices) : "Force New Level Unit" : 0 : "If set, the save will discard any savedata from previous levels, for the purpose of keeping savegame filesizes down. Can only be safely used if there is no way for the player to return to previous levels." =
[
0 : "No"
1 : "Yes"
]
DangerousTimer(float) : "Dangerous Timer" : 0 : "The number of seconds the player must survive before this autosave takes effect."
MinimumHitPoints(integer): "Minumum Hit Points" : 0 : "Don't save dangerous when player has less than this many hitpoints."
//master(target_destination) : "Master (Obsolete)" : : "Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate."
damage(integer) : "Damage" : 10 : "The amount of damage done to entities that touch this trigger. The damage is done every half-second. See also 'Damage Model' for extra details on how damage can be dealt."
damagecap(integer) : "Damage Cap" : 20 : "Maximum damage dealt per second. This field is only used if you select the Doubling w/Forgiveness damage model, via the spawnflag."
damagemodel(choices) : "Damage Model" : 0 : "How damage is dealt. Normal always does the specified amount of damage each half second. Doubling starts with the specified amount and doubles it each time it hurts the toucher. Forgiveness means that if the toucher gets out of the trigger the damage will reset to the specified value. Good for making triggers that are deadly over time without having to cause massive damage on each touch." =
[
0 : "Normal"
1 : "Doubling w/forgiveness"
]
nodmgforce(choices) : "Zero Damage Force" : 0 : "Should the damaged entity receive no physics force from this trigger." =
"A trigger volume that removes any entities that touch it. Be careful, removing some entities can cause instability. "+
"This is not the same as killing entities. i.e. NPCs removed in this manner will not fire their OnKilled outputs."
[
// Outputs
output OnRemove(void) : "Fired whenever an entity is removed."
]
@SolidClass base(Trigger) = trigger_multiple :
"A trigger volume that can be triggered multiple times."
[
wait(integer) : "Delay Before Reset" : 1 : "Amount of time, in seconds, after the trigger_multiple has triggered before it can be triggered again. If set to -1, it will never trigger again (in which case you should just use a trigger_once)."
target(target_destination) : "Look Target" : : "The name of the entity to be looked at."
LookTime(string) : "LookTime" : "0.5" : "The time, in seconds, that the player must look the target before firing the output. Resets if player leaves trigger, or looks outside the Field of View threshold."
FieldOfView(string) : "FieldOfView" : "0.9" : "How close the player has to be looking at the target. 1.0 = straight ahead\n 0.0 = +/- 90 degrees\n -1.0 = all directions)."
Timeout(float) : "Timeout" : "0" : "The time, in seconds, to wait after player enters the trigger before firing the OnTimeout output, 0 = never."
LookEntityCaller(choices) : "Use look entity as caller" : 0 : "When firing OnTrigger, use the triggered look entity as the output's caller. Useful for when multiple look targets exist." =
speed(integer) : "Speed of Push" : 40 : "The speed at which to push entities away, in inches / second."
alternateticksfix(float) : "Scale force for alternate ticks" : "0" : "If nonzero, scale the force by this amount when running with alternate ticks. This fixes problems with an overly large force due to the longer frametime on when running with sv_alternateticks 1."
"A trigger volume that can be told to push all physics objects that are inside of it in the direction specified by this trigger's angles.\n"+
"Also outputs the force at the time of impact for anyone else that wants to use it."
[
Magnitude(float) : "Magnitude" : 200 : "The strength of the impact. Negative values reverse the direction."
noise(float) : "Noise" : "0.1" : "The amount of directional noise (0-1). 0 = no noise, 1 = random direction."
viewkick(float) : "Viewkick" : "0.05" : "The amount to kick player's view if the player is in the trigger. Proportional to magnitude (0-1)."
// Inputs
input Impact(float) : "Fire the impact, pushing all entities within the volume."
input SetMagnitude(float) : "Set the magnitude of the impact."
// Outputs
output ImpactForce(string) : "Fired after an impact. The parameter passed along is the force of the impact that was generated."
]
@SolidClass base(Trigger) = trigger_proximity :
"Measures the distance of the player within the trigger volume from a given point (and within " +
"a given radius). The NearestPlayerDistance output will be 0 when the player is at the center point, " +
"and 1 when the player is at the radius."
[
measuretarget(target_destination) : "Point to Measure From" : : "The name of a target entity who's origin is the point to measure the player's distance from."
radius(string) : "Radius to measure within" : 256 : "The radius to which the distance should be mapped. If the player is outside the radius he will be ignored."
// Outputs
output NearestEntityDistance(integer) : "Fired continuously when entities are touching the trigger volume. The output parameter is the distance from the "+
"Point to Measure From to the nearest entity that passed the trigger filters. The distance is mapped to the radius distance, "+
"so it will be 0 when the entity is on the point, and 1 when the entity is at the edge of the radius."
]
@SolidClass base(Trigger) = trigger_teleport :
"A trigger volume that teleports entities that touch it. Entities are teleported to the Remote Destination, and have their angles "+
"set to that of the Remote Destination's. If a Local Destination Landmark is specified, teleported entities are offset from the target "+
"by their initial offset from the landmark, and their angles are left alone."
[
target(target_destination) : "Remote Destination" : : "The entity specifying the point to which entities should be teleported."
landmark(target_destination) : "Local Destination Landmark" : : "If specified, then teleported entities are offset from the target by their initial offset from the landmark."
"A trigger that causes the player to die the moment they touch the ground as long as they are inside of this volume."
[
StayLethal(choices) : "Stay Lethal" : 0 : "Causes players who touch this trigger to be marked for death by fall damage even after they leave the volume." =
"An entity that can be used to control the idle speech patterns of a set of NPCs."
[
subject(target_destination) : "Subject(s)" : "" : "This is the NPC(s) whose speech we're filtering. May be a targetname or a classname."
IdleModifier(float) : "Idle modifier." : "1.0" : "Multiplier to the percentage chance that our NPC(s) will idle speak. Set to 0 to prevent all idle speech."
NeverSayHello(choices) : "Greet Player?" : 0 : "If set to Yes, our NPC(s) won't greet the player when they first meet him." =
[
0 : "Yes"
1 : "No"
]
input SetIdleModifier(float) : "Allows designers to change the idle modifier at runtime"
"An entity used to control the LOD behavior of any water in the map. If your map has water, this entity is required."
[
cheapwaterstartdistance(float) : "Start Transition to Cheap Water" : 1000 : "This is the distance from the camera that water will start transitioning to cheap water, in inches."
cheapwaterenddistance(float) : "End Transition to Cheap Water" : 2000 : "This is the distance from the camera that water will finish transitioning to cheap water, in inches."
// Inputs
input SetCheapWaterStartDistance(float) : "Set the distance that water starts transitioning to cheap water."
input SetCheapWaterEndDistance(float) : "Set the distance that water finishes transitioning to cheap water."
"An entity that can listen to events fired from code and fire " +
"an output when it happens."
[
EventName(string) : "Event Name" : "" : "The names of the events that you want to listen for. Separated by colon. (e.g. player_hurt:game_init)"
KeyName01(string) : "Key Name 01" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName02(string) : "Key Name 02" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName03(string) : "Key Name 03" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName04(string) : "Key Name 04" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName05(string) : "Key Name 05" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName06(string) : "Key Name 06" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName07(string) : "Key Name 07" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
KeyName08(string) : "Key Name 08" : "" : "A keyvalue name to search for in detected events. If an event contains this key, then this entity will fire its respective OutValue output with the value."
StartDisabled(choices) : "Start Disabled" : 0 =
[
0 : "No"
1 : "Yes"
]
//TeamNum(choices) : "Team Number" : -1 : "If set, will only fire its output if the event is generated from someone of the specified team." =
//[
// -1 : "Don't care"
// 1 : "Team 1"
// 2 : "Team 2 (ORANGE)"
// 3 : "Team 3 (BLUE)"
//]
// Inputs
input SetAllEvents(string) : "Sets all events using the keyvalue's : format. Pass nothing to clear all events."
input AddEvent(string) : "Adds an event to this entity."
// Outputs
output OutEventName(string) : "Outputs the detected event's name in case this entity is listening for multiple events."
output OutValue01(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue02(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue03(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue04(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue05(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue06(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue07(string) : "Passes the value found in its respective keyname when an event is fired."
output OutValue08(string) : "Passes the value found in its respective keyname when an event is fired."
TargetScale(float) : "Movement scale" : "1" : "A scale to *divide* the measured movements by before applying those movements to the Entity to Move. 1 = target entity moves as much as the measured entity, 2 = target entity moves half as far as the measured entity, and 0.5 = target entity moves twice as far as the measured entity."
ShouldOutputPosition(choices) : "Fire position outputs" : 0 : "Allows OutPosition and OutAngles to be fired with the resulting position while this entity is active. Does not apply to the GetPosition input." =
MeasureAttachment(string) : "Measurement Attachment" : "" : "Only useful for the ''Attachment point'' measurement type. This attachment should be on the Entity to Measure and measurements will correspond to its position and angles."
input SetMeasureType(integer) : "Sets the measurement type."
input SetMeasureAttachment(string) : "Sets the measurement attachment."
input ShouldOutputPosition(bool) : "Sets whether we are allowed to fire position outputs while this entity is active."
input GetPosition(void) : "Initiates a single measurement with the current settings, only firing OutPosition and OutAngles without moving anything. (it doesn't need a target to be available)\n"+
"This input ignores the 'Fire position outputs' keyvalue and instead repurposes it to modify who the outputs' activator should be.\n"+
"If 'Fire position outputs' is enabled, the target will be used as the activator if it is available.\n"+
"If 'Fire position outputs' is disabled, the activator that fired GetPosition will be used instead."
"An entity that can measure the direction of an entity relative to another entity " +
"and apply the position the entity is looking at to a third entity."
[
MeasureTarget(target_destination) : "Entity to Measure" : "" : "Entity whose movement you want to measure. (Remote target)"
MeasureReference(target_destination) : "Measure Reference" : "" : "The movement of Entity to Measure will be mirrored relative to this entity. (Mirror relative)"
Target(target_destination) : "Entity to Move" : "" : "This entity will be mirrored across the motions of Entity to Measure. (Movement target)"
TargetReference(target_destination) : "Movement Reference" : "" : "The Entity to Move will be mirrored relative to this entity. (Mirror target)"
"An entity that can measure the direction of an entity relative to another entity " +
"and apply the position the entity is looking at to a third entity."
[
MeasureTarget(target_destination) : "Entity to Measure" : "" : "Entity whose direction you want to measure."
MeasureReference(target_destination) : "Measure Reference" : "" : "The direction of Entity to Measure will be measured from this entity."
Target(target_destination) : "Entity to Move" : "" : "This entity will be moved in the direction of the Entity to Measure."
TargetReference(target_destination) : "Movement Reference" : "" : "The Entity to Move will move relative to this entity."
TargetScale(float) : "Trace scale" : "1" : "A scale to *divide* the distance between the Entity to Measure and the trace's endpoint by before applying those movements to the Entity to Move. 1 = target entity moves to the end of the trace, 2 = target entity moves to the middle of the trace (half as far), and 0.5 = target entity moves twice as far as the trace."
MeasureType(choices) : "Measurement Type" : 0 : "How should the direction be measured?" =
[
0 : "Angles"
1 : "Eye angles"
2 : "Attachment point angles"
//3 : "Aim angles"
]
TraceDistance(float) : "Trace distance" : "8192" : "The maximum distance that the trace can go. 0 = no limit."
Mask(choices) : "Trace Mask" : 1174421507 : "How the measurement tracing should act in regards to what it should collide with." =
[
33570827 : "MASK_SOLID (Anything solid)"
33636363 : "MASK_PLAYERSOLID (Anything solid + player clip)"
16513 : "MASK_OPAQUE (Anything opaque, e.g. windows)"
16449 : "MASK_BLOCKLOS (Anything that blocks line of sight)"
1174421507 : "MASK_SHOT (Anything that would be hit by a bullet)"
]
CollisionGroup(choices) : "Collision Group" : 0 : "The collision group the measurement tracing should use." =
[
0 : "None"
]
damagefilter(filterclass) : "Trace Filter" : "" : "A filter to use for tracing."
HitIfPassed(choices) : "Trace Filter behavior" : 0 : "What the filter should actually be used for." =
[
0 : "If pass, don't hit"
1 : "If pass, hit"
]
TraceTargetReference(choices) : "Additional trace from movement reference" : 0 : "Initiates another trace from the Movement Reference using the existing properties and adjusts the position to its end point. Only use this if the Movement Reference is different from the Measure Reference." =
[
0 : "No"
1 : "Yes"
]
// Inputs
input SetMeasureTarget(target_destination) : "Set the Entity to Measure, whose movement should be measured."
input SetMeasureReference(target_destination) : "Set the Measure Reference entity."
input SetTarget(target_destination) : "Set the Entity to Move, which will be moved to mimic the measured entity."
input SetTargetReference(target_destination) : "Set the Movement Reference entity."
input SetTargetScale(float) : "Set the scale to divide the measured movements by."
input SetMeasureType(integer) : "Sets the measurement type."
input SetMeasureAttachment(string) : "Sets the measurement attachment."
input Enable(void) : "Enable the logic_measure_direction."
input Disable(void) : "Disable the logic_measure_direction."
input SetTraceFilter(target_destination) : "Sets the entity to use as the trace filter. Pass in an empty string to clear the trace filter."
"An entity that can be used to directly control material vars. To use it, you need to read the .vmt of the material you "+
"intend to change. Parent this entity to a brush model entity who's material you want to control."
[
materialName(string) : "Material to modify."
materialVar(string) : "Material variable to modify."
// Inputs
input SetMaterialVar(string) : "Fire to modify a material variable. The argument is the value to set the variable to."
input SetMaterialVarToCurrentTime(void) : "This sets the material variable to the current time on the server."
input StartAnimSequence(string) : "Force an animated material with the MaterialModifyAnimated proxy to play a set of animation frames. Format is: <Frame Start> <Frame End> <Frame Rate> <Loop>\nSetting <Frame End> to -1 uses the last frame of the texture. <Loop> should be 1 or 0."
input StartFloatLerp(string) : "Force a material with the MaterialModifyAnimated proxy to lerp a material var between two floating point values. Format is: <Start Value> <End Value> <Transition Time> <Loop>\n<Loop> should be 1 or 0."
cameraname(target_destination) : "Camera Name" : "" : "Used as the name of the directory to store screenshots from this camera. Must be unique within the level."
input SetBodyGroup(integer) : "HACK: Sets this player's body group (from 0 - n). You'd better know what you are doing!"
input Ignite(void) : "Ignite, burst into flames"
input IgniteLifetime(float) : "Ignite, with a parameter lifetime."
input IgniteNumHitboxFires(integer) : "Ignite, with a parameter number of hitbox fires."
input IgniteHitboxFireScale(float) : "Ignite, with a parameter hitbox fire scale."
input GiveWeapon(string) : "Gives the player a weapon of the specified class name."
input DropWeapon(string) : "Causes the player to drop its current weapon in front of it."
input AddArmor(integer) : "Adds to the player's current armor value. Total armor cannot exceed 100 unless a different value is set in logic_playerproxy."
input RemoveArmor(integer) : "Removes from the player's current armor value."
input SetArmor(integer) : "Sets the player's current armor value. Cannot exceed 100 unless a different value is set in logic_playerproxy."
input AddAuxPower(float) : "Adds to the player's current aux power. Total power cannot exceed 100."
input RemoveAuxPower(float) : "Removes from the player's current aux power. Total power cannot exceed 100."
input SetAuxPower(float) : "Sets the player's current aux power. Total power cannot exceed 100."
input TurnFlashlightOn(void) : "Turns the player's flashlight on."
input TurnFlashlightOff(void) : "Turns the player's flashlight off."
input SquadForceSummon(void) : "Forces the player's squad to be resummoned."
SetMaxInputArmor(integer) : "Max Input Armor" : 100 : "Sets the maximum armor a player can receive from the AddArmor, RemoveArmor, and SetArmor inputs. This does NOT override how much armor a player can receive overall!"
ResponseContext(string) : "Response Contexts" : "" : "Response system context(s) for the player. Format should be: 'key:value,key2:value2,etc'. Using inputs like AddContext on this player proxy will not carry it over to the player and should be done on the '!player' entity instead."
HideSquadHUD(choices) : "Hide squad HUD" : 0 : "Hides the player's squad status HUD above the ammo display." =
output OnFlashlightOn(float) : "Fired when the player turns on his flashlight. This output has the value of how much energy the player had when this happened [0..1]."
output OnFlashlightOff(float) : "Fired when the player turns off his flashlight. This output has the value of how much energy the player had when this happened [0..1]."
input RequestPlayerHealth(void) : "Requests the current player's health from the proxy. This will fire the PlayerHealth output with the value."
input RequestPlayerArmor(void) : "Requests the current player's armor from the proxy. This will fire the PlayerArmor output with the value."
input RequestPlayerAuxPower(void) : "Requests the current player's auxiliary power from the proxy. This will fire the PlayerAuxPower output with the value."
input RequestPlayerFlashBattery(void) : "Requests the current player's current flashlight battery from the proxy. This will fire the PlayerFlashBattery output with the value.\n\nNOTE: If legacy flashlight is enabled (aux power flashlight), this will return the player's current auxiliary power."
output PlayerHealth(integer) : "The player's current health value, fired in response to RequestPlayerHealth."
output PlayerArmor(integer) : "The player's current armor value, fired in response to RequestPlayerArmor."
output PlayerAuxPower(float) : "The player's current auxiliary power value, fired in response to RequestPlayerArmor."
output PlayerFlashBattery(float) : "The player's current flashlight battery percentage, fired in response to RequestPlayerFlashBattery."
input GetAmmoOnWeapon(string) : "Requests the amount of ammo on the specified weapon, if the player has it. Fires OnGetAmmo with the amount. This has a few quirks:\n\nFires with secondary ammo if the classname starts with '@' at the beginning. (e.g. @weapon_smg1)\nUses the player's active weapon if the parameter is null. Use '@' to get secondary ammo on the active weapon.\nDoes not fire if the player does not have the specified weapon."
output OnGetAmmo(integer) : "Fires in response to GetAmmoOnWeapon with the weapon's ammo amount."
output OnSquadMemberKilled(void) : "Fires when a member of the player's squad dies. Fires with this member as the activator."
input LowerWeapon(void) : "Lowers the players weapon."
input EnableCappedPhysicsDamage(void) : "Cause player to take less damage from physics objects, and never more than 30 points from any individual strike."
input DisableCappedPhysicsDamage(void) : "Undo effects of EnableCappedPhysicsDamage"
target(target_destination) : "Target" : : "The entity will rotate to point at this target. Make sure you check the 'Always Update' flag if you set this."
dontfollowtarget(Choices) : "Don't Follow Target" : 0 : "Prevents this entity from trying to point at its target, if it has one. Intended for when you want to use 'Light Only Target' without the entity trying to point to it." =
lightfov(float) : "FOV" : "90.0" : "The field of view cone/pyramid at which the texture is projected. Can also be interpreted as 'size'."
lighthorfov(float) : "Horizontal FOV" : "0" : "The horizontal FOV value. This allows the projected texture to use rectangular dimensions, but it causes shadow glitches and is usually not preferable unless shadows are disabled. Leave this at 0 if you want to keep this the same as the regular FOV value."
nearz(float) : "NearZ" : "4.0" : "Objects closer than this will not receive the light from the projection. (Warning: Hard falloff, model lighting inconsistent)"
farz(float) : "FarZ" : "750.0" : "Objects beyond this distance will not receive the light from the projection. The projection fades out as it approaches this distance."
enableshadows(Choices) : "Enable Shadows" : 1 : "Enables/disables shadows from this projected texture." =
shadowatten(float) : "Shadow Atten" : "0.0" : "The attenuation of the shadows, or how much the shadows should fade into the light of the projected texture, if at all. The player's flashlight uses 0.35 by default, although higher values may be needed for a visible effect."
lightcolor(color255) : "Light Color" : "255 255 255 200" : "The color of the projected texture. Format is RGB-Intensity, like a light entity. Intensity can only range from 0 to 255, so use the Brightness Scale keyvalue to make the projected texture brighter than 255."
colortransitiontime(float) : "Color Transition Time" : "0" : "Amount of time it takes for a color or brightness change to occur. 0 = instant"
constant_attn(string) : "Constant" : "0" : "The light's constant attenuation, giving the light no falloff. (This value is internally corrected with x*0.5)"
linear_attn(string) : "Linear" : "1" : "The light's linear attenuation, giving the light linear decline. This is the most common attenuation for projected textures. (This value is internally corrected with x*100)"
quadratic_attn(string) : "Quadratic" : "0" : "The light's quadratic attenuation, giving the light exponentially decreasing falloff. (This value is internally corrected with x*10000)"
texturename(material) : "Texture Name" : "effects/flashlight001" : "The texture which should be used. Please note that env_projectedtexture uses .vtf files directly and does not use .vmt files. The material browser is only available here to assist with finding textures since materials typically have the same name as their textures."
textureframe(integer) : "Texture Frame" : 0 : "Sets the frame of the projected texture. Only relevant if the texture is animated/has multiple frames."
alwaysdraw(Choices) : "Always Draw" : 0 : "Always draws the projected texture, regardless of whether the player can see its frustum. Use this for projected textures that can be seen on monitors or in the skybox." =
[
0 : "No"
1 : "Yes"
]
ProjectedTextureVersion(integer) readonly : "Projected Texture Version" : 1 : "(Don't change). Differentiates between projected textures built before/outside of Mapbase and projected textures using new features."
// Inputs
input TurnOn(void) : "Turns on the texture"
input TurnOff(void) : "Turns off the texture"
input AlwaysUpdateOn(void) : "Turns on per frame updating (for moving lights)"
input AlwaysUpdateOff(void) : "Turns off per frame updating (for moving lights)"
input FOV(float) : "Sets the FOV."
input VerFOV(float) : "Sets the vertical FOV."
input HorFOV(float) : "Sets the horizontal FOV."
input SpotlightTexture(string) : "Sets the spotlight texture"
input SetSpotlightFrame(string) : "Sets the spotlight texture frame"
input EnableShadows(bool) : "Set the if shadows are enabled"
input LightColor(color255) : "Change the light color"
input SetBrightness(float) : "Sets brightness."
input SetColorTransitionTime(float) : "Sets the color transition time."
"An orthographic projected texture that follows the player. Sorry, I don't have the original FGD documentation here."
[
distance(float) : "Distance" : "10000" : "Height above the player where the projection originates from."
fov(float) : "FOV" : "5.0" : "This is the field of view that the sunlight casts in. Use lower values to simulate a more distant sun and sharper shadows."
nearz(float) : "NearZ" : "512" : "Distance from the player where the near Z plane is. Anything closer to the projection origin"
northoffset(float) : "North Offset" : "200" : "This offsets the from the player position where the sun is attached. (???)"
eastoffset(float) : "X Offset" : "0" : "X/East offset the from the player position."
forwardoffset(float) : "Y Offset" : "0" : "Y/Forward offset the from the player position."
orthosize(float) : "Ortho Size" : "1000.0" : "The env_global_light's 'size', or how much ground it covers."
enableshadows(Choices) : "Enable Shadows" : 1 : "Enables shadows. If shadows are disabled, light may appear to go through objects. Disabling shadows may be ideal for lower-detail environments due to being less expensive." =
[
0 : "No"
1 : "Yes"
]
lightcolor(color255) : "Light Color" : "255 255 255 200" : "RGBA color of the sunlight. Intensity can only range from 0 to 255, so use the Brightness Scale keyvalue to make the sunlight brighter than 255."
colortransitiontime(float) : "Color Transition Time" : "0" : "Amount of time it takes for a color or brightness change to occur. 0 = instant"
"An entity for placing an instance of a map file. You may translate and rotate this entity. " +
"You can use the replace keys to do parameter changes on the instance contents. In a $ at the " +
"beginning of a variable name. Then just use the $variable name inside of the instance contents on any "+
"value portion of a key/value pair."
[
targetname(target_source) : "Fix Up Name" : : "The name that all entities will be fixed up with based upon the fix up style."
file(instance_file) : "VMF Filename" : : "This indicates a map file relative to the map's file name"
fixup_style(Choices) : "Entity Name Fix Up" : 0 : "Fixup style for instanced entity names. Uses the 'Fix Up Name' field." =
[
0 : "Prefix"
1 : "Postfix"
2 : "None"
]
replace01(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace02(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace03(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace04(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace05(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace06(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace07(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace08(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace09(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"
replace10(instance_variable) : "Replace" : : "This is a replacement parameter. It goes in the form of $variable value. All entities inside of that instance that have $variable somewhere will be replaced with the value contents. Example: $color 255 0 0"