マイクラのコマンドって、使いこなすのがなかなか難しいです。複雑なコマンドもあるし、慣れない英語での入力も大変。そこでこの記事では、コマンドの種類や入力方法を、初心者にもわかりやすくまとめました。入力例もあるので、誰でもすぐにコマンドを試すことができます。目次がアルファベット順のコマンドと効果一覧になっているので、ぜひ活用してください。

マイクラのコマンド一覧

マイクラのバージョン1.17の時点でのコマンドの、入力方法(構文)と入力例をくわしく紹介しています。統合版のコマンドも網羅しているので(サーバー系をのぞく)、スイッチにも完全対応。Java版と統合版(BE)で入力方法が違うものは、どちらも構文と入力例を解説しています。どのプラットフォームで遊んでいても、活用できるはずです。

コマンドは、クリエイティブモードやチートがONになっているサバイバルで使えます。コマンドを使うことでサバイバル本来の楽しさは薄れてしまいますが、一方で調査や検証がやりやすくなるというメリットがあります。いろいろ調べたり実験したりするのも、マイクラの面白さの一つ。サバイバルを一通り遊んだら、ぜひ以下で紹介するコマンドを使って遊んでみてください。

/advancement 進捗を解除・リセットする

/advancementは、進捗の解除・リセットができるコマンドです。このコマンドを実行すると、全進捗を一括で解除・リセットしたり、特定の進捗だけを解除したりできます。Java版のみ使用可能です。

構文:全進捗の一括解除・リセット
/advancement (grant|revoke) <targets> everything
構文:個別の進捗の解除・リセット
/advancement (grant|revoke) <targets> only <advancement> [<criterion>]
構文:範囲を指定しての解除・リセット
/advancement (grant|revoke) <targets> (from|through|until) <advancement>

進捗を解除したいときは「grant」と、リセットしたいときは「revoke」と入力します。「target」のところは、進捗を操作したいプレイヤーの指定です。自分の進捗を操作したいなら、「@s」か「@p」でOK。

「everything」で全進捗、「only」で個別の進捗が操作できます。「from」と「until」を使えば、特定の進捗より前の進捗をすべて解除したり、特定の進捗からうしろをすべてリセットしたりすることも可能です。

入力例:「エンドの開放」の解除
/advancement grant @s from minecraft:end/kill_dragon

上記のコマンドを実行すると、コマンド実行者の「kill_dragon」からあとの進捗が解除(達成)されます。

進捗達成の瞬間

進捗名の入力が少し大変ですが、コマンドを途中まで入力したときに表示される候補から選ぶと楽です。

/alwaysday 昼夜サイクルを停止し常に昼間に

/alwaysdayは、ワールドの昼夜サイクルを停止することができるコマンドです。実行すると時間が5000(正午くらい)になり、その後はずっと昼間が続きます。統合版のみ使用可能です。

構文:昼夜サイクルの停止
/alwaysday
構文:昼夜サイクルの停止・再開
/alwaysday [true|false]

「true」で昼夜サイクルの停止、「false」で昼夜サイクルを再開できます。昼夜サイクルを停止するときは、「true」を省略可能。/daylockコマンドでも同じことができます。

入力例:常に昼間にする
/alwaysday true

上記のコマンドを実行すると、昼間になって昼夜サイクルが止まります。再開したいときは、「true」を「false」にかえてコマンドを実行すればOKです。

alwaysday

コマンドを実行しても何も表示されませんが、太陽の動きが止まります。timeコマンドを使うと、時間が5000にセットされていることも確認できます。

/attribute Mobの属性(性能)の取得・変更

/attributeは、Mobの能力値(体力や防御力、移動速度など)を取得したり、好きな値に設定したりできるコマンドです。デフォルトの設定値を変更できるので、めちゃくちゃ攻撃力の高い小型スライムや、プレイヤーよりはるかに動きの速いカメなども作ることができます。Java版のみ使用可能です。

構文:基礎値の取得
/attribute <target> <attribute> [base] get [<scale>]
構文:基礎値の変更
/attribute <target> <attribute> base set <value>
構文:追加
/attribute <target> <attribute> modifier add <uuid> <name> <value> (add|multiply|multiply_base)
構文:削除
/attribute <target> <attribute> modifier remove <uuid>
構文:セット
/attribute <target> <attribute> modifier value get <uuid> [<scale>]

「target」で対象を指定します。Mobが近くにいるときは、そのMobのID(ランダムな文字列)もターゲット候補として表示されるので、ブタやウシをとらえてターゲットにしてみるといいです。

「attribute」では、次のような値を指定できます。

attribute 属性
minecraft:generic.armor 防具の防御力
minecraft:generic.armor_toughness 防具の防具強度
minecraft:generic.attack_damage 攻撃力
minecraft:generic.attack_knockback 物理攻撃のノックバック
minecraft:generic.attack_speed 1秒で最大何回攻撃できるかの値
minecraft:generic.flying_speed 飛行速度
minecraft:generic.follow_range 敵対化しているMobが対象を見失わない範囲(距離)
minecraft:generic.knockback_resistance ダメージを受けたときにノックバックを無効化する確率
minecraft:generic.luck
minecraft:generic.max_health 最大体力
minecraft:generic.movement_speed 移動速度
minecraft:horse.jump_strength ウマのジャンプ力
minecraft:zombie.spawn_reinforcements ゾンビが攻撃されたときに別のゾンビをスポーンさせる確率

「base get」で指定した属性の値を取得(表示)し、「base set」で値を設定します。また「modifier」を使えば、独自の属性を付与することもできてしまいます。

入力例:実行者の移動速度UP
/attribute @s minecraft:generic.movement_speed base set 10

上記のコマンドを実行すると、コマンド実行者の移動速度が10に設定されます。

attributeコマンド実行時の表示

プレイヤーのデフォルトの移動速度は0.15。移動速度10は、せまい川なら歩いて通りすぎることができるレベルの速さです。

/bossbar ボスバー(ボスの体力バー)の表示

/bossbarは、エンダードラゴンやウィザーと戦うときに画面上部に表示される「ボスの体力バー」を自作できるコマンドです。最大値の変更、文字やバーの装飾などが可能で、executeコマンドと合わせて使えばMobの体力を表示したりタイマーとして使ったりもできます。統合版では使えないコマンドで、Java版のみ使用可能です。

構文:ボスバーの追加
/bossbar add <id> <name>
構文:値や登録プレイヤーなどの取得
/bossbar get <id> (max|players|value|visible)
構文:ボスバーのリスト
/bossbar list
構文:指定のボスバーを削除
/bossbar remove <id>
構文:値・装飾の設定やプレイヤーの登録
/bossbar set <id> (color|max|name|players|style|value|visible)

「add」でカスタムボスバーを追加できます。「id」には任意のIDを入力、「name」でボスバーの上に表示する文字列を指定します(ダブルクォーテーションではさむ)。ボスバーを追加したあとに「set players ~」でプレイヤーを登録すると、登録されたプレイヤーにカスタムボスバーが表示されます。

「get」はボスバーの設定の取得、「list」は作ったボスバーのリスト表示、「remove」は作ったボスバーの削除です。setで「color」や「style」を指定すれば、バーの色を変えたりゲージに切れ目をつけたりもできます。

入力例:カスタムボスバーの追加
/bossbar add testbar "テストです"
入力例:カスタムボスバーの表示
/bossbar set testbar players @a

上記のコマンドを順に実行すると、カスタムボスバー「テストです」が画面上部に表示されます。

bossbarテストです

表示されたボスバーに値をセットしたり、エンティティの体力を表示させたりして使います。

/camerashake 視線を揺らす

/camerashakeは、視線(画面)を揺らすことができるコマンドです。揺れの大きさや種類、揺れている時間を指定することができます。統合版のみ使用可能です。

構文:視線を揺らす
/camerashake add <target> [intensity] [seconds] [positional|rotational]
構文:視線の揺れを止める
/camerashake stop <target>

「add」で視線を揺らし、「stop」で止めることができます。「intensity」で揺れの強さを数値で指定し、「seconds」で揺れている時間(秒)を指定します。「positional」にすると視線が固定されたまま画面が揺れ、「rotational」にすると視線が回転しながら激しく揺れます。Intensity以降は省略可能です。

入力例:強度0.75で10秒揺らす
/camerashake add @s 0.75 10

上記のコマンドを実行すると、10秒間画面が揺れ続けます。

camerashake実行時の画面

「カメラを揺らすリクエストを送信しました」と表示されます。

/clear アイテムを削除する

/clearは、プレイヤーの持っているアイテムを削除するコマンドです。対象プレイヤー、対象アイテム、削除数の上限を指定して削除することができます。一度削除したアイテムはもとに戻すことができないので注意が必要。Java版・統合版どちらでも使用可能です。

構文:アイテムを削除する
/clear [<targets>] [<item>] [<maxCount>]

「target」で対象プレイヤーを指定し、「item」で削除するアイテムを、「maxCount」で削除する個数を指定します。「/clear」のみの入力で、すべてのプレイヤーから全アイテムを削除します。

入力例:石を10個だけ削除する
/clear @s minecraft:stone 10

上記のコマンドを実行すると、コマンド実行者の持ち物から石が10個だけ削除されます。

clearコマンド実行時のチャット欄の表示

「/clear @s minecraft:stone_sword{display:{Name:'{"text":"伝説の剣"}'}} 1」などと入力すれば、特定の名前のついたアイテムだけを削除することもできます。

/clearspawnpoint スポーン地点の削除

/clearspawnpointは、プレイヤーに設定されているリスポーン地点を削除できるコマンドです。コマンド使用後にゲームオーバーになると、ベッドではなく初期スポーン地点にリスポーンします。統合版のみ使用可能です。

構文:スポーン地点の削除
/clearspawnpoint [<target>]

「target」でプレイヤー名や@s、@pなどを指定できますが、省略もできます。省略した場合は@sで実行されます。

入力例:実行者のスポーン地点削除
/clearspawnpoint @s

上記のコマンドを実行すると、コマンド実行者のスポーンポイントが削除されます。

clearspawnpointの実行結果

「(プレイヤー名)のスポーン地点を削除しました」と表示されます。

/clone 指定範囲のブロックを複製する

/cloneは、指定した範囲にあるブロックを好きな場所にコピーすることができるコマンドです。向きを変えたり回転させたりはできませんが、検証用に同じ装置をいくつも作りたいときになんかにとても便利。Java版・統合版どちらでも使用可能です。

構文:空気ブロック以外すべてを複製
/clone <begin: x y z> <end: x y z> <destination: x y z> [replace|masked] [force|move|normal]
構文:指定したブロックのみ複製
/clone <begin: x y z> <end: x y z> <destination: x y z> filtered <filter> [force|move|normal]

「begin」にはコピー元の始点、「end」にはコピー元の終点、「destination」にはコピー先の始点を座標で指定します。座標は数値での指定のほか、チルダを使った相対座標でも指定可能ですが、コマンド実行地点から離れすぎている場所を指定すると「世界の外にあるブロックにはアクセスできません」と表示されて複製できないので注意が必要。

「replace」にすると、空気ブロックも含めたすべてブロックが複製されます(コピー先にブロックがあったとしても、コピー元が空気ブロックであれば置き換えられる)。「masked」を指定すると、空気ブロック以外のブロックだけをコピーできます。

「force」「move」「normal」は処理方法の指定です。「force」はコピー元とコピー先が重なっていてもそのままコピーされ、「move」にするとコピー元のブロックが空気ブロックに置き換えられて、コピー元にあったブロックがコピー先に移動する感じになります。

「filtered」で指定ブロックだけを複製することもできます。「minecraft:stone」を入力すれば、範囲内の石だけが複製されます。

入力例:金ブロックだけを複製(Java版)
/clone 10 64 20 15 66 31 ~1 ~ ~ filtered minecraft:gold_block
入力例:金ブロックだけを複製(統合版)
/clone 10 64 20 15 66 31 ~1 ~ ~ filtered force gold_block 0

上記のコマンドを実行すると、座標(10,64,20)から(15,66,31)にあるブロックのうち、金ブロックだけを現在地からx軸方向に1ブロック進んだ場所を始点としてコピーします。統合版では入力の順番や項目が少し違っているので、注意が必要です。

複製されたウィッチの小屋

/cloneコマンドを使えば、ウィッチの小屋も簡単に複製できます。ただし複製されるのはブロックだけなので、ウィッチは1体のままです。

/connect WebSocketサーバーに接続する

/connectは、サーバーに接続するために使うコマンドです。主にEducation Editionで使われます。統合版のみ使用可能です。

構文:サーバーに接続
/connect <サーバーURI>
構文:サーバーから切断
/connect out

connect outで切断できます。/wsserverコマンドを使っても同じことができます。

/data NBTタグの取得・変更・削除

/dataは、エンティティやブロックのNBTタグを取得、変更、削除するコマンドです。スポーンしたMobや設置されたブロックの属性を変更するときなどに使えます。Java版のみ使用可能です。

構文:NBTデータの表示
/data get <block|entity|storage> <target> [<path>] [<scale>]
構文:NBTデータの統合
/data merge <block|entity|storage> <target> <nbt>
構文:NBTデータの変更
/data modify <block|entity|storage> <target> <targetPath>…
構文:NBTデータの削除
/data remove <block|entity|storage> <target> <path>

「get」で対象のNBTデータを表示、「merge」でNBTデータを結合、「modify」で変更、「remove」で削除することができます。少し複雑な入力が必要なものの、このコマンドを使うとチェストの中身を自由に変更したり、Mobの装備品を変更したりできます。

入力例:チェストのNBTデータの表示
/data get block 84 70 386

上記のコマンドを入力すると、X=84,Y=70,Z=386におかれたチェストのNBTデータが表示されます。チェストの中身や、座標などのデータがあることがわかります。

コマンドによって表示されたチェストの中身

getで情報を入手するだけでなく、mergeやmodifyを使えばスロットのアイテムを自由に操作することができます。

/datapack データパックを読み込む

/datapackは、データパックを読み込んだり無効にしたりするコマンドです。データパックとはバニラのまま導入できる改造データで、このコマンドでワールドに適用されたデータパックを操作できます。Java版のみ使用可能です。

構文:データパックを無効にする
/datapack disable <name>
構文:データパックを有効にする
/datapack enable <name> [first|last]
構文:順番を指定して読み込む
/datapack enable <name> [before|after] <existing>
構文:データパックのリストを表示
/datapack list [available|enabled]

「disable」でデータパックを無効に、「enable」で有効にします。また、「first」「last」「before」「after」で読み込む順番を指定できます。

入力例:使用中のデータパックを無効化する
/datapack disable "file/dynamic_light_v1.1.zip"

上記のコマンドを実行すると、データパック「dynamic_light_v1.1」が無効化されます。データパック名は候補が表示されるので、すべて自力で入力する必要はありません。

datapackコマンド

「データパック[○○○○]を無効にしました」と表示されます。

/daylock 昼夜サイクルを停止し常に昼間に

/daylockは、ワールドの昼夜サイクルを停止することができるコマンドです。実行すると時間が5000(正午くらい)になり、その後はずっと昼間が続きます。統合版のみ使用可能です。

構文:昼夜サイクルの停止
/daylock
構文:昼夜サイクルの停止・再開
/daylock [true|false]

「true」で昼夜サイクルの停止、「false」で昼夜サイクルを再開できます。昼夜サイクルを停止するときは、「true」を省略可能。/alwaysdayコマンドでも同じことができます。

入力例:常に昼間にする
/daylock true

上記のコマンドを実行すると、昼間になって昼夜サイクルが止まります。再開したいときは、「true」を「false」にかえてコマンドを実行すればOKです。

alwaysday

コマンドを実行しても何も表示されませんが、太陽の動きが止まります。timeコマンドを使うと、時間が5000にセットされていることも確認できます。

/debug デバッグの開始・停止

/debugは、デバッグの操作をするコマンドです。デバッグとはバグを見つけて手直しすること。このコマンドを使うことで、例えばどのコマンドがマイクラを重くする原因となっているかなどを調査できます。Java版のみ使用可能です。

構文:デバッグの開始
/debug start
構文:デバッグの停止
/debug stop
構文:ファンクション
/debug function

「start」を指定するとデバッグ・プロファイリングを開始、「stop」を指定すると停止します。「stop」した時点で、.minecraft内のdebugフォルダに、結果のテキストファイルが生成されます。内容は下のような感じ(1.17では出力されなかったので1.16.5での内容です)。

—- Minecraft Profiler Results —-
// 40% better than a crash report.

Version: 1.16.5
Time span: 100802 ms
Tick span: 1638 ticks
// This is approximately 16.25 ticks per second. It should be 20 ticks per second

— BEGIN PROFILE DUMP —

[00] tick(1639/1) – 97.30%/97.30%
[01] | levels(1638/1) – 95.29%/92.78%
[02] | | ServerLevel[0.1.16.5] minecraft:overworld(1638/1) – 99.89%/92.67%
[03] | | | tick(1638/1) – 100.00%/92.67%
[04] | | | | entities(1638/1) – 85.62%/79.34%
[05] | | | | | tick(1908075/1165) – 95.62%/75.87%
[06] | | | | | | minecraft:chicken(254898/156) – 16.93%/12.84%
.
.
.

コマンドの実行結果も次のように記録されています。

/fill ~ 1 ~ ~9 130 ~9 air(1/0) – 11.53%/0.63%
/clone 0 1 0 9 130 9 ~ 1 ~(1/0) – 5.61%/0.31%

5.61%/0.31%は、「同じ階層の処理の中で占める処理時間の割合/すべての処理の中で占める処理時間の割合」です。数値が大きいほうが負荷がかかっていることになります。

上記の例はどちらも空間を空気ブロックで満たすためのコマンドなのですが、fillで空気を設置するより、cloneで空気ブロックをコピーしてきたほうが負荷が軽いということになります。

1.17からは、「function」で/functionコマンドと同じようにコマンドを実行できるようになっています。Functionを使用すると実行結果がdebugフォルダに作成されます。

入力例:ファンクションの実行
/debug function nishi10:test12

上記のコマンドを実行すると、.minecraft/saves/ワールド名/datapacks/test/data/nishi10/functions内のファンクションファイル「test12.mcfunction」に記載されたコマンドが実行され、結果がdebugフォルダに出力されます。

debug functionの実行結果

「○○から実行した2個のコマンドの追跡結果を~.txtとして保存しました」と表示されます。中身は下のような感じでした(1.17の時点)。

