一般的なコマンド
多くのコマンド システムにとって不可欠なコマンドがいくつもあります。 このリストでは、何らかの形で使用される可能性が高いコマンド、特に一般的で役立つコマンドについて説明します。
このチュートリアルでは、次の内容を学びます。
- 最初から使用する特に一般的なコマンド。
要件
本チュートリアルを開始する前に、以下を完了しておくことをお勧めします。
/help
一番最初は /help
コマンドです。
/help <page: int>
チャットで /help
のみを実行すると、実行できるすべてのコマンドのリストが表示されます。 ただし、多すぎるため複数のページに分かれており、一度に表示されるのは 1 ページのみです。 ページ番号を指定すると、表示するコマンドのページを変更できます。
1 つのコマンドの使用方法やすべての構文を確認する場合は、コマンド名を /help
の後に付けて使用します。 これはコマンドの概要が必要な場合に役立ちます。
/help [command: CommandName]
/gamerule
この /gamerule
コマンドを使用して、ゲームプレイの具体的な特徴を変更します。これには開発に役立つオプションが用意されています。 多数のゲームルールがあり、チャットの自動補完機能を使用してリスト表示できます。
/gamerule <rule: BoolGameRule> [value: Boolean]
/gamerule <rule: IntGameRule> [value: int]
ゲームルールには、ルールの値として true/false しか指定できないもの ("BoolGameRule") と、整数を指定できるもの ("IntGameRule") があります。 開発に欠かせない主要なゲームルールは、次に示す "commandblockoutput"、"sendcommandfeedback"、"commandblocksenabled"、"dodaylightcycle"、"doweathercycle" ですが、すべてブール型です。
"commandblockoutput"
前のコマンド例すべてからチャットに出力が送信されたことに気が付く場合があります。 これは、特に毎ティック実行するコマンドでは、邪魔になることがあります。 "commandblockoutput" ゲームルールを false に設定すると、このようなチャットへの出力を無効にすることができます。
/gamerule commandblockoutput false
"sendcommandfeedback"
コマンドブロックの出力を無効にしてもすべてのフィードバックが無効になるわけではありません。 一部のコマンド (/xp
など) では、コマンドブロックの出力が無効な場合でもフィードバックの提供が続行されます。 "sendcommandfeedback" ゲームルールでは、このようなメッセージも無効にして、完全にサイレントなコマンド システムを実現できます。
/gamerule sendcommandfeedback false
"commandblocksenabled"
世界のコマンドブロックを素早く有効または無効にするには、"commandblocksenabled" をオンまたはオフに切り替えます。 これが特に役立つのは、リピート コマンドブロックによってプレーヤーが繰り返しテレポートされる場合です。
/gamerule commandblocksenabled false
"dodaylightcycle"
開発またはゲームプレイに問題がある場合に、昼夜サイクルが変化しないようにすることができます。 つまり、ゲームを任意の時刻を設定すると (/time
コマンド などを使用)、その時刻から変化しなくなります。
/gamerule dodaylightcycle false
"doweathercycle"
"dodaylightcycle" と同様に、天候サイクルを制御したい場合もあります。 楽しい設定を用意しようとする場合に、雷雨が始まるのでは最適な効果は得られません。 "doweathercycle" を無効にすると、/weather
コマンドを使用して設定された場合でも、天候がそのまま変化しません。
/gamerule doweathercycle false
/gamemode
コンテンツを開発しているときは、クリエイティブモードでプレイすることが多くなります。 ただし、コンテンツをテストするときは、場合によってはサバイバルモードまたはアドベンチャーモードに切り替える必要があります。 /gamemode
コマンドでは、現在のゲーム モードを変更できます。
/gamemode <gameMode: GameMode> [player: target]
/gamemode <gameMode: int> [player: target]
ゲーム モードは、いくつかの方法で表すことができます (名前、文字、または数字)。 指定できる値は、"survival" ("s" または 0)、"creative" ("c" または 1)、および "adventure" ("a" または 2) です。 "default" ("d") もあり、その世界のデフォルト ゲーム モードが何であるかにかかわらずそのモードに設定されます。 次のように自分でチャットで実行すると、自分のゲーム モードがクリエイティブに設定されます。
/gamemode creative
ターゲット セレクターを使用して特定のプレーヤーのゲーム モードを変更することもできます。これは、ゲームプレイの特徴 (アドベンチャーモードではブロックを壊せないなど) を制御するときに役立ちます。 次では、"sometag" タグを持つすべてのプレーヤーのゲーム モードがアドベンチャーモードに変更されます。
/gamemode adventure @a[tag=sometag]
/time set
ゲームプレイ環境の変更は、適切な雰囲気を提供するために欠かせません。 時刻の変更はそのための方法の 1 つです。
/time set <amount: int>
/time set <time: TimeSpec>
正確な時刻を表す整数を指定することも、"TimeSpec" を "day"、"midnight"、"night"、"noon"、"sunrise"、"sunset" のいずれかの値に設定して一般的な時間帯を簡単に選択することもできます。 たとえば、太陽をプレーヤーの真上に設定するには、次を使用することができます。
/time set noon
/weather
/time set
と同様に、/weather
コマンドを使用して環境を変更できます。 特定の種類の天候を発生させたい場合、使用するのはこのコマンドです。
/weather <clear|rain|thunder> [duration: int]
オプションの duration は、選択した天候が継続するゲーム ティック数です。 20 ゲーム ティックは 1 秒であるため、天候を継続させる秒ごとに 20 をかけてください。 次では、天候が 30 秒間 (600 ティック) の雷に設定されます。
/weather thunder 600
duration を使用する予定がある場合は、"doweathercycle" ゲームルールが false であることを確認してください。 true の場合、天候の変化が発生しないため、duration の指定は無駄になります。
/setworldspawn
世界に初めて入るプレーヤーのために特定の場所を設定したり、死亡したプレーヤーを特定の場所でスポーンさせたりする場合、/setworldspawn
コマンドによって、そのための機能が提供されます。
/setworldspawn [spawnPoint: x y z]
ベッドでのスポーンが設定された後にプレーヤーが死亡すると、自身のベッドでリスポーンされることに注意してください。
/tp または /teleport
簡単な移動手段を提供したい場合や、プレーヤー (またはプレーヤー以外のエンティティ) の居場所を制御する方法が必要になる場合があります。 /tp
コマンドは、ターゲットのプレーヤーを特定の場所または他のエンティティにテレポートさせます。 /tp
の構文は、一見すると難しそうに見えますが、多くは同じオプションから分岐していることに注意してください。
/tp <victim: target> <destination: target> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> [yRot: value] [xRot: value] [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> facing <lookAtEntity: target> [checkForBlocks: Boolean]
/tp <victim: target> <destination: x y z> facing <lookAtPosition: x y z> [checkForBlocks: Boolean]
最も単純な方法では、プレーヤーを特定の座標位置にテレポートできます。
/tp @p 100 50 100
別のプレーヤーやエンティティの位置にテレポートすることもできます。 destination のターゲットは 1 つのエンティティに解決される必要があります。つまり、1 つのエンティティのみをターゲットとするターゲット セレクターを使用するか、対象のターゲットが重複しないようにする必要があります (/tag
コマンド を使用してターゲットを識別するなど)。
/tp Steve Alex
/tp @p @e[type=minecraft:armor_stand,c=1]
/tp @a @e[type=minecraft:creeper,tag=destination_1]
共通のオプション "checkForBlocks" のデフォルトは false です。true に設定した場合、その場所にブロックがあるとプレーヤーのテレポートが行われません。
次のコマンドでは、スティーブを座標 [50, 63, 50] にテレポートして、ブロックにぶつからないことを確認します。
/tp Steve 50 63 50 true
/give、/clear、/replaceitem
これら 3 つのコマンドはプレーヤーの持ち物を操作します。/replaceitem
は、プレーヤー以外のエンティティの持ち物および物をしまえるブロックも変更できます。 /give
コマンドはアイテムを与え、/clear
コマンドはアイテムを除去し、/replaceitem
コマンドはインベントリの特定のスロットにアイテムを配置します。
/setblock、/fill、/clone
これらのコマンドは、世界の物理的なブロックを変更します。 /setblock
コマンドは 1 つのブロックをセットでき、/fill
コマンドは同じブロックを複数セットできます。 一方、/clone
コマンドは、複数のブロックをある場所から別の場所にコピーします。
/effect
ステータス効果の追加や削除は、/effect
コマンドを使用して行います。 ターゲットのすべてのステータス効果をクリアすることもできます。
/summon
/summon
コマンドを使用して、牛や羊から独自のカスタム エンティティまで、新しいエンティティを世界にスポーンさせます。
/tellraw、/titleraw
/say
、/tell
、および /title
コマンドは、翻訳の対象ではないため、情報を提示する場合には理想的ではありません。 /tellraw
コマンドと /titleraw
コマンドは、メッセージに対する JSON 入力を使用して翻訳できます。 また、/tellraw
コマンドは、メッセージに "whisper" ステートメントが付属しないため、趣旨がさらに明確になります。
/tellraw @a {"rawtext":[{"translate":"commands.testfor.success","with":["PlayerName"]}]}
/tellraw @a {"rawtext":[{"text":"Hello World"}]}
/scoreboard
/scoreboard
コマンドは、エンティティごとに数値を追跡したり、コマンドを使用して算術演算を実行したりするための高機能の方法です。 最初のステップでは、オブジェクトを作成し、必要であればそれをサイドバーに表示します。
/scoreboard objectives add objectiveA dummy
/scoreboard objectives setdisplay sidebar objectiveA
最も単純な一連の流れとしては、プレーヤーがタスクを完了した場合に報酬としてポイントを与えます。
/scoreboard players add @p objectiveA 1
その後、ターゲット セレクターを使用して、一定のポイント数を得たプレーヤーを選択できます。
@a[scores={objectiveA=10..}]
/tag
/scoreboard
と似ていますが、/tag
コマンドを使用すると、エンティティごとに文字列値を追跡できます。 タグが使用されるのは、"true" または "false" の状況など、数値が必要ない場合です。 たとえば、エンティティにボスであることを示すタグを付け、後から、そのタグに基づいてそれら同じエンティティをターゲットにすることができます。
/tag @e[type=sheep] add boss
/tag @e[type=minecart] add boss
/say Bosses: @e[tag=boss]
/testfor、/testforblock、/testforblocks
これらのコマンドは、エンティティ、ブロック、およびブロック構造のコピーの存在をテストします。 これらのコマンドは、条件付きコマンドブロックと一緒に使用すると役立ちますが、関数では同等の条件付き設定がないためそれほど役立ちません。
通常、/testfor
コマンドと /testforblock
コマンドはどちらも、エンティティの存在に基づいたコマンドの実行や、ブロックの存在に基づいたコマンドの実行をサポートする /execute
に対してはスキップできます。
/execute
/execute
コマンドの主な機能は、ネストされたコマンドの実行者と実行オリジンを変更することです。 ただし、その構文によって、一定の条件付きコマンドを実行することができます (関数ではこれ以外の方法で行うことはできません)。
/execute <origin: target> <position: x y z> <command: command>
/execute <origin: target> <position: x y z> detect <detectPos: x y z> <block: Block> <data: int> <command: command>
たとえば、特定のブロックがプレーヤーの下にあるかどうかを検出し、その結果としてコマンドを実行するには、/testforblock
コマンドをネストする代わりに "detect" 引数を使用できます。
/execute @a ~ ~ ~ detect ~ ~-1 ~ grass 0 say Player is standing on top of grass.
次のステップ
コマンド、ターゲット セレクター、コマンドブロック、さまざまな役立つコマンドについて学んだところで、次は、それらを組み合わせて、モニュメント完成システムの形式で小規模なプロジェクトを作成してみましょう。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示