Skip to main content

Control Points

Control points give a certain amount of points to the team currently holding it. Once a team has captured all points, or reached a certain score (using the score module) the match ends. Control points can be mixed with and used in addition to other gamemodes. Other uses of control points include unlocking an area of the map using objective filters, etc.

<control-points capture-rule="lead" show-progress="true">
<control-point name="Center" capture-time="20s">
<capture> <!-- Where players must stand so this control point can be captured -->
<cylinder base="0.5,23,7.5" radius="7" height="5"/>
</capture>
<progress> <!-- The area where colored blocks will fade into the controlling team's color -->
<cylinder base="0.5,22,7.5" radius="7" height="4"/>
</progress>
<captured> <!-- The area where colored blocks will change to match the controlling team's color -->
<cylinder base="0.5,64,7.5" radius="7" height="5"/>
</captured>
</control-point>
</control-points>
ElementDescription
<control-points> </control-points>Node containing a single control point or a group of control points.
Sub-elementsValue/Children
<control-point> </control-point>A single control point.Control Point Sub-elements
Control Point Attributes
AttributeDescriptionValueDefaultKoTH
idUnique identifier used to reference control points from other places in the XML.String
nameThe display name of the control point, displayed on the scoreboard.String
requiredSpecify if this objective is required to win the match. Teams completing all of their required objectives will win regardless of score or Blitz configuration.true/false
capture-timeThe time to capture the control point.Time Period30s
pointsPoints to give per second to the owning team.Number1
points-growthNumber of seconds for the point rate to double. If given, the rate at which the control point gives points will exponential increase with time.Number0
owner-pointsGives a set number of points to a team when captured. When the control point is captured by another team, the points are revoked.Number0
capture-ruleRule used to decide who is in control of the point at any given moment.Capture Ruleexclusive
time-multiplierAdjust capture time relative to the amount of team players on the control point.Decimal00.1
show-progressShow capture percentage in the sidebar.true/falsefalsetrue
neutral-stateControl point must be un-captured before it can be captured again.true/falsefalsetrue
recovery-rateThe rate for a control point to recover to its current state. Applies when the owning team is dominating (only having players of the capturing team on the point).Numberdepends0
decay-rateThe rate for a control point to decay to its current state. Applies when nobody is dominating the point (contested by multiple teams or no teams on the point). Can be determined by capture-rule.Numberdepends0
contested-rateThe rate for a control point to decay to its current state. Applies when the point is contested.Numberdecay-rate
owned-decay-rateThe rate for a control point to decay from captured to neutral. Applies when nobody is dominating the point.
Takes precedence over decay-rate.
Numberdepends0
incrementalDeprecatedCapture progress is retained even if capturing is interrupted.
If true, sets recovery-rate to 1, decay-rate to 0, and owned-decay-rate to 0.
If false, recovery-rate and decay-rate are both infinite, and owned-decay-rate is 0.
This has been replaced with the recovery & decay attributes which allow more control over progress.
true/falsefalsetrue
permanentControl point can only be captured once during the match.true/falsefalsetrue
initial-ownerThe team owning the control point when the match starts.Team ID
show-messagesBroadcast messages related to the control point in chat.true/falsetrue
show-effectsPlay sounds, fireworks and other effects related to the control point.true/falsetrue
show-infoDisplay the control point under commands such as /match.true/falsetrue
show-sidebarDisplays the control point on scoreboard.true/falsetrue
statsDetermines if this control point counts as a win condition.true/falsetrue
showSpecify if the control point should be hidden from all visible locations to the player. These locations include chat, the boss bar, and the scoreboard.
Note: This attribute sets all five values above to true/false.
true/falsetrue
scoreboard-filterDetermines when the objective should be displayed on the scoreboard.Dynamic Filter
visual-materialsFilter the materials modified when updating the progress regions.
Defaults to wool, carpet, stained clay, stained glass & stained glass panes.
Block Filter
capturePropertyRequiredThe region where players must stand to capture this control point.Region
progressPropertyThe region where colored blocks within this area point will progressively fade into the controlling team's color.
Note: This can be controlled with visual-materials.
Bounded Region
capturedPropertyThe region where colored blocks within this area will display only the controlling team's color without fading.
Note: This can be controlled with visual-materials.
Bounded Region
capture-filterPropertyFilter teams that can capture this control point, defaults to all teams. Teams that don't match this filter can still prevent other teams from capturing by standing on the control point. They can also uncapture the control point if neutral-state is enabled.Filter
player-filterPropertyFilter players who can control this control point. Players who don't match this filter cannot affect the control point in any way.Filter

Capture Rule

The capture rule defines the logic used to decide which team is in control of the point. Values for capture-rule can be one of the following:

  • exclusive — The team must be the only team with players on the control point. (default)
  • majority — The team must have more players on the control point than all other teams combined.
  • lead — The team must have more players on the control point than any other single team.

Players who match either capture-filter or player-filter are counted when calculating the capture-rule. Players who do not match either filter cannot affect the control point at all.

Control Point Regions

Capture progress is displayed inside the defined <progress> region using the dominating team's color. After a control point is captured, the <captured> region is also filled with that color. The progress and captured regions must be bounded regions, e.g. cylinders & cuboids will work, circles and squares will not. Only the default visual materials or materials defined in visual-materials will be modified in the progress regions when they are updated.

King of the Hill (deprecated)

warning

The <king>, <hill> and <hills> tags have been deprecated. Use the <control-point> and <control-points> tags, which work the same but with differrent default values.

King of the Hill is a gamemode in which you capture and hold a hill to collect points. The first team to reach a preset amount of points wins.

KotH maps use control points to define hills. Instead of being called <control-points>, they are called <hills> and must be defined inside a main <king> element. The main difference between hills and control points is what their default values are. Default values for time-multiplier, show-progress, neutral-state, incremental and permanent differ between <control-point> and <hill>.

<king>
<hills>
<hill name="Hill" capture-time="10s" points="1">
<capture>
<region id="hill"/>
</capture>
<progress>
<cuboid min="-5,71,-5" max="5,71,5"/>
</progress>
</hill>
</hills>
</king>

Scoring

KotH games use the <score> module to end the game when one team reaches a preset amount of points. The <king/> tag prevents teams from getting points when killing players, this means they have to actually capture the hill to get points.

King of the Hill maps may not have a time limit.

<score>
<limit>500</limit>
<king/>
</score>