[C] gamerule randomTickSpeed 1000
[M] ゲームルールrandomTickSpeedが1000に設定されました
[R = 1000] gamerule randomTickSpeed 1000
[C] kill @e[type=minecraft:cow]
[E] エンティティが見つかりませんでした

/defaultgamemode デフォルトのゲームモードの指定

/defaultgamemodeは、新しいプレイヤーがワールドに入ったときのゲームモードを指定するコマンドです。マルチプレイで使います。Java版のみ使用可能です。

構文:デフォルトゲームモードを指定
/defaultgamemode (adventure|creative|spectator|survival)

survivalでサバイバルモード、creativeでクリエイティブモード、adventureでアドベンチャーモード、spectatorでスペクテイターモードにできます。

入力例:スペクテイターモードに指定
/defaultgamemode spectator

上記コマンドを実行すると、デフォルトゲームモードがスペクテイターモードに指定されます。

defaultgamemodeコマンドの実行結果

「デフォルトのゲームモードが○○に設定されました」と表示されます。

/difficulty 難易度を変更する

/difficultyは、ゲーム難易度を変更するコマンドです。Java版・統合版どちらでも使用可能です。

構文:難易度の変更
/difficulty (easy|hard|normal|peaceful)

「peaceful」でピースフル、「easy」でイージー、「normal」でノーマル、「hard」でハードにできます。Java版では、「/difficulty」だけ入力すると現在の難易度を表示することもできます。

統合版は、「peaceful → p」「easy → 1」のように省略した形で入力することもできます。

省略形
peaceful p,0
easy e,1
normal n,2
hard h,3
入力例:ピースフルに設定
/difficulty peaceful

上記のコマンドを実行すると、難易度がピースフルに設定されます。

難易度がピースフルに指定されたときの表示

難易度をピースフルにすると、読み込まれている範囲のモンスターが全て消えます。近くに海底神殿があるとエルダーガーディアンがいなくなってしまうので、注意しましょう。

/effect ステータス効果の付与・削除

/effectは、ステータス効果の付与・削除ができるコマンドです。ポーションによるステータス効果だけでなく、ビーコンパワーも操作できます。Java版・統合版どちらでも使用可能です。

構文:ステータス効果の削除(JE)
/effect clear [<targets>] [<effect>]
構文:ステータス効果の付与(JE)
/effect give <targets> <effect> [<seconds>] [<amplifier>] [true|false]
構文:ステータス効果の削除(統合版)
/effect <target> clear
構文:ステータス効果の付与(統合版)
/effect <target> <effect> [seconds] [amplifier] [true|false]

Java版と統合版でやや構文が異なりますが、指定する項目は同じです。「target」で対象プレイヤーを、「effect」でステータス効果を、「seconds」で持続時間(秒)を指定します。使えるeffectは次のようになっています。

ID エフェクト
absorption 衝撃吸収(吸収)
bad_omen 不吉な予感
blindness 盲目(目つぶし)
conduit_power コンジットパワー
dolphins_grace イルカの好意
※Java版のみ
empty 効果なし
※統合版のみ
fatal_poison 致死毒
※統合版のみ
fire_resistance 艦隊性(耐火)
glowing 発光
※Java版のみ
haste 採掘速度上昇(勤勉)
health_boost 体力増強(HPブースト)
hero_of_the_village(Java版)
village_hero(統合版)
村の英雄
hunger 空腹
instant_damage 即時ダメージ(ダメージ)
instant_health 即時回復(回復)
invisibility 透明化(不可視)
jump_boost 跳躍力上昇(跳躍)
levitation 浮遊
luck 幸運
※Java版のみ
mining_fatigue 採掘速度低下(疲労)
nausea 吐き気(目まい)
night_vision 暗視
poison
regeneration 再生能力(再生)
resistance 耐性
saturation 満腹度回復(飽和)
slow_falling 低速落下
slowness 移動速度低下(鈍化)
speed 移動速度上昇(スピード)
strength 攻撃力上昇(力)
unluck 不幸
※Java版のみ
water_breathing 水中呼吸
weakness 弱体化
wither 衰弱(ウィザー)

「amplifier」はステータス効果のレベルを数値で指定します。例えば、跳躍力上昇なら「0」、跳躍力上昇Ⅱなら「1」、跳躍力上昇Ⅲなら「2」となります。

「true | false」は、ステータス効果が付与されたときのうずまきパーティクルの表示設定です。trueを指定するとパーティクルが表示されなくなります(スクショを撮るときは便利)。

入力例:暗視を100000秒付与(Java版)
/effect give @s minecraft:night_vision 100000 0 true
入力例:暗視を100000秒付与(統合版)
/effect @s night_vision 100000 0 true

上記のコマンドを実行すると、コマンド実行者に100000秒の暗視の効果を付与することができます。

暗視のステータス効果が付与された瞬間

地下で検証するときに暗視は必須です。

/enchant エンチャントをアイテムに付与する

/enchantは、プレイヤーが持っているアイテムにエンチャントを付与するコマンドです。ホットバーで選択されたアイテムがエンチャントされます。Java版・統合版どちらでも使用可能です。

構文:エンチャントの付与
/enchant <targets> <enchantment> [<level>]

「encthantment」で種類を、「level」でレベルを指定します。Enchantmentで指定できるエンチャントは次のようになっています。

ID エンチャント
aqua_affinity 水中採掘(水中作業)
bane_of_arthropods 虫特効(虫殺し)
binding_curse(Java版)
binding(統合版)
束縛の呪い
blast_protection 爆発耐性
channeling 召雷(チャネリング)
depth_strider 水中歩行(水中移動)
efficiency 効率強化(効率)
feather_falling 落下耐性(落下軽減)
fire_aspect 火属性
fire_protection 火炎耐性(防火)
flame フレイム(火炎)
fortune 幸運
frost_walker 氷渡り(氷上歩行)
impaling 水生特効(串刺し)
infinity 無限
knockback ノックバック
looting ドロップ増加(アイテムボーナス)
loyalty 忠誠(忠誠心)
luck_of_the_sea 宝釣り
lure 入れ食い
mending 修繕
multishot 拡散(マルチショット)
piercing 貫通
power 射撃ダメージ増加(パワー)
projectile_protection 飛び道具耐性(間接攻撃耐性)
protection ダメージ軽減(防護)
punch パンチ(衝撃)
quick_charge 高速装填(クイックチャージ)
respiration 水中呼吸
riptide 激流
sharpness ダメージ増加(鋭さ)
silk_touch シルクタッチ
smite アンデッド特効(聖なる力)
soul_speed ソウルスピード(魂の速度)
sweeping 範囲ダメージ増加
※Java版のみ
thorns 棘の鎧(とげ)
unbreaking 耐久力
vanishing_curse(Java版)
vanishing(統合版)
消滅の呪い
入力例:剣にノックバック2をつける
/enchant @s knockback 2

上記のコマンドを実行すると、ホットバーで選択された剣にノックバックⅡのエンチャントが付与されます。

enchantコマンドで表示されるエラーメッセージ

付与できない種類のエンチャントや最大レベルを超えるレベルを指定すると、赤字でエラーが表示されます。最大レベルをこえたエンチャントを付与するには、giveコマンドでエンチャント済みのアイテムを取り出す必要があります。

/event モブにイベントを起こす

/eventは、特定のモブに対してイベントを起こすことができるコマンドです。クリーパーを爆発させたり、村人ゾンビを治療したりできます。統合版のみ使用可能です。

構文:モブにイベントを起こす
/event entity <target> <eventName>

「target」でターゲットのモブを、「eventName」で起こしたいイベントを指定します。選択できるイベントはここに載せるには多すぎるので、次のページを参照してください。

入力例:帯電クリーパーにする
/event entity @e[type=creeper] minecraft:become_charged

上記のコマンドを実行すると、近くにいるクリーパーを帯電クリーパーにすることができます。

帯電クリーパー

動物を子供にしたり、村人をウィッチにしたりといろいろなことができます。

/execute プレイヤーなどを検知してコマンド実行

/executeは、プレイヤーやアイテムを検知してコマンドを実行したり、コマンド実行者を自分以外に指定してコマンドを実行したりと、より高度な処理が実現できるコマンドです。Java版・統合版どちらでも使用可能です。

構文:コマンド実行点・向きなどの変更
/execute align <axes> -> execute
/execute anchored <anchor> -> execute
/execute as <targets> -> execute
/execute at <targets> -> execute
/execute facing (entity|<pos>)
/execute in (overworld|the_end|the_nether)
/execute positioned (as|<pos>)
/execute rotated (as|<rot>)
構文:条件付きのコマンド実行
/execute if (block|blocks|entity|score)
/execute unless (block|blocks|entity|score)
構文:実行結果の代入
/execute store (result|success)
構文:別コマンドの実行
/execute run …
構文:統合版の構文
/execute <target> <x y z> <command>
/execute <target> <x y z> detect <x y z> <Block> <int> <command>

/executeコマンドは、サブコマンドを続けて入力することでコマンドの実行方法をいろいろ変更することができます。使えるサブコマンドは次のとおりです。

サブコマンド 内容
align 実行座標の小数点以下切り捨て
anchored 基準点を変更する
as 実行者を決める
at 実行座標・向き・ディメンションを決める
facing 向きを変える
in 実行するディメンションを決める
positioned 実行座標を決める
rotated 実行者の角度を決める
if 条件を満たしたら実行
unless 条件を満たさなかったら実行
store コマンドの実行結果の代入
run 別コマンドの実行

run以外のサブコマンドは複数使用可能で、入力した順番で処理されます。

例1:/execute as @e at @s run tp ^ ^ ^1

例1のコマンドは、「as @e」でコマンド実行者を各エンティティに指定したあと、「at @s」で実行地点をコマンド実行者に指定しています。この順だとそれぞれのエンティティがその場でtpコマンドを実行するような形になり、すべてのエンティティが1ブロック前にテレポートします。

例2:/execute at @s as @e run tp ^ ^ ^1

例2のコマンドは、先に「at @s」で実行地点をコマンド実行者、つまりこの/executeコマンドを入力しているプレイヤーに指定しています。その後「as @e」でコマンド実行者は各エンティティということになります。

この順だと各エンティティがプレイヤーのいる場所でコマンドを実行するという形になるので、プレイヤーの1ブロック前に全エンティティがテレポートしてきます。うーん、ムズカシイ。

統合版の場合は、「target」でコマンド実行者を、「position」で実行点を、「command」で実行するコマンドを指定します。「detect」を使うと、特定のブロックが検出されたときにだけコマンドを実行することもできます。

入力例:全クリーパーのデータ(Java版)
/execute as @e[type=creeper] run data get entity @s

上記のコマンドを実行すると、近くにいるすべてのクリーパーのNBTデータが収集されます。

/executeコマンド実行時の画面

理解が難しいですが、run~で他のコマンドと組み合わせられるので、複雑な操作をするコマンドが作れます。

/experience 経験値の付与など

/experienceは、経験値の追加・現在の経験値量の表示・経験値の設定を行うコマンドで、Java版のみ使用可能です。

構文:経験値の追加
/experience add <targets> <amount> [levels|points]
構文:経験値のセット
/experience set <targets> <amount> [levels|points]
構文:経験値の表示
/experience query <targets> (levels|points)

「add」で現在の経験値に経験値を追加、「set」で指定の値に経験値をセット、「query」で現在の経験値を表示することができます。レベル単位、ポイント単位での指定が可能。「add マイナス値」で削除できます。

入力例:経験値レベル30を与える
/experience add @s 30 levels

上記のコマンドを実行すると、コマンド実行者に経験値が30レベルぶん追加されます。

experienceコマンド実行時のチャット欄の表示

/xpコマンドでも同じことができます。

/fill 範囲内をブロックで満たす

/fillは、指定した範囲を特定のブロックでおきかえるコマンドです。広大な土地を整地するときによく使われます。Java版・統合版どちらでも使用可能です。

構文:ブロックの置き換え(Java版)
/fill <from> <to> <block> [destroy|hollow|keep|outline|replace]
/fill <from> <to> <block> replace [<filter>]
構文:ブロックの置き換え(統合版)
/fill <from> <to> <Block> [int] [FillMode]
/fill <from> <to> <Block> [block states] [FillMode]
構文:ブロックの置き換え(統合版)2
/fill <from> <to> <Block> <int> replace [replaceBlock] [int]
/fill <from> <to> <Block> <block states> replace [replaceBlock] [int]

「from」と「to」でブロックで満たす範囲(x y z)を、「block」で満たすブロックを指定します。一度に置き換えられるブロックは、最大で32768ブロック。これは平面だと181×1×181くらい、高さ10なら57×10×57くらい、高さ20なら40×20×40くらいの空間になります。

Java版では、次のような項目からブロックの満たし方を選ぶことができます。

指定 内容
destroy 範囲内のブロックがすべて破壊され、指定したブロックにおきかえられます。ブロックのドロップあり。
hollow 指定した範囲のうち最も外側のブロックを指定したブロックに置換し、内部を空気ブロックで満たします。
keep 範囲内の空気ブロックだけを指定したブロックに置き換えます。
outline 指定した範囲のうち、最も外側のブロックだけを指定ブロックに置換します(内部はそのまま)。
replace 範囲内で指定したブロックだけを置換します。

「replace」のあとにブロックを指定れば、そのブロックだけを置き換えることができます。

入力例:11×11×11の範囲を空気ブロックで満たす
/fill ~ ~ ~ ~10 ~10 ~10 air

上記のコマンドを実行すると、現在地からX軸、Y軸、Z軸にそれぞれ10ブロックずつ進んだ範囲までが空気ブロックで置き換えられます。

fillコマンドによって削られた山

広い範囲が一気に整地できます。

範囲の指定には、座標の値を使った「絶対座標」と、現在地を基準に何ブロック先かをしめす「相対座標」、プレイヤーの現在地と向きを基準にする「ローカル座標」が使えます。絶対座標は「100 64 100」のように、X座標・Y座標・Z座標の順で数値をそのまま入力します。

相対座標の入力は、「~6 ~ ~5」のようにチルダを使って入力します。これは現在地からX座標方向に6ブロック先、Y軸方向に0ブロック先、Z軸方向に5ブロック先をあらわしています。

ローカル座標の入力は「^7 ^3 ^4」のようにキャレットを使って入力します。これは現在地から左方向に7ブロック、上方向に3ブロック、正面方向に4ブロック先の座標をあらわしています。

/fog 霧を表示する

/fogは、ターゲットに霧を表示させるコマンドです。それぞれのバイオームで表示される霧を表示させたり消したりできます。統合版のみ使用可能です。

構文:霧の表示
/fog <target> push <fogID> <userProvidedId>
構文:霧の削除
/fog <target> <pop|remove> <userProvidedId>

「target」で霧を表示するプレイヤーを、「fogID」で表示する霧の種類を指定します。「userProvidedId」には任意のIDを指定します。このIDは霧を削除するときに使うので、わかりやすいものにしておいたほうがいいです。

「push」で霧を表示し、「pop」と「remove」で霧を削除します。popでIDが一致する一番最後に適用された霧を削除、removeでIDが一致するすべての霧を削除できます(同じ霧を連続でpushできます)。

入力例:ジ・エンドの霧を表示する
/fog @s push minecraft:fog_the_end end

上記のコマンドを実行すると、コマンド実行者にジ・エンドの霧が表示されるようになります。「minecraft:fog_the_end」がfogIDで、「end」が作成したIDです。

ジ・エンドの霧を表示させる

成功すると「フォグの設定が正常に追加されました」と表示されます。

/forceload チャンクの常時読み込み

/forceloadは、指定したチャンクを常に読み込ませることができるコマンドです。このコマンドで指定したチャンクは、スポーンチャンクでなくても常に読み込まれるようになります。Java版のみ使用可能です。

構文:セット
/forceload add <from> [<to>]
構文:削除
/forceload remove <from> [<to>]
構文:全削除
/forceload remove all
構文:表示
/forceload query [<pos>]

「add」で常時読み込むチャンクの追加、「remove」で削除することができます。「from」でX座標とZ座標を指定すると、その座標をふくむチャンクについて操作できます。

入力例:現在地を常時読み込む
/forceload add ~ ~

上記のコマンドを実行すると、現在プレイヤーがいるチャンクが常に読み込まれるようになります。

forceload実行時のチャット欄の表示

プレイヤーが離れると止まってしまう装置が置いてあるチャンクを常に読み込まれるよにしておくと、効率があがります。ただし負荷も大きくなるので注意が必要。

forceloadコマンドに使える座標

チャンクの座標には、F3キーを押したときに表示されるChunkの項目の右側の数字を使ってもOK。

/function ファンクションファイルでコマンド実行

/functionは、ファンクションファイルを操作するためのコマンドです。予め複数のコマンドを記載したファンクションファイルを用意しておけば、このコマンド一つですべてのコマンドを実行できます。Java版・統合版どちらでも使用可能です。

構文:ファンクションファイルの実行
/function <name>

「name」にはファンクションのファイル名を指定します。うまく設置できていれば、「/function 」と入力したときに候補としてファイル名が表示されます。

作成するファンクションファイルには、一行につき一つのコマンドを記載します(ただし「/」は記入しません)。ファイル名は「○○.mcfunction」とし、UTF-8Nで保存します。保存場所は、Java版なら次の場所です。

.minecraft/saves/ワールド名/datapacks/test/data/nishi10/functions

初めて作るときはフォルダがないので、自分で作る必要があります。ここをミスるとコマンドが実行できないので、慎重に作業しましょう。「test」「nishi10」の部分は変更できるので、わかりやすい名前にしておくといいです。

また、あらかじめtestフォルダの中には「pack.mcmeta」というファイルをいれておく必要があります。下記の内容を記載したテキストファイルを「pack.mcmeta」として保存して(UTF-8Nで保存)、フォルダに入れておいてください。

{
"pack": {
"pack_format": 1,
"description": "datapack"
}
}

統合版ではビヘイビアパックを作って適用する必要があります。次のように作ってみてください。

デスクトップなどにtestpackフォルダを作り、中に「manifest.json」ファイルと「functions」フォルダを作ります(testpackは別の名前にしても構いません)。manifest.jsonの作成には、次のサイトを利用させてもらいましょう。「behavior」を選択して適当な名前を入力するだけで、簡単に作ることができます。

functionファイル(○○.mcfunction)はJava版と同じ方法で作り、functionsフォルダの中に入れておきます。

