Scoreboard



The scoreboard system is a complex gameplay mechanic utilized through commands. Mainly intended for mapmakers and server operators, scoreboards are used to track, set, and list the scores of entities in a myriad of different ways.

Objectives
Objectives consist of three main arguments, in order: a name, a criterion, and a display name. Objectives track a number of points for entities, and are displayed as integers with a full score range of -2,147,483,648 to 2,147,483,647.

An objective's name is used internally, for referencing in commands, target arguments, and in the file format. It is case-sensitive and must be a single word.

Conversely, the display name of an objective can be multiple words, and is displayed publicly in various situations. It is also case-sensitive, and does not have to be unique.

An objective's criterion determines its behavior, primarily what to track. A list of available criteria is provided below.

An entity's score in any objective may be changed via commands, unless it is read-only. It may be increased or decreased by a specific amount, or set to a specific value. For objectives based upon statistics, the objective can be changed via commands; however, the actual stat does not change - the objective will continue to update for players with changes in stats.

Commands can also be used to check an entity's score for any objective, with the arguments score_name and score_name_min. In these arguments, name is the internal name of the objective to test for. score_name passes entities with at most the specified number of points, while score_name_min passes entities with at least the specified number of points.

For example, inputting into a command block will make a comparator or conditional command block provide output if a player has died at least once, and has died no more than 5 times, assuming "deaths" is an objective of the "deathCount" criterion.

Criteria
Some criteria use the Statistics systems to form compound criteria. Unlike the simple criteria above, compound criteria have multiple parts, separated by periods ("."). For example, "stat.entityKilledBy.Zombie" would be a compound criterion, which would increment for a player whenever a zombie kills them.

A list of known compound criteria follows:

.
 * : The internal name of this objective.
 * : The way the score is displayed. Can be "integer" or "hearts", but defaults to "integer".
 * : A list of compound tags representing scores tracked by the scoreboard system.
 * A tracked player/objective pair with a score.
 * : The score this player has in this objective.
 * : The name of the player who has this score in this objective.
 * : The internal name of the objective which this player has this score in.
 * : 1 or 0 (true/false) - false if this objective is "enabled". Only meaningful for objectives with the criteria "trigger", where this must be false before a player can use the /trigger command on it.
 * : A list of compound tags representing teams.
 * A Team.
 * : 1 or 0 (true/false) - true if players on this team can harm each other.
 * : 1 or 0 (true/false) - true if players on this team can see invisible teammates.
 * : The value of the nametagVisibility option of this team.
 * : The value of the deathMessageVisibility option of this team. Valid options are: never, hideForOtherTeams, hideForOwnTeam, always
 * : The value of the collisionrule option of this team. Valid options are: always, pushOwnTeam, never, pushOtherTeams
 * : The display name of this team in JSON. If none was specified during the team's creation, this will be.
 * : The internal name of this team.
 * : The prefix prepended to names of players on this team. In JSON format.
 * : The suffix appended to names of players on this team. In JSON format
 * : The text-based color ("black", "dark_blue", etc.) given to the team. Does not exist if no color is set.
 * : A list of names of players on this team.
 * The name of a player on this team.
 * : A set of slots which are displaying specific objectives. If a slot is empty, its tag is not present.
 * : The internal name of the objective displayed in the "list" slot.
 * : The internal name of the objective displayed in the "sidebar" slot.
 * : The internal name of the objective displayed in the "belowName" slot.
 * : The internal name of the objective displayed in the "sidebar.team.black" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_blue" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_green" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_aqua" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_red" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_purple" slot.
 * : The internal name of the objective displayed in the "sidebar.team.gold" slot.
 * : The internal name of the objective displayed in the "sidebar.team.gray" slot.
 * : The internal name of the objective displayed in the "sidebar.team.dark_gray" slot.
 * : The internal name of the objective displayed in the "sidebar.team.blue" slot.
 * : The internal name of the objective displayed in the "sidebar.team.green" slot.
 * : The internal name of the objective displayed in the "sidebar.team.aqua" slot.
 * : The internal name of the objective displayed in the "sidebar.team.red" slot.
 * : The internal name of the objective displayed in the "sidebar.team.light_purple" slot.
 * : The internal name of the objective displayed in the "sidebar.team.yellow" slot.
 * : The internal name of the objective displayed in the "sidebar.team.white" slot.