CBaseAnimating: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
(The kio even from cbaseentity can stay here for now)
Line 1: Line 1:
{{LanguageBar}}
{{LanguageBar}}
{{tabs|CBaseAnimating|goldsrc=1|source=1|main=source}}
{{TabsBar|main=gs|base=CBaseAnimating}}
{{CD|CBaseAnimating|base=CBaseEntity|file1=[https://github.com/ValveSoftware/source-sdk-2013/blob/master/mp/src/game/server/baseanimating.cpp baseanimating.cpp]}}
{{CD|CBaseAnimating|base=CBaseEntity|file1=[https://github.com/ValveSoftware/source-sdk-2013/blob/master/mp/src/game/server/baseanimating.cpp baseanimating.cpp]}}
{{seealso|[[:Category:CBaseAnimating]]}}
{{seealso|[[:Category:CBaseAnimating]]}}
Line 8: Line 8:
{{important|Following Keyvalues / Inputs / Outputs are available for all entities that inherit this class, but may be overwritten by game code.}}
{{important|Following Keyvalues / Inputs / Outputs are available for all entities that inherit this class, but may be overwritten by game code.}}


==Descriptions of in-game accessible Keyvalues / Inputs / Outputs==
== Keyvalues ==
 
{{KV|World Model|intn=model|string|The [[model]] this entity should appear as. 128-character limit.}}
{{Expand|title=Keyvalues|
{{KV|[[Skin]]|intn=skin or ModelSkin {{as}}|int|Some models have multiple skins. This value selects from the index, starting with 0.}}
{{KV|skin or ModelSkin {{as}}|intn=0|int|Some models have multiple skins. This value selects from the index, starting with 0.}}
{{KV|Collisions|intn=solid|choices|Method of collision for this entity.<!--
{{KV|solid|intn=0|choices|Method of collision for this entity.<!--
-->{{Expand|title=Choices|margin_left=2em|margin_bottom=0|
-->{{Expand|title=Choices|margin_left=2em|margin_bottom=0|
:*'''0''': None
:*'''0''': None
Line 24: Line 23:
}}
}}


{{KV|hitboxset|intn=0|string|Sets the {{Ent|$hboxset}} to use.|nofgd=1}}
{{KV|[[Hitbox]] Set|intn=hitboxset|string|Sets the {{Ent|$hboxset}} to use.|nofgd=1}}
{{KV|body or SetBodyGroup|intn=0|int|Sets the the active {{Ent|$bodygroup}}.{{note|If both {{code|body}} and {{code|SetBodyGroup}} are present (even if set to 0), {{code|body}} will be prioritized.}}|nofgd=1}}
{{KV|Body Group|intn=body or SetBodyGroup|int|Sets the the active {{Ent|$bodygroup}}.{{note|If both {{code|body}} and {{code|SetBodyGroup}} are present (even if set to 0), {{code|body}} will be prioritized.}}|nofgd=1}}
{{KV|modelscale|intn=0|float|A multiplier for the size of the model. Negative values are accepted. Does not alter the physics collisions in most cases, however.{{warning|Negative or extremely high values can cause crashes!}}{{note|Scale may not appear in {{hammer4|2}}, but will appear in-game. This is fixed in {{hammer++|2}}.}}|since=EP2}}
<!-- We should make a new page for "model index"? -->
{{KV|Model Index|intn=modelindex|short|Given the number index from dumping the <code>cl_precacheinfo modelprecache</code> table, sets entity model to the index. {{warning|If an entity has animations that ''will be'' played, then the set model also must have its own sequences, else the game crashes.}}|nofgd=1}}
{{KV|Model Scale|intn=modelscale|float|A multiplier for the size of the model. Negative values are accepted. Does not alter the physics collisions in most cases, however.{{warning|Negative or extremely high values can cause crashes!}}{{note|Scale may not appear in {{hammer4|2}}, but will appear in-game. This is fixed in {{hammer++|2}}.}}|since=EP2}}


<!--
<!--
Line 32: Line 33:
-->
-->
{{style|color:white;font-size:14px;padding-bottom:5px|'''Animating'''}}
{{style|color:white;font-size:14px;padding-bottom:5px|'''Animating'''}}
{{KV|sequence|intn=0|int|Default animation sequence for the model to be playing after spawning.|nofgd=1}}
{{KV|Sequence|intn=sequence|int|Default animation sequence for the model to be playing after spawning.|nofgd=1}}
{{KV|playbackrate|intn=0|float|A multiplier of the [[framerate]] at which animations are played, negative values are accepted. Default is 1.0.|nofgd=1}}
{{KV|Playback Rate|intn=playbackrate|float|A multiplier of the [[framerate]] at which animations are played, negative values are accepted. Default is 1.0.|nofgd=1}}
{{KV|cycle|intn=0|float|The current frame of the current animation, on a range from 0-1.|nofgd=1}}
{{KV|Cycle|intn=cycle|float|The current frame of the current animation, on a range from 0-1.|nofgd=1}}
{{KV|Texture Frame|intn=texframeindex|int|The initial frame number for all animated textures on this entity.|nofgd=1}}
<!--
<!--
   ++ Effects - Render ++
   ++ Effects - Render ++
Line 40: Line 42:
{{style|border-bottom:1px solid #3A3937;display:block;  color:white;font-size:16px;padding-bottom:6px|'''Effects - Render'''}}
{{style|border-bottom:1px solid #3A3937;display:block;  color:white;font-size:16px;padding-bottom:6px|'''Effects - Render'''}}


{{KV|fademindist|intn=0|float|Distance at which the entity starts fading. If 0 or less, the entity will disappear instantly when end fade is hit. The value will scale appropriately if the entity is in a [[3D Skybox]].}}
{{KV|Start Fade Distance|intn=fademindist|float|Distance at which the entity starts fading. If 0 or less, the entity will disappear instantly when end fade is hit. The value will scale appropriately if the entity is in a [[3D Skybox]].}}
{{KV|fademaxdist|intn=0|float|Distance at which the entity ends fading. If 0 or less, the entity won't disappear at all. The value will scale appropriately if the entity is in a 3D Skybox.}}
{{KV|End Fade Distance|intn=fademaxdist|float|Distance at which the entity ends fading. If 0 or less, the entity won't disappear at all. The value will scale appropriately if the entity is in a 3D Skybox.}}
{{KV|fadescale|intn=0|float|If specified in the {{Ent|worldspawn}}, or if the engine is running below DirectX 8, entities will fade out even if the fade distances above aren't specified. This value gives more control over when this happens: numbers smaller than 1 cause the entity to fade out at further distances, and greater than 1 cause it to fade out at closer distances. Using 0 turns off the forced fade altogether. See also {{Ent|$noforcedfade}}.}}
{{KV|Fade Scale|intn=fadescale|float|If specified in the {{Ent|worldspawn}}, or if the engine is running below DirectX 8, entities will fade out even if the fade distances above aren't specified. This value gives more control over when this happens: numbers smaller than 1 cause the entity to fade out at further distances, and greater than 1 cause it to fade out at closer distances. Using 0 turns off the forced fade altogether. See also {{Ent|$noforcedfade}}.}}
{{KV|FX Amount/Transparency (0–255)|intn=renderamt|int|Transparency amount, requires a Render Mode other than '''Normal'''. 0 is invisible, 255 is fully visible.}}
{{KV|Render Color (R G B)|intn=rendercolor|color255|Color tint.}}
{{KV Render FX}}
{{KV Rendermode}}


<!--
<!--
Line 49: Line 55:
{{style|border-bottom:1px solid #3A3937;display:block;  color:white;font-size:16px;padding-bottom:6px|'''Effects - Environment'''}}
{{style|border-bottom:1px solid #3A3937;display:block;  color:white;font-size:16px;padding-bottom:6px|'''Effects - Environment'''}}


{{KV|LightingOrigin|intn=0|targetname|Select an entity (not {{Ent|info_lighting}}!) from which to sample lighting instead of the entity's [[origin]] or [[$illumposition]].}}
{{KV|Disable Shadows|intn=disableshadows|boolean|Prevent the entity from creating cheap render-to-texture shadows. Does not affect [[shadow mapping]].}}
{{KV|Disable Receiving Shadows|intn=disablereceiveshadows|boolean|Prevent the entity from receiving shadows on itself.}}
{{KV|Shadow Cast Distance|intn=shadowcastdist|int|Sets how far the entity casts dynamic shadows. 0 means default distance from the {{Ent|shadow_control}} entity.}}
{{KV|Lighting Origin|intn=LightingOrigin|targetname|Select an entity (not {{Ent|info_lighting}}!) from which to sample lighting instead of the entity's [[origin]] or [[$illumposition]].}}


{{KV|LightingOriginHack|intn=0|targetname|The {{Ent|info_lighting_relative}} from which to sample lighting instead of the entity's origin or $illumposition. Use <tt>Lighting Origin</tt> instead.|not={{l4ds}}|nofgd=1|deprecated=1}}
{{KV|Lighting Origin Offset|intn=LightingOriginHack|targetname|The {{Ent|info_lighting_relative}} from which to sample lighting instead of the entity's origin or $illumposition. Use <tt>Lighting Origin</tt> instead.|not={{l4ds}}|nofgd=1|deprecated=1}}


{{KV|disableflashlight|intn=0|boolean|Used to disable [[env_projectedtexture|projected texture]] lighting and shadows on this entity. Identical to <tt>[[Effect flags|EF_NOFLASHLIGHT]]</tt>.|since=P2}}
{{KV|Disable Flashlight|intn=disableflashlight|boolean|Used to disable [[env_projectedtexture|projected texture]] lighting and shadows on this entity. Identical to <tt>[[Effect flags|EF_NOFLASHLIGHT]]</tt>.|since=P2}}
{{KV|disableshadowdepth|intn=0|boolean|Makes this entity not cast a shadow from {{Ent|env_projectedtexture}} entities. Identical to <tt>[[Effect flags|EF_NOSHADOWDEPTH]]</tt>.|since=P2}}
{{KV|Disable ShadowDepth|intn=disableshadowdepth|boolean|Makes this entity not cast a shadow from {{Ent|env_projectedtexture}} entities. Identical to <tt>[[Effect flags|EF_NOSHADOWDEPTH]]</tt>.|since=P2}}
{{KV|shadowdepthnocache|intn=0|choices|Used to hint [[env_projectedtexture|projected texture system]] whether it is sufficient to cache shadow volume of this entity or to force render it every frame instead. Identical to<code>[[Effect flags|EF_SHADOWDEPTH_NOCACHE]]</code>.
{{KV|Projected Texture Cache|intn=shadowdepthnocache|choices|Used to hint [[env_projectedtexture|projected texture system]] whether it is sufficient to cache shadow volume of this entity or to force render it every frame instead. Identical to<code>[[Effect flags|EF_SHADOWDEPTH_NOCACHE]]</code>.
:*0: Default
:*0: Default
:*1: No cache—render every frame
:*1: No cache—render every frame
Line 64: Line 73:
Game-Specific Configs
Game-Specific Configs
-->{{style|border-bottom:1px solid #3A3937; display:block; color:white; font-size:16px; padding-bottom:6px|'''Miscellaneous'''}}
-->{{style|border-bottom:1px solid #3A3937; display:block; color:white; font-size:16px; padding-bottom:6px|'''Miscellaneous'''}}
{{KV|Glow Backface Multiple|intn=glowbackfacemult|float|nofgd=1|If this object has a glow effect, multiply the effect by this much on the sides of the object that are facing away from the viewer.|only={{l4d2}}}}


{{KV|SuppressAnimSounds|intn=0|boolean|Silences sounds linked to animations.|since=P2|nofgd=1}}
{{KV|Move Type|intn=MoveType|choices|Sets a movetype for this entity, which changes its movement behavior.<!-- BREAK -->
{{KV|mindxlevel / maxdxlevel|intn=0|choices|The entity will not exist if the engine is running outside the given range of DirectX Versions.
{{Expand|title=Move Types|margin_left=2em|margin_bottom=0|
{{Expand|title=Choices|margin_left=2em|margin_bottom=0|{{warning|If these are used, the object may break when the user switches their DirectX settings.}}
:*'''0''': None, don't move
:* 0 - Default (no bounding)
:*'''1''': Isometric
:* [[DirectX_Versions#DirectX_6|60 - DirectX 6]] ({{!fgd}} for {{mono|mindxlevel}})
:*'''2''': Walk, player only, moving on ground
:* [[DirectX_Versions#DirectX_7|70 - DirectX 7]]
:*'''3''': NPC, movement
:* [[DirectX_Versions#DirectX_8.0|80 - DirectX 8]] (Geforce4 Ti 4600) <!-- from fgd -->
:*'''4''': Fly, no gravity
:* [[DirectX_Versions#DirectX_8.1|81 - DirectX 8.1]] (GeForce FX 5200) <!-- from fgd -->
:*'''5''': Fly, with gravity
:* [[DirectX_Versions#DirectX_9_.28Shader_Model_2.29|90 - DirectX 9 Shader Model 2]]
:*'''6''': Physics
:* [[OpenGL#Dxlevel_92|92 - OpenGL equivalent to DirectX 9 Shader Model 2]] (using [[ToGL]]; {{Linux}}{{MacOS}} only) {{!fgd}}
:*'''7''': Push
:* [[DirectX_Versions#DX9_Shader_Model_3|95 - DirectX 9 Shader Model 3]]
:*'''8''': [[Noclip]]
:* [[DirectX_Versions#DX9Ex|98 - DX9Ex]] ({{x360}} only) {{!fgd}}
:*'''9''': Ladder, for players on ladders
}}||removed={{l4d}}
:*'''10''': Spectator
}}
:*'''11''': Custom}}
}}
|since={{as}}|nofgd=1}}
{{KV|Collision Group|intn=CollisionGroup|choices|Sets a collision group for this entity, which changes its collision behavior.<!-- BREAK -->
{{Expand|title=Groups|margin_left=2em|margin_bottom=0|
:*'''0''': None
:*'''1''': Debris, collides only with the world and static props
:*'''2''': Debris, with trigger interaction
:*'''3''': Interactive Debris, doesn't collide with other debris
:*'''4''': Interactive, collides with everything except debris
:*'''5''': Player
:*'''6''': Breakable Glass
:*'''7''': Vehicle
:*'''8''': Player Movement
:*'''9''': In-Vehicle
:*'''10''': Weapon
:*'''11''': Vehicle Clip
:*'''12''': Projectile
:*'''13''': Door blocker, not permitted to go near doors
:*'''14''': Passable Door
:*'''15''': Dissolving
:*'''16''': Pushaway
:*'''17''': NPC Actor, NPCs ignore the player
:*'''18''': NPC Scripted, NPCs do not collide with each other}}
|since={{as}}|nofgd=1}}
{{KV|No Animation Sounds|intn=SuppressAnimSounds|boolean|Silences sounds linked to animations.|since=P2|nofgd=1}}
{{KV DXLevelChoice}}
{{KV SystemLevelChoice}}


{{Expand|title=Inputs|
== Inputs ==
{{IO|skin|param=int|Selects a [[skin]] from the model's index, starting with 0.}}
{{IO|skin|param=int|Selects a [[skin]] from the model's index, starting with 0.}}
{{IO|SetBodyGroup|param=int|Sets the the active {{ent|$bodygroup}}.}}
{{IO|SetBodyGroup|param=int|Sets the the active {{ent|$bodygroup}}.}}
Line 98: Line 133:
{{IO|SetModel|param=string|Changes the model to the specified path. Form of <tt>models/ammo/ammo_us.mdl</tt>.
{{IO|SetModel|param=string|Changes the model to the specified path. Form of <tt>models/ammo/ammo_us.mdl</tt>.
:{{important|Absolutely NO quotes! Make sure you use the forward slash '/'. [[Merasmus]] says to heed this advice, else thou shalt corrupt the VMF.}}|only={{tf2}}}}
:{{important|Absolutely NO quotes! Make sure you use the forward slash '/'. [[Merasmus]] says to heed this advice, else thou shalt corrupt the VMF.}}|only={{tf2}}}}
}}
{{IO|SetPlayBackRate|param=float|Change the animation speed multiplier.}}
{{IO|Alpha|param=int|Sets the entity's transparency to a number from 0 (invisible) to 255 (fully visible). Requires the entity to have its '''[[Render Mode]] (rendermode)''' set to a number other than <tt>0</tt>.}}
{{IO|AlternativeSorting|param=bool|Swaps the rendering order of the entity. Used to attempt to fix sorting problems when rendering, for example an object rendering in front of translucent materials.}}
{{IO|Color|param=color255|Sets an RGB color for the entity.}}
{{IO|SetDamageFilter|param=targetname|Sets a [[filter]] for this entity for when it receives damage.}}
{{IO|EnableDamageForces|Allows the entity to be pushed by damage done to it (usually force amount correlates with the damage done).}}
{{IO|DisableDamageForces|Prevents the entity from being pushed by damage done to it.}}
 
{{I Reflection}}
{{I Shadow}}


====Outputs====
== Outputs ==
{{IO|OnIgnite|nofgd=1|Fired when the entity catches fire, such as from an {{ent|env_entity_igniter}} or the <code>Ignite</code> inputs.}}
{{IO|OnIgnite|nofgd=1|Fired when the entity catches fire, such as from an {{ent|env_entity_igniter}} or the <code>Ignite</code> inputs.}}
{{IO|OnFizzled|only={{portal2}}|Fired when this entity is fizzled by a {{ent|trigger_portal_cleanser}} or, for {{ent|prop_weighted_cube}}, the Dissolve or SilentDissolve inputs. :{{bug|It does not fire when the object is fizzled by other means such as {{ent|env_entity_dissolver}}.}}
{{IO|OnFizzled|only={{portal2}}|Fired when this entity is fizzled by a {{ent|trigger_portal_cleanser}} or, for {{ent|prop_weighted_cube}}, the Dissolve or SilentDissolve inputs. :{{bug|It does not fire when the object is fizzled by other means such as {{ent|env_entity_dissolver}}.}}

Revision as of 05:02, 30 September 2024

English (en)Translate (Translate)
C++ Class hierarchy
CBaseAnimating
CBaseEntity
C++ baseanimating.cpp

CBaseAnimating is the C++ class from which all entities with models inherit, even if they don't actually move.

Icon-Important.pngImportant:Following Keyvalues / Inputs / Outputs are available for all entities that inherit this class, but may be overwritten by game code.

Keyvalues

World Model (model) <string>
The model this entity should appear as. 128-character limit.
Skin (skin or ModelSkin Alien Swarm) <integer>
Some models have multiple skins. This value selects from the index, starting with 0.
Collisions (solid) <choices>
Method of collision for this entity. {| class="mw-collapsible mw-collapsed" style="background:rgba(0,0,0,0.05) ;float:no;margin-bottom:0;margin-left:2em;padding-right:0.5em;border:1px solid rgba(255,255,255,0.1); border-left:solid 1px #8bb9e0; padding-left:1em;"

|+ style="text-align:left; white-space:nowrap; font-weight:bold; color:#ddd; " | Choices |

Icon-Bug.pngBug:In Portal 2 Portal 2, if an entity using QPhysics collisions is hit by Gel, the game will crash!  [todo tested in ?]
  • 2: Bounding Box
  • 3: Oriented Bounding Box (Use for runtime spawned rotated brush entities)
  • 4: Oriented Bounding Box, constrained to Yaw only
  • 5: Custom/Test (Usually no collision with anything)
  • 6: VPhysics

|}


Hitbox Set (hitboxset) <string> !FGD
Sets the $hboxset to use.
Body Group (body or SetBodyGroup) <integer> !FGD
Sets the the active $bodygroup.
Note.pngNote:If both body and SetBodyGroup are present (even if set to 0), body will be prioritized.
Model Index (modelindex) <short> !FGD
Given the number index from dumping the cl_precacheinfo modelprecache table, sets entity model to the index.
Warning.pngWarning:If an entity has animations that will be played, then the set model also must have its own sequences, else the game crashes.
Model Scale (modelscale) <float> (in all games since Half-Life 2: Episode Two)
A multiplier for the size of the model. Negative values are accepted. Does not alter the physics collisions in most cases, however.
Warning.pngWarning:Negative or extremely high values can cause crashes!
Note.pngNote:Scale may not appear in Hammer Hammer 4.x, but will appear in-game. This is fixed in Hammer++ Hammer++.

Animating

Sequence (sequence) <integer> !FGD
Default animation sequence for the model to be playing after spawning.
Playback Rate (playbackrate) <float> !FGD
A multiplier of the framerate at which animations are played, negative values are accepted. Default is 1.0.
Cycle (cycle) <float> !FGD
The current frame of the current animation, on a range from 0-1.
Texture Frame (texframeindex) <integer> !FGD
The initial frame number for all animated textures on this entity.

Effects - Render


Start Fade Distance (fademindist) <float>
Distance at which the entity starts fading. If 0 or less, the entity will disappear instantly when end fade is hit. The value will scale appropriately if the entity is in a 3D Skybox.
End Fade Distance (fademaxdist) <float>
Distance at which the entity ends fading. If 0 or less, the entity won't disappear at all. The value will scale appropriately if the entity is in a 3D Skybox.
Fade Scale (fadescale) <float>
If specified in the worldspawn, or if the engine is running below DirectX 8, entities will fade out even if the fade distances above aren't specified. This value gives more control over when this happens: numbers smaller than 1 cause the entity to fade out at further distances, and greater than 1 cause it to fade out at closer distances. Using 0 turns off the forced fade altogether. See also $noforcedfade.
FX Amount/Transparency (0–255) (renderamt) <integer>
Transparency amount, requires a Render Mode other than Normal. 0 is invisible, 255 is fully visible.
Render Color (R G B) (rendercolor) <color255>
Color tint.
Render FX (renderfx) <byte choices>
Various somewhat legacy alpha effects. See render effects.


Render Mode (rendermode) <byte choices>
Set a non-standard rendering mode on this entity.
Render Modes
  • 0: Normal
  • 1: Color
  • 2: Texture
  • 3: Glow
  • 4: Solid/Alphatest Obsolete
  • 5: Additive
  • 6: Removed, does nothing Obsolete
  • 7: Additive Fractional Frame
  • 8: Alpha Add
  • 9: World Space Glow
  • 10: Don't Render

Effects - Environment


Disable Shadows (disableshadows) <boolean>
Prevent the entity from creating cheap render-to-texture shadows. Does not affect shadow mapping.
Disable Receiving Shadows (disablereceiveshadows) <boolean>
Prevent the entity from receiving shadows on itself.
Shadow Cast Distance (shadowcastdist) <integer>
Sets how far the entity casts dynamic shadows. 0 means default distance from the shadow_control entity.
Lighting Origin (LightingOrigin) <targetname>
Select an entity (not info_lighting!) from which to sample lighting instead of the entity's origin or $illumposition.


Lighting Origin Offset (LightingOriginHack) <targetname> (not in Left 4 Dead seriesLeft 4 Dead series) !FGD Obsolete
Deprecated.
The info_lighting_relative from which to sample lighting instead of the entity's origin or $illumposition. Use Lighting Origin instead.


Disable Flashlight (disableflashlight) <boolean> (in all games since Portal 2)
Used to disable projected texture lighting and shadows on this entity. Identical to EF_NOFLASHLIGHT.
Disable ShadowDepth (disableshadowdepth) <boolean> (in all games since Portal 2)
Makes this entity not cast a shadow from env_projectedtexture entities. Identical to EF_NOSHADOWDEPTH.
Projected Texture Cache (shadowdepthnocache) <choices> (in all games since Portal 2)
Used to hint projected texture system whether it is sufficient to cache shadow volume of this entity or to force render it every frame instead. Identical toEF_SHADOWDEPTH_NOCACHE.
  • 0: Default
  • 1: No cache—render every frame
  • 2: Cache it—render only once

Miscellaneous

Glow Backface Multiple (glowbackfacemult) <float> (only in Left 4 Dead 2) !FGD
If this object has a glow effect, multiply the effect by this much on the sides of the object that are facing away from the viewer.


Move Type (MoveType) <choices> (in all games since Alien Swarm) !FGD
Sets a movetype for this entity, which changes its movement behavior.
Move Types
  • 0: None, don't move
  • 1: Isometric
  • 2: Walk, player only, moving on ground
  • 3: NPC, movement
  • 4: Fly, no gravity
  • 5: Fly, with gravity
  • 6: Physics
  • 7: Push
  • 8: Noclip
  • 9: Ladder, for players on ladders
  • 10: Spectator
  • 11: Custom
Collision Group (CollisionGroup) <choices> (in all games since Alien Swarm) !FGD
Sets a collision group for this entity, which changes its collision behavior.
Groups
  • 0: None
  • 1: Debris, collides only with the world and static props
  • 2: Debris, with trigger interaction
  • 3: Interactive Debris, doesn't collide with other debris
  • 4: Interactive, collides with everything except debris
  • 5: Player
  • 6: Breakable Glass
  • 7: Vehicle
  • 8: Player Movement
  • 9: In-Vehicle
  • 10: Weapon
  • 11: Vehicle Clip
  • 12: Projectile
  • 13: Door blocker, not permitted to go near doors
  • 14: Passable Door
  • 15: Dissolving
  • 16: Pushaway
  • 17: NPC Actor, NPCs ignore the player
  • 18: NPC Scripted, NPCs do not collide with each other
No Animation Sounds (SuppressAnimSounds) <boolean> (in all games since Portal 2) !FGD
Silences sounds linked to animations.
Minimum / Maximum DX Level (mindxlevel / maxdxlevel) <integer choices> (removed since Left 4 Dead)
The entity will not exist if the engine is running outside the given range of DirectX Versions.
Choices
Warning.pngWarning:If these are used, the object may break when the user switches their DirectX settings.[missing string]
Minimum / Maximum Effect Details Level (mincpulevel / maxcpulevel) <integer choices> (in all games since Left 4 Dead)
Don't render for players with Effect Details levels that exceed the minimum or maximum.
Choices
  • 0: Default ("Low" for mincpulevel, "High" for maxcpulevel)
  • 1: Low
  • 2: Medium
  • 3: High
Minimum / Maximum Shader Details Level (mingpulevel / maxgpulevel) <integer choices> (in all games since Left 4 Dead)
Don't render for players with Shader Details levels that exceed the minimum or maximum.
Choices
  • 0: Default ("Low" for mingpulevel, "Very High" for maxgpulevel)
  • 1: Low
  • 2: Medium
  • 3: High
  • 4: Very High
See also:  cpu_level / gpu_level convars

Inputs

skin <integerRedirectInput/integer>
Selects a skin from the model's index, starting with 0.
SetBodyGroup <integerRedirectInput/integer>
Sets the the active $bodygroup.
Ignite
Makes the entity catch on fire indefinitely.
IgniteLifetime <floatRedirectInput/float>
Makes the entity catch on fire for a given amount of time.
IgniteNumHitboxFires <integerRedirectInput/integer> (removed since Left 4 Dead 2)
Makes the entity catch on fire with a given number of hitbox fire particles. Does not function correctly in Left 4 Dead 2 onward.
IgniteHitboxFireScale <floatRedirectInput/float> (removed since Left 4 Dead 2)
Makes the entity catch on fire with a given scale for hitbox fire particles. Does not function correctly in Left 4 Dead 2 onward.
BecomeRagdoll
Kills the entity and creates a client-side ragdoll from the model. Input is only passed if the model contains $collisionjoints. For other models, phys_convert can be used instead.
SetLightingOrigin <targetnameRedirectInput/string>
Sets the entity's lighting origin to use this entity's position.
SetLightingOriginHack <targetnameRedirectInput/string> (removed since Left 4 Dead) Obsolete
Deprecated.
Offsets the entity's lighting origin by their distance from an info_lighting_relative. Use SetLightingOrigin instead.
fademindist <floatRedirectInput/float>
Sets distance at which the entity starts fading. If <0, the entity will disappear instantly when end fade is hit. The value will scale appropriately if the entity is in a 3D Skybox.
fademaxdist <floatRedirectInput/float>
Sets distance at which the entity ends fading. If <0, the entity won't disappear at all. The value will scale appropriately if the entity is in a 3D Skybox.
SetModelScale <vectorRedirectInput/Vector> (only in Source 2013)
Multiplies the size of the model. Does not alter the physics collisions in most cases. Can take two values separated by a space, in which case the first value would be the target model scale and the second value would be the number of seconds the change in scale will be spread over. If there is no second value, the model will scale instantly.
Tip.pngTip:The modelscale keyvalue can be AddOutputed as a workaround for other games with this input missing.
Warning.pngWarning:Negative or extremely high values can cause crashes!
SetCycle <floatRedirectInput/float> (only in Team Fortress 2)
Skip to a specific point in the current animation.
SetModel <stringRedirectInput/string> (only in Team Fortress 2)
Changes the model to the specified path. Form of models/ammo/ammo_us.mdl.
Icon-Important.pngImportant:Absolutely NO quotes! Make sure you use the forward slash '/'. Merasmus says to heed this advice, else thou shalt corrupt the VMF.
SetPlayBackRate <floatRedirectInput/float>
Change the animation speed multiplier.
Alpha <integerRedirectInput/integer>
Sets the entity's transparency to a number from 0 (invisible) to 255 (fully visible). Requires the entity to have its Render Mode (rendermode) set to a number other than 0.
AlternativeSorting <booleanRedirectInput/boolean>
Swaps the rendering order of the entity. Used to attempt to fix sorting problems when rendering, for example an object rendering in front of translucent materials.
Color <color255RedirectInput/color32>
Sets an RGB color for the entity.
SetDamageFilter <targetnameRedirectInput/string>
Sets a filter for this entity for when it receives damage.
EnableDamageForces
Allows the entity to be pushed by damage done to it (usually force amount correlates with the damage done).
DisableDamageForces
Prevents the entity from being pushed by damage done to it.

Reflection:

DisableDrawInFastReflection  (in all games since Portal 2)
Turns off rendering of this entity in reflections when using $reflectonlymarkedentities in water material.
EnableDrawInFastReflection  (in all games since Portal 2)
Turn on rendering of this entity in reflections when using $reflectonlymarkedentities in water material.

Shadow:

DisableShadow
Turn dynamic shadows off for this entity. Identical to applying  EF_NOSHADOW.
EnableShadow
Turn dynamic shadows on for this entity.
DisableReceivingFlashlight  (in all games since Portal 2)
This object will not receive light or shadows from projected textures.
EnableReceivingFlashlight  (in all games since Portal 2)
This object may receive light or shadows from projected textures.

Outputs

OnIgnite  !FGD
Fired when the entity catches fire, such as from an env_entity_igniter or the Ignite inputs.
OnFizzled  (only in Portal 2)
Fired when this entity is fizzled by a trigger_portal_cleanser or, for prop_weighted_cube, the Dissolve or SilentDissolve inputs. :
Icon-Bug.pngBug:It does not fire when the object is fizzled by other means such as env_entity_dissolver.  [todo tested in ?]

Debugging

ent_text

Additional information added to ent_text overlay by this class

  • Sequence: (<sequence number>) <sequence name>
  • Activity: <activity name> (only if there is one)
  • Cycle: <cycle> (<animation time>)

exact format:

"Sequence: (%3d) %s",GetSequence(), GetSequenceName( GetSequence() )
"Activity %s", GetSequenceActivityName(GetSequence()) (only if there is one) 
"Cycle: %.5f (%.5f)", (float)GetCycle(), m_flAnimTime.Get()