testpackフォルダの中に「manifest.json」「functionsフォルダ」、functionsフォルダの中に「○○.mcfunction」がそろったらtestpackフォルダをzip圧縮し、拡張子を.zipから.mcpackに変更します。

ファイルが草ブロックのアイコンに変われば成功です。草ブロックのアイコンをクリックすると、マイクラが起動してビヘイビアパックが読み込まれます。あとはワールドの編集画面でビヘイビアーパック→マイパックをひらき、追加されたパックを選択して友好化すればOK。ファンクションが使えるようになります(コマンド入力時に候補として表示されるようになる)。

入力例:test12.mcfunctionを実行する(Java版)
/function nishi10:test12

上記のコマンドを実行すると、.minecraft/saves/ワールド名/datapacks/test/data/nishi10/functionsにある、test12.mcfunctionに記載されたコマンドがすべて実行されます。

functionコマンドの実行結果

ファンクションファイルには複数のコマンドを記載することができるので、例えばプレイヤーに渡したいアイテムのgiveコマンドを書いておけば、装備や道具がそろった状態をすぐに作ることができます。

/gamemode ゲームモードの変更

/gamemodeは、ゲームモードを変更することができるコマンドです。サバイバルモード、クリエイティブモード、アドベンチャーモード、スペクテイターモード(Java版のみ)を切り替えることができます。Java版・統合版どちらでも使用可能です。

構文:ゲームモードの確認
/gamemode
構文:ゲームモードの変更
/gamemode [adventure|creative|spectator|survival] [<target>]

adventureでアドベンチャーモード、creativeでクリエイティブモード、spectatorでスペクテイターモード、survivalでサバイバルモードになります。統合版ではゲームモード名を省略して、sまたは0(サバイバル)、cまたは1(クリエイティブ)、aまたは2(アドベンチャー)といった指定方法もできます。

入力例:スペクテイターモードにする
/gamemode spectator

上記のコマンドを実行すると、ゲームモードがスペクテイターモードになります。

スペクテイターモードの画面

Java版ではゲームモード名をすべて入力するのが面倒なので、頭文字を入力してからtabキーで自動入力するのがオススメです。

/gamerule ゲームルールの変更

/gameruleは、ゲームルールを変更することができるコマンドです。昼夜サイクルや天候の変化などを停止・再開できます。Java版・統合版どちらでも使用可能です。

構文:ゲームルールの確認
/gamerule <rule name>
構文:ゲームルールの変更
/gamerule <rule name> [<value>]

「/gamerule 」のあとにゲームルール名を入力し、「value」にtrueやfalse、数値などを指定します。指定できるゲームルールには、次のようなものがあります。

ゲームルール名 内容 デフォルト
announceAdvancements(Java版) 進捗の通知を表示するかどうか true
commandBlocksEnabled(統合版) コマンドブロックを有効にするかどうか true
commandBlockOutput コマンドブロックがコマンドを実行したときに通知するかどうか true
disableElytraMovementCheck(Java版) エリトラ着用時の速度チェックをスキップするかどうか false
disableRaids(Java版) 襲撃を無効にするかどうか false
doDaylightCycle 昼夜サイクルを有効にするかどうか true
doEntityDrops エンティティ破壊時にアイテムをドロップさせるかどうか true
doFireTick 火が延焼・自然消火するかどうか true
doInsomnia ファントムをスポーンさせるかどうか true
doImmediateRespawn 死亡時に即リスポーンするかどうか false
doLimitedCrafting(Java版) 開放したレシピのみクラフト可能にするかどうか false
doMobLoot Mobがアイテムをドロップするかどうか true
doMobSpawning モンスター以外のMobが自然にスポーンするかどうか true
doPatrolSpawning(Java版) 略奪隊をスポーンさせるかどうか true
doTileDrops ブロック破壊時にアイテムをドロップさせるかどうか true
doTraderSpawning(Java版) 行商人をスポーンさせるかどうか true
doWeatherCycle 天候が自然に変化するかどうか true
drowningDamage 水没時にダメージを受けるかどうか true
fallDamage 落下時にダメージを受けるかどうか true
fireDamage 炎によるダメージを受けるかどうか true
forgiveDeadPlayers(Java版) 死亡時に中立Mobの敵対化を解除するかどうか true
freezeDamage 粉雪の中にいるときにダメージを受けるかどうか true
functionCommandLimit(統合版) /functionコマンドで一度に実行できるコマンドの最大数 10000
keepInventory 死亡時にインベントリと経験値を保持するかどうか false
logAdminCommands(Java版) 管理者のコマンドをログに記録するかどうか true
maxCommandChainLength チェーンコマンドブロックがチェーンする最大回数 65536
maxEntityCramming(Java版) 1ヶ所に重なることができるMobの最大数 24
mobGriefing Mobがブロック変更・アイテム取得・物々交換をできるかどうか true
naturalRegeneration 満腹度が十分なとき体力を自然回復するかどうか true
playersSleepingPercentage(Java版) 夜をスキップするために寝なければいけないプレイヤーの割合(%) 100
pvp(統合版) プレイヤー同士が戦えるかどうか true
randomTickSpeed 作物の成長や葉の消失などの発生頻度 3(Java版)
1(統合版)
reducedDebugInfo(Java版) デバッグ画面で全ての情報を表示するかどうか、F3+B・F3+Gで当たり判定・チャンクの境界線を表示するかどうか false
sendCommandFeedback 実行したコマンドのログを表示するかどうか true
showCoordinates(統合版) プレイヤーの座標を表示するかどうか true
showDeathMessages プレイヤー死亡時にメッセージを表示するかどうか true
spawnRadius 初期スポーンやリスポーンの範囲(スポーン地点からの半径) 10(Java版)
5(統合版)
spectatorsGenerateChunks(Java版) スペクテイターモードのプレイヤーがチャンクを生成できるかどうか true
tntExplodes(統合版) TNTを起爆できるかどうか true
universalAnger(Java版) 敵対化した中立Mobが対象プレイヤー以外のプレイヤーを攻撃するかどうか false
showTags(統合版) 破壊・設置可能なブロックの説明を非表示にするかどうか true
入力例:昼夜サイクルを停止する
/gamerule doDaylightCycle false

上記のコマンドを実行すると、ワールドの昼夜サイクルが停止します。

gameruleコマンド実行時のチャット欄の表示

天候の変化を停止したり作物を一瞬で成長させたりと、よく使うことになるコマンドです。

/give アイテムをあたえる

/giveは、プレイヤーにアイテムを渡すことができるコマンドです。クリエイティブインベントリに表示されないアイテムは、/giveコマンドで出現させます。Java版・統合版どちらでも使用可能です。

構文:アイテムをあたえる(Java版)
/give <target> <item> [<count>]
構文:アイテムを与える(統合版)
/give <player: target> <itemName: Item> [amount: int] [data: int] [components: json]

「target」でアイテムを与える対象を、「item」で与えるアイテムを、「count」「amount」で個数を指定します。

入力例:ダイヤ64個をわたす
/give @s minecraft:diamond 64

上記のコマンドを実行すると、コマンド実行者にダイヤモンドが64個渡されます。

ダイヤ獲得の瞬間

入力例:コマンドブロックをわたす
/give @s command_block

上記のコマンドを実行すると、コマンド実行者にコマンドブロックが一つわたされます。コマンドブロックはgiveコマンドでのみ出現させることができるブロックです。

/help コマンドの構文を調べる

/helpは、コマンドの入力方法を表示してくれるコマンドです。このページで紹介しているような構文が表示されます。Java版・統合版どちらでも使用可能です。

構文:コマンドの構文を表示
/help [<command>]

「command」にコマンドを入力すると、そのコマンドの構文を表示することができます。また「/help」だけで実行すると、コマンド一覧が表示されます。

入力例:giveコマンドの構文を表示する
/help give

上記のコマンドを実行すると、/giveコマンドの構文が表示されます。

helpコマンド実行時の表示

現在のバージョンではコマンド入力時にも構文が表示されるうえに、入力候補も表示されるので、/helpでしらべることは少ないです。

/item アイテムの操作

/itemは、チェストやかまど、プレイヤーやMobのインベントリ内のアイテムを操作するコマンドです。Java版1.17でreplaceitemコマンドが削除され、このコマンドに組み込まれました。Java版のみ使用可能です。

構文:アイテムを置き換える
/item replace (block <pos>|entity <targets>) <slot> with <item> [<count>]
構文:アイテムをコピーで置き換える
/item replace (block <pos>|entity <targets>) <pos> <slot> from (block <sourcePos>|entity <sourceTarget>) <sourceSlot> [<modifier>]
構文:アイテムのNBTデータを編集する
/item modify (block <pos>|entity <targets>) <slot> <modifier>

「modify」でアイテムのNBTデータの編集、アイテムの「replace」で置き換えができます(NBTデータの編集にはあらかじめjsonファイルの作り適用しておく必要があります)。

blockなら「pos」で座標を、entityなら「targets」で対象を指定しまう。ブロックのアイテムをエンティティからコピーしてくる、エンティティのアイテムをブロックからコピーしてくるといったことも可能です。

入力例:頭にくり抜かれたカボチャを装備する
/item replace entity @s armor.head with minecraft:carved_pumpkin

上記のコマンドを実行すると、コマンド実行者の頭にくり抜かれたカボチャが装備されます。鉄ブロックや土など、本来は装備できないブロックで置き換えることもできてしまいます。

itemコマンドによって頭にカボチャを装備させられたプレイヤー

入力例2:かまどに生の鶏肉64個を入れる
/item replace block ~ ~-1 ~ container.0 with minecraft:chicken 64

上記のコマンドを実行すると、足の下にあるかまどの上のスロットが、生の鶏肉64個で置き換えられます。

入力例3:メインハンドに、チェストからアイテムをコピー
/item replace entity @s weapon.mainhand from block -191 64 205 container.0

上記のコマンドを実行すると、座標(-191,64,205)にあるチェストの左上のスロットに入っているアイテムが、メインハンド(ホットバーで選択されたスロット)にコピーされます。

/kick 強制ログアウト

/kickは、特定のプレイヤーを強制的にログアウトさせるコマンドです。Java版・統合版どちらでも使用可能です。

構文:強制ログアウト
/kick <targets> [<reason>]

「target」で対象のプレイヤーを指定します。「reason」でメッセージを入力すると、退出後の画面に表示させることができます。

入力例:メッセージを表示して退出させる
/kick nishi10 "お前はやりすぎた。やりすぎたのだ!"

上記のコマンドを実行すると、プレイヤーnishi10をワールドから退出させ、「お前はやりすぎた。やりすぎたのだ!」というメッセージを表示させることができます。

kickコマンドの実行結果

解除できず永遠にサーバーに入れないbanと違って、kickは強制的に退出させられるだけなので、再度接続すればまた入ることができます。

/kill エンティティを消滅させる

/killは、エンティティを消滅させることができるコマンドです。Mobやアイテム、プレイヤーなど対象を指定して死亡させることができます。Java版・統合版どちらでも使用可能です。

構文:対象を消滅(死亡)させる
/kill <target>

「target」には、プレイヤー名や@e、@sなどを指定します。「@e[type=item]」「@e[type=zombie]」などと指定すれば、指定したエンティティだけを消滅させることができます。

入力例:ウシを死亡させる
/kill @e[type=minecraft:cow]

上記のコマンドを実行すると、読み込まれている範囲内のウシがすべて消滅します(アイテムもドロップします)。cowをsheepやchickenに変えれば、他の動物にもそのまま使えます。villagerを指定すれば、村人を消滅させることもできます。

killコマンド実行時のチャット欄の表示

以下のように入力すると、より細かい指定ができます。

入力例:半径10ブロック以内のアイテムを消滅させる(Java版)
/kill @e[type=item,distance=..10]

上記のコマンドを実行すると、半径10ブロック以内にドロップしているアイテムを消滅させることができます。

入力例:自分以外のエンティティを消滅させる
/kill @e[type=!minecraft:player]

上記のコマンドを実行すると、プレイヤー以外のエンティティをすべて消滅させることができます。

/list プレイヤーリストを表示する

/listは、ワールドのプレイヤーリストを表示できるコマンドです。Java版・統合版どちらでも使用可能です。

構文:プレイヤーリストの表示
/list
入力例:プレイヤーリストの表示
/list

上記のコマンドを実行すると、ワールドにいるプレイヤーのリストが表示されます。

シングルプレイでlistコマンドを使ってみた結果

シングルプレイでは当然一人しか表示されません。

/locate 構造物の座標を表示する

/locateは、現在地から最も近い構造物の座標を表示するコマンドです。埋もれた財宝や森の洋館など、見つけるのが難しい構造物も一瞬で発見できます。Java版・統合版どちらでも使用可能です。

構文:構造物の座標を表示
/locate <StructureType>

「StructureType」で構造物の種類を指定します。指定方法は以下のとおりです。

構造物 指定方法
砦の遺跡 bastion_remnant(Java版)
bastionremnant(統合版)
埋もれた財宝 buried_treasure(Java版)
buriedtreasure(統合版)
エンドシティ endcity
ネザー要塞 fortress
森の洋館 mansion
廃坑 mineshaft
海底神殿 monument
ネザーの化石 nether_fossil(Java版)
統合版はナシ
海底遺跡 ocean_ruin(Java版)
ruins(統合版)
ピリジャーの前哨基地 pillager_outpost(Java版)
pillageroutpost(統合版)
ポータルの遺跡 ruined_portal(Java版)
ruinedportal(統合版)
難破船 shipwreck
地下要塞 stronghold
砂漠の寺院 desert_pyramid(Java版)
temple(統合版)
イグルー igloo(Java版)
temple(統合版)
ジャングルの寺院 jungle_pyramid(Java版)
temple(統合版)
ウィッチの小屋 swamp_hut(Java版)
temple(統合版)
village

スポナーは残念ながら指定できないので、スポナー探しには使えないです。

入力例:難破船の座標を表示する
/locate shipwreck

上記のコマンドを実行すると、現在地からもっとも近い難破船の座標が表示されます。

locateコマンド実行時の表示

Java版ではチャットウインドウをひらいた状態で表示された座標(緑色の文字)をクリックすると、その座標へのtpコマンドが自動入力されてとても便利です。

読み込まれている範囲に構造物が見つからない場合は、「見つけられませんでした」と表示されます。森の洋館など生成される数が少ない構造物や、違うディメンションに生成される構造物を指定すると見つけられないことがあります。

/locatebiome バイオームの座標を表示する

/locatebiomeは、指定したバイオームのうち現在地にもっとも近いものの座標を表示するコマンドです。荒野やキノコ島などのレアバイオームも一瞬で見つけることができます。Java版のみ使用可能です。

構文:バイオームの座標を表示
/locatebiome <biome ID>

「biome ID」にバイオームのIDを指定して使います。「/locatebiome 」まで入力すると候補が表示されるので、その中から選ぶと楽です。

入力例:荒野の座標を調べる
/locatebiome minecraft:badlands

上記のコマンドを実行すると、現在地からもっとも近い荒野バイオームの座標が表示されます。

/locatebiome実行時の表示

統合版ではこのコマンドが使えないので、外部ツールで探すか、locateコマンドでtempleを指定して行ってみる(運が良ければジャングルにあたる)といった探し方しかできません。

/loot ルートテーブルでアイテムドロップ

/lootは、指定したルートテーブルを使ってアイテムをドロップするコマンドです。Java版のみ使用可能です。

構文:ルートテーブルでドロップ
/loot <target> <source>
構文:targetの構文
spawn <targetPos>
replace entity <entities> <slot> [<count>]
replace block <targetPos> <slot> [<count>]
give <players>
insert <targetPos>
構文:sourceの構文
fish <loot_table> <pos> [<tool>|mainhand|offhand]
loot <loot_table>
kill <target>
mine <pos> [<tool>|mainhand|offhand]

「spawn」はアイテムを指定する座標にソースで指定したアイテムをドロップさせます。「replace」は「entity」ならエンティティの持っているアイテムをソースで置き換え、「block」ならブロックの中のアイテムを置き換えます。「give」はソースのアイテムをプレイヤーに与え、「insert」はソースのアイテムをブロックに入れるコマンドです。

それぞれでソースを「fish」「loot」「kill」「mine」から選ぶことができます。「fish」は市指定した場所で釣りをしたときに釣れるアイテム、「loot」はダンジョンチェストで手に入るアイテム、「kill」は対象を倒したときにドロップするアイテム、「mine」は対象のブロックを破壊したときにドロップするアイテムです。

入力例:廃坑のチェストの中身をgive
/loot give @s loot minecraft:chests/abandoned_mineshaft

上記のコマンドを実行すると、プレイヤーに廃坑のチェストの中身が渡されます。コマンドを実行するたびに、与えられるアイテムが変わります。

/lootコマンドでアイテムを与えたときの表示

入力例:現在地での釣果をgive
/loot give @s fish minecraft:gameplay/fishing ~ ~ ~

上記のコマンドを実行すると、現在地での釣りをしたときの入手アイテムがプレイヤーに渡されます。

入力例:ゾンビのドロップアイテムをgive
/loot give @s kill @e[type=zombie,limit=1]

上記のコマンドを実行すると、ゾンビを倒したときにドロップする可能性のあるアイテムがプレイヤーに渡されます。

入力例:足元のブロックのドロップアイテムをgive
/loot give @s mine ~ ~-1 ~

上記のコマンドを実行すると、足元のブロックを破壊したときにドロップする可能性のあるアイテムがプレイヤーに渡されます。

/me メッセージの表示

/meは、自分のプレイヤー名から始まる文章をチャットウインドウに表示することができるコマンドです。Java版・統合版どちらでも使用可能です。

構文:メッセージの表示
/me <action>

「action」には表示したい文字列を入力します。

入力例:メッセージを表示する
/me is running

上記のコマンドを実行すると、チャットウインドウに「プレイヤー名 is running」と表示されます。

meコマンド実行時のチャット欄の表示

/me以降を日本語で入力しても、問題なく表示されます。

/mobevent モブイベントの操作

/mobeventは、特定のイベントの有効無効を切り替えることができるコマンドです。襲撃イベントや行商人のスポーンなどをコントロールできます。統合版のみ使用可能です。

構文:モブイベントの設定
/mobevent <event: MobEvent> [true|false]

「MobEvent」でイベントを指定します。「true」にすればそのイベントは発生し、「false」なら発生しません。現状で設定できるのは、次のイベントです。

