(8/25更新)好きな範囲にダメージなどの効果を設置できる、AreaEffectCloudのコマンドと使い方を解説。【Minecraft】
例えば触れるとダメージを喰らう毒の霧や、指定した回数だけ回復できる回復スポットだとか… バージョン1.9では、配布ワールド制作に便利な新エンティティ「AreaEffectCloud」が追加されました。「残留ポーション」から出てくる効果付きのパーティクルのことです。今回は、ポーション効果や時間などをカスタマイズしたAreaEffectCloudを設置するコマンドを解説します。
[8/25追記] バージョン1.10で追加された新NBTタグを使って、blockcrack/blockdust/iconcrackパーティクルの種類を指定する方法を追記しました。
目次
AreaEffectCloudって何? 配布ワールド作成に使える使用例をいくつか
1.9の新アイテム「残留ポーション」は、エンダードラゴンのドラゴンブレスを採取してポーションに加える事で作れます。この効果付きパーティクルの部分が「AreaEffectCloud」というエンティティなんです。
そしてこのAreaEffectCloud(略してAEC)は、NBTタグでパーティクルや効果の種類、大きさなどを細かく設定できるんです。ダメージを喰らったり毒状態になってしまったりなど、ダンジョン系の配布ワールドの制作にピッタリなトラップを作れるわけです。
さらに「使うと半径を変化させる」機能を使えば、使用回数に制限が付いたAECも作れます。例えば3回だけ回復させてくれる回復スポットだとか、一度だけ様々なポーション効果を与えてくれる泉だとか…
MCStackerを使ってAreaEffectCloudのコマンドを作成しよう
- 1.9対応の高機能コマンド生成ツール「MCStacker」
http://mcstacker.bimbimma.com/
最近頼りまくりですが、今回もMCStackerでコマンドを生成してみましょう。
summonコマンドモードで「AreaEffectCloud」を選択し、必要ならば名前を入力します。(右のHide Nameにチェックを入れれば名前は隠せます。)加えてTag欄にタグを入力して分類すると後々便利ですね。
パーティクルや範囲、秒数、効果などの設定項目を解説
それではパーティクルや大きさ、秒数などを設定していきます。
項目名 | 説明 |
---|---|
Particle | パーティクルの種類を選びます。公式Wikiのパーティクル一覧をご参照下さい。 |
Reapplication Delay | 一度効果を与えた後、次に効果を与えるまでの間隔をtickで指定します。 |
Radius | AECの大きさを半径のブロック数で指定します。入力しないとAEC自体が表示されません。 |
Radius Per Tick | 1tickでどれくらいAECの大きさを変化させるかの数値を入力します。マイナスの値にすればだんだん小さくなります。例えば-0.1にした場合、1秒で2ブロック分半径が小さくなります。 |
Radius On Use | 効果を与えた際にどれくらいAECの大きさを変化させるかの数値を入力します。プラスの値なら大きく、マイナスの値なら小さくします。 |
Duration | AECが残る時間をtickで指定します。32768にすれば永久に残ります。 |
Duration On Use | Wikiの解説によると「不明」とのことで、特に意味はないようです。 |
Age | 設置時にどれだけ時間が経過したことにするか、をtickで指定します。 |
Wait Time | 設置されてから効果が付与されるまでの待ち時間をtickで指定します。Ageが指定してある場合はその分待ち時間は短くなります。 |
Color | チェックを入れると好きな色を選べます。しかし私が確認した限りではmobSpellパーティクル以外には効きませんのでご注意下さい。 |
ちなみにParticle:でmobappearanceを選んでしまうとエルダーガーディアンのグロ画像最終形態を嫌でも見せられるのでご注意下さい。これってパーティクルだったんですね…
次にAECから付与されるステータスエフェクト(ポーション効果)を設定していきます。Select Potion Typeのプルダウンメニューは無視して、下のStatus Effectsにチェックを付けて効果を選んで下さい。
効果名 | 日本語訳 |
---|---|
Speed | 移動速度上昇 |
Slowness | 移動速度低下 |
Haste | 採掘速度上昇 |
Mining Fatigue | 採掘速度低下 |
Strength | 攻撃力上昇 |
Instant Health | 即時回復 |
Instant Damage | 即時ダメージ |
Jump Boost | 跳躍力上昇 |
Nausea | 吐き気 |
Regeneration | 再生能力 |
Resistance | 耐性 |
Fire Resistance | 火炎耐性 |
Water Breathing | 水中呼吸 |
Invisibility | 透明化 |
Blindness | 盲目 |
Night Vision | 暗視 |
Hunger | 空腹 |
Weakness | 弱体化 |
Poison | 毒 |
Wither | 枯渇 (1.8までは”ウィザー”だった) |
Health Boost | 体力増強 |
Absorption | 衝撃吸収 |
Saturation | 満腹度回復 |
Glowing(1.9) | 発光 |
Levitation(1.9) | 浮遊 |
Luck(1.9) | 幸運 |
Bad Luck(1.9) | 不運 |
それぞれの効果にはAmplifier(強さのレベル)とDuration(秒数)が指定でき、右のHide particlesにチェックを付ければパーティクルを非表示に出来ます。
- 作成例: 1秒おきにダメージを喰らうAEC
/summon AreaEffectCloud ~ ~1 ~ {CustomName:”一定間隔でダメージを与える”,CustomNameVisible:1,Particle:witchMagic,ReapplicationDelay:20,Radius:3f,Duration:32768,Effects:[{Id:7,Amplifier:0,Duration:20}]}
▲ReapplicationDelayを20にすることで20tick、すなわち1秒間隔で効果を与えます。
効果を与えると小さくなる(使える回数が限られた)AreaEffectCloudの作り方
例えば「三回だけ役立つ効果が付与される」だとか、AreaEffectCloudから効果が付与される回数を制限するにはどうすればいいのでしょうか。答えは簡単。使う度にAECを小さくして消してしまえばいいのです。
MCstackerの設定画面のRadius On Useに、マイナスの数値を入力します。すると効果が付与される度に半径がその分小さくなります。つまりRadius÷(-RadiusOnUse)=使える回数なんです。
[8/25追記] brockdust/brockcrack/iconcrackのパーティクルの種類を指定するには
さて、AreaEffectCloudには様々なパーティクルを設定することができますが、追加でNBTタグを書いて、アイテム/ブロックの種類を指定しないと表示されないパーティクルがあります。それは以下の通り。
- blockcrack : ブロックを破壊した際のパーティクル
- blockdust : 本来は防具立てや砂が壊れる際のパーティクル。コマンドなら様々なブロックを指定可能
- iconcrack : 食べる時、投げた卵、スプラッシュポーション、エンダーアイ、道具が壊れた際に出るパーティクル。コマンドならどんなアイテムでも出せる
以下、それぞれのパーティクルのアイテム指定方法をまとめました。ちなみにこのアイテム指定機能はバージョン1.10以降でないと使えません。
また、2016年8月25日現在MCStackerがこのNBTタグに対応していないので、手動で追記する必要があります。
- blockcrackパーティクルでブロックの種類を指定するNBTタグの書き方
-
{ParticleParam1:ブロックID+データ値*4096}
例:赤色の堅焼き粘土の場合、159+14*4096=57503 {ParticleParam1:57503}
- blockdustパーティクルでブロックの種類を指定するNBTタグの書き方
-
{ParticleParam1:ブロックID}
例:ダイヤモンドブロックの場合:{ParticleParam1:57}
- iconcrackパーティクルでアイテムの種類を指定するNBTタグの書き方
-
{ParticleParam1:アイテムID,ParticleParam2:データ値}
例:チューリップの場合:{ParticleParam1:38,ParticleParam2:4}
実際のコマンドは、/summon AreaEffectCloud ~ ~1 ~ {Particle:iconcrack,Radius:5f,Duration:32768,ParticleParam1:38,ParticleParam2:4}といった感じになります。このNBTタグ名もうちょっと短くなりませんかね…
AreaEffectCloudを削除したり、後からパーティクルなどを変更するには
AreaEffectCloudを削除するkillコマンド
AreaEffectCloudはエンティティなので、削除する際はkillコマンドを使います。
- AreaEffectCloudを削除するコマンド
-
- 最寄りの1つを削除する場合:
/kill @e[type=AreaEffectCloud,c=1] - 名前を指定して削除する場合:
/kill @e[type=AreaEffectCloud,name=名前]
▲名前が日本語の場合はエラーになるのでご注意下さい。 - 全て削除してしまう場合:
/kill @e[type=AreaEffectCloud]
- 最寄りの1つを削除する場合:
後からAreaEffectCloudの設定を変更するentitydataコマンド
パーティクルが気に入らないだとか、大きさを変えたいだとか、後から色々設定を変更したい時はentitydataコマンドを使いましょう。使い方はとっても簡単。
- 例1: 最寄りのAreaEffectCloudのパーティクルを後から変更するコマンド
/entitydata @e[type=AreaEffectCloud,c=1] {Particle:パーティクル名}
- 例2: ボタンを押すと最寄りのAECの成長が始まり、もう1つのボタンを押すと成長が止まる
-
成長を開始する:/entitydata @e[type=AreaEffectCloud,c=1] {RadiusPerTick:0.1f}
成長を止める:/entitydata @e[type=AreaEffectCloud,c=1] {RadiusPerTick:0f}
MCStackerで設定したRadius、Ageなど、様々な値を弄れます。例えばDurationを32767以下に設定しておいて、後からAgeを設定してAEC内の時間を進めてAECの消滅を早めることだってできます。entitydataコマンドをうまく使って、変幻自在にAECを操りましょう。
参考にさせて頂いたページ様
Chunk format – Minecraft Wiki
http://minecraft.gamepedia.com/Chunk_format
20件のコメント
-
群曹2016年3月1日今回の記事は目にきますね(@~@)
-
そこにいた人2016年3月2日パーティクルをうまく透明にしてGlowingの効果つけると…
-
亀井大和2016年3月2日1.9のアップデート内容の記事書かないんですか?
-
匿名2016年3月2日http://minecraft-diary.jp/blog-entry-1106.html 砂利馬氏の記事にて詳細にまとめられていますので私は書きません。
-
野獣先輩2016年3月2日1.9でポーション効果を持った矢が追加されましたが、その矢ってポーションみたいにコマンドでいじって効果時間長くしたり、本来はない「空腹」効果つけたりとかコマンドで出来ないんですか?
-
匿名2016年3月21日なんとか作ってみます。
-
2723101mj@進歩ダメダメ2016年4月18日/give @p minecraft:tipped_arrow 1 316 {CustomPotionEffects:[{Id:17b,Amplifier:1b,Duration:200,ShowParticles:1b}]} これのこと?
-
ヘタレの極み2016年5月8日1.8ではできないのですか?
-
匿名2016年5月8日残念ながら1.8では無理です... 残留ポーションと一緒に追加されたエンティティなので。 effectコマンドとparticleコマンドで擬似的に再現はできそうですが、触れたら大きさが変わる、などの設定ができるのは1.9のAreaEffectCloudだけです。
-
どまんなか2016年6月5日死亡ログの設定とかできないんですか?
-
youoh182016年6月12日このパーティクル設定をMOBの攻撃方法に追加することってできないんですかね? (例えばウィザーの攻撃方法に毒の効果を持ったビームを追加する・・・とか) わかればご回答お願いいたします。
-
game6の人2016年8月25日この設定だけでは多分できないけど 「着弾地点で爆発する雪玉」的な記事があったからそれを参考にしたら
-
まっつん2016年9月14日記事に書いてある/summon AreaEffectCloud ~ ~1 ~ {CustomName:"一定間隔でダメージを与える",CustomNameVisible:1,Particle:witchMagic,ReapplicationDelay:20,Radius:3f,Duration:32768,Effects:[{Id:7,Amplifier:0,Duration:20}]}を試したんですが エフェクトが消えないのですがどこをいじれば消えますか?
-
トルム2016年9月18日BlockcrackなどすでにMCStackerで対応していますよ。
-
tatsuya vvv2016年9月24日スコアボードで1ティック+1して 適当に100とかで周期させて(100になったら0に戻す) その時(たとえば100になったとき)ウィザーが向いている方向に その毒の効果を持ったビームをだせばいいよ
-
たかどー2016年10月8日「Duration On Use」は、効果を与えた際にどれくらいAECが残る時間を変化させるかの数値を入力するようです。ここの数値をいじると、例えば、 「範囲内のMOBが生きている間は残り続け、MOBがいなくなる・死ぬと消えるパーティクル」 といったものが作れました。
-
でんでん2016年10月24日巨大ウィザーコマンド(自作) /summon WitherBoss ~0 ~0 ~0 {CustomName:"Dinnerbone",Tags:["BigWither"],Attributes:[{Name:generic.maxHealth,Base:1000},{Name:generic.movementSpeed,Base:0.1},{Name:generic.attackDamage,Base:7},{Name:generic.knockbackResistance,Base:0.1}],Glowing:1b,ActiveEffects:[{Id:12,Amplifier:2,Duration:0,ShowParticles:0b}]}
-
でんでん2016年11月19日1.11からウィザーに「Dinnerbone」をつけたら巨大化するのではなく ”逆さ”になっていました。すみません。
-
nana2017年4月23日/summon area_effect_cloud ~ ~1 ~ {CustomName:"回復する霧",CustomNameVisible:1,Particle:witchMagic,ReapplicationDelay:20,Radius:3f,RadiusPerTick:-0.05f,RadiusOnUse:0f,WaitTime:1,Effects:[{Id:10,Amplifier:3,Duration:200}],Potion:"minecraft:regeneration"} とやっても『召喚できません』と出てきてしまいます。データタグを確認できませんでしたとか出てきますがどうすれば出てきますか?
-
pork project2017年5月17日こんにちは、 二行目、Duration:「tick数(一秒=20)」 にすればいいと思います。