Difference between revisions of "Template:KV BaseAnimating"

From Valve Developer Community
Jump to: navigation, search
(Further research needed for shadow cast distance.)
(k, CBaseAnimating seems to be ready to use now, good to put it into the test of time now (Although I'd still not put the template in pages like Template:BasicCSGOWeapon, but just take a few bits here and put it there))
Line 2: Line 2:
  
 
This template is our holder for all [[keyvalues]] that are assigned through {{ent|CBaseAnimating}}. The template has a very specific syntax that you must follow to apply properly, because new games have added new features throughout the years. See [[Help:Templates]] for more info on named parameters.
 
This template is our holder for all [[keyvalues]] that are assigned through {{ent|CBaseAnimating}}. The template has a very specific syntax that you must follow to apply properly, because new games have added new features throughout the years. See [[Help:Templates]] for more info on named parameters.
 +
'''No parameters:''' display only keyvalues available for ALL games.
 
<pre>{{KV BaseAnimating}}</pre>
 
<pre>{{KV BaseAnimating}}</pre>
'''No parameters:''' display keyvalues for ALL games.
+
'''Base:''' display keyvalues in a fashion that assumes the entity's orgin game's engine is older than {{l4d}}.
 
<pre>{{KV BaseAnimating|base=1}}</pre>
 
<pre>{{KV BaseAnimating|base=1}}</pre>
'''Base:''' display keyvalues that have only existed since whatever game added the class (most have existed since HL2, the first Source game).
+
'''Game as a parameter:''' display the keyvalues that <code>base</code> displays, AND keyvalues that were added to the class, by the specified game. You can specify as many games as needed. You must specify ALL the games you want to include (e.g. <code>l4d2</code> will not automatically include <code>l4d</code> keyvalues as well). This is because there are situations like in Portal 2, where the output <code>OnKilled</code> is not available through {{ent|CBaseEntity}}, despite being a far descendant of the L4D branch which added it.
 
<pre>{{KV BaseAnimating|portal2=1}}</pre>
 
<pre>{{KV BaseAnimating|portal2=1}}</pre>
'''Game as a parameter:''' display the keyvalues that <code>base</code> displays, AND keyvalues that were added to the class, by the specified game. You can specify as many games as needed. You must specify ALL the games you want to include (e.g. <code>l4d2</code> will not automatically include <code>l4d</code> keyvalues as well). This is because there are situations like in Portal 2, where the output <code>OnKilled</code> is not available through {{ent|CBaseEntity}}, despite being a far descendant of the L4D branch which added it.
 
  
 
All parameters for this template:
 
All parameters for this template:
*<code>base</code>
+
*<code>base</code> - Assumes the entity's game belongs to an engine older than the {{l4d}} branch (E.g. {{portal}}, {{tf2}}, {{hl2}}), then hides notes about games past it.
*<code>l4d</code>
+
*<code>portal</code>and<code>src13</code> - Both will cross strike out certain keys that don't exist in their own games. (Specifically the {{not|{{portal}}}} and {{not|{{src13}}}})
*<code>l4d2</code> (do this only for entities available in l4d2 because only it has this kv!)
+
*<code>l4d</code> - Show {{l4d}} only key quirks. and display keys added since {{l4d}}.
*<code>as</code>
+
*<code>l4d2</code> - Show {{l4d2}} only key quirks, and display keys present since {{l4d2}}.
*<code>portal2</code>
+
*<code>as</code> - Display keys present since {{as}}.
 +
*<code>portal2</code> - Display keys present since {{portal2}}.
 
{{note|If you want to edit something on this template, please make sure you edit it in both places. ''Per-game'' keyvalues are duplicated, for complex technical reasons.}}
 
{{note|If you want to edit something on this template, please make sure you edit it in both places. ''Per-game'' keyvalues are duplicated, for complex technical reasons.}}
 
For full documentation on this family of templates, see [[FGD Template Prototype]]. Still confused on something? '''Ask for help''' before editing this template.
 
For full documentation on this family of templates, see [[FGD Template Prototype]]. Still confused on something? '''Ask for help''' before editing this template.
 
{{note|Some keyvalues in this template are actually defined by <code>CBaseEntity</code>. We have listed them here instead because those specific keyvalues were rather un-universal (for example <code>renderfx</code>, which would not have any practical use on point entities that are never seen, or on triggers), and putting them on every entity page would only cause confusion and clutter, the exact opposite goal in mind with this series of templates.}}
 
{{note|Some keyvalues in this template are actually defined by <code>CBaseEntity</code>. We have listed them here instead because those specific keyvalues were rather un-universal (for example <code>renderfx</code>, which would not have any practical use on point entities that are never seen, or on triggers), and putting them on every entity page would only cause confusion and clutter, the exact opposite goal in mind with this series of templates.}}
----
+
__TOC__
 
[[Category:Keyvalue Templates|Global]]
 
[[Category:Keyvalue Templates|Global]]
</noinclude>{{minititle|Model}}
+
{{KV BaseAnimating}}
 +
</noinclude><includeonly>{{minititle|Model}}
 
{{KV|World Model|intn=model|string|The [[model]] this entity should appear as. 128-character limit.}}
 
{{KV|World Model|intn=model|string|The [[model]] this entity should appear as. 128-character limit.}}
 
{{KV|[[Skin]]|intn=skin or ModelSkin {{as}}|int|Some models have multiple skins. This value selects from the index, starting with 0.}}
 
{{KV|[[Skin]]|intn=skin or ModelSkin {{as}}|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|Collisions|intn=solid|choices|Method of collision for this entity.
 
:*0: None
 
:*0: None
:*1: BSP ([[QPhysics]]) {{not in FGD}} {{bug|In {{game link|Portal 2}}, if an entity using QPhysics collisions is hit by [[Gel]], the game will crash!}}
+
:*1: BSP ([[QPhysics]]) {{not in FGD}} {{#if:{{{base|}}}||{{bug|In {{game link|Portal 2}}, if an entity using QPhysics collisions is hit by [[Gel]], the game will crash!}} {{confirm|Does this apply to brush entities?}}}}
 
:*2: [[Bounding box|Bounding Box]]
 
:*2: [[Bounding box|Bounding Box]]
 
:*3: [[Bounding box|Oriented Bounding Box]] {{not in FGD}}
 
:*3: [[Bounding box|Oriented Bounding Box]] {{not in FGD}}
Line 31: Line 33:
 
:*5: Custom/Test {{not in FGD}}
 
:*5: Custom/Test {{not in FGD}}
 
:*6: [[VPhysics]]
 
:*6: [[VPhysics]]
 +
}}
 +
{{KV|[[Hitbox]] Set|intn=hitboxset|string|Sets the [[$hboxset]] to use.|nofgd=1}}
 
{{KV|Body Group|intn=body or SetBodyGroup|int|Sets the the active [[$bodygroup]].|nofgd=1}}
 
{{KV|Body Group|intn=body or SetBodyGroup|int|Sets the the active [[$bodygroup]].|nofgd=1}}
{{KV|[[Hitbox]] Set|intn=hitboxset|string|Sets the [[$hboxset]] to use.|nofgd=1}}
+
{{KV|Model Index|intn=modelindex|short|Changes the entity's model to a precached model on the map.|nofgd=1}}
 +
:{{warning|Using an invalid value will instantly crash the game, this includes 0 and 1.}}
 +
<!--
 +
  ++ Model Scale ++
 +
-->
 +
<!-- IF: L4D or L4D2 -->{{#if:{{{portal|}}}{{{l4d|}}}{{{l4d2|}}}{{{src13|}}}|
 +
{{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.|nofgd=1|since=EP2|deprecated=1|not={{portal}} {{l4ds}} {{src13}}|}}
 +
|<!-- ELSE IF: BASE -->{{#if:{{{base|}}}|
 +
{{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.|nofgd=1|since=EP2|not={{portal}}{{l4d}}}}
 +
|<!-- ELSE: -->
 +
{{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.|nofgd=1|since=EP2|not={{portal}}{{l4ds}}{{src13}}|}}
 +
}}}}
 +
:{{warning|Negative or extremely high values can cause crashes!}}
 +
<h4>Animating</h4>
 
{{KV|Sequence|intn=sequence|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|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|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=cycle|float|The current frame of the currently playing animation, on a range from 0-1.|nofgd=1}}
 
{{KV|Cycle|intn=cycle|float|The current frame of the currently playing animation, on a range from 0-1.|nofgd=1}}
{{KV|Lighting Origin|intn=LightingOrigin|targetname|Select an entity (not {{ent|info_lighting}}!) from which to sample lighting instead of the entity's [[origin]].}}
+
{{KV|Texture Frame|intn=texframeindex|int|The frame number for any animated textures on this entity.|nofgd=1}}
{{KV|Lighting Origin Offset|intn=LightingOriginHack|targetname|The {{ent|info_lighting_relative}} from which to sample lighting instead of the entity's origin. Not in {{l4d}}{{l4d2}}.|nofgd=1}}
+
<!-- {{KV|Damage Filter Name|intn=damagefilter|targetname|When this entity receives damage, it will [[filter]] by this entity.}} doesn't belong here -->
{{KV|Damage Filter Name|intn=damagefilter|targetname|When this entity receives damage, it will [[filter]] by this entity.}}
+
<h3>Effects - Render</h3>{{style|border-bottom:1px solid #3A3937;display:block|}}
{{KV|Start Fade Distance|intn=fademindist|float|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]].}}
+
{{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|End Fade Distance|intn=fademaxdist|float|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]].}}
+
{{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|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|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|[[Render Mode]]|intn=rendermode|choices|Set a non-standard rendering mode on this entity.}}
 
{{KV|[[Render Mode]]|intn=rendermode|choices|Set a non-standard rendering mode on this entity.}}
:{{ExpandBox|
+
{{ExpandBox|
:*0: Normal
+
:*'''0''': Normal
:*1: Color
+
:*'''1''': Color
:*2: Texture
+
:*'''2''': Texture
:*3: Glow
+
:*'''3''': Glow
:*4: Solid/Alphatest
+
:*'''4''': Solid/Alphatest
:*5: Additive
+
:*'''5''': Additive
:*6: Removed, does nothing
+
:*'''6''': Removed, does nothing
:*7: Additive Fractional Frame
+
:*'''7''': Additive Fractional Frame
:*8: Alpha Add
+
:*'''8''': Alpha Add
:*9: World Space Glow
+
:*'''9''': World Space Glow
:*10: Don't Render}}
+
:*'''10''': Don't Render}}
 
{{KV|Render FX / Transparency (0 - 255)|intn=renderamt|int|Transparency amount, requires a Render Mode other than '''Normal'''. 0 is invisible, 255 is fully visible.}}
 
{{KV|Render FX / 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 Color (R G B)|intn=rendercolor|color255|Color tint.}}
Line 80: Line 97:
 
:*'''23:''' Cull By Distance
 
:*'''23:''' Cull By Distance
 
:*'''24:''' Fade Wider Pulse
 
:*'''24:''' Fade Wider Pulse
:*'''26:''' Fade Near}}
+
:*'''26:''' Fade Near
:{{todo|18-21, 25}}
+
:{{todo|18-21, 25}}}}
{{KV|Shadow Cast Distance|intn=shadowcastdist|int|Sets how far the entity casts dynamic shadows. 0 means default distance from the [[shadow_control]] entity.}}
+
<h3>Effects - Environment</h3>{{style|border-bottom:1px solid #3A3937;display:block|}}
{{Template:Note | Further reasearch needed, not avalible for prop_dynamic in Source 2013}}
 
 
{{KV|Disable Shadows|intn=disableshadows|boolean|Prevent the entity from creating cheap render-to-texture shadows. Does not affect [[shadow mapping]].}}
 
{{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|Disable Receiving Shadows|intn=disablereceiveshadows|boolean|Prevent the entity from receiving shadows on itself.}}
{{KV|Model Index|intn=modelindex|short|Changes the entity's model to a precached model on the map.|nofgd=1}}
+
{{KV|Shadow Cast Distance|intn=shadowcastdist|int|Sets how far the entity casts dynamic shadows. 0 means default distance from the [[shadow_control]] entity.}}
:{{warning|Using an invalid value will instantly crash the game, this includes 0 and 1.}}
+
:{{note|Further research needed for this key, as inconsistencies like unavailability for [[prop_dynamic]] in {{src13}} exists.}}
{{KV|Texture Frame|intn=texframeindex|int|The frame number for any animated textures on this entity.}}
+
{{KV|Lighting Origin|intn=LightingOrigin|targetname|Select an entity (not{{ent|info_lighting}}entity!) from which to sample lighting instead of the entity's [[origin]].}}
{{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. Not in {{portal}}, {{l4d}}, {{l4d2}}, sdk 2013.|nofgd=1|since=OB}}
+
<!--
:{{warning|Negative or extremely high values can cause crashes!}}<!--
+
  ++ LightingOriginHack ++
-->{{#if:{{{l4d|}}}|<!--
+
-->
-->{{KV|Minimum CPU Level|intn=mincpulevel|choices|A user with a CPU level lower than this will not see this object rendered in-game. It's unclear how the CPU level is decided, but most systems are classified as "high".|since=L4D}}
+
<!-- IF: L4D or L4D2 -->{{#if:{{{l4d|}}}{{{l4d2|}}}|
;Maximum CPU Level <code>(maxcpulevel)</code> {{KV Type|choices}} {{L4D add}}
+
{{KV|Lighting Origin Offset|intn=LightingOriginHack|targetname|The{{ent|info_lighting_relative}}from which to sample lighting instead of the entity's origin.|not={{l4ds}}|deprecated=1|nofgd=1}}
 +
|<!-- ELSE IF: BASE -->{{#if:{{{base|}}}|
 +
{{KV|Lighting Origin Offset|intn=LightingOriginHack|targetname|The{{ent|info_lighting_relative}}from which to sample lighting instead of the entity's origin.|not={{l4d}}|nofgd=1}}
 +
|<!-- ELSE: -->
 +
{{KV|Lighting Origin Offset|intn=LightingOriginHack|targetname|The{{ent|info_lighting_relative}}from which to sample lighting instead of the entity's origin.|not={{l4ds}}|nofgd=1}}
 +
}}}}
 +
<!-- IF: PORTAL2 -->{{#if:{{{portal2|}}}|
 +
{{KV|Disable Flashlight|intn=disableflashlight|boolean|Used to disable [[env_projectedtexture|projected texture]] lighting and shadows on this entity.|since=P2}}
 +
{{KV|Disable ShadowDepth|intn=disableshadowdepth|boolean|Makes this entity not cast a shadow from{{ent|env_projectedtexture}}entities.|since=P2}}
 +
{{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.|since=P2}}
 
:*0: Default
 
:*0: Default
 +
:*1: No cache - render every frame
 +
:*2: Cache it - render only once
 +
| }}
 +
<!--
 +
  ++ Misc - SystemLevelChoice ++
 +
-->
 +
<!-- IF: L4D -->{{#if:{{{l4d|}}}{{{l4d2|}}}{{{as|}}}{{{portal2|}}}|
 +
<h3>Miscellaneous</h3>
 +
{{minititle|SystemLevelChoice}}
 +
{{KV|Minimum Effect Details Level|intn=mincpulevel|choices|Effect Details levels (or<code>cpu_level</code>command) lower than this will not render this entity.|since=L4D}}
 +
{{KV|Maximum Effect Details Level|intn=maxcpulevel|choices|Effect Details levels (or<code>cpu_level</code>command) higher than this will not render this entity.|since=L4D}}
 +
:*0: Default ("Low" for<code>mincpulevel</code>, "High" for<code>maxcpulevel</code>)
 
:*1: Low
 
:*1: Low
 
:*2: Medium
 
:*2: Medium
 
:*3: High
 
:*3: High
;Minimum GPU Level <code>(mingpulevel)</code> {{KV Type|choices}} {{L4D add}}
+
{{KV|Minimum Shader Details Level|intn=mingpulevel|choices|Shader Details levels (or<code>gpu_level</code>command) lower than this will not render this object.|since=L4D}}
;Maximum GPU Level <code>(maxgpulevel)</code> {{KV Type|choices}} {{L4D add}}
+
{{KV|Maximum Shader Details Level|intn=maxgpulevel|choices|Shader Details levels (or<code>gpu_level</code>command) higher than this will not render this object.|since=L4D}}
:*0: Default
+
:*0: Default ("Low" for<code>mingpulevel</code>, "Very High" for<code>maxgpulevel</code>)
:*1: Very low
 
:*2: Low
 
:*3: Medium
 
:*4: High<!--
 
-->| }}{{#if:{{{l4d2|}}}|<!--
 
-->{{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.|since=L4D2}}<!--
 
-->| }}{{#if:{{{as|}}}|<!--
 
-->{{KV|Move Type|intn=MoveType|choices|Sets a movetype for this entity, which changes its movement behavior.|since=AS|nofgd=1}}
 
:{{ExpandBox|
 
:*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}}
 
{{KV|Collision Group|intn=CollisionGroup|choices|Sets a collision group for this entity, which changes its collision behavior.|since=AS|nofgd=1}}
 
:{{ExpandBox|
 
:*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}}<!--
 
-->| }}{{#if:{{{portal2|}}}|<!--
 
-->{{KV|No Animation Sounds|intn=SuppressAnimSounds|boolean|Silences sounds linked to animations.|since=P2|nofgd=1}}
 
{{KV|Disable ShadowDepth|intn=disableshadowdepth|boolean|Makes this entity not cast a shadow from {{ent|env_projectedtexture}}s.|since=P2}}
 
{{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.|since=P2}}
 
:*0: Default
 
:*1: No cache - render every frame
 
:*2: Cache it - render only once
 
{{KV|Disable Flashlight|intn=disableflashlight|boolean|Used to disable [[env_projectedtexture|projected texture]] lighting and shadows on this entity.|since=P2}}<!--
 
-->| }}<!--
 
-->{{#if:{{{l4d|}}}||{{#if:{{{l4d2|}}}||{{#if:{{{as|}}}||{{#if:{{{portal2|}}}||{{#if:{{{base|}}}||<!--
 
-->{{KV|Minimum CPU Level|intn=mincpulevel|choices|A user with a CPU level lower than this will not see this object rendered in-game. It's unclear how the CPU level is decided, but most systems are classified as "high".|since=L4D}}
 
;Maximum CPU Level <code>(maxcpulevel)</code> {{KV Type|choices}} {{L4D add}}
 
:*0: Default
 
 
:*1: Low
 
:*1: Low
 
:*2: Medium
 
:*2: Medium
 
:*3: High
 
:*3: High
;Minimum GPU Level <code>(mingpulevel)</code> {{KV Type|choices}} {{L4D add}}
+
:*4: Very High
;Maximum GPU Level <code>(maxgpulevel)</code> {{KV Type|choices}} {{L4D add}}
+
| }}
:*0: Default
+
<!--
:*1: Very low
+
  ++ Misc - Game Specific Niches ++
:*2: Low
+
-->
:*3: Medium
+
<!-- IF: L4D2 OR AS OR PORTAL2 -->{{#if:{{{l4d2|}}}{{{as|}}}{{{portal2|}}}|
:*4: High
 
 
{{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.|since=L4D2}}
 
{{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.|since=L4D2}}
{{KV|Move Type|intn=MoveType|choices|Sets a movetype for this entity, which changes its movement behavior.|since=AS|nofgd=1}}
+
| }}<!-- IF: AS -->{{#if:{{{as|}}}|
:{{ExpandBox|
+
{{KV|Move Type|intn=MoveType|choices|Sets a movetype for this entity, which changes its movement behavior.
:*0: None, don't move
+
{{ExpandBox|
:*1: Isometric
+
:*'''0''': None, don't move
:*2: Walk, player only, moving on ground
+
:*'''1''': Isometric
:*3: NPC, movement
+
:*'''2''': Walk, player only, moving on ground
:*4: Fly, no gravity
+
:*'''3''': NPC, movement
:*5: Fly, with gravity
+
:*'''4''': Fly, no gravity
:*6: Physics
+
:*'''5''': Fly, with gravity
:*7: Push
+
:*'''6''': Physics
:*8: [[Noclip]]
+
:*'''7''': Push
:*9: Ladder, for players on ladders
+
:*'''8''': [[Noclip]]
:*10: Spectator
+
:*'''9''': Ladder, for players on ladders
:*11: Custom}}
+
:*'''10''': Spectator
{{KV|Collision Group|intn=CollisionGroup|choices|Sets a collision group for this entity, which changes its collision behavior.|since=AS|nofgd=1}}
+
:*'''11''': Custom
:{{ExpandBox|
+
}}
:*0: None
+
|since=AS|nofgd=1}}
:*1: Debris, collides only with the world and static props
+
{{KV|Collision Group|intn=CollisionGroup|choices|Sets a collision group for this entity, which changes its collision behavior.
:*2: Debris, with trigger interaction
+
{{ExpandBox|
:*3: Interactive Debris, doesn't collide with other debris
+
:*'''0''': None
:*4: Interactive, collides with everything except debris
+
:*'''1''': Debris, collides only with the world and static props
:*5: Player
+
:*'''2''': Debris, with trigger interaction
:*6: Breakable Glass
+
:*'''''': Interactive Debris, doesn't collide with other debris
:*7: Vehicle
+
:*'''4''': Interactive, collides with everything except debris
:*8: Player Movement
+
:*'''5''': Player
:*9: In-Vehicle
+
:*'''6''': Breakable Glass
:*10: Weapon
+
:*'''7''': Vehicle
:*11: Vehicle Clip
+
:*'''8''': Player Movement
:*12: Projectile
+
:*'''9''': In-Vehicle
:*13: Door blocker, not permitted to go near doors
+
:*'''10''': Weapon
:*14: Passable Door
+
:*'''11''': Vehicle Clip
:*15: Dissolving
+
:*'''12''': Projectile
:*16: Pushaway
+
:*'''13''': Door blocker, not permitted to go near doors
:*17: NPC Actor, ignores the player
+
:*'''1''': Passable Door
:*18: NPC Scripted, NPCs do not collide with each other}}
+
:*'''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}}
 +
| }}<!-- IF: PORTAL2 -->{{#if:{{{portal2|}}}|
 
{{KV|No Animation Sounds|intn=SuppressAnimSounds|boolean|Silences sounds linked to animations.|since=P2|nofgd=1}}
 
{{KV|No Animation Sounds|intn=SuppressAnimSounds|boolean|Silences sounds linked to animations.|since=P2|nofgd=1}}
{{KV|Disable ShadowDepth|intn=disableshadowdepth|boolean|Makes this entity not cast a shadow from {{ent|env_projectedtexture}}s.|since=P2}}
+
| }}</includeonly>
{{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.|since=P2}}
 
:*0: Default
 
:*1: No cache - render every frame
 
:*2: Cache it - render only once
 
{{KV|Disable Flashlight|intn=disableflashlight|boolean|Used to disable [[env_projectedtexture|projected texture]] lighting and shadows on this entity.|since=P2}}<!--
 
-->}}}}}}}}}}
 

Revision as of 03:22, 17 April 2021

Template:KV_BaseEntity

This template is our holder for all keyvalues that are assigned through CBaseAnimating. The template has a very specific syntax that you must follow to apply properly, because new games have added new features throughout the years. See Help:Templates for more info on named parameters. No parameters: display only keyvalues available for ALL games.

{{KV BaseAnimating}}

Base: display keyvalues in a fashion that assumes the entity's orgin game's engine is older than <Left 4 Dead>.

{{KV BaseAnimating|base=1}}

Game as a parameter: display the keyvalues that base displays, AND keyvalues that were added to the class, by the specified game. You can specify as many games as needed. You must specify ALL the games you want to include (e.g. l4d2 will not automatically include l4d keyvalues as well). This is because there are situations like in Portal 2, where the output OnKilled is not available through CBaseEntity, despite being a far descendant of the L4D branch which added it.

{{KV BaseAnimating|portal2=1}}

All parameters for this template:

  • base - Assumes the entity's game belongs to an engine older than the <Left 4 Dead> branch (E.g. [Portal], <Team Fortress 2>, <Half-Life 2>), then hides notes about games past it.
  • portalandsrc13 - Both will cross strike out certain keys that don't exist in their own games. (Specifically the (not in [Portal]) and (not in <Source><Source>))
  • l4d - Show <Left 4 Dead> only key quirks. and display keys added since <Left 4 Dead>.
  • l4d2 - Show <Left 4 Dead 2> only key quirks, and display keys present since <Left 4 Dead 2>.
  • as - Display keys present since <Alien Swarm>.
  • portal2 - Display keys present since [Portal 2].
Note.png Note: If you want to edit something on this template, please make sure you edit it in both places. Per-game keyvalues are duplicated, for complex technical reasons.

For full documentation on this family of templates, see FGD Template Prototype. Still confused on something? Ask for help before editing this template.

Note.png Note: Some keyvalues in this template are actually defined by CBaseEntity. We have listed them here instead because those specific keyvalues were rather un-universal (for example renderfx, which would not have any practical use on point entities that are never seen, or on triggers), and putting them on every entity page would only cause confusion and clutter, the exact opposite goal in mind with this series of templates.

Model:

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.
Hitbox Set (hitboxset) <string> !FGD
Sets the $hboxset to use.
Body Group (body or SetBodyGroup) <integer> !FGD
Sets the the active $bodygroup.
Model Index (modelindex) <short> !FGD
Changes the entity's model to a precached model on the map.
Warning.png Warning: Using an invalid value will instantly crash the game, this includes 0 and 1.
Model Scale (modelscale) <float> (in all games since <Half-Life 2: Episode Two><Half-Life 2: Episode Two>) (not in [Portal]<Left 4 Dead> <Left 4 Dead 2><Source><Source>) !FGD
A multiplier for the size of the model. Negative values are accepted. Does not alter the physics collisions in most cases, however.
Warning.png Warning: Negative or extremely high values can cause crashes!

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 currently playing animation, on a range from 0-1.
Texture Frame (texframeindex) <integer> !FGD
The frame number for any 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.
Render Mode (rendermode) <choices>
Set a non-standard rendering mode on this entity.



Render FX / 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) <choices>
Preset pattern of appearance effects.


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.
Note.png Note: Further research needed for this key, as inconsistencies like unavailability for prop_dynamic in <Source><Source> exists.
Lighting Origin (LightingOrigin) <targetname>
Select an entity (notinfo_lightingentity!) from which to sample lighting instead of the entity's origin.
Lighting Origin Offset (LightingOriginHack) <targetname> (not in <Left 4 Dead> <Left 4 Dead 2>) !FGD
Theinfo_lighting_relativefrom which to sample lighting instead of the entity's origin.