イベント ID
すべてのイベント events_enabled
初めてエンドに行ったときエンダードラゴンをスポーンさせる minecraft:ender_dragon_event
襲撃イベントを発生させる minecraft:pillager_patrols_event
行商人をスポーンさせる minecraft:wandering_trader_event
入力例:エンダードラゴンをスポーンさせない
/mobevent minecraft:ender_dragon_event false

上記のコマンドを実行すると、初めてエンドに行ったときにエンダードラゴンがスポーンしません。いったんオーバーワールドに戻り、trueにしてから再度エンドに行けばスポーンします。

mobeventコマンドの実行結果

「モブイベント○○は、□□に設定されています」と表示されます。

/msg プライベートメッセージの送信

/msgは、特定のプレイヤーにプライベートメッセージを送ることができるコマンドです。/tellコマンドや/wコマンドで同じことができます。Java版・統合版どちらでも使用可能です。

構文:プライベートメッセージ送信
/msg <targets> <message>

「target」でメッセージを送る相手を、messageで送る文章を指定します。

入力例:helloと言う
/msg nishi10 hello

上記のコマンドを実行すると、プレイヤーnishi10に「hello」というプライベートメッセージが送られます。

msgコマンド実行時のチャットウィンドウの表示

メッセージを送ると「○○にささやきました」と表示され、メッセージを受け取ると「○○にささやかれました」と表示されます。

/music ゲーム音の操作

/musicは、マイクラで使われる音楽を操作するためのコマンドです。音楽を再生したり、ボリュームを変更したりできます。統合版のみ使用可能です。

構文:音楽の再生
/music play <trackName: string> [volume: float] [fadeSeconds: float] [repeatMode: MusicRepeatMode]
構文:音楽をキューに追加
/music queue <trackName: string> [volume: float] [fadeSeconds: float] [repeatMode: MusicRepeatMode]
構文:音楽を停止する
/music stop [fadeSeconds: float]
構文:音楽のボリューム変更する
/music volume <volume: float>

「play」で再生、「queue」でキューに追加(再生されている音楽の、次に再生されるように登録する)、「stop」で停止、「volume」で音量の変更ができます。

「trackName」は、record.○○(record.catなど)やmusic.game.○○(music.game.netherなど)という形で入力します。「volume」には0~1までの数値を入力(小数点使用可)。「fadeSeconds」はフェードイン・フェードアウトの秒数を0~10のあいだで指定します。

「repeatMode」には、loopとplay_onceを指定できます。loopを指定すれば、同じ音楽をリピート再生することができます。

入力例:真紅の森の音楽を鳴らす
/music play music.game.crimson_forest 1 0 loop

上記のコマンドを実行すると、真紅の森に入ったときに再生される音楽をオーバーワールドで流すことができます。

musicコマンドの実行結果

「○○は再生開始キューに入っています。」と表示されます。

/particle パーティクルを表示する

/particleは、パーティクルを表示させるコマンドです。種類だけでなく、広がりや表示時間も指定できます。Java版・統合版どちらでも使用可能です。

構文:パーティクルの表示(Java版)
/particle <name> [<pos>]
構文:パーティクルの表示(統合版)
/particle <effect> <x y z>
構文:詳細を設定して表示(Java版)
/partcle <name> <pos> <delta> <speed> <count> [force|normal] [<viewers>]

「name」でパーティクルの種類、「pos」で座標、「delta」で広がる範囲、「speed」で速度、「count」で数を指定します。

normalなら32ブロック以内のプレイヤーに表示し、forceだと512ブロック以内のプレイヤーに表示します。Viewersでは、表示する対象を指定します。

統合版では詳細な設定ができません。また統合版では座標の指定が必須ですが、Java版では省略可能です。

入力例:火柱を表示(Java版)
/particle flame ~ ~ ~ 0 5 0 0.1 3000

上記のコマンドを実行すると、炎のパーティクルがプレイヤーの現在地から火柱のように広がります。

プレイヤーの周囲に表示される炎のパーティクル

入力例:村人の怒りマークを表示(Java版)
/particle minecraft:angry_villager ^ ^1 ^2
入力例:村人の怒りマークを表示(統合版)
/particle minecraft:villager_angry ^ ^1 ^2

上記のコマンドを実行すると、村人が怒ったときのパーティクルがプレイヤーの目の前に表示されます。

/playanimation エンディティのアニメーションを操作

/playanimationは、エンティティのアニメーションを操作することができるコマンドです。あるエンティティに他のエンティティのアニメーションをさせることもできます。統合版のみ使用可能です。

構文:アニメーションの操作
/playanimation <entity: target> <animation: string> [next_state: string] [blend_out_time: float] [stop_expression: string] [controller: string]

「entity」でアニメーションさせたいエンティティを指定します。プレイヤー以外にも、動物やモンスターなどすべてのエンティティが指定できます。

「animation」では、例えば「animation.armor_stand.hero_pose」という感じで、アニメーションの種類を指定します。

「next_state」では、指定したアニメーションの次に再生させたいアニメーションを、「blend_out_time」ではアニメーションの再生時間(秒)を、「stop_expression」ではアニメーションが停止する条件を、「controller」ではアニメーションコントローラーの指定ができます。

これらは省略可能ですが、アニメーションの中には再生時間を指定しないと再生されないものが多々あるので、自分で試すときは「next_state」と「blend_out_time」は指定しておいたほうがいいでしょう。next_stateは無ければ「none」とすればOKです。

入力例:ヒーローのポーズ
/playanimation @s animation.armor_stand.hero_pose none 20

上記のコマンドを実行するとコマンド実行者がヒーローのポーズになり、20秒かけてゆっくりと元の姿勢に戻っていきます。

playanimationコマンドの実行結果

入力例の@sを@eに変えると、周りにいる動物の顔も右ななめ前を向いて面白いです。

/playsound 効果音を鳴らす

/playsoundは、効果音やBGMなどを再生するためのコマンドです。プレイヤーや音をならす場所、再生スピードなどを指定できます。Java版・統合版どちらでも使用可能です。

構文:ゲーム音の再生(Java版)
/playsound <sound> <source> <targets> [<pos>] [<volume>] [<pitch>] [<minVolume>]
構文:ゲーム音の再生(統合版)
/playsound <sound: string> [player: target] [position: x y z] [volume: float] [pitch: float] [minimumVolume: float]

「sound」では音の種類を指定します。指定できる音はとても多く、すべてを把握するのはムズカシイです。表示される入力候補のなかで、目にとまるものを選んでいくといいでしょう。

サウンドイベントに複数の音がある場合は、その中の一つがランダムに再生されます。例えば洞窟の環境音である「minecraft:ambient.cave」にはcave1~cave19まで19種類の音があり、その中のどれか一つが再生されることになります。

「source」では何の音として鳴らすかを指定します。サウンド設定で表示される項目から選びます。

表記 内容
ambient 環境音
block ブロック
hostile 敵対的生物
master 主音源
music BGM
neutral 友好的生物
player プレイヤー
record ジュークボックス/音符ブロック
voice
weather 天候

こだわりがなければ、masterを選んでおけばOKです。

「targets」で音を聞かせる対象を指定します。コマンド実行者なら@s、すべてのプレイヤーなら@aなどと指定します。

「pos」では音を再生する位置がX、Y、Zの座標で指定できます。現在地で鳴らしたいなら「~ ~ ~」でOK。

「volume」は音が聞こえる距離の指定です。デフォルトでは1で、このときは半径16ブロック以内で音が聞こえます。1未満(たとえば0.3など)を指定すると、範囲内で聞こえる音を小さくすることができます。1以上にしてもそれ以上音は大きくなることはありませんが、音が聞こえる距離が長くなります(2.0なら32ブロックになる)。

「pitch」は音の再生スピードの指定です。Java版は0.5~2.0の範囲で、統合版は0~256の範囲で指定できます。デフォルトの再生速度は1。1未満にすると再生スピードが遅くなり、聞こえる音が低くなります。1以上にすると再生スピードが早くなり、聞こえる音は高くなります。

「minVolume」で最小音量を指定します。デフォルトでは0。1にすると、volumeで設定した距離以上に離れてもボリューム1の音が聞こえます。

Java版ならpos以降、統合版ならtarget以降を省略することが可能です。

入力例:洞窟の環境音を再生する(Java版)
/playsound minecraft:ambient.cave master @s ~ ~ ~ 1 2.0
入力例:洞窟の環境音を再生する(統合版)
/playsound ambient.cave @s ~ ~ ~ 1 2.0

上記のコマンドを実行すると、コマンド実行者に対して洞窟の環境音が2倍のスピードで再生されます。

空を飛びながら空洞音を聞いているnishi

ピッチを変更すると、同じ音源でも違った音楽のように聞こえて面白いです。

/publish ワールドをLANに公開

/publishは、ワールドをLANに公開するためのコマンドです。家庭内の、同じルーターにつながっているパソコン同士でマルチプレイをするときなどに使えます。Java版のみ使用可能です。

構文:LANに公開
/publish [<port>]

「port」で開放するポートを指定できます。指定しない場合は、1024~65535の数値からランダムに選ばれます。家庭内マルチプレイなら、通常は指定しなくてもOK。

入力例:ポートを指定せずにLANに公開
/publish

上記のコマンドを実行すると、LANにワールドが公開されます。下の画像では、ポートが57853になっています。

publishコマンド実行時のチャット欄の表示

「ポート○○○○○でマルチプレイが開始されました」と表示されます。

/recipe レシピの開放・ロック

/recipeは、レシピを開放したりロックしたりするコマンドです。アイテム名やターゲットを指定できます。Java版のみ使用可能です。

構文:すべてのレシピを開放・ロックする
/recipe (give|take) <targets> *
構文:特定のレシピを開放・ロックする
/recipe (give|take) <targets> <recipe>

「give」でレシピの開放、「take」でレシピのロックです。「recipe」にはアイテムIDを指定します。候補から選ぶと簡単。Recipeの指定を「*」にすると、すべてのレシピが開放・ロックできます。

入力例:すべてのレシピの開放
/recipe give @s *

上記のコマンドを実行すると、コマンド実行者のすべてのレシピが開放されます。

全レシピ開放の瞬間

上の画像では、524個のレシピが一度に開放(解除)されています。

/reload データパックのリロード

/reloadは、データパック(Java版)またはビヘイビアパックのファンクション(統合版)の再読み込みをおこなうコマンドです。ファンクションを変更したときなどに使用すると、マイクラを再起動せずに新しいファンクションが読み込めます。Java版・統合版どちらでも使用可能です。

構文:リロード
/reload

上記のコマンドを実効すると、再読み込みが始まります。

reloadコマンド実行時の再読み込み中・・の表示

「再読み込み中・・」と表示されます。

/replaceitem アイテムの置き換え

/replaceitemは、インベントリやブロックの中に入っているアイテムを置き換えることができるコマンドです。スロットを指定して置換することもできます。統合版のみ使用可能です。

構文:ブロックのアイテムを置き換える
/replaceitem block <position: x y z> slot.container <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]
構文:エンティティのアイテムを置き換える
/replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]
構文:ブロックのアイテム置き換え2
/replaceitem block <position: x y z> slot.container <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]
構文:エンティティのアイテム置き換え2
/replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]

ブロックのアイテムを置き換えるときは、「position: x y z」でブロックの位置(座標)を指定し、「slotId: int」でスロットを指定します。スロットの指定は数字です。

チェストやディスペンサー、ホッパーなどは左上のスロットが0で、右に行けば行くほど、下に行けば行くほど数字が大きくなります。チェストなら右上のスロットは8で、右下のスロットは26です。醸造台はビンのスロットが左から0、1、2、材料のスロットが3、燃料のスロットが4。かまどは上のスロットが1、燃料が2、右のスロットが3になっています。

「itemName: Item」では置き換えるアイテムの種類を指定します。表示される候補から選ぶと楽です。「amount: int」個数を、「data: int」でデータ値を指定します。指定したアイテムに対して無効なデータ値を入力した場合は、0(デフォルト)としてあつかわれます。

「components: json]ではアイテムの性質を指定できます。例えばそのブロックが置けるブロックの指定や、そのアイテムが破壊できるブロックの指定などをここでします。

エンティティのアイテムをおきかえるときは「target: target」で対象のエンティティを指定し、「slotType: EntityEquipmentSlot」で置き換えるインベントリスロットを指定します。指定できるスロットには次のようなものがあります。

スロット 番号 内容 対象
slot.armor 0 ウマの防具スロットやラマのカーペットスロット ウマ、ラマ
slot.armor.chest 0 防具スロット胸 プレイヤー、防具立て、Mob
slot.armor.feet 0 防具スロット足 プレイヤー、防具立て、Mob
slot.armor.head 0 防具スロット頭 プレイヤー、防具立て、Mob
slot.armor.legs 0 防具スロット脚 プレイヤー、防具立て、Mob
slot.chest 0~14 ロバ、ラバが装着したチェストのスロット ロバ、ラバ
slot.enderchest 0~26 エンダーチェストのスロット プレイヤー
slot.hotbar 0~8 ホットバー プレイヤー
slot.inventory 0~26(村人は0~7) インベントリ プレイヤー、村人
slot.saddle 0 鞍のスロット ウマ、ロバ、ラバ
slot.weapon.mainhand 0 メインハンドのスロット プレイヤー、防具立て、Mob
slot.weapon.offhand 0 オフハンドのスロット プレイヤー、防具立て、Mob

「oldItemHandling: ReplaceMode」はアイテムの置き換え方法の指定です。「destroy」なら指定したスロットにアイテムが入っていても上書き、「keep」ならアイテムが入っていたら置き換えをキャンセルします。

入力例:プレイヤーの頭に飾りカボチャを装備させる
/replaceitem entity @s slot.armor.head 0 carved_pumpkin

上記のコマンドを実行すると、コマンド実行者の頭に飾りカボチャが装備されます。置き換えるアイテムにair(空気ブロック)を指定すると、何も装備していない状態に戻すこともできます。

replaceitemの実行結果

本来装備できないアイテムも入れられますが、ジャック・オ・ランタンを入れても見た目は変化しませんでした(スロットには入っている)。

入力例:メインハンドに紫のカーペット20個を持つ
/replaceitem entity @s slot.weapon.mainhand 0 keep carpet 20 10

上記のコマンドを実行すると、ホットバーの選択されたマスになにも入っていない場合にかぎり、紫のカーペットが20個入れられます。keepをdestroyにすれば上書き。何も指定しない場合も上書きされます。コマンド最後の数字を変更すれば、入れられるカーペットの色を変更可能です。

入力例:チェストにネザライトインゴットを64個入れる
/replaceitem block ~ ~ ~ slot.container 13 netherite_ingot 64

チェストの上にのって上記のコマンドを実行すると、チェストの真ん中のスロットにネザライトインゴットが入れられます。座標の指定には数字のほか、チルダ(~)やキャレット(^)も使えます。

/ride エンティティをエンティティにのせる

/rideは、エンティティを他のエンティティにのせたりおろしたりできるコマンドです。プレイヤーをテレポートさせてトロッコにのせたり、トロッコをテレポートさせてプレイヤーをのせたりできます。統合版のみ使用可能です。

構文:ライダーを他のエンティティにのせる
/ride <riders: target> start_riding <ride: target> [teleportRules: TeleportRules] [howToFill: FillType]
構文:指定したライダーを降ろす
/ride <riders: target> stop_riding
構文:指定したエンティティのライダーを降ろす
/ride <rides: target> evict_riders
構文:エンティティのある位置にライダーを召喚してのせる
/ride <rides: target> summon_rider <entityType: EntityType> [spawnEvent: string] [nameTag: string]
構文:ライダーのいる位置にエンティティを召喚してのせる
/ride <riders: target> summon_ride <entityType: EntityType> [rideRules: RideRules] [spawnEvent: string] [nameTag: string]

構文は次のように指定します。

構文 内容
riders: target ライダーを指定する
ride: target 乗るエンティティを指定する。対象が1つになるように指定しなければいけない
rides: target 乗るエンティティを指定する
teleportRules: TeleportRules ライダーをエンティティにテレポートさせるか、エンティティをライダーのところにテレポートさせるかの設定。「teleport_ride」か「teleport_rider」のどちらかを選択する。デフォルト(未設定)はteleport_rider(ライダーをエンティティの場所にテレポートさせる)
howToFill: FillType エンティティの乗せ方の設定。「if_group_fits」にすると、すべてのライダーが対象エンティティに乗れるかどうかを調べ、乗れる場合のみのせます。「until_full」または未設定にすると、限界まで1体ずつ乗せます。
entityType: EntityType 召喚するエンティティをを指定する
spawnEvent: string スポーンイベントの指定。懐かせた状態で召喚するときなどに使う
nameTag: string 召喚するエンティティにつける名前を指定する。日本語可
rideRules: RideRules 召喚方法の指定。「skip_riders」は他のエンティティに乗っていないライダーにだけ召喚、「no_ride_change」は他のエンティティに乗っていない&乗られていないライダーにのみ召喚、「reassign_riders」または指定なしの場合は、ライダーが何かに乗っていてもエンティティを召喚します
入力例:ハスクをニワトリに乗せる
/ride @e[type=husk,c=1] summon_ride chicken

上記のコマンドを実行すると、もっとも近くにいるハスク1体のところにニワトリが召喚され、ハスクがニワトリに乗ります。

rideコマンド

入力例:ハスクを重ねる
/ride @e[type=husk,c=1] summon_rider husk

上記のコマンドを実行すると、近くにいるハスクに、ハスクを肩車させます。繰り返せばハスクをどんどん重ねていくことも可能です。子供のハスクは肩車できないので、出てきたら倒す必要があります。

入力例:プレイヤーをもっとも近いトロッコに乗せる
/ride @s start_riding @e[type=minecart,c=1]

上記のコマンドを実行すると、コマンド実行者が乗車可能なトロッコのうち最も近いものにテレポートして乗車します。teleport_rideを指定すれば、トロッコのほうをテレポートさせることもできます。

入力例:ウシを2体ボートに乗せる
/ride @e[type=cow] start_riding @e[type=boat]

上記のコマンドを実行すると、近くにいるウシをボートにテレポートさせて乗せることができます。

入力例:ボートからエンティティを降ろす
/ride @e[type=boat] evict_riders

上記のコマンドを実行すると、ボートからエンティティを降ろすことができます。stop_ridingでもおろせますが、対象の乗り物に種類の違うモブがのっているときなどは、evict_ridersを使うと一度に降ろせるので楽です。

入力例:懐いたウマを召喚してプレイヤーを乗せる
/ride @s summon_ride horse no_ride_change minecraft:on_tame 俺の馬

