【マイクラ】/scoreboardコマンド徹底解説!ミニゲーム・自動装置の「心臓部」を使いこなそう

Minecraft(Java版)

Minecraftでコマンドブロックを触り始め、
「もっと複雑なミニゲームを作りたい」「特定の条件で動く自動装置を作りたい」
と思ったことはありませんか?

それを実現するための鍵となるのが、今回徹底解説する/scoreboardコマンドです。

/scoreboardは、一見すると地味ですが、実はMinecraftの世界に「変数」の概念をもたらす、非常に強力で奥深いコマンドです。
プレイヤーのキル数、死亡回数、特定の行動回数、あるいは架空のタイマーまで、あらゆる「数値」を記録し、操作できます。

この記事では、/scoreboardの基本的な使い方から、ミニゲームや自動装置に応用するための実践的なテクニックまで、わかりやすく解説します。

/scoreboardとは? なぜ「心臓部」なのか?

/scoreboardコマンドの主な役割は、「スコアボード(Objectives)」と呼ばれる目に見えない得点板を作成し、そこにプレイヤーやエンティティ(さらには架空の存在)の「スコア(Score)」を記録・管理することです。

これがなぜ「心臓部」と呼ばれるのか。それは、/executeコマンドと組み合わせることで、「もしスコアが〇〇以上なら、このコマンドを実行する」という、プログラミングにおける「if文(条件分岐)」のような動作を実現できるからです。

  • プレイヤーのキル数が10になったらゲーム終了
  • 特定のアイテムを使った回数が5回になったらエフェクトを付与
  • タイマー用のスコアが200(10秒)になったらレッドストーン信号を送る

このような複雑な処理は、すべて/scoreboardによる数値管理が土台となっています。

まずは基本から!主要サブコマンド

/scoreboardコマンドは、主に「何を数えるか(Objectives)」「誰の点数を操作するか(Players)」の2つのサブコマンド群で構成されています。

1.objectives (スコアボード本体の管理)

まずは、スコアを記録するための「計量基準(スコアボード)」自体を作成・管理します。

objectives add <名前> <基準>

