From Valve Developer Community
Revision as of 23:45, 4 June 2012 by WhosAsking (talk | contribs) (Inputs)
Jump to: navigation, search

Team Fortress 2 team_control_point_master is a point entity available in Team Fortress 2 .

Entity description

This entity is used to tailor the control point map style and act as a central hub to which all control points answer. For instance: If one was making a map in which the first and second red, and first and second blue control points were locked, but capturing the middle was open, then the cap layout function would be used and a hierarchy tree would be made <2, 0 1 3 4>. Use it to switch teams, or control point styles. Exploring this entity is essential, and even the simplest cp_ map should have one.



Name (targetname) <string>
The targetname that other entities refer to this entity by.
Entity Scripts (vscripts) <scriptlist> (in all games since Left 4 Dead 2)
Space delimited list of VScript files (without file extension) that are executed after all entities have spawned. The scripts are all executed in the same script scope, later ones overwriting any identical variables and functions.
Script think function (thinkfunction) <string> (in all games since Left 4 Dead 2)
Name of a function in this entity's script which will be called automatically every 100 milliseconds (ten times a second) for the duration of the script. It can be used to create timers or to simulate autonomous behavior. The return value (if present) will set the time until the next call.
Note.png Note: Try to avoid expensive operations in this function, as it may cause performance problems.


Start Disabled (StartDisabled) <boolean>
Stay dormant until activated (with theEnableinput).

Material for the RED Base icon <material>
Material for the BLUE Base icon <material>
Cap Layout <string>
A string that tells the HUD how to lay out the cap points. It should be a string with indexes of cap points seperated by commas to denote a new line. So <2,0 1> would create a pyramid, with cap point 2 on the top and cap points 0 & 1 on the bottom.
Restrict team from winning <choices>
Prevent this team from winning by capping all the points. This field is ignored if you're using control_point_rounds in your map (set this field inside the rounds).
  • 0 : Neither
  • 1 : Both
  • 2 : Red
  • 3 : Blue
Switch teams on map win? <boolean>
Switch the teams when one team has won the map and the game is going to be reset.
Scoring style <choices>
Sets the style of scoring used for capture point maps.
  • 0 : Add team score for each round won
  • 1 : Add team score for each captured point
Play all rounds before changelevel <choices>
Determines whether the server may changelevel when mp_timelimit is up before all mini-rounds have been completed (for maps like Dustbowl).
  • 0 : Changelevel normally
  • 1 : Only changelevel after all mini-rounds have been played to completion
Partial cap rate <float>
Rate at which to give partial cap points for area captures.



Removes this entity from the world.
Removes this entity and its children from the world.
Note.png Note: Entities already remove orphaned children upon being removed, but this input removes all children on the same frame, being marginally faster than Kill.
AddOutput <string>
Adds a keyvalue/output to this entity. It can be potentially very dangerous, use with care.
KV Format: <key> <value>
I/O Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>
FireUser1 to FireUser4
Fire the OnUser outputs; see User Inputs and Outputs.
Use  !FGD
Same as a player invoking +use; may not do anything depending on the entity. Can also be invoked by firing an output that does not specify an input.
RunScriptFile <script> (in all games since Left 4 Dead 2)
Execute a VScript file from disk, without file extension. The script contents are merged with the script scope of the receiving entity.
RunScriptCode <string> (in all games since Left 4 Dead 2)
Execute a string of VScript source code in the scope of the entity receiving the input. String quotation may be needed when fired via console.
Bug.png Bug: In Left 4 Dead 2, the code is executed in the script scope of the entity that fires the output, not the one receiving the input.
Warning.png Warning: Never try to pass string parameters to a script function with this input. It will corrupt the VMF structure because of the nested quotation marks, which then must be removed manually with a text editor.
CallScriptFunction <string> (in all games since Left 4 Dead 2) !FGD
Execute a VScript function in the scope of the receiving entity.
SetLocalOrigin <coordinates> (in all games since Alien Swarm) !FGD
Send this entity to a spot in the map. If the entity is parented to something, it will be offset from the parent by this amount.
SetLocalAngles <angles> (in all games since Alien Swarm) !FGD
Set this entity's angles.


Enable/disable this entity from performing its task. It might also disappear from view.
SetWinner <integer>
Set the winner of the round to this team (0 for a stalemate).
Bug.png Bug: Firing this Input when a point capture is in progress will not cancel the capture, resulting in an Overtime condition.
SetWinnerAndForceCaps <integer>
Set the winner of the round to this team and give them ownership of all points.
Bug.png Bug: Firing this Input when a point capture is in progress will not cancel the capture, resulting in an Overtime condition.
SetCapLayout <string>
Set the cap layout string.



OnUser1 to OnUser4
These outputs each fire in response to the firing of the like-numbered FireUser1 to FireUser4 Input; see User Inputs and Outputs.
OnKilled  (only in Left 4 Dead Left 4 Dead 2)
This output fires when the entity is killed and removed from the game.
Sent when RED wins the game.
Sent when BLUE wins the game.

See also