上記のコマンドを実行すると、「俺の馬」という名前のついた懐いている馬を召喚してプレイヤーを乗せることができます。

入力例:近くにいる村人1人をトロッコに乗せる
/ride @e[type=villager,c=1] summon_ride minecart skip_riders

上記のコマンドを実行すると、近くにいる村人一人が何の乗り物にものっていない場合に限り、トロッコを召喚して乗せます。

/say メッセージの送信

/sayは、すべてのプレイヤーにメッセージを送ることができるコマンドです。ターゲットセレクターを使ってプレイヤー名をメッセージに含めることもできます。Java版・統合版どちらでも使用可能です。

構文:メッセージの送信
/say <message>

「message」の部分にメッセージを入力します。ここには「@a」「@p」などのターゲットセレクターを含めることができ、表示されるメッセージではプレイヤー名に変換されます。複数のプレイヤーがワールドにいる場合は、名前1、名前2、名前3という感じで名前が表示されます。

入力例:全プレイヤーにこんにちはと言う
/say こんにちは@a

上記コマンドを実行すると、全プレイヤーに「こんにちはプレイヤー1、プレイヤー2、プレイヤー3、プレイヤー4・・・」というメッセージが表示されます。

sayコマンドの実行結果

このコマンドはすべてのプレイヤーにメッセージが表示されます。個人的にメッセージを送る場合は、/tellコマンドなどを使います。

/schedule ファンクションを遅れて実行させる

/scheduleは、ファンクションを遅れて実行させるためのコマンドです。指定した時間が経過したあと、または指定したエリアが読み込まれたときにファンクションが実行されます。Java版・統合版どちらでも使用可能です。

構文:遅延時間を指定して実行(Java版)
/schedule function <function> <time> [append|replace]
構文:スケジュールの削除(Java版)
/schedule clear <function>
構文:エリアを指定して実行(統合版)
/schedule on_area_loaded add <from: x y z> <to: x y z>
構文:エリアを指定して実行2(統合版)
/schedule on_area_loaded add circle <center: x y z> <radius: int> <function: filepath>
構文:エリアを指定して実行3(統合版)
/schedule on_area_loaded add tickingarea <name: string> <function: filepath>

Java版と統合版ではコマンドの内容が少し違います。Java版は遅延時間を指定して実行するのに対して、統合版ではエリアを指定してそのエリアが読み込まれたら実行するという形になっています。

「function」ではファンクションファイル(functionコマンドで実行するファイル)へのパスを入力します。「time」は遅延させる時間の指定です。基準はマイクラ内の時間で、d(day)、s(second)、t(tick)のいずれかの単位が使えます。例えば「2d」とすれば、マイクラ内の時間で2日後にファンクションが実行されます。

「append」「replace」はスケジュールを共存方法の指定です。「append」にすると前に追加したスケジュールはそのままに新しいスケジュールが追加され、複数のスケジュールが共存することになります。「replace」にすると新しいスケジュールが追加されたときにスケジュールを置き換えます。

「from」「to」は、エリアの座標を指定します。「center」で中心の座標を、「radius」で半径を指定することも可能。ティッキングエリア(常時読み込む領域)を作ってある場合は、名前を入力することでティッキングエリアが読み込まれたときに実行することもできます。

入力例:2日後にファンクションを実行する(Java版)
/schedule function nishi10:test1 2d

上記のコマンドを実行すると、コマンド実行時から2日後にtest1.mcfunctionに書かれたコマンドが実行されます。

/schedule function実行時の表示

入力例:1000メートル先が読み込まれたらファンクションを実行する(統合版)
/schedule on_area_loaded add ~1000 ~ ~1000 ~1100 ~ ~1100 test1

上記のコマンドを実行すると、現在地から1000メートル離れたエリアが読み込まれたときにファンクション「test1.mcfunction」に書かれたコマンドが実行されます。指定した範囲がすでに読み込まれているときは即座に実行され、まだ読み込まれていないときは「キューに追加されました」と表示されます。

/scoreboard プレイヤーやMobの行動をカウント

/scoreboardは、プレイヤーやモブの行動をカウントできるコマンドです。ジャンプした回数や死んだ回数、モブを倒した回数などを記録し、その結果を他のコマンドで利用することができます。Java版・統合版どちらでも使用可能です。

構文:スコアボードの操作(Java版)
/scoreboard objectives (add|list|modify|remove|setdisplay)
… add <objective> <criterion> [<displayName>]
… list
… modify <objective> displayname <displayName>
… modify <objective> rendertype (hearts|integer)
… remove <objective>
… setdisplay <slot> [<objective>]
構文:スコアボードの値の操作など(Java版)
/scoreboard players (add|enable|get|list|operation|remove|reset|set)
… add <targets> <objective> <score>
… enable <targets> <objective>
… get <target> <objective>
… list [<target>]
… operation <targets> <targetObjective> <operation> <source> <sourceObjective>
… remove <targets> <objective> <score>
… reset <targets> [<objective>]
… set <targets> <objective> <score>
構文:スコアボードの操作(統合版)
/scoreboard objectives add <objective: string> dummy [displayName: string]
/scoreboard objectives list
/scoreboard objectives remove <objective: string>
/scoreboard objectives setdisplay <list|sidebar> [objective: string] [ascending|descending]
/scoreboard objectives setdisplay belowname [objective: string]
構文:スコアボードの値の操作など(統合版)
/scoreboard players list [playername: target]
/scoreboard players reset <player: target> [objective: string]
/scoreboard players test <player: target> <objective: string> <min: wildcard int> [max: wildcard int]
/scoreboard players random <player: target> <objective: string> <min: int> [max: int]
/scoreboard players <set|add|remove> <player: target> <objective: string> <count: int>
/scoreboard players operation <targetName: targets> <targetObjective: string> <operation: operator> <selector: target> <objective: string>

/scoreboardコマンドには、スコア(オブジェクト)そのものを操作する「/scoreboard objectives ~」と、スコアの値を操作する「/scoreboard players ~」という入力方法があります。それぞれでできることは次のようになっています。

入力1 入力2 内容
objectives add スコアを新しく作成する
list スコアの表示名や条件を表示する
modify(Java版のみ) スコアの表示名や表示形式の変更
remove スコアを削除する
setdisplay スコアを表示スロットに表示する
players add 指定した量のスコアを加算する
enable(Java版のみ) /triggerコマンドの使用を許可する
get(Java版のみ) スコアの値を表示する
list スコアを持っている全てのエンティティを表示する
operation スコアの値を算術演算によって変更する
remove スコアの値を指定した量だけ減算する
reset スコアの値をリセット(削除)する
set スコアを指定した値にセット(上書き)する
test(統合版のみ) スコアの値が指定した範囲内かを調べる

構文の各項目は、次のような内容になっています。

入力3 内容
objective スコア名。他のスコアボードコマンドで指定するときに、IDのように使う。半角英数字で入力
criterion 条件。カウントするプレイヤーの行動を指定する。いろいろな行動を検知できるが、統合版では現状dummyしか使えない
displayName 表示名。日本語にするときはダブルクォーテーション(")で囲む
slot スコアの値を表示する場所。
target(s) 対象プレイヤー。存在しないプレイヤーを指定できたりもする。
operation 演算方法の指定
source 演算に使うスコアを持つプレイヤー
sourceObjective ソースとなるスコアの名前

使い方は以下の入力例を参考にしてください。

入力例:倒したMobの数のスコアを作る
/scoreboard objectives add KILLCOUNT minecraft.custom:minecraft.mob_kills "倒したMobの数"
入力例:倒したMobの数をサイドバーに表示する
/scoreboard objectives setdisplay sidebar KILLCOUNT

上記のコマンド2つを順に実行すると、画面右に「倒したMobの数」という項目が表示されます。コマンドブロックは必要なく、リアルタイムで値が更新されていきます。

scoreboardコマンドの入力結果

1つ目のコマンドで、KILLCOUNTというスコアを作成しています。条件には、Mobを倒した回数(minecraft.custom:minecraft.mob_kills)を指定。2つ目のコマンドでサイドバーに表示されるように設定しています。

Mobを倒した回数以外にも、使える条件はたくさんあります。公式Wikiなどで確認できるほか、入力候補から選ぶこともできます。

/seed シード値の表示

/seedは、ワールドのシード値を表示できるコマンドです。同じワールドを別プレイヤーと共有したいときや、同じワールドでやり直したいときなどに使えます。Java版のみ使用可能です。

構文:シード値の表示
/seed

上記のコマンドを実行すると、ワールドのシード値が表示されます。

seedコマンドで表示されたシード値

Java版では、表示されたシード値をクリックするだけでクリップボードにコピーすることができます。

表示されるシード値はランダムな数字になっていますが、ワールドを作る際はアルファベットでの入力も可能です(数字に変換される)。シード値については以下の記事でも詳しく紹介しているので、合わせて読んでみてください。

/setblock ブロックを設置する

/setblockは、指定した座標にブロックを設置できるコマンドです。向きを指定して置くこともできます。Java版・統合版どちらでも使用可能です。

構文:ブロックの設置(Java版)
/setblock <pos> <block> [destroy|keep|replace]
構文:ブロックの設置(統合版)
/setblock <position: x y z> <tileName: Block> [tileData: int] [destroy|keep|replace]
構文:状態を指定してブロックを設置(統合版)
/setblock <position: x y z> <tileName: Block> [blockStates: block states] [destroy|keep|replace]

「pos」でブロックを置く座標を指定し、「block」で置くブロックの種類を指定します。すでにあるブロックは上書きされますが、「destroy」「keep」「replace」の指定で処理の方法を指定することもできます。

入力 内容
destroy すでにあるブロックを破壊して置き換えます。プレイヤーが壊したときと同じようにアイテムもドロップします。
keep 指定した座標が空気ブロックのときのみ置き換えます。
replace 上書きします。何も指定しなければreplaceになります。

Java版でブロックの向きを指定するときは、ブロックIDにつづけて[]内に「facing」や「axis」を入力します。統合版ではブロックIDのあとに数字や文字を入力して、ブロックの種類や向きを指定できます。

入力例:X=0,Y=110,Z=0に石を設置する
/setblock 0 110 0 minecraft:stone

上記のコマンドを実行すると、X=0,Y=110,Z=0に石が設置されます。読み込まれている範囲であれば、プレイヤーから離れた位置にもブロックを設置することができます。

setblockコマンドで設置されたブロック

入力例:西向きのホッパーを設置する(Java版)
/setblock ~ ~ ~ minecraft:hopper[facing=west]
入力例:西向きのホッパーを設置する(統合版)
/setblock ~ ~ ~ hopper ["facing_direction":4]

上記のコマンドを実行すると、西向きのホッパーを設置することができます。Java版と統合版では書き方が少し違うので注意が必要。

入力例:足元が空気ブロックなら黄色いカーペットを設置(統合版)
/setblock ~ ~ ~ carpet 4 keep

上記のコマンドを実行すると、足元が空気ブロックのときだけ黄色いカーペットが設置されます。すでにある設置物をそのままにしたいときにkeepが便利です。

/setmaxplayers 最大人数を設定する

/setmaxplayersは、マルチプレイの最大人数を設定することができるコマンドです。1~30人で設定できます。統合版のみ使用可能です。

構文:最大人数の設定
/setmaxplayers <maxPlayers: int>

「maxplayers」で最大人数の数値を指定します。

入力例:最大人数を20人にする
/setmaxplayers 20

上記のコマンドを実行すると、マルチプレイの最大人数が20人に設定されます。

setmaxplayersコマンド実行時の表示

スイッチやPS4のフレンドではこのコマンドを実行しても増やすことができないという書き込みがありました。Xboxのフレンドには反映されるようなので、Xboxでフレンドになって招待するとよいです。

/setworldspawn ワールドのスポーン地点の設定

/setworldspawnは、指定した座標をワールドのスポーン地点として設定するコマンドです。座標を指定しない場合は、現在地がスポーン地点になります。Java版・統合版どちらでも使用可能です。

構文:ワールドのスポーン地点設定(Java版)
/setworldspawn [<pos>] [<angle>]
構文:ワールドのスポーン地点設定(統合版)
/setworldspawn [spawnPoint: x y z]

「pos」「x y z」で座標を指定します。Java版では「angle」で向きを指定することもできます。

入力例:X=0,Y=63,Z=0をワールドのスポーン地点にする
/setworldspawn 0 63 0

上記のコマンドを実行すると、X=0,Y=63,Z=0がワールドのスポーン地点に設定されます。

setworldspawnコマンド実行時のチャット欄の表示

指定した座標がブロックで埋まっている場合は、プレイヤーがスポーンできる高さでリスポーンします。またベッドで寝た場合は、そのベッドがリスポーン地点になります。

/spawnpoint プレイヤーのスポーン地点の設定

/spawnpointは、指定した座標をプレイヤーのスポーン地点として設定するコマンドです。座標を指定しない場合は、現在地がスポーン地点となります。Java版・統合版どちらでも使用可能です。

構文:プレイヤーのスポーン地点設定(Java版)
/spawnpoint [<targets>] [<pos>] [<angle>]
構文:プレイヤーのスポーン地点設定(統合版)
/spawnpoint [player: target] [spawnPos: x y z]

「target」で対象プレイヤーを指定し、「pos」「x y z」で座標を指定します。Java版では「angle」で向きを指定することもできます。

入力例:現在地をスポーン地点にする
/spawnpoint nishi10

上記のコマンドを実行するとnishi10のスポーン地点が現在地に設定されます。

spawnpointコマンド実行時のチャット欄の表示

このコマンドを使えば、プレイヤーごとにスポーン地点を変えることができます。

/spectate エンティティにとりつかせる

/spectateは、スペクテイターモードのプレイヤーを他のエンティティにとりつかせるコマンドです。動物やモンスターの始点を楽しめます。Java版のみ使用可能です。

構文:エンティティにとりつかせる
/spectate [<target>] [<player>]

「target」で取り付くエンティティを、「player」でとりつかせるプレイヤーを指定します。どちらも指定せずに実行すると、とりついた状態を解除することができます。

入力例:近くのクリーパーにとりつく
/spectate @e[type=minecraft:creeper,limit=1] @s

上記のコマンドを実行すると、コマンド実行者が近くにいるクリーパーにとりつきます。

/spectateコマンドでクリーパーにとりついた状態

「○○の観察を開始します」と表示されます。ちなみにクリーパーにとりつくと視界が緑色になり、クモにとりつくと画面が分割されて表示されます。スペクテイターモードで対象を左クリックしてもとりつくことが可能です。

/spreadplayers エンティティを座標を指定して拡散

/spreadplayersは、指定した座標を中心として、周囲にエンティティをランダムに配置するコマンドです。プレイヤーはもちろん、モンスターやドロップアイテムにも使えます。Java版・統合版どちらでも使用可能です。

構文:エンティティの拡散(Java版)
/spreadplayers <center> <spreadDistance> <maxRange> <respectTeams> <targets>
構文:最大の高さを指定してエンティティを拡散(Java版)
/spreadplayers <center> <spreadDistance> <maxRange> under <maxHeight> <respectTeams> <targets>
構文:エンティティの拡散(統合版)
/spreadplayers <x: value> <z: value> <spreadDistance: float> <maxRange: float> <victim: target>

「center」「x,z」で中心となる座標を指定します。「spreadDistance」は、拡散されるエンティティ同士の最小距離、「maxRange」はエンティティから中心までの水平軸上の最大距離、「respectTeams」は同じチームをまとめるかどうかの指定(true or false)です。「target」で拡散する対象を指定します。

Java版では、「under <maxheight>」の記述で拡散する最大の高さを指定することもできます。

入力例:エンティティを周囲に集める
/spreadplayers ~ ~ 0 10 false @e[type=!player]

上記のコマンドを実行すると、現在地周辺(現在地を中心とする縦横20ブロックの正方形の範囲内)にプレイヤー以外のエンティティが集められます。

spreadplayersの実行結果

コマンド名を見るとプレイヤーを散らばらせるという意味合いを感じますが、範囲を狭く指定すればモンスターや動物などを集めるために使うことができます。

/stopsound 指定した音を止める

/stopsoundは、指定した音を止めるコマンドです。再生を完全に停止するわけではなく、コマンド実行後も再び音のなる条件が満たされれば再生されます。Java版・統合版どちらでも使用可能です。

構文:指定した音を止める(Java版)
/stopsound <targets> [<source>] [<sound>]
構文:指定した音を止める(統合版)
/stopsound <player: target> [sound: string]

「target」で音をとめる対象プレイヤーを指定します。「source」では音のカテゴリー(ambient、block、masterなど)を、「sound」で停止する音を指定します。

入力例:全ての音を停止する
/stopsound @s

上記のコマンドを実行すると、コマンド実行者のすべてのサウンドが停止されます。

stopsoundコマンド実行後のチャット欄の表示

「すべてのサウンドを停止しました」と表示されます。

/structure 構造物の保存・ロード

/structureは、構造物を保存したり、呼び出したりできるコマンドです。ストラクチャーブロックがなくても構造物がコピーできます。統合版のみ使用可能です。

構文:構造物を保存する
/structure save <name: string> <from: x y z> <to: x y z> [includesEntites: Boolean] [saveMode: StructureSaveMode] [includesBlocks: Boolean]
構文:保存した構造物を呼び出す
/structure load <name: string> <to: x y z> [rotation: Rotation] [mirror: Mirror] [animationMode: StructureAnimationMode] [animationSeconds: float] [includesEntites: Boolean] [includesBlocks: Boolean] [integrity: float] [seed: string]
構文:保存データを削除する
/structure delete <name: string>

/structureコマンドの要素は、次のような内容になっています。

項目 内容
name 保存データの名前をつける。日本語でもOK。
from,to saveなら、保存する空間の始点と終点の座標。loadなら、始点となる座標。
includesEntities エンティティの保存についての指定。trueで保存データにエンティティを含める。falseなら含めない。省略するとtrueになる。
saveMode 保存方法の選択。diskにすると、ログアウトしても再ログイン後に呼び出せる。memoryにすると、ログアウトした時点で保存データが失われます。省略するとmemoryになる。
includesBlocks ブロックの保存についての指定。trueで保存データにブロックを含める。falseでエンティティだけが保存される。省略するとtrueになる。
rotation 呼び出す構造物の回転角度の指定。0_degrees、90_degrees、180_degrees、270_degreesのいずれかを選ぶ。省略すると0_degreesになる。
mirror 反転させる場合の軸の指定。x、z、xz、noneのいずれかを選ぶ。省略するとnoneになる。
animationMode 構造物を呼び出すときのアニメーションの指定。ブロック単位で積み上げられていくblock by blockと、レイヤー単位で積み上げられていくlayer by layerがあります。指定しないと一気に呼び出されます。ランタンなど一部のアイテムは、アニメーションを指定するとアイテム化してしまうことがあるので注意が必要。
animationSeconds アニメーションの時間を秒数で指定します。
integrity 呼び出すときにブロックが出現する確率を指定できます。100にすれば全てのブロックが呼び出され、50にすると半分だけブロックが呼び出されます。0にすると何も出てきません。
seed integrityを指定したとき、seedを指定するとブロックの抜け方が変わります。指定しない場合はランダムに決められます。
入力例:目の前の構造を保存
/structure save TEST ~ 64 ~ ~4 69 ~5

上記のコマンドを実行すると、座標(x y z)=(~ 64 ~)から(x y z)=(~4 69 ~5)までに存在する構造物(ブロック)が「TEST」という名前で保存されます。

structureコマンドの実行結果

「mystructure:TESTという名前で保存しました」と表示されます。

入力例:保存した構造物を目の前に呼び出す
/structure load TEST ~1 ~ ~

上記のコマンドを実行すると、現在地からX軸方向に1進んだ位置に、「TEST」として保存した構造物が呼び出されます。今あるブロックは上書きされてしまうので注意。

入力例:アニメーションで呼び出す
/structure load TEST ~1 ~ ~ 0_degrees none block_by_block 10

上記のコマンドを実行すると、TESTがアニメーションで呼び出されます。

ストラクチャーブロックを使う必要がないので、慣れるととても便利です。

/summon エンティティを召喚する

/summonは、指定した座標にエンティティを召喚するコマンドです。NBTデータなどで状態を変えて召喚することもできます。Java版・統合版どちらでも使用可能です。

構文:エンティティを出現させる(Java版)
/summon <entity> [<pos>] [<nbt>]
構文:エンティティを出現させる(統合版)
/summon <entityType: EntityType> [spawnPos: x y z] [spawnEvent: string] [nameTag: string]
構文:エンティティを出現させる(統合版)2
/summon <entityType: EntityType> <nameTag: string> [spawnPos: x y z]

「entity」「entityType」で召喚するエンティティの種類を指定し、「pos」で召喚する座標を指定します。Java版でNBTデータを追加したいとき、統合版でスポーンイベントを追加したいときは、座標のあとに入力します。

入力例:懐いたウマを召喚する(統合版)
/summon horse ~ ~ ~ minecraft:on_tame

上記のコマンドを実行すると、現在地に懐いたウマが召喚されます。

summonコマンドの実行結果

入力例:懐いてサドルを装備したウマを召喚する(Java版)
/summon horse ~ ~ ~ {Tame:1b,SaddleItem:{id:"minecraft:saddle",Count:1b}}

上記のコマンドを実行すると、懐いた状態でさらにサドルもついたウマを召喚することができます。

入力例:「TEST」という名前の防具立てを召喚する(統合版)
/summon armor_stand TEST ~ ~ ~

上記のコマンドを実行すると、「TEST」という名前をつけた防具立てを召喚することができます。

入力例:「TEST」という名前の防具立てを西向きで召喚する(Java版)
/summon armor_stand ~ ~ ~ {Rotation:[90f,0f],CustomName:{"text":"TEST"}}

上記のコマンドを実行すると、「TEST」という名前をついた防具立てを西向きに向きを変えて召喚することができます。村人(minecraft:villager)や雷(/summon minecraft:lightning_bolt)も自由に出現させることが可能です。ただ複数のエンティティを同時に出すことはできないので、たくさん召喚したい場合はコマンドブロックを並べて同時に実行したり、リピートコマンドブロックを使ったりする必要があります。

/tag エンティティにタグを追加する

/tagは、指定したエンティティにタグを追加することができるコマンドです。「○○のタグを持つエンティティを××する」という操作をしたいときに使います。Java版・統合版どちらでも使用可能です。

構文:タグを追加する
/tag <targets> add <name>
構文:持っているタグのリストを表示
/tag <targets> list
構文:タグを削除する
/tag <targets> remove <name>

「target」でタグを操作するエンティティを指定、「name」でつけるタグ名を指定します。統合版では、nameに日本語を使うこともできます。

入力例:3体のヒツジにタグを付ける(Java版)
/tag @e[type=sheep,limit=3] add TEST

上記のコマンドを実行すると、近くにいる羊のうち3体だけに「TEST」というタグが追加されます。

tagコマンドの実行結果

入力例:3匹以外のヒツジを消滅させる
/kill @e[type=sheep,tag=!TEST]

上記のコマンドを実行すると、「TEST」タグをもつヒツジ以外のヒツジが消滅します。

/team チームの操作

/teamは、チームを追加・削除したり変更したりするコマンドで、Java版のみ使用可能です。

構文:チームのリストを表示する
/team list [<team>]
構文:チームを作成する
/team add <team> [<displayName>]
構文:チーム・メンバーの削除
/team (remove|empty) <team>
構文:チームに追加する
/team join <team> [<members>]
構文:チームから離脱させる
/team leave <members>
チームの情報を変更する
/team modify <team> <option> <value>

コマンドに入力する内容は、次のようになっています。

コマンド 内容
list チームの数とチーム名を表示する。チーム名を指定すると、チームにいるエンティティの数とメンバー名を表示する
add チームを作成する
remove 指定したチームを削除する
empty 指定したチームのメンバーをすべて削除する
join 指定したエンティティをチームに加える。エンティティを指定しない場合はコマンド実行者が追加される
leave 指定したメンバーをチームから離脱させる
modify チームのなどを変更する
team チーム名
diplayName チームの表示名
members メンバー名
option displayName、color、friendlyFire、seeFriendlyInvisibles、nametagVisibility、deathMessageVisibility、collisionRule、prefix、suffixを指定できる。
value 各optionの値を指定する
入力例:ウシを牛チーム(cowteam)に追加する
/team join cowteam @e[type=cow]

上記のコマンドを実行すると、まわりにいるウシが「牛チーム」に追加されます。

teamコマンドの実行結果

ウシを指定しても3「人」と表示されます。

/teammsg チームメッセージの送信

/teammsgは、コマンド実行者が属するチームのメンバー全員にメッセージを送ることができるコマンドです。/tmコマンドと同じ機能。Java版のみ使用可能です。

構文:チームメッセージの送信
/teammsg <message>

「message」に送信するメッセージを入力します。日本語もOKです。

入力例:チームのメンバーに挨拶する
/teammsg こんにちは

上記のコマンドを実行すると、自分が所属するメンバーに「こんにちは」というメッセージが送信されます。

/teammsgコマンドでメッセージを送信したときの表示

チーム名、プレイヤー名、メッセージという並びで表示されます。

/teleport エンティティをテレポートさせる

/teleportは、エンティティをテレポートさせることができるコマンドです。プレイヤーだけでなく、動物やモンスターもテレポートできます。Java版・統合版どちらでも使用可能です。

構文:対象を指定の座標にテレポートさせてコマンド実行者と同じ向きに回転させる(Java版)
Java版:/teleport <location>

「location」でテレポート先の座標を指定します。「/execute as @e[type=minecraft:chicken,limit=1] run teleport ~ ~10 ~」などという感じで/executeコマンドで他のエンティティをテレポートさせると、コマンド実行者と同じ向きにエンティティが回転してテレポートします。

構文:回転なしでエンティティを指定の座標にテレポートさせる
Java版:
/teleport <targets> <location>
統合版:
/teleport <destination: x y z> [checkForBlocks: Boolean]
/teleport <victim: target> <destination: target> [checkForBlocks: Boolean]

対象を指定座標に回転させずにテレポートします。「location」や「destination」が座標の指定です。統合版では[checkForBlocks]でテレポートの方法も指定できます。trueにすると、プレイヤーがテレポート先でブロックにぶつからない場合にだけテレポートします。

構文:対象をエンティティにテレポートさせて同じ向きに回転させる
Java版:
/teleport <destination>
/teleport <targets> <destination>

統合版:
/teleport <destination: target> [checkForBlocks: Boolean]
/teleport <victim: target> <destination: target> [checkForBlocks: Boolean]

対象を、指定したエンティティの場所にテレポートさせて、そのエンティティと同じ向きに回転させます。「target」でテレポートさせる対象を、「destination」でテレポート先のエンティティを指定します(targetを省略した場合は、コマンド実行者がテレポートします)。さきほどのコマンドと同じく、統合版では「checkForBlocks」の指定ができます。

構文:回転を指定して対象を指定座標にテレポートさせる
Java版:
/teleport <targets> <location> <rotation>
/teleport <targets> <location> facing <facingLocation>
/teleport <targets> <location> facing entity <facingEntity> [<facingAnchor>]
統合版:
/teleport <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/teleport <destination: x y z> facing <lookAtPosition: x y z> [checkForBlocks: Boolean]
/teleport <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]
/teleport <victim: target> <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/teleport <victim: target> <destination: x y z> facing <lookAtPosition: x y z> [checkForBlocks: Boolean]
/teleport <victim: target> <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]

