Difference between revisions of "Template:KV BaseEntity"

From Valve Developer Community
Jump to: navigation, search
m (grammar error)
(mins/maxs compression + graph; parentname compression; globalname compression; Minor edit to 'Oriented Bounding Box'; Minor edit to 'Response Contexts')
Line 5: Line 5:
 
<!-- IF: BRUSH -->
 
<!-- IF: BRUSH -->
 
{{#if:{{{brush|}}}|{{minititle|Brush}}
 
{{#if:{{{brush|}}}|{{minititle|Brush}}
{{KV|Minimum Bounding Box Size|intn=mins|vector|Starting at the brush's origin, mark the maximum bounding box's corner as this far away. Requires<code>maxs</code>if used so the other side of the box isn't empty.|nofgd=1}}
+
{{KV|Minimum Bounding Box Size|intn=mins|vector|nofgd=1}}
{{KV|Maximum Bounding Box Size|intn=maxs|vector|Starting at the brush's origin, mark the minimum bounding box's corner as this far away. Requires<code>mins</code>if used so the other side of the box isn't empty.|nofgd=1}}
+
{{KV|Maximum Bounding Box Size|intn=maxs|vector|Starting at the brush's origin, mark a bounding box's corner as this far away. Both are required at the same time so one side of the bounding box isn't empty.|nofgd=1}}
:{{note|To translate a brush's size in Hammer to these keys, first divide the size value shown in Hammer by 2. Then, apply the result to the<code>maxs</code>key, and invert the number (Multiply / Divide by -1) and apply it for the<code>mins</code>key.}}
+
<!-- idk why upright won't work, and the text always shows collapse at the doc page, can't do anything about it -->
 +
:{{ExpandBox| [[File:BoundingBoxMinsMaxs.png|right|400x300px|Graph of 'mins' and 'maxs']] | side=right | noendlinebreak=1 | expandtext=View Graph | collapsetext=Hide Graph }}
 +
:{{note|To translate a brush's size in Hammer to these keys, first divide the size value shown in Hammer by 2. Apply the result to the<code>maxs</code>key, then apply the inverted variant (multiply / divide by -1) for the<code>mins</code>key.}}
 
:{{note|If collisions is already set, it must be set back to Bounding Box (solid 2).}}
 
:{{note|If collisions is already set, it must be set back to Bounding Box (solid 2).}}
 
{{KV|Collisions|intn=solid|choices|Method of collision for this entity.
 
{{KV|Collisions|intn=solid|choices|Method of collision for this entity.
Line 13: Line 15:
 
:*1: BSP ([[QPhysics]]) {{Not in FGD}} {{bug|In {{portal2}}, if an entity using QPhysics collisions is hit by [[Gel]], the game will crash!}}
 
:*1: BSP ([[QPhysics]]) {{Not in FGD}} {{bug|In {{portal2}}, if an entity using QPhysics collisions is hit by [[Gel]], the game will crash!}}
 
:*2: [[Bounding box|Bounding Box]]
 
:*2: [[Bounding box|Bounding Box]]
:*3: [[Bounding box|Oriented Bounding Box]] (Use for runtime spawned rotated brush entities) {{Not in FGD}}
+
:*3: [[Bounding box|Oriented Bounding Box]] (Use for runtime spawned brush entities meant to be rotated) {{Not in FGD}}
 
:*4: [[Bounding box|Oriented Bounding Box]], constrained to [[QAngle|Yaw]] only {{Not in FGD}}
 
:*4: [[Bounding box|Oriented Bounding Box]], constrained to [[QAngle|Yaw]] only {{Not in FGD}}
 
:*5: Custom/Test (Usually no collision with anything) {{Not in FGD}}
 
:*5: Custom/Test (Usually no collision with anything) {{Not in FGD}}
Line 26: Line 28:
 
{{minititle|Base}}
 
{{minititle|Base}}
 
{{KV|[[targetname|Name]]|intn=targetname|string|The name that other entities use to refer to this entity.}}
 
{{KV|[[targetname|Name]]|intn=targetname|string|The name that other entities use to refer to this entity.}}
{{KV|[[Parent]]|intn=parentname|targetname|Specifies a movement parent. An entity will maintain its initial offset from its parent. An attachment point can be added to the end of the name, separated by a comma. ''Every'' entity can be parented, even point entities. Entities which are parented will be forced to transition to the next map, such as from a {{ent|trigger_transition}}. Some entities which aren't intended to be parented may not function correctly. {{ent|phys_constraint}} can be used as a workaround to parenting.}}
+
{{KV|[[Parent]]|intn=parentname|targetname|Maintain the same initial offset to this entity. An attachment point can also be used if separated by a comma at the end. (<code>parentname [targetname],[attachment]</code>) {{tip|Entities transition to the next map with their parents}}{{tip|{{ent|phys_constraint}}can be used as a workaround if parenting fails.}}}}
{{KV|Global Entity Name|intn=globalname|string|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.}}
+
{{KV|Global Entity Name|intn=globalname|string| When the player transitions to a new map, entities in the new map with matching globalnames will have their previous map's states copied over to it.}}
 
{{KV|[[Origin]] (X Y Z)|intn=origin|coordinates|The position of this entity's center in the world. Rotating entities typically rotate around their origin.{{note|Hammer does not move the entities accordingly only in the editor.}}}}
 
{{KV|[[Origin]] (X Y Z)|intn=origin|coordinates|The position of this entity's center in the world. Rotating entities typically rotate around their origin.{{note|Hammer does not move the entities accordingly only in the editor.}}}}
 
{{KV|[[Pitch Yaw Roll]] (X Y Z)|intn=angles|angle|This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.{{note|This works on brush entities, although Hammer doesn't show the new angles.}}}}
 
{{KV|[[Pitch Yaw Roll]] (X Y Z)|intn=angles|angle|This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.{{note|This works on brush entities, although Hammer doesn't show the new angles.}}}}
{{KV|[[ResponseContext|Response Contexts]]|intn=ResponseContext|string|Pre-defined response system contexts; Format is <code>key:value,key:value,...</code>and so on. {{tip|Can also be [[filter_activator_context|filtered for or against!]]}}}}
+
{{KV|[[ResponseContext|Response Contexts]]|intn=ResponseContext|string|Pre-defined response system contexts; Format is <code>[key]:[value],[key]:[value],...</code>and so on. {{tip|Can also be [[filter_activator_context|filtered for or against!]]}}}}
 
{{KV|[[Classname]]|intn=classname|string|Determines the characteristics of the entity ''before'' it spawns. {{tip|Changing classnames using the{{ent|AddOutput}}input can still influence the game's code, like making the classname match one element in the [[S_PreserveEnts]] list will make the entity persists on new rounds!}}|nofgd=1}}
 
{{KV|[[Classname]]|intn=classname|string|Determines the characteristics of the entity ''before'' it spawns. {{tip|Changing classnames using the{{ent|AddOutput}}input can still influence the game's code, like making the classname match one element in the [[S_PreserveEnts]] list will make the entity persists on new rounds!}}|nofgd=1}}
 
{{KV|[[Flag|Flags]]|intn=spawnflags|integer|Toggles exclusive features of an entity, its specific number is determined by the combination of flags added.|nofgd=1}}
 
{{KV|[[Flag|Flags]]|intn=spawnflags|integer|Toggles exclusive features of an entity, its specific number is determined by the combination of flags added.|nofgd=1}}

Revision as of 00:10, 24 July 2021


Template icon Template documentation[view] [edit] [history] [purge]

Info holder of all relevant keyvalues inheriting theCBaseEntity C++ class. Template parameters are vital in displaying the appropiate info, because new games have added new features throughout the years. See Help:Templates for more info on named parameters.

Not allCBaseEntitykeyvalues are not covered here. But you can see them all at the Uncovered Keyvalues page.

Note.png Note: After you edit this template, please make sure you also edit the targetted entity's page. Per-game keyvalues may be duplicated, for technical reasons. See also FGD Template Prototype.

Usage

These must be used in a specific syntax! - ALL parameters must be given a value of 1, like:l4d2=1. Only one game parameter can be used at once.

{{KV BaseEntity|l4d2=1}}

Parameters

If you leave the parameter field empty (using no arguments), the template will automatically fallback to displaying keyvalues from the current default game.

All parameters for this template:

  • base- No game specific information are displayed, and base engine features only. (The Source 2013Source 2013 / <Source><Source><Source> iteration engine)
  • l4d2- Set template KVs specific to Left 4 Dead 2 (VScripts)
  • csgo- [CURRENT DEFAULT] Set template KVs specific to Counter-Strike: Global Offensive (VScripts + Auto-aim targets)
  • brush- Additionaly includes info specific to all sorts of brushes. For extra keys applicable only to visible brushes, use Template:KV visiblebrush in conjunction. Can be used along a game parameter.


Show Deprecated:  

Refer to the Examples section for samples.

Examples

Show info specific to a game Left 4 Dead 2

This makes information relevant only to Left 4 Dead 2 be displayed.

{{KV BaseEntity|l4d2=1}}


will: 

Show info specific to base engine

Information relevant only to base engine are displayed. (Source 2013Source 2013 / <Source><Source><Source>)

{{KV BaseEntity|base=1}}


will: 

Show extra info related to brushes

Extra brush related keyvalues are displayed with this.

{{KV BaseEntity|brush=1}}


will: 

Using template defaults

Without using any arguments, the template fallbacks to a default, which is the latest Source game.

{{KV BaseEntity}}


will: 

See Also