MC CommanderMinecraft非公式コマンド支援

scoreboardコマンドでポイント・お金・ランキングを作る基本

scoreboardコマンドでポイントやお金、ランキングを作る基本をまとめます。dummyの目標の作り方、数値の加算と減算、サイドバーや名前の下への表示、よくある失敗を例つきで説明します。

scoreboardスコアボード お金ポイントシステム

scoreboard生成ツールを開く

トップページ用のコマンド検証ワールド

更新日:

/scoreboard は、プレイヤーやエンティティに数値を持たせるためのコマンドです。ミニゲームの得点、サーバー内通貨、キル数、タイマー、クエスト進行などに使えます。

ポイント管理の最小例

Java版で試す場合は、/scoreboard objectives add points dummy で目標を作り、/scoreboard players set @p points 10 で10点を設定します。/scoreboard objectives setdisplay sidebar points で表示できます。points という名前は各コマンドで同じにしてください。

加算には /scoreboard players add @p points 1 を使います。お金として使う場合は、残高が十分か確認してから減算し、その後アイテムを渡す順序が重要です。ボタンを連打したときに重複購入できないか、0点のときにマイナスにならないかも検証してください。

目標を作る

まず、数値を保存する入れ物を作ります。手動管理する場合は dummy がよく使われます。

/scoreboard objectives add money dummy "Money"

money が内部名、Money が表示名です。内部名はコマンドで使うので、短く分かりやすい英数字にすると管理しやすくなります。

数値を設定・加算する

/scoreboard players set @p money 100
/scoreboard players add @p money 50
/scoreboard players remove @p money 20

上から順に、100に設定、50追加、20減少です。ショップ、報酬、ミニゲームの得点処理ではこの3つをよく使います。

画面に表示する

/scoreboard objectives setdisplay sidebar money

サイドバーに表示すると、プレイヤーが自分の点数や所持金を見やすくなります。表示を消したい場合は、別の表示先を使うか、表示設定を変更します。

お金システムの考え方

コマンドだけで経済システムを作る場合、実際のお金アイテムではなく、scoreboardの数値を所持金として扱うのが基本です。アイテム売買、ガチャ、ショップ、デイリーボーナスなどは、scoreboardの加算・減算で管理できます。

注意点

例えば money、point、timer、rank のように分けておくと、後で修正しやすくなります。

お店の例:100コインでパンを買う

/execute as @p if entity @s[scores={money=100..}] run give @s minecraft:bread 5
/execute as @p if entity @s[scores={money=100..}] run scoreboard players remove @s money 100

scores={money=100..} は「money が100以上の人」という条件です。as @p でボタンに一番近い人を先に決めてから調べるので、お金を持っている別の人が代わりに払うことはありません。足りない人にはどちらのコマンドも実行されないので、所持金がマイナスになりません。コマンドブロックでは、1行目をインパルス、2行目をその後ろのチェーンにして、ボタン1回で両方が順番に動くようにします。

OP権限のない人に操作させる(trigger)

/scoreboard objectives add shop trigger
/scoreboard players enable @a shop

ふつうのプレイヤーは /scoreboard を使えませんが、trigger 型の目標なら /trigger shop で自分の値を変えられます。値が変わった人をリピートのコマンドブロックで見つけて処理し、使ったあとは0に戻して、もう一度 enable します。

表示場所の種類

表示先見え方
sidebar画面の右側に一覧で出る
listTabキーで開くプレイヤー一覧に出る
below_nameプレイヤーの名前の下に出る(1.20.1以前などは belowName)

表示を消すときは、/scoreboard objectives setdisplay sidebar のように目標名を書かずに実行します。

よくある質問

スコアを0に戻すには?

/scoreboard players set @a money 0 で全員を0にします。記録ごと消すときは /scoreboard players reset @a money を使います。

統合版でも同じように作れますか?

目標の作成、加算、減算、表示は同じ書き方です。統合版には trigger 型がないため、ボタンとコマンドブロックで操作させます。

関連ツール

参考にした公式情報

あわせて読みたい記事とコマンド例

ガチャをコマンドで作る方法エメラルドを払ってランダムな景品が出ます。プレイ時間を表示するコマンド時間と分に直して表示します。掘ったブロックの数を表示するコマンド整地ランキングの作り方です。体力を表示するコマンド

名前の下・Tab一覧・サイドバーに体力やハートを出す。

ランダムな数を出すコマンド /random

サイコロや抽選、確率の決め方です。

lootコマンドの使い方

宝箱の中身やMobのドロップを出す方法です。

コマンドブロックで失敗しにくい作り方:入力・条件・連鎖の基本

コマンドブロックでコマンドを動かすときの基本、反復、チェーン、条件付き、レッドストーン入力…

マイクラのコマンドの基本構文

マイクラのコマンドの基本的な形、<>と[]の読み方、スラッシュや空白のルール、チート許可・O…

ポイント用スコアボードを作る

マイクラでポイント用スコアボードを作るときのコマンド例。ポイントを作成・加算・表示するセット…

スコアをリセットする

マイクラでスコアをリセットするときのコマンド例。ミニゲームやカウント用ポイントを初期化する例…

tellrawコマンドの基本

マイクラのtellrawコマンドで、色付きのメッセージ、プレイヤー名やスコアの表示、クリ…

ミニゲーム用のスコアボード例

マイクラのscoreboardでミニゲームを作る例として、キル数の集計、タイマー、ポイン…

bossbarコマンドの使い方:画面上のゲージを自分で作る

マイクラJava版の/bossbarで、画面上部にオリジナルのゲージを出す方法を解説。追…

村人ショップを作るコマンド例

マイクラJava版のsummonで、好きなアイテムを売り買いする村人ショップを作る方法、…