回転を指定して対象をテレポートさせることができます。角度(数値)での指定、エンティティに向けて回転、座標に向けての回転など、指定方法をいろいろ選ぶことができます。

入力例:ウシをプレイヤーの8ブロック上にテレポート
/teleport @e[type=minecraft:cow] ~ ~8 ~

上記のコマンドを実行すると、まわりにいるウシがコマンド実行者の8ブロック上にテレポートさせられます。

teleportコマンドで集められたウシたち

1ヶ所に集められているので、ダメージを受けています。

/tell プライベートメッセージの送信

/tellは、特定のプレイヤーにプライベートメッセージを送ることができるコマンドです。/msgコマンドや/wコマンドで同じことができます。Java版・統合版どちらでも使用可能です。

構文:プライベートメッセージ送信
/tell <targets> <message>

「target」でメッセージを送る相手を、messageで送る文章を指定します。

入力例:おやすみと言う
/tell nishi10 good night

上記のコマンドを実行すると、nishi10に「good night」とメッセージが送られます。

/tellraw JSON形式のメッセージを送信

/tellrawは、JSON形式のメッセージを送信できるコマンドです。文字を装飾したりスコアの値を表示させたりできます。Java版・統合版どちらでも使用可能です。

構文:JSONメッセージを送信
/tellraw <targets> <message>

「targets」でメッセージを送る対象を、「message」でメッセージの内容を指定します。

入力例:色を変えて太字(Java版)
/tellraw @a {"text":"赤だよ","bold":"true","color":"red"}

上記のコマンドを実行すると、赤字でメッセージが表示されます。

入力例:色を変えて途中から太字(統合版)
/tellraw @a {“rawtext”:[{"text":"§c赤で§lここから太字だよ"}]}

上記のコマンドを実行すると、文字の色や太さを変えることができます。Java版では「color、色名」「bold、true」で、統合版では§(セクション)+数字またはアルファベットでの指定です。使える指定は次のようになっています。

装飾 Java版 統合版
black §0
濃い青 dark_blue §1
濃い緑 dark_green §2
濃い水色 dark_aqua §3
濃い赤 dark_red §4
濃い紫 dark_purple §5
オレンジ gold §6
灰色 gray §7
濃い灰色 dark_gray §8
blue §9
green §a
水色 aqua §b
red §c
ピンク light_purple §d
黄色 yellow §e
white §f
§g
難読化 obfuscated §k
太字 bold §l
打ち消し線(表示されず) strikethrough §m
下線(表示されず) underlined §n
斜体 italic §o
装飾のリセット §r
入力例:プレイヤー名の表示(Java版)
/tellraw @a {"selector":"@e[type=minecraft:player]"}
入力例:プレイヤー名の表示(統合版)
/tellraw @a {"rawtext":[{"selector":"@e[type=minecraft:player]"}]}

上記のコマンドを実行すると、メッセージにプレイヤー名を表示することができます。selector+ターゲットセレクターという形式です。

入力例:スコアの表示(Java版)
/tellraw @a [{"selector":"@s"},{"text":"が倒したMobの数は"},{"score":{"name":"@s","objective":"KILLCOUNT"}},{"text":"です"}]
入力例:スコアの表示(統合版)
/tellraw @a {"rawtext":[{"selector":"@s"},{"text":"が倒したMobの数は"},{"score":{"name":"@s","objective":"KILLCOUNT"}},{"text":"です"}]}

上記のコマンドを実行すると、プレイヤー名やスコアボードのスコアをふくんだメッセージを表示することができます。

tellrawの実行結果

もちろん、文字を装飾しながら表示させることもできます。

/testfor 指定したエンティティのカウント

/testforは、指定した条件に一致するエンティティを数えることができるコマンドです。プレイヤー名を指定すれば、そのプレイヤーがオンラインかどうかを調べられます。統合版のみ使用可能です。

構文:エンティティをカウント
/testfor <victim: target>

「target」で対象を指定します。プレイヤー名かターゲットセレクターが入力可能です。

入力例:ドロップアイテムの数をカウントする
/testfor @e[type=item]

上記のコマンドを実行すると、まわりに落ちているアイテムの数がカウントされます。

testforコマンドの実行結果

「item」を「zombie」に変えればゾンビが、「cow」に変えればウシがカウントされます。

入力例:座標と距離を指定してカウントする
/testfor @e[x=600,y=~,z=-1000,r=30]

上記のコマンドを実行すると、X=600,Y=現在値の高さ,Z=-1000を中心に半径30ブロック以内にあるエンティティがカウントされます。

コマンドブロックで/testforコマンドを実行する場合は、コンパレーターを接続しておくことでエンティティが見つかったときに信号を出力することができます(強度はエンティティの数による)。なんらかのエンティティがいたら作動するような仕掛けを作ることが可能です。

/testforblock 指定したブロックがあるか調べる

/testforblockは、特定の座標に指定したブロックがあるかどうかを調べるコマンドです。統合版のみ使用可能。

構文:ブロックが一致するか調査
/testforblock <position: x y z> <tileName: Block> [dataValue: int]

「position」で座標を指定し、「tileName」にブロックIDを入力します。データ値があれば、ブロックIDのあとに入力します。

入力例:黄色のウールがあるかどうか判別する
/testforblock 600 64 -1000 wool 4

上記のコマンドを実行すると、X=600,Y=64,Z=-1000の場所に黄色のウール(woolのデータ値1)があるかどうかを調べます。

testforblockの実行結果

コマンドブロックでこのコマンドを実行する場合、レッドストーンコンパレーターを接続していれば指定したブロックが存在したときに強度1の信号を発します。特定のブロックを置いたときに作動するような装置に使えます。

/testforblocks 指定範囲のブロックを比較

/testforblocksは、指定した範囲にあるブロックが一致するかどうかを調べるコマンドです。統合版のみ使用可能。

構文:指定範囲のブロックを比較
/testforblocks <begin: x y z> <end: x y z> <destination: x y z> [masked|all]

「begin」と「end」で比較元の始点と終点の座標を、「destination」で比較先の始点の座標を指定します。比較方法を「masked」にすると、比較元の空気ブロック以外のブロックについて調べます。「all」なら空気ブロックも含むすべてのブロックで調べます。

入力例:構想物のブロックを比較
/testforblocks 609 64 -987 612 69 -984 618 68 -1003

上記のコマンドを実行すると、X=609,Y=64,Z=-987からX=612,Y=69,Z=-984までにあるブロックが、X=618,Y=68,Z=-1003を始点とする空間にあるブロックと比較されます。

testforblocksの実行結果

ブロックが一致していると「○○個のブロックを比較しました」と表示されます。○○は一致したブロックの数です。

コマンドブロックでこのコマンドを実行する場合は、成功すると接続したレッドストーンコンパレーターが強度1の信号を出します。「ブロックを同じ配置にすると動く」といった仕掛けに使えます。

/tickingarea 常にロードする領域の作成・削除

/tickingareaは、常に読み込まれる範囲を追加したり削除したりするコマンドです。このコマンドで指定した範囲は、プレイヤーが遠く離れても常に読み込まれます(装置があれば動きます)。統合版のみ使用可能です。

構文:四角い領域を追加
/tickingarea add <from: x y z> <to: x y z> [name: string]
構文:円形の領域を追加
/tickingarea add circle <center: x y z> <radius: int> [name: string]
構文:指定した名前の領域を削除
/tickingarea remove <name: string>
構文:指定座標がふくまれる領域を削除
/tickingarea remove <position: x y z>
構文:全ての領域を削除
/tickingarea remove_all
ティッキングエリア一覧
/tickingarea list [all-dimensions: AllDimensions]

ティッキングエリア(ティック領域)は、四角形または円形で追加することができます。四角形で追加するときは「add」で「from(始点)」「to(終点)」を指定、円形で追加するときは、「add circle」で「center(中心)」と「radius(半径・チャンク数0~4)」を指定します。

ただし指定した範囲がそのままティック領域になるわけではなく、指定した範囲を含むチャンクがティック領域になります。「name(名前)」は省略できますが、「remove」で削除するときにあったほうが便利なので、わかりやすいものを指定しておくといいでしょう。

作成したティック領域を削除するときは「remove」「remove_all」を使います。removeでは座標や名前を指定して削除することができ、remove_allで設定されている全てのティック領域を削除します。

「list」で現在設定されているすべてのティック領域を表示します。listのあとにall-dimensionsとつければ、ネザーやエンドなど他のディメンションのティック領域も合わせて表示できます。

入力例:現在地をティック領域にする
/tickingarea add ~ ~ ~ ~ ~ ~ home

上記のコマンドを実行すると、現在地をふくむチャンクがティッキングエリアとして設定されます。

tickingareaコマンド

ティック領域は10個まで設定することができます。プレイヤーが離れたときもコマンドブロックやレッドストーン回路を動かし続けたいときや、作物を成長させたいとき、Mobに活動させたいときなどに便利です。

/time 時間を変更する

/timeは、時間を進めたり指定の時刻にしたりするコマンドです。すぐ昼間にしたい、夜にしたいときに使います。Java版・統合版どちらでも使用可能です。

構文:時間を進める
/time add <time>
構文:現在の時刻を表示する
/time query (daytime|gametime|day)
構文:時間をセットする
/time set <TimeSpec>
構文:数値で指定して時間をセットする
/time set <time>

