Scoreboards: the criteria that track things automatically, and display slots
Most scoreboard tutorials only use dummy. The built-in criteria track deaths, blocks mined and custom stats with no commands at all — here is the full shape.
dummy is the criterion everyone learns, and it is the one that does nothing on its own. The interesting ones update themselves.
Creating an objective
/scoreboard objectives add Deaths deathCount "Times died"
deathCount is the criterion. The quoted part is the display name and is optional.
Criteria that track themselves
| Criterion | Increments when |
|---|---|
deathCount | the player dies |
playerKillCount | they kill a player |
totalKillCount | they kill anything |
health | continuously — 0 to 20 |
food, air, armor, xp, level | continuously |
dummy | never — only /scoreboard players set |
trigger | never, but players may change it via /trigger |
trigger is the useful one for menus: a normal player cannot run /scoreboard players set, but they can run /trigger, which lets you build clickable menus that work without op.
Statistic criteria are the deep well
/scoreboard objectives add Mined minecraft.mined:minecraft.diamond_ore
/scoreboard objectives add Walked minecraft.custom:minecraft.walk_one_cm
/scoreboard objectives add Jumps minecraft.custom:minecraft.jump
Any statistic the game already tracks can drive an objective, with no ticking function. The families are minecraft.mined, minecraft.crafted, minecraft.used, minecraft.broken, minecraft.picked_up, minecraft.dropped, minecraft.killed, minecraft.killed_by and minecraft.custom.
Note the distance ones are in centimetres — walk_one_cm divided by 100 is blocks.
Display slots
/scoreboard objectives setdisplay sidebar Deaths
/scoreboard objectives setdisplay list Deaths
/scoreboard objectives setdisplay below_name Deaths
sidebar— the right-hand panel, top 15 entrieslist— next to names in the tab listbelow_name— floating under the player's nametag
The sidebar also takes a team colour suffix — sidebar.team.red — showing that objective only to players on that team. That is how one server shows different scores to different teams.
Reading a value into a command
/execute store result score @s Temp run data get entity @s Pos[1]
/execute if score @s Deaths matches 5.. run say five or more
matches takes a range: 5, 5.., ..5, 1..10. This is the standard way to branch on a score, and it is why store result matters — it is the bridge between world data and scoreboard arithmetic.
Cleaning up
Objectives persist in the world file forever. /scoreboard objectives remove <name> when a map is finished, otherwise a heavily-iterated datapack leaves dozens of dead objectives that still tick.
Every gamerule with its default, plus scoreboard statistics and game-event frequencies, are listed in Reference & Calculators — Set 4.