Minecraft(マインクラフト)には、ゲーム内で特殊なコマンドを実行することができるコマンドブロックというものがあります(Java版と統合版の両方にあります)。
今回は、このコマンドブロックの使い方を解説します。
Minecraft のコマンドブロックとは
Minecraft のコマンドブロックとは、ゲーム内で特殊なコマンドを実行することができるブロックです。コマンドブロックは、チートを有効にしたワールドでのみ入手できます。コマンドブロックを使うと、テレポートやアイテムの生成、天候や時間の変更など、様々なことができます。コマンドブロックは、クリエイティブモードでのみ設置や編集ができますが、サバイバルモードでも動作します。コマンドブロックは、レッドストーン回路やボタンなどで動かすことができます。
コマンドブロックの入手方法
コマンドブロックを入手するには、チートを有効にしたワールドで、チャットウィンドウに「/give @s command_block」と入力します。すると、コマンドブロックがインベントリに追加されます。コマンドブロックは、クリエイティブモードのインベントリには表示されませんので、注意してください。コマンドブロックは、他のブロックと同じように設置できますが、右クリックで開くと、コマンドを入力する画面が表示されます。
コマンドブロックの種類と設定
コマンドブロックには、3種類あります。それぞれ、動作の仕方が異なります。
・通常のコマンドブロック:レッドストーン信号を受けると、一度だけコマンドを実行します。
・繰り返しコマンドブロック:レッドストーン信号を受けると、連続してコマンドを実行します。常時実行モードにすると、レッドストーン信号がなくても実行します。
・チェーンコマンドブロック:レッドストーン信号を受けると、他のコマンドブロックの実行後にコマンドを実行します。常時実行モードにすると、レッドストーン信号がなくても実行します。
コマンドブロックの種類は、コマンドを入力する画面の右上にあるタブで切り替えることができます。また、コマンドブロックの向きや条件付きモードなどの設定も、この画面で行うことができます。条件付きモードにすると、コマンドブロックは、前のコマンドブロックが成功したときにのみ実行されます。
コマンドブロックで使えるコマンド
コマンドブロックで使えるコマンドは、チャットウィンドウで使えるコマンドと同じです。コマンドには、スラッシュ(/)を先頭に付けます。コマンドには、引数(ひきすう)と呼ばれるパラメーターを指定することができます。引数には、プレイヤー名や座標、アイテム名などがあります。引数には、特殊な記号を使って、条件や範囲を指定することもできます。例えば、@p は最も近いプレイヤーを、@a は全てのプレイヤーを、@r はランダムなプレイヤーを、@e は全てのエンティティを、@s は自分自身を表します。また、[ ] で囲んで、距離やタグ、チームなどの条件を付けることもできます。例えば、@a[distance=..5] は、半径5ブロック以内の全てのプレイヤーを表します。
コマンドには、様々な種類があります。以下に、よく使われるコマンドの例をいくつか紹介します。
・/tp <対象> <座標>:対象を指定した座標にテレポートさせます。
・/give <対象> <アイテム> [個数]:対象に指定したアイテムを指定した個数だけ与えます。
・/summon <エンティティ> [座標]:指定したエンティティを指定した座標に召喚します。
・/time set <時間>:ゲーム内の時間を指定した時間に設定します。
・/weather <天候> [時間]:ゲーム内の天候を指定した天候に設定します。時間を指定すると、その時間だけ継続します。
・/gamemode <モード> [対象]:対象のゲームモードを指定したモードに変更します。
・/say <メッセージ>:全てのプレイヤーにメッセージを送ります。
・/tell <対象> <メッセージ>:対象にメッセージを送ります。
・/kill <対象>:対象を殺します。
・/clear <対象> [アイテム] [個数]:対象のインベントリを空にします。アイテムと個数を指定すると、そのアイテムだけを指定した個数だけ削除します。
・/effect <対象> <効果> [時間] [強さ]:対象に指定した効果を指定した時間だけ与えます。強さを指定すると、効果のレベルを変えることができます。
・/enchant <対象> <エンチャント> [レベル]:対象が持っているアイテムに指定したエンチャントを指定したレベルで付与します。
・/scoreboard <サブコマンド>:スコアボードを操作するためのコマンドです。サブコマンドには、objectives, players, teams などがあります。
・/function <関数名>:事前に定義した関数を実行します。関数とは、複数のコマンドをまとめたものです。関数は、.mcfunction ファイルに記述して、データパックに保存する必要があります。
コマンドブロックの応用例
コマンドブロックは、様々な方法で応用することができます。例えば、以下のようなことができます。
・ミニゲームやアドベンチャーマップを作る
コマンドブロックを使うと、自分だけのミニゲームやアドベンチャーマップを作ることができます。例えば、コマンドブロックでテレポートやアイテムの生成、スコアボードの設定などを行って、ルールや目的を作ることができます。また、コマンドブロックでメッセージや効果音、パーティクルなどを表示して、雰囲気や演出を作ることもできます。コマンドブロックで作ったミニゲームやアドベンチャーマップは、他のプレイヤーと共有したり、プレイしたりすることができます。
・ゲームの難易度や楽しさを変える
コマンドブロックを使うと、ゲームの難易度や楽しさを変えることができます。例えば、コマンドブロックで天候や時間、ゲームモードなどを変更して、ゲームの雰囲気や難易度を変えることができます。また、コマンドブロックでエンティティやアイテム、効果などを操作して、ゲームのバランスや楽しさを変えることもできます。コマンドブロックで変えたゲームの設定は、自分だけのオリジナルなゲームを作ることができます。
・クリエイティブな作品を作る
コマンドブロックを使うと、クリエイティブな作品を作ることができます。例えば、コマンドブロックで関数やループなどを使って、複雑な動きや形を作ることができます。また、コマンドブロックでテキストや音楽、画像などを生成して、芸術的な作品を作ることもできます。コマンドブロックで作ったクリエイティブな作品は、自分の表現力や創造力を発揮することができます。