「add」で時間を進めることができます。マイクラでは1日が24000ティックなので、「time」には24000までの数字で、進めたいだけの時間を入力します。Java版では、timeに「1d」「10s」「100t」という入力をすることもできます(数字のあとにd、s、tを入力する)。それぞれ、「マイクラ内の1日・24000ゲームテック」「10秒・200ゲームテック」「100ティック(数値だけ入力するときと同じ)」となります。

「query」で現在の時刻を表示することができます。「daytime」は夜明け以降のゲームテック、「gametime」はワールドに初めてスポーンしてからのゲームテック、「day」はゲーム内の経過日数を表示します。

「set」で好きな時間にすることができます。「6000」「13000」などの数値(ゲームテック)で指定したり、「day」「night」などで指定したりできます。

指定 ゲームテック
day 1000
noon 6000
sunset(統合版のみ) 12000
night 13000
midnight 18000
sunrise(統合版のみ) 23000
入力例:時刻を昼間に設定する
/time set day

上記のコマンドを実行すると、時刻が昼間(1000)に設定されます。「/time set 1000」としても同じ結果が得られます。

timeコマンドによって時刻が昼間に設定されたときの表示

統合版のsetは時間の追加によって時刻を変更しているため、現在の時刻よりも早い時間を指定すると、ゲーム内の日数は増えることになります。Java版ではゲーム内の日数を増やすことなく変更されます。

/title 画面にテキストを表示する

/titleは、画面中央にタイトルを表示するコマンドです。テキストを装飾したり(Java版)、サブタイトルをつけたりできます。Java版・統合版どちらでも使用可能です。

構文:タイトルの削除・設定のリセット
/title <targets> (clear|reset)
構文:タイトルの設定
/title <targets> title <title>
構文:サブタイトルの設定
/title <targets> subtitle <title>
構文:アクションバーの設定
/title <targets> actionbar <title>
構文:表示時間の設定
/title <targets> times <fadeIn> <stay> <fadeOut>

「targets」にタイトルを表示するプレイヤーを指定します。「title」でタイトル、「subtitle」でタイトルの下に表示されるサブタイトル、「actionbar」でサブタイトルの下に表示されるアクションバーに表示される文字を設定できます。

<title>に表示したいテキストを入力します。日本語もOK。ただしJava版の場合は、テキストをダブルクオーテーションで囲む必要があります。

「clear」でタイトルを削除、「reset」でタイトルの設定をリセットできます。

timesはタイトルが表示されるときのフェードイン、表示時間、フェードアウトの設定です。「fadeIn」でフェードインの時間(デフォルトは20)、「stay」で表示時間(デフォルトは70)、「fadeOut」でフェードアウトの時間(デフォルトは10)を指定します。単位はティックです。

入力例:タイトルを表示する(Java版)
/title @s title "お腹痛い"

上記のコマンドを実行すると、「お腹痛い」というテキストでタイトルが表示されます。統合版で上記のコマンドを実行するとダブルクオーテーションマークがそのまま表示されるので、外してタイトルを入力しましょう。

titleコマンドによって表示されるタイトル

入力例:タイトルの色を変えて表示(Java版)
/title @s title {"text":"赤い太字","bold":"true","color":"red"}
入力例:タイトルの色を変えて表示(統合版)
/title @s title §c赤で§lここから太字だよ

上記のコマンドを実行すると、文字の色や太さを変えたタイトルが表示できます。Java版ではJSONの記述が、統合版では§での装飾が使用可能です。詳しくはこのページの/tellrawの解説を参照してください。

入力例:スコアボードの値を表示(Java版)
/title @s title [{"selector":"@s"},{"text":"のキル数は"},{"score":{"name":"@s","objective":"KILLCOUNT"}}]

上記のコマンドを実行すると、コマンド実行者のKILLCOUNTのスコアがタイトルとして表示されます。統合版ではJSONの記述が使えないので、スコアボードの値を扱うには/titlerawコマンドを使う必要があります。

/titleraw JSON形式でタイトル設定

/titlerawは、JSON形式の入力でテキストを装飾できるタイトルコマンドです。スコアボードの数値を表示することもできます。統合版のみ使用可能です。

構文:タイトルの削除・設定のリセット
/titleraw <player: target> <clear|reset>
構文:テキストの設定
/titleraw <player: target> <title|subtitle|actionbar> <raw json titleText: json>
構文:時間の設定
/titleraw <player: target> times <fadeIn: int> <stay: int> <fadeOut: int>

構文は/titleコマンドとほとんど同じです。ただ統合版でもJSON形式での入力が可能になっています。

入力例:スコアボードの値をタイトルに表示する
/titleraw @s title {"rawtext":[{"selector":"@s"},{"text":"のキル数は"},{"score":{"name":"@s","objective":"KILLCOUNT"}}]}

上記のコマンドを実行すると、タイトルにプレイヤー名やスコアボードのKILLCOUNTの値が表示されます。

titlerawコマンドの実行結果

§での装飾を使えば、文字の色を変えたり太字にしたりすることもできます。

/tm チームメッセージの送信

/tmは、コマンド実行者が属するチームのメンバー全員にメッセージを送ることができるコマンドです。/teammsgコマンドと同じ機能。Java版のみ使用可能です。

構文:チームメッセージの送信
/tm <message>

「message」に送信するメッセージを入力します。日本語も使えます。

入力例:チームのメンバーに挨拶する
/teammsg おはよう

上記のコマンドを実行すると、チームのメンバーに「おはよう」というメッセージが送られます。

tmコマンド

チーム名、プレイヤー名、メッセージという並びで表示されます。

/toggledownfall 天気を変える

/toggledownfallは、天気を変えるコマンドです。実行すると、晴れなら雨や雪に、雨・雪・雷雨なら晴れになります。統合版のみ使用可能です。

構文:天気を変える
/toggledownfall

上記のコマンドを実行すると、晴れている状態と雨や雪が降っている状態が切り替えられます。

toggledownfallコマンドの実行結果

「切り替えに成功しました」と表示されます。

/tp エンティティをテレポートさせる

/tpは、指定したエンティティをテレポートさせることができるコマンドです。/teleportコマンドと全く同じように使えます。Java版・統合版どちらでも使用可能です。

構文:
指定の座標にテレポートさせて同じ向きに回転させる(Java版)
Java版:/tp <location>
回転なしでエンティティを指定の座標にテレポートさせる
Java版:
/tp <targets> <location>
統合版:
/tp <destination: x y z> [checkForBlocks: Boolean]
/tp <victim: target> <destination: target> [checkForBlocks: Boolean]
対象をエンティティにテレポートさせて同じ向きに回転させる
Java版:
/tp <destination>
/tp <targets> <destination>

統合版:
/tp <destination: target> [checkForBlocks: Boolean]
/tp <victim: target> <destination: target> [checkForBlocks: Boolean]
回転を指定して対象を指定座標にテレポートさせる
Java版:
/tp <targets> <location> <rotation>
/tp <targets> <location> facing <facingLocation>
/tp <targets> <location> facing entity <facingEntity> [<facingAnchor>]
統合版:
/tp <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/tp <destination: x y z> facing <lookAtPosition: x y z> [checkForBlocks: Boolean]
/tp <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> facing <lookAtPosition: x y z> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]

詳しくは、このページの/teleportコマンドの解説を参照してください。

/trigger スコアボードの値を変更する

/triggerは、プレイヤーがスコアボードの値を変更できるコマンドです。あらかじめスコアボードコマンドでスコアの作成、triggerコマンドの使用許可をすませた状態で使います。Java版のみ使用可能です。

構文:値を1追加する
/trigger <objective>
構文:指定した値を追加する
/trigger <objective> add <value>
構文:指定した値にセットする
/trigger <objective> set <value>

「objective」でスコア名を指定し、「value」で追加・セットする値を指定します。このコマンド単体で使うことはほとんどなく、通常は/tellrawコマンド内などで使います。

入力例:スコアの追加
/scoreboard objectives add TESTSCORE trigger
入力例:スコアの表示
/scoreboard objectives setdisplay sidebar TESTSCORE
入力例:/triggerコマンドの許可
/scoreboard players enable @a TESTSCORE

準備として、上記の3つのコマンドを上から順に実行しておきます。スコアボードにTESTSCOREというスコアを作成し、それをサイドバーに表示させたうえで、/triggerコマンドによる値の変更を許可しておくといった内容です。

準備が終わったときに、下のコマンドをコマンドブロックで実行します(長すぎてチャットウインドウでの入力は不可)。

入力例:/tellraw内でトリガー
tellraw @a [{"text":"あなたが落としたのは?"},{"text":" < 金の斧 >","color":"gold","clickEvent":{"action":"run_command","value":"/trigger TESTSCORE set 1"}},{"text":" < 鉄の斧 >","color":"gray","clickEvent":{"action":"run_command","value":"/trigger TESTSCORE set 3"}},{"text":" < ダイヤの斧 >","color":"aqua","clickEvent":{"action":"run_command","value":"/trigger TESTSCORE set 5"}}]

上記のコマンドを実行すると、「あなたが落としたのは?」というメッセージが表示されます。金、鉄、ダイヤそれぞれの選択肢をクリックすると、クリックしたものに応じてスコアがセットされます。

/scoreboardコマンドでも値をセットできますが、/triggerなら有効化したあとに一度だけしか実行できないようにすることが可能です。もう一度クリックしたいときは再度、/scoreboardコマンドで再度有効にする必要があります。

/w プライベートメッセージの送信

/wは、特定のプレイヤーにプライベートメッセージを送ることができるコマンドです。/msgコマンドや/tellコマンドで同じことができます。Java版・統合版どちらでも使用可能です。

構文:プライベートメッセージ送信
/w <targets> <message>

「target」でメッセージを送る相手を、messageで送る文章を指定します。

入力例:また遊ぼうねと言う
/tell nishi10 また遊ぼうね

上記のコマンドを実行すると、nishi10に「また遊ぼうね」とメッセージが送られます。

/weather 天候を設定する

/weatherは、天候を設定できるコマンドです。晴れ、雨、雷雨のいずれかを指定できます。Java版・統合版どちらでも使用可能です。

構文:天候の設定
/weather (clear|rain|thunder) [<duration>]
構文:天候を調べる(統合版)
/weather query

「clear」が晴れ、「rain」が雨、「thunder」が雷雨です。「duration」でその天候が続く時間を数値で指定できます。指定しなければ5分、0とすればランダムな長さになります。ここで設定する数値は、Java版では秒数、統合版ではティック数として扱われます。

入力例:天候を雷雨に変更する
/weather thunder

上記のコマンドを実行すると、天候が雷雨に変更されます。

weatherコマンド実行時のチャット欄の表示

もともと雨の降らないバイオームには、/weatherコマンドを使っても雨を降らせることはできません。

/worldborder ワールドの境界線の設定

/worldborderは、プレイヤーが活動可能な範囲を指定することができるコマンドです。ワールド内の特定部分のみで行動させたいときに使います。Java版のみ使用可能です。

構文:境界線の直径を変更
/worldborder add <distance> [<time>]

境界の直径を変更します。「distance」で追加する距離(ブロック数)を指定します。「time」では、現在の境界線から新しい境界線に変更されるのにかかる秒数を指定できます。省略した場合は0として処理されます。

構文:中心座標の設定
/worldborder center <pos>

「pos」で中心座標(x,y)を指定します。

構文:ダメージ量の設定
/worldborder damage amount <damagePerBlock>

境界線から外に出たときのダメージ量を設定します。1秒あたりここで設定した値のダメージを受けるようになります。

構文:ダメージを受けない距離を設定
/worldborder damage buffer <distance>

境界線の外側で、ダメージを受けない距離を設定できます。「distance」で指定した距離内であれば、境界線から出てもノーダメージで行動可能です。

構文:境界の直径を表示
/worldborder get

現在の境界の直径を表示します。

構文:境界の直径を設定
/worldborder set <distance> [<time>]

境界の直径を設定します。「time」でその境界になるまでの秒数を指定できます。

構文:警告距離の設定
/worldborder warning distance <distance>

警告が表示される(画面が赤くなる)距離を設定します。

構文:警告の表示時間の設定
/worldborder warning time <time>

警告が表示される時間を設定します。

入力例:現在地を行動可能範囲の中心にする
/worldborder center ~ ~

上記のコマンドを実行すると、プレイヤーの現在地が行動できる範囲の中心に設定されます。

worldborderコマンドによる中心地の設定

中心を設定したうえで次のコマンドを入力すると、ワールドの空間を区切ることができます。

入力例:境界線を設定する
/worldborder set 20

上記のコマンドを実行すると、中心から10ブロック離れたところに境界線が設定されます。

worldborderコマンドによって区切られたワールド

この境界線を歩いて超えることはできませんが、/tpコマンドなどを使えば範囲外に出ることができます。ただし境界線から離れれば離れるほど、より多くのダメージを受け続けます。

/wsserver サーバーに接続する

/wsserverは、サーバーに接続するために使うコマンドです。主にEducation Editionで使われます。統合版のみ使用可能です。統合版のみ使用可能です。

構文:サーバーに接続
/wsserver <サーバーURI>
構文:サーバーから切断
/wsserver out

/wsserver outで切断できます。/connectコマンドを使っても同じことができます。

/xp 経験値の追加・削除

/xpは、経験値の追加・現在の経験値量の表示・経験値の設定を行うコマンドで、Java版・統合版どちらでも使用可能です。

構文:経験値の追加
/xp add <targets> <amount> [levels|points]
構文:経験値のセット
/xp set <targets> <amount> [levels|points]
構文:経験値の表示
/xp query <targets> (levels|points)
構文:経験値の追加(統合版)
/xp <amount: int> [player: target]
構文:経験値レベルの追加・削除(統合版)
/xp <amount: int>L [player: target]

「add」で現在の経験値に経験値を追加、「set」で指定の値に経験値をセット、「query」で現在の経験値を表示することができます。レベル単位、ポイント単位での指定が可能。Java版では、「add マイナス値」で経験値を削除できます。統合版では、マイナスレベルを指定すれば削除可能です。

Java版の/xpコマンドは、/experienceコマンドを同じ働きをします。統合版では/xperienceコマンドが使えないので、/xpコマンドで経験値を操作します。

入力例:経験値を10レベル削除する(統合版)
/xp -10l @s

上記のコマンドを実行すると、コマンド実行者から10レベルの経験値が削除されます。

xpコマンドの実行結果

「10レベルを剥奪しました」と表示されます。

マイクラのチートコマンドの使い方

マイクラのチートコマンドは、クリエイティブモードにすると使うことができます。コマンドによる操作はゲームバランスを大きく崩してしまうため、サバイバルモードでは使用できません。ただし「チートの許可」をオンにした状態でサバイバルワールドを作った場合は、コマンドを使うことができます。

チートを許可ボタン

いつゲームオーバーになるかわからないスリルを楽しめるのがサバイバルの面白いところなので、基本的にはクリエイティブモードだけで使うのがいいでしょう。クリエイティブは冒険や戦闘ではスリルを感じられなくなりますが、コマンドを使うぶんサバイバルでは難しい巨大建築や、あらゆる検証などがしやすくなります。

コマンドの入力方法

コマンドはチャットウインドウを開いて入力します。PCでの操作の場合、チャットウインドウはTキーや/(スラッシュ)キーで表示させることができますが、全てのコマンドは/から入力することになるので、/キーで開いたほうが楽です。

Java版のチャットウィンドウ

統合版のチャットウィンドウ

コマンドは、基本的には英単語を入力して使います。例えば、次のように入力します。

/effect give @s minecraft:night_vision 10000 0 true

これは、コマンド実行者に暗視の効果を10000秒付与するコマンドです(Java版)。この例のようにコマンドによっては英数字をたくさん入力しなければいけないこともありますが、現在のバージョンではコマンドの「入力補完」の機能があるので、表示される候補から選んでいくだけでコマンドを入力することができます。

入力補完の活用

Java版、統合版いずれも、途中までコマンドを入力するとそれ以降の候補が表示されるようになっています。その候補をTabキーで選択すれば、いちいち手打ちすること無くコマンドを入力することが可能です。

JEのコマンド候補

BEのコマンド候補

覚えているコマンドなら直接入力してもいいのですが、構文の記憶があいまいなコマンドなどは、この入力候補を使うのがとても楽です。入力間違いなどもなくなるのでオススメです。

コマンド履歴の活用

チャット欄を開いた状態で↑キーを押すと、これまでに入力したコマンドを新しい順に表示することができます。同じコマンドや数値だけを変えた似たようなコマンドを入力するときは、この履歴を利用するのが便利です。

すでにあるサバイバルワールドでコマンドを使う方法

サバイバルモードで作成したワールドでは、普通コマンドを使用することはできません。しかしJava版では、ワールドを「LANに公開」することでサバイバルモードのワールドでも一時的にコマンドが使えるようになります。手順は以下のとおりです。

Escキーを押してゲームメニューを開き、LANに公開ボタンをクリック。
LANに公開ボタン

他のプレイヤーのための設定の画面で「チートの許可」を「オン」にしてから、下の「LANワールドを公開」をクリック。
他プレイヤーの設定画面

これで、セーブしてワールドを閉じるまではサバイバルのワールドでコマンドが使えるようになります。

「LANに公開」とは、同じLANに接続している別PCとマルチプレイするための機能です。LANにワールドを公開すると、家にある別のPCから現在遊んでいるワールドにログインすることができるようになります。ワールドが外部に公開されるわけではないので、安心してください。

マイクラで便利なコマンド

マイクラでおもしろいことができるコマンドを紹介します。/tpや/locateなどよく使われるコマンドは自然に使い方を覚えられると思いますが、以下で紹介するコマンドは複雑な使い方ができるものもあります。コマンドの操作に慣れてきたら、ぜひ挑戦してみてください。

  1. /bossbar
  2. /data
  3. /execute
  4. /fill
  5. /give
  6. /scoreboard

/bossbarコマンド

/bossbarコマンドは、エンティティの体力をリアルタイム表示することができます。試しにアイアンゴーレムの体力バーを作ってみましょう。

表示されたカスタムボスバー

入力例1:カスタムボスバーの追加
/bossbar add igbar "アイアンゴーレムの体力"
入力例2:カスタムボスバーの表示
/bossbar set igbar players @a

入力例1でカスタムボスバーを追加し、入力例2ですべてのプレイヤーに追加したボスバーを表示しています。コマンド実行者だけに表示させたいときは、「@a」を「@s」にすればOKです。

入力例3:アイアンゴーレムの識別番号の取得
/data get entity 96355c70-a242-4044-a278-09bb7d4b8c21

