コマンド構文解説-ポーション効果を自由に操る!/effect-
投稿日:2021/04/17
最終更新日:2021/07/17
どうも、ユキミ大福です。
今回はMinecraft統合版のコマンドの内の1つである『 /effect 』について解説をしていきます。
ここで解説するコマンド等は、解説する注意事項等をよく読み、個人でより詳しく調べた上で、個人の責任において使用して下さい。コマンド等の使用によって如何なる損害が発生しても、筆者であり当ブログの管理者でもあるわたくしユキミ大福は一切の責任を負いかねますので、ご了承下さい。
今回のコマンドは?
今回ご紹介するコマンドは『 /effect (エフェクト)』です。このコマンドは皆さんが普段、ポーション等を使って得ているポーション効果(ステータス効果)をコマンドで付与できるというものです。まずは構文を見てみましょう。
/effect のコマンド構文
/effect <セレクター> <ポーション効果名> <効果秒数(int)> <効果レベル(int)> <パーティクルの非表示(bool)>
/effect <セレクター> clear
- <セレクター>:必須
ターゲットセレクター。ゲーマータグを直接入力可。 - <ポーション効果名>:必須
ポーション効果名を入力する。現在(v1.17.10時点)入力可能なポーション効果とその名前は下の方で解説する。 - <効果秒数(int)>:省略可。<効果レベル(int)>を指定する場合は必須
ポーション効果が持続する秒数をint型の数値で指定する。省略した場合は「30」として扱われる。数値は0~1,000,000の間である必要がある。 - <効果レベル(int)>:省略可。<パーティクルの非表示(bool)>を指定する場合は必須
ポーション効果の強さのレベルをint型の数値で指定する。「0」で効果レベル「1」となる。省略した場合は「0」として扱われる。数値は0~255の間である必要がある。 - <パーティクルの非表示(bool)>:省略可
パーティクル(ポーションを飲んだ時に出るもや(area_effect_cloud) )を出すかどうかを true or false で指定する(trueでもやが出なくなる)。省略した場合は false として扱われる。
/effect の失敗条件
- 構文が適切でない(スペルミス等)。
- <効果秒数(int)>に0未満の数値を指定している。
- <効果レベル(int)>に0未満の数値か256以上の数値を指定している。
- 対象エンティティが何もポーション効果を受けていない(clearの場合)。
- セレクターの対象が読み込まれているチャンク内に存在していない。
/effect の成功条件
- 上記の失敗条件を満たしていない場合。
- <効果秒数(int)>に1,000,000を超える数値を指定した場合、1,000,000と指定したものとして実行される。
- コマンドが1人にしか成功しなくとも成功扱いとなる。
- 対象エンティティに元々付与されているポーション効果と、同じ種類で異なる効果レベルのポーション効果を付与しようとした場合は以下のようになる。
◆新しく付与するポーション効果の効果レベルの方が低い場合
・ポーション効果は新しく付与するポーション効果のパーティクルの非表示設定のみ上書きされる
・ただし、コマンドとしては成功扱いになる
◆新しく付与するポーション効果の効果レベルの方が高い場合
・ポーション効果は新しく付与するポーション効果の効果レベル・持続時間・パーティクルの非表示設定に上書きされる - 対象エンティティに元々付与されているポーション効果と、同じ種類・効果レベルで、異なる持続時間のポーション効果を付与しようとした場合は以下のようになる。
◆新しく付与するポーション効果の持続時間の方が短い場合
・ポーション効果は新しく付与するポーション効果のパーティクルの非表示設定のみ上書きされる
・ただし、コマンドとしては成功扱いになる
◆新しく付与するポーション効果の持続時間の方が長い場合
・ポーション効果は新しく付与するポーション効果の持続時間・パーティクルの非表示設定に上書きされる
/effect の実行例
例1)
コマンド:/effect @p speed
実行結果:基準座標から1番近いプレイヤーに、30秒間のスピード1(移動速度上昇 / speed)を付与する。
例2)
コマンド:/effect @a night_vision 60 0 true
実行結果:全てのプレイヤーに、60秒間の暗視1(暗視 / night_vision)を、パーティクルを非表示にした上で付与する。
例3)
コマンド:/effect @e[type=armor_stand] invisibility 100000 0 true
実行結果:全ての防具立て(armor_stand)に、100,000秒間の透明化1(透明化 / invisibility)を、パーティクルを非表示にした上で付与する。
例4)
コマンド:/effect @p[c=2] clear
実行結果:基準座標から1番近いプレイヤーと2番目に近いプレイヤーに付与されている全てのポーション効果を消去する。
/effect の詳細解説
/effect の概要
/effect は指定したエンティティに指定したポーション効果を付与するコマンドで、ポーション効果の持続秒数・効果レベル、そしてポーション効果を受けている間に発生するパーティクル(ポーション効果の雲 / area_effect_cloud)表示するかどうかも指定できます。
「/effect <セレクター> clear」と記述する方は、指定したエンティティに付与されている効果を全て消去することができます。ただしこの時、消去する効果を個別に選ぶことはできないので注意して下さい(要は全て消去するか、一切消去しないかの2択しかない)。
ここで、現在(ver.1.17.10)存在するポーション効果をまとめてみました。
例)
- (効果名JE / 効果名BE):
名前ID:(効果名)
説明:(効果の説明)
ver.1.17.10時点のポーション効果のリスト
- 移動速度上昇 / スピード:
名前ID:speed
説明:移動速度を上昇させる - 移動速度低下 / 鈍化:
名前ID:slowness
説明:移動速度を低下させる - 採掘速度上昇 / 勤勉:
名前ID:haste
説明:採掘速度を上昇させる - 採掘速度低下 / 疲労:
名前ID:mining_fatigue
説明:採掘速度を低下させる - 攻撃力上昇 / 力:
名前ID:strength
説明:近接攻撃力を上昇させる - 即時回復 / 回復:
名前ID:instant_health
説明:HPを即座に回復する - 即時ダメージ / ダメージ:
名前ID:instant_damage
説明:即座にダメージを与える - 跳躍力上昇 / 跳躍:
名前ID:jump_boost
説明:ジャンプ力を上昇させる - 吐き気 / 目まい:
名前ID:nausea
説明:視界がぐにゃぐにゃになる - 再生能力 / 再生:
名前ID:regeneration
説明:HPが回復し続ける - 耐性 / 耐性:
名前ID:resistance
説明:大抵のダメージを軽減する - 火炎耐性 / 耐火:
名前ID:fire_resistance
説明:炎・マグマのダメージを無効化する - 水中呼吸 / 水中呼吸:
名前ID:water_breathing
説明:水中で息が続くようになる - 透明化 / 透明化:
名前ID:invisibility
説明:姿が見えなくなる - 盲目 / 目つぶし:
名前ID:blindness
説明:姿が見えなくなる - 暗視 / 暗視:
名前ID:night_vision
説明:暗い場所が明るく見えるようになる - 空腹 / 空腹:
名前ID:hunger
説明:満腹度が速く減るようになる - 弱体化 / 弱体化:
名前ID:weakness
説明:近接攻撃力を低下させる - 毒 / 毒:
名前ID:poison
説明:ダメージを受け続ける(ハート半分まで) - 衰弱 / 衰弱:
名前ID:wither
説明:HPが見づらくなり、ダメージを受け続ける(死ぬまで) - 体力増強 / HPブースト:
名前ID:health_boost
説明:HPの最大値を上昇させる - 衝撃吸収 / 吸収:
名前ID:absorption
説明:使い捨てのHPを一時的に付与する - 満腹度回復 / 飽和:
名前ID:saturation
説明:満腹度と隠し満腹度を回復する - 浮遊 / 浮遊:
名前ID:levitation
説明:エンティティが浮かび上がる - (JEには未実装) / 致死毒:
名前ID:fatal_poison
説明:ダメージを受け続ける(死ぬまで) - コンジットパワー / コンジットパワー:
名前ID:conduit_power
説明:水中限定の暗視、採掘速度上昇、水中呼吸を付与する - 落下速度低下 / 低速落下:
名前ID:slow_falling
説明:落下速度を低下させ、落下ダメージを無効化する - 不吉な予感 / 凶兆:
名前ID:bad_omen
説明:村人の交易が値引きされる - 村の英雄 / 村の英雄:
名前ID:village_hero
説明:村人の交易が値引きされる
/effect の実行結果等々
コマンドの実行結果は「コマンドの成功・失敗・エラー」のいずれかになります。
失敗した場合には「入力した数値が大きすぎる(or 小さすぎる)」または「(対象名) は効果を受けていないので、除去できませんでした」と返って来ます。
コマンドブロックが保持・出力する結果は「コマンドの実行に成功したか(True or False)」と「コマンドが何人に対して成功したか(int)」の2点です。コマンドが成功した人数については、RSコンパレーターを用いてRS動力の形で取り出せます。
/effect の強み・使い道
ゲーム制作においては、特殊アイテムに用いられます。/enchant とは異なり/effect では、通常プレイでは獲得不可能な効果レベルのポーション効果を付与することが可能です。
例えば、スピード5(移動速度上昇 / speed 4)なんかは通常のポーションでは得ることができない効果です。こういった、普通はできない効果を受けてみるだけでも中々面白いのではないでしょうか。
また忘れがちですが、プレイヤー以外のエンティティに対してもポーション効果を付与することができます。例を挙げますと、わたくしが作ったゲームでは防具立て(armor_stand)を用いる際に、その防具立てを破壊されないように耐性(耐性 / resistance)を付与したり、視認できないように透明化(透明化 / invisibility)を付与したりしています。
結構色々な応用法があるので、コマンド解説応用編でもさらに掘り下げる予定です。お楽しみに!
/effect の弱み・弱点
clearでポーション効果を消去する場合、消去するポーション効果を選ぶことはできません。要は牛乳と同じです。この点には注意して下さい。
今回のまとめ
- 『 /effect 』は対象エンティティにポーション効果を付与したり消去したりするコマンド!
関連記事
- コマンド構文解説-霧を操る…?/fog-
- コマンド構文解説-エンティティにライド・オン!/ride-
- コマンド構文解説-モブがアクションを起こす!?/event, /mobevent-
- コマンド構文解説-あのモブのあのモーションを!?/playanimation-
- コマンド構文解説-何が起こるんだ!?PART1!/connect ( /wsserver ), /help ( /? ), /kick
- コマンド構文解説-何が起こるんだ!?PART2!/list, /locate, /schedule-
- コマンド構文解説-コマンドに革命を起こす…!?/function, /reload-
当記事及び当ブログへのご意見・ご質問はいつでも受け付けております。
お気軽にコメント欄までどうぞ!
↓良ければポチッとお願いします。