新しいスコアボードを作成します。

  • <名前>: スコアボードの内部的な名前(例: Kills, Timer
  • <基準>: スコアを何でカウントするかを指定します
よく使う主要な基準
  • dummy
    最も汎用的。コマンドでしか操作できない、純粋な「変数」として使えます。タイマーやフラグ管理に最適です。
  • trigger
    プレイヤーが/triggerコマンドで自分で操作できる基準。ショップ機能などに使われます。
  • playerKillCount
    プレイヤーをキルした回数。
  • deathCount
    死亡回数。
  • minecraft.used:アイテム名
    そのアイテム使った回数。
  • minecraft.crafted:アイテム名
    そのアイテムをクラフトした回数。

例:プレイヤーのキル数を数えるスコアボード Kills を作成
/scoreboard objectives add Kills playerKillCount

例:鉄のツルハシを使った回数
/minecraft.used:minecraft.iron_pickaxe

例:作業台をクラフトした回数
/minecraft.crafted:minecraft.crafting_table

スコアボードを表示する

スコアボードを画面に表示します。

objectives setdisplay <場所> [スコアボード名]

  • <場所>: スコアボードのを表示する場所
  • [スコアボード名]: 非表示にする場合は、[スコアボード名]を省略します。
<場所>
  • sidebar: 画面の右側
  • list: Tabキーで表示されるプレイヤーリスト
  • belowName: プレイヤーの頭上

例:Kills スコアボードを画面右側に表示
/scoreboard objectives setdisplay sidebar Kills

2.players (スコアの操作)

作成したスコアボードに対して、プレイヤー(やエンティティ)のスコアを操作します。

対象のスコアを指定した値に設定する

players set <対象> <スコアボード名> <値>

例:Player1 さんの Kills スコアを 10 に設定
/scoreboard players set Player1 Kills 10

対象のスコアに値を加算する

players add <対象> <スコアボード名> <値>

例:Player1 さんの Kills スコアに 1 を加算
/scoreboard players add Player1 Kills 1

対象のスコアから値を減算する

players remove <対象> <スコアボード名> <値>

例:Player1 さんの Kills スコアに 1 を減算
/scoreboard players remove Player1 Kills 1

対象のスコアをリセット(スコアボードからその対象の記録を削除)する

players reset <対象> [スコアボード名]

演算

スコア同士で四則演算などを行えます。

players operation <対象1> <スコアボード1> <演算> <対象2> <スコアボード2>

<演算>
  • =
    対象1 のスコアを 対象2 のスコアで上書き
  • +=
    対象1対象2 を加算
  • -=
    対象1 から 対象2 を減算
  • *=
    対象1対象2 を乗算
  • /=
    対象1対象2 で除算(小数点以下切り捨て)
  • %=
    対象1対象2 で割った余りを 対象1 に設定

例:Player1TotalScorePlayer1Kills スコアを加算する
/scoreboard players operation Player1 TotalScore += Player1 Kills

実践!/scoreboard活用例

基本を学んだところで、具体的な活用例を見ていきましょう。

例1: ミニゲームのキルカウント(自動カウント)

最もシンプルかつ強力な例です。

  1. スコアボード作成 (初回のみ)
    /scoreboard objectives add Kills playerKillCount “キル数”
  2. 画面に表示 (初回のみ)
    /scoreboard objectives setdisplay sidebar Kills

これだけで、プレイヤーが他のプレイヤーを倒すたびに、自動的にキル数がカウントされ、画面右側に表示されます。

応用として10キルしたプレイヤーを勝利させる リピートコマンドブロック(常時実行)に以下のコマンドを入れます。

/execute as @a[scores={Kills=10..}] run title @s title “あなたの勝利!”
/execute as @a[scores={Kills=10..}] run gamemode spectator @s

scores={Kills=10..} というターゲットセレクタが、「Killsスコアが10以上のプレイヤー」を指定しています。

例2: 自動装置のタイマー(dummy活用)

dummy基準を使い、コマンドでタイマーを作ります。

  1. スコアボード作成 (初回のみ)
    /scoreboard objectives add Timer dummy “タイマー”
  2. タイマー用の架空のプレイヤー(スコア保持者)を設定 (初回のみ)
    ※スコアは「誰か」に紐づく必要があるため、存在しないプレイヤー名(ここでは Global)を使います
    /scoreboard players set Global Timer 0
  3. タイマーを進める (リピート・常時実行)
    リピートコマンドブロックに以下を設置します。Minecraftは1秒間に20回処理(20 Tick)が実行されるため、これで1Tickごとにスコアが1増えます。
    /scoreboard players add Global Timer 1
  4. 指定時間で処理実行 (リピート or チェーン・常時実行)
    10秒(20 Tick * 10 = 200)経過したら、何かを実行し、タイマーをリセットします。
    /execute if score Global Timer matches 200.. run say 10秒経過しました!
    /execute if score Global Timer matches 200.. run scoreboard players set Global Timer 0

if score Global Timer matches 200.. が、「GlobalのTimerスコアが200以上なら」という条件分岐の役割を果たしています。

例3: プレイヤーが操作できるショップ(trigger活用)

trigger基準を使い、プレイヤーがチャット欄からスコアを操作できるようにします。

  1. スコアボード作成 (初回のみ)
    /scoreboard objectives add BuyItem trigger “アイテム購入”
  2. プレイヤーにtriggerの使用を許可 (リピート・常時実行)
    triggerはセキュリティのため、デフォルトでは使用不可になっています。常に使用許可を与え続けます。
    /scoreboard players enable @a BuyItem
  3. スコアに応じてアイテムを渡し、スコアをリセット (リピート・常時実行)
    /execute as @a[scores={BuyItem=1}] run give @s diamond 1
    /scoreboard players set @a[scores={BuyItem=1}] BuyItem 0

これで、プレイヤーがチャット欄で以下のコマンドを実行すると、BuyItemスコアが 1 になり、即座にコマンドブロックが反応してダイヤが1個もらえ、スコアが 0 にリセットされます。

/trigger BuyItem set 1

まとめ

/scoreboardコマンドは、Minecraftのコマンドワールドの可能性を無限に広げる「心臓部」です。

  • objectives で「何を数えるか」を定義し、
  • players で「誰のスコアをどう操作するか」を決め、
  • /executescores={...}if score と組み合わせて「条件分岐」を作る。

この流れを掴めば、あなたも複雑なミニゲームや高度な自動装置を作れるようになります。まずは簡単なキルカウントやタイマーから、ぜひ挑戦してみてください。

コメント