入力例3では、/dataコマンドで村のアイアンゴーレムの識別番号を調べています。アイアンゴーレムにカーソルを合わせて「/data get entity 」と入力すれば、入力候補の中に識別番号が表示されるので、コピーできるようにしておきます。

入力例4:コマンドブロック(リピート)で常時実行
/execute store result bossbar minecraft:igbar value run data get entity 96355c70-a242-4044-a278-09bb7d4b8c21 Health 1

入力例4は、コマンドブロックに入力するコマンドです。リピートコマンドブロックを「リピート」「無条件」「常時実行」にして、入力例3でしらべた識別番号をくみこみつつコマンドを入力。設定画面を閉じれば、表示されているボスバーにアイアンゴーレムの体力が表示されます。

これで、村のアイアンゴーレムの体力がいつでもわかるようになります。アイアンゴーレムがモンスターと戦って傷ついたら、回復させてあげましょう。

/dataコマンド

/dataコマンドを使うと、チェストの中身を変えたり、モンスターの装備を変えたりすることができます。

入力例:チェストの中身をダイヤ30個にする
/data merge block ~ ~ ~ {Items:[{Slot:13b,id:"minecraft:diamond",Count:30b}]}

上記のコマンドを実行すると、足元に置かれたチェストの真ん中のスロットに、ダイヤモンドが30個入れられます。

入力例2:チェストの中身を鉄、ダイヤ、ネザライト30個にする
/data merge block ~ ~ ~ {Items:[{Slot:0b,id:"minecraft:iron_ingot",Count:30b},{Slot:13b,id:"minecraft:diamond",Count:30b},{Slot:26b,id:"minecraft:netherite_ingot",Count:30b}]}

上記のコマンドを実行すると、足元に置かれたチェストの左上のスロットに鉄インゴットが、真ん中のスロットにダイヤモンドが、右下のスロットにネザライトインゴットがそれぞれ30個ずつ入れられます。スロットを指定する数値は、左上が0、右上が6、中段の左端が7、右下が26という感じで、右にいけばいくほど、下に行けばいくほど増えていきます。

入力例3:近くのゾンビにドラゴンの頭を装備させる
/data modify entity @e[type=minecraft:zombie,limit=1,sort=nearest] ArmorItems[3] set value {id:"minecraft:dragon_head",Count:1b}

上記のコマンドを実行すると、近くにいるゾンビにドランゴンの頭を装備させることができます。本来装備できないブロックなどを指定することも可能。「ArmorItems[0]」ならブーツ、ArmorItems[1]ならレギンス、ArmorItems[2]ならチェストプレートを装備させることができます。

入力例4:ゾンビをネザライトフル装備にする
/data modify entity @e[type=zombie,limit=1,sort=nearest] ArmorItems set value [{id:"minecraft:netherite_boots",Count:1b},{id:"minecraft:netherite_leggings",Count:1b},{id:"minecraft:netherite_chestplate",Count:1b},{id:"minecraft:netherite_helmet",Count:1b}]

上記のコマンドは、ゾンビの装備を一括で変更するコマンドです。この量になると、コマンドの入力文字数がギリギリ。これ以上長くなる場合は、コマンドブロックが必要になってきます。

/excuteコマンド

/excuteコマンドを使うと、プレイヤーやモブを検知したり、アイテムを検知したりすることができます。近づいたら○○する、落ちていたら○○するという操作が可能です。

入力例:プレイヤー検知(Java版)
execute if entity @a[distance=..5] at @p run summon minecraft:lightning_bolt ~ ~ ~

チェーンコマンドブロックに上記のコマンドを入力して「常時実行」にしておくと、コマンドブロックの半径5ブロック以内に近づいたときにプレイヤーに雷が落ち続けます。

入力例2:モブを検知(Java版)
execute if entity @e[type=!minecraft:player,distance=..2] run tp @e[type=!minecraft:player,distance=..2] ~ ~30 ~10

チェーンコマンドブロックに上記のコマンドを入力して「常時実行」にしておくと、プレイヤー以外のエンティティ(モンスターなど)がコマンドブロックに近づいたときに、30ブロック上の高さまでテレポートさせます(落下ダメージで倒せる)。

入力例2:インベントリのアイテム検知(Java版)
/execute as @a if data entity @s Inventory[{id:"minecraft:diamond"}] run clear @s minecraft:diamond 64

上記のコマンドを実行すると、インベントリにダイヤモンドを持っているプレイヤーから最大64個のダイヤモンドを削除します。

入力例2:ドロップアイテムの検知(Java版)
/execute if entity @e[type=item,nbt={Item:{id:"minecraft:gunpowder"}}] run say "火薬が落ちてるよ"

上記のコマンドを実行すると、火薬がドロップしていたときに「火薬が落ちてるよ」というメッセージが表示されます。

/fillコマンド

/fillコマンドはただ上書きするだけではなく、さまざまなブロックの設置方法があります。特定のブロックだけを置き換えたり、レッドストーンワイヤーの信号強度を指定して置き換えたりすることも可能です。

入力例:7×4×5の箱をオークの板材で作る(Java版)
/fill ~ ~ ~ ~6 ~3 ~4 minecraft:oak_planks hollow

上記のコマンドを実行すると、縦7、横5、高さ4のオークの木材の小屋が一瞬で出来上がります。hollowを指定することによって、中は空洞になっています。

入力例2:指定範囲内の鉄ブロックをガラスブロックにおきかえる(Java版)
/fill 100 64 100 120 70 120 minecraft:glass replace minecraft:iron_block
入力例3:指定範囲内の鉄ブロックをガラスブロックにおきかえる(統合版)
/fill 100 64 100 120 70 120 glass 0 replace iron_block

上記のコマンドを実行すると、指定範囲内にあるブロックのうち、鉄ブロックのみがガラスブロックに置き換えられます。例えば草ブロックだけを削除したり、丸石を石レンガに入れ替えたりしたいときに便利です。

入力例4:指定範囲内のレッドストーンワイヤで、強度15の信号をもつものだけを空気ブロックにおきかえる(Java版)
/fill ~ ~ ~ ~2 ~ ~10 minecraft:air replace minecraft:redstone_wire[power=15]

上記のコマンドを実行すると、強度15の信号を持つレッドストーンワイヤーだけが空気ブロックに置き換えられます。

/giveコマンド

/giveコマンドを使うと、複数のエンチャントをつけた状態のアイテムをプレイヤーに渡すことができます。

入力例:エンチャント済みのネザライトのツルハシを5つ渡す(Java版)
/give @s minecraft:netherite_pickaxe{Enchantments:[{id:efficiency,lvl:5},{id:unbreaking,lvl:3},{id:fortune,lvl:3}]} 5

上記のコマンドを実行すると、効率強化Ⅴ・耐久力Ⅲ・幸運Ⅲのエンチャントがついたネザライトのツルハシがコマンド実行者に5つわたされます。

このコマンドのいいところは、エンチャントレベルを上げてエンチャントできる点です。例えば効率強化は最大レベルがⅤですが、/giveコマンド内では999レベルも指定できます。

ただし、統合版ではgiveコマンド内でエンチャントを指定できないので、enchantコマンドでアイテムをエンチャントする必要があります。

ポーションは次のコマンドで渡すことができます。

入力例2:ポーションを渡す(Java版)
/give @s minecraft:potion 1 0 {minecraft:long_water_breathing}
入力例3:ポーションを渡す(統合版)
/give @s potion 1 20

上記のコマンドを実行すると、水中呼吸のポーション(延長)がコマンド実行者にわたされます。統合版は、個数のあとに数字を入力することで渡すポーションの種類を変えることができます。

名前のついたアイテムも渡せます。

入力例4:名前のついたアイテムを渡す(Java版)
/give @p minecraft:netherite_sword{display:{Name:"伝説の剣"},Enchantments:[{id:binding_curse,lvl:1}]}

上記のコマンドを実行すると、「伝説の剣」という名前のついたネザライトの剣がプレイヤーに渡されます。統合版の場合、残念ながらgiveコマンドで名前付きアイテムを出すことはできません。

/scoreboardコマンド

/scoreboardコマンドであつかうスコアは通常1ヶ所に一つの項目しか表示できませんが、プレイヤーが複数いてそれぞれがスコアの値を持っている場合は、全てのプレイヤーのスコアが表示されます。

その性質を利用して、ダミープレイヤーのスコアを作成し、そのスコアに自分の他のスコアを代入することで、スコアを複数表示させることができます。

手順1:条件「dummy」でスコアを作る
/scoreboard objectives add DUMMY dummy "スコア"

上記のコマンドでDUMMYというスコアを作っています。表示名は「スコア」です。

手順2:サイドバーに作ったスコアを表示
/scoreboard objectives setdisplay sidebar DUMMY

上記のコマンドで、サイドバーにDUMMYを表示します。

手順3:条件「health」でスコア作成
/scoreboard objectives add HEALTH health

上記のコマンドでHEALTHというスコアを作成します。これは自分の体力値が入るスコアです。

手順4:条件「food」でスコア作成
/scoreboard objectives add FOOD food

上記のコマンドでFOODというスコアを作成します。自分の満腹度が入るスコアです。

手順5:条件「xp」でスコア作成
/scoreboard objectives add XP xp

上記のコマンドでXPというスコアを作成します。経験値が入るスコアです。

手順6:ダミープレイヤー「経験値」に自分の経験値のスコアを代入
/scoreboard players operation 経験値 DUMMY = nishi10 XP
手順7:ダミープレイヤー「満腹度」に自分の満腹度のスコアを代入
/scoreboard players operation 満腹度 DUMMY = nishi10 FOOD
手順8:ダミープレイヤー「体力」に自分の体力のスコアを代入
/scoreboard players operation 体力 DUMMY = nishi10 HEALTH

手順6~8では、ダミープレイヤー「経験値」さん、「満腹度」さん、「体力」さんそれぞれの「DAMMY」スコア(オブジェクト)に、nishi10の経験値、満腹度、体力を代入しています。

/scoreboardコマンドでは、入力例のようにダミープレイヤーを自由に扱うことができます。「ダミープレイヤーの作成作業」などは必要なく、コマンドの途中でいきなり登場させてOK。プレイヤー名には日本語も問題なく使えます。

あとはサイドバーにスコアDAMMYが表示されるように設定していれば、nishi10のステータスすべてが一度に表示されるようになるというわけです。

scoreboardコマンドで複数の項目を表示

/scoreboardコマンドでタイマー

/scoreboardコマンドとコマンドブロックを組み合わせると、タイマーを表示させることもできます。Java版と統合版で作り方が少し違うので、順に紹介します。

Java版でのスコアボードタイマーの作り方

手順1:表示用のスコアを作成
/scoreboard objectives add TIMER dummy "タイマー"

最初にサイドバーに表示するスコアを、dummyで作ります。スコア名はTIMER、表示名は「タイマー」です。

手順2:計算用のスコア1を作成
/scoreboard objectives add TIME dummy
手順3:計算用のスコア2を作成
/scoreboard objectives add TICK dummy

手順2と3で、計算用のスコアを作ります。スコア名は「TIME」と「TICK」、どちらもdummyです。

手順4:スコアをサイドバーに表示
/scoreboard objectives setdisplay sidebar TIMER

手順1で作成した表示用スコアを、サイドバーに表示しておきます。

手順5:ダミープレイヤーのスコアTICKをセット
/scoreboard players set 残り時間 TICK 20

ダミープレイヤー「残り時間」さんのスコアTICKを、20にセットしておきます。

手順6:コマンドブロックの通知を非表示に
/gamerule commandBlockOutput false

コマンドブロックを実行すると実行結果が無限に流れ続けてしまうので、上記のコマンドで非表示にしておきます。

次はコマンドブロックにコマンドを設定していきます。まずはタイマー部分から。次のようにコマンドブロックを設置します。

スコアボードタイマーの作成手順1

それぞれ、次のようにコマンドブロックを設定し、コマンドを入力します。

コマンドブロック1:インパルス、無条件、動力が必要
scoreboard players set 残り時間 TIME 1200

ダミープレイヤー「残り時間」の「TIME」を1200にセットするコマンドです。1200なら60秒、600なら30秒、200なら10秒になります。

コマンドブロック2:リピート、無条件、常時実行
execute if score 残り時間 TIME matches 1.. run scoreboard players remove 残り時間 TIME 1

ダミープレイヤー残り時間のTIMEが1以上なら、TIMEを1減らすというコマンドです。リピートコマンドブロックは1秒間に20回実行されるので、1つ前のコマンドブロックで設定した1200をすべて消化するには60秒かかります(PCスペックが十分なら)。TIMEが0になれば、このコマンドは実行されなくなります。

コマンドブロック3:チェーン、条件付き、常時実行
scoreboard players operation 残り時間 TIMER = 残り時間 TIME

残り時間のスコアTIMERに、残り時間のTIMEの値を代入するコマンドです。

コマンドブロック4:チェーン、条件付き、常時実行
scoreboard players operation 残り時間 TIMER /= 残り時間 TICK

残り時間のスコアTIMERの値をTICKの値(20)で割るコマンドです。このコマンドで、残り時間が秒数で表示されるようになります。

ここまでで、スコアボードタイマーが完成します。最初のインパルスにボタンをつけて実行してみましょう。サイドバーの残り時間が60から1ずつ減っていけばOKです。

スコアボードタイマーの完成

60秒以上にしたいときは、最初のコマンドブロックの数字を変更します。2400なら120秒、6000なら300秒になります。

統合版でのスコアボードタイマーの作り方

統合版では/excuteコマンドの仕様がJava版とは違っていることから、コマンドブロックの他に防具立てを置く必要があります。防具立てには名札で「timer」という名前をつけて、コマンドブロックの近くに設置しておきましょう。

下準備となるスコアの作成などはJava版と同じです。上の説明にある手順1~6を、あらかじめ実行しておいてください。コマンドブロックの種類と並べ方も上で紹介したJava版と同じ。ただ実行するコマンドの内容が少し違います。

コマンドブロック1:衝撃、無条件、レッドストーンが必要
scoreboard players set @e[name=timer] TIME 1200

防具立ての「TIME」を1200にセットするコマンドです。

コマンドブロック2:反復、無条件、常にアクティブ
scoreboard players remove @e[name=timer,scores={TIME=1..}] TIME 1

「TIMEの値を1以上持つtimerという名前のエンティティのTIMEを1減らす」というコマンドです。

コマンドブロック3:チェーン、条件付き、常にアクティブ
scoreboard players operation 残り時間 TIMER = 残り時間 TIME

残り時間のスコアTIMERに、残り時間のTIMEの値を代入するコマンドです。

コマンドブロック4:チェーン、条件付き、常にアクティブ
scoreboard players operation 残り時間 TIMER /= 残り時間 TICK

あとは最初のコマンドブロック(衝撃)にボタンをつけて、押せばタイマーがスタートします。

スコアボードタイマー統合版

スコアボードタイマーでミニゲーム(Java版)

スコアボードタイマーを使って、1分間にエンティティをどれだけ倒せるかというミニゲームを作ってみました(Java版)。コマンドはコピペでいけると思うので、ぜひ試してみてください。

手順1:倒したMob数のスコアを作成
/scoreboard objectives add KILLCOUNT minecraft.custom:minecraft.mob_kills "倒した数"
手順2:計算用のスコアTIMEを作成
/scoreboard objectives add TIME dummy
手順3:計算用のスコアTICKを作成
/scoreboard objectives add TICK dummy
手順4:サイドバーにKILLCOUNTを表示
/scoreboard objectives setdisplay sidebar KILLCOUNT
手順5:ダミープレイヤー残り時間のスコアTICKを20にセット
/scoreboard players set 残り時間 TICK 20
手順6:コマンドブロックの通知を非表示に
/gamerule commandBlockOutput false

コマンドブロックを下のように並べます。

スコアボードタイマーを使ったミニゲーム

コマンドブロック1:インパルス、無条件、動力が必要
scoreboard players set 残り時間 TIME 1200
コマンドブロック2:リピート、無条件、常時実行
execute if score 残り時間 TIME matches 1.. run scoreboard players remove 残り時間 TIME 1
コマンドブロック3:チェーン、条件付き、常時実行
scoreboard players operation 残り時間 KILLCOUNT = 残り時間 TIME
コマンドブロック4:チェーン、条件付き、常時実行
scoreboard players operation 残り時間 KILLCOUNT /= 残り時間 TICK
コマンドブロック5:チェーン、条件付き、常時実行
execute if score 残り時間 KILLCOUNT matches 0 run kill @e[type=!minecraft:player]
コマンドブロック6:チェーン、条件付き、常時実行
title @a title "終了"
コマンドブロック7:インパルス、無条件、動力が必要
spreadplayers ~ ~ 0 20 false @e[type=!player]
コマンドブロック8:インパルス、無条件、動力が必要
scoreboard players reset @a KILLCOUNT

コマンドブロック1~4まではタイマーです。コマンドブロック5は時間が終わったらエンティティを消滅させるためのもの、コマンドブロック6は「終了」というタイトルを表示させるものになっています。

コマンドブロック7で、倒すエンティティをプレイヤーの周辺に集めます。コマンドブロック8はスコアのリセットです。

残り時間がなくなると近くにいるエンティティが全て消えるので、専用のワールドを作って試すことをオススメします(村人やドロップアイテムも全て消えます)。

地下にいるモンスターや地上にいる動物をプレイヤーの近くに集めるコマンドです。通常のオーバーワールドで使うことを想定しているので、スーパーフラットのワールドでは使えません。

これでミニゲームの完成です。ボタンを押すとモンスターや動物がまわりに出現し、サイドバーのタイマーがカウントダウンします。時間切れになるとエンティティは消滅。「終了」のタイトルが表示されます。もう一度ボタンを押せばスコアがリセットされ、

ミニゲーム

ということで、マイクラで使えるコマンド一覧と、便利なコマンドの使い方の紹介でした。英数字での入力ということもあって少しとっつきにくさはありますが、簡単に使えるコマンドも多いです。/tpや/locateなどは使いやすい上によく使うので、そのあたりから慣れていくのがいいでしょう。

慣れてきたら複雑なコマンドにもぜひ挑戦してみてください。いくつかのコマンドを組み合わせる必要がありますが、うまくやればページ下部で紹介しているミニゲームのようにちょっとしたゲームを作ることもできます。もちろん、ワールドを大規模に変更していくのも楽しいです。おもしろい使い方を見つけたら、ぜひコメント欄で教えて下さいね。