コマンドとアドオンを使ってミニゲーム制作中な來夢(ライム)と申します。
誤字、脱字、個人の独自解釈が多く含まれてますので気になったら言ってください。
このブログでは初心者がコマンドやアドオンの作り方で行き詰まってる悩みについて大体ありそうなものをまとめてみました。
コマンドについて
ミニゲーム・荒らし対策等で使われるコマンドブロック
最新バージョンではexecuteの構文の仕様が変更・新バージョンではinputpermissionやcameraコマンドが追加されたりデータ値が削除されブロックステータスに変更されたり。
昔とは大幅に変更され、「構文がわからない・覚えてない」と言う方のために少しexecute 構文を解説しようと思います。
execute
構文はサブコマンドによって変化します。
ちなみにサブコマンドにサブコマンドは重ねがけすることが出来る
サブコマンド一覧
align
execute align <string> ・・・
stringのところにx,y,zのどれかの組み合わせを入力することで指定する 例「x,y,z,xy,xz,yz,xyz」
指定した実行座標を切り下げ実行する
stringをxzに指定しsummon コマンドで座標「10.24 -65.5 -42.81」に防具立てを召喚するコマンドで試してみると
/execute align xz run summon armor_stand 10.24 -65.5 -42.81
と実行すると10 -65.5 -45に防具立てが召喚されるこのようにxzを指定した場合xzの小数点以下の数値が切り下げられる(簡単に言えば)。
tpとかで、0 0 0で指定した場合はx=0.5 y=0 z=0.5と詳細に指定しなければ自動的にxzがブロックの真ん中に来るようになってます。
anchored
execute anchored <eyes/ feet>・・・
実行座標を頭[eyes]か足[feet]に設定する。デフォルトは足
いったいどういう事なのかと言うと、目元の位置で実行するか足元の位置で実行するかだ。以下の構文で説明します。
目元にminecraft:redstone_ore_dust_particleと言う名前のパーティクルをプレイヤーが向いている1ブロック先に召喚する。
*チャットで実行します
/execute anchored eyes run particle minecraft:redstone_ore_dust_particle ^^^1
/execute anchored feet run particle minecraft:redstone_ore_dust_particle ^^^1
と明らかに違いがあるのがわかる。
as
execute as <target>・・・
targetに実行者として設定したいエンティティを設定する。
簡単に言えばチャットで実行した様にtargetで指定したエンティティがコマンドを実行している風に捉えて下さい。
なのでtargetで指定したエンティティが存在した場合実行されると言う事なのです。
at
execute at ・・・
実行座標をtargetで指定したエンティティと同じ座標になるようにする。以下の構文で説明します。
execute atは実行者が指定できないのでasも使用する。
実行者を牛に指定してその牛に雷を落とす
*コマンドブロックで実行します
/execute as @e[type=cow] at @s run summon lightning_bolt ~~~
asで牛をコマンドの実行者として尚且つ実行地点atを使用して牛に雷を落とす。ちなみにat @sはプレイヤー以外でも使用でき、コマンドブロックで指定した場合以前に入力されたセレクターが対象です
facing
execute facing <target /x y z>・・・
targetの場合facing entity <セレクター引数> <eyes/ feet>
実行方向を向いているものとして実行します
は?何じゃそれ…と言う方に分かりやすいように説明すると実行対象は東を向いているとしてコマンドで西に向いていると言う事にして実行する。ということです…
targetはエンティティに向いているpositionはその座標に向いていると言う事にして実行します。
*コマンドブロックで実行します。
プレイヤーと防具立てに向いているものとして1ブロック移動させる
/execute as @p at @s facing entity @e[type=armor_stand] eyes run tp @s ^^^1
プレイヤーを座標(25 5 3)に向いているとして1ブロック移動させる
/execute as @p at @s facing 25 5 3 run tp @s ^^^1
他に例として挙げるならブラックホールとか作ったり出来ると思いますがここでは紹介しません。
in
execute in <dimension>
実行ディメンションを指定してオーバーワールドにいながらネザーやエンドに居ることにして実行する
プレイヤーがオーバーワールド居るとしてエンドにテレポートしたいときの構文
*チャットで実行する
/execute in minecraft:the_end run tp @s ~~~
まあ、たぶん使わないサブコマンド、ただ単にネザーで使用した事にすることで、オーバーワールドにいてもlocateやtpで建物を探したり移動したりする
positioned
execute positioned x y z> ・・・
座標を指定したり、エンティティの実行座標の基準を設定する
まあ、広く言えば@pで実行座標に一番近いプレイヤーを指定できるのと指定できないlocateとかを
実際は0 0 0にいるけど、24 5 4から一番近いプレイヤーを指定できたりする。エフェクトは秒数と強さに色分けしてある
*コマンドブロックで実行する。
/execute positioned 24 5 4 run effect @p speed 10 5
rotated
execute rotated <as セレクター/direction >
実行方向と実行角度を指定したりエンティティと同じようにする
directionは水平方向 垂直方向で指定
方向 North:-180 East:-90 West:0 South:90
上下 Over:-90 Under:90
as セレクター は実行対象の角度方角の基準となるエンティティ
つまり?
防具立てをプレイヤーの向いている方向に1ブロック移動させる
*コマンドブロックで実行します。
/execute as @e[type=sheep] at @s rotated as @p run tp @s ^^^1
東に向いているとして東の方向に1ブロック移動させる
/execute as @s at @s rotated -90 0 run tp @s ^^^1
と無理やり向かせること無く指定した方向に向いていると言うことにする便利なコマンドですね(諦め)どこぞの、コマンド勢は魔方陣などを作ったするのに使ったりもしてます。
if/unless
ifは条件にあっていれば実行unlessは条件に当てはまらない限り実行します。
このサブコマンドは特殊で
if/unless block
指定した位置のブロックのIDを比較する。要はブロックIDが一致するか一致しないか。ステータスは省略可能
自分の下のブロックが石だったら死亡する。
*コマンドブロックで実行する
/execute as @a at @s if block ~~-1~ stone run kill @s
if/unless blocks <start> <end> <destination> >
座標の始点をstart終点をendに指定し、比較対象の北西下の座標がdestinationに指定する。allは空気を含みmaskedは空気ブロックを無視する
例えば、パズルとかで正解の場所の始点と終点を設定し比較対象の座標北西下に設定することで、もし正解ならレッドストーンが置かれて次へ進めたり。間違っていればunlessでリセットされると言う機構が作れる。
if/unless entity <target>
指定したセレクターが一体以上存在した場合かを判別する
まあ、言えばtestforの様なものにセレクターが存在しない場合時に実行と言うことが出来る。
まあ例に挙げれば、鬼ごっこで逃げ陣営(“逃げ”と言うtagがある)が存在しない場合、全員をテレポートさせる様な機構が作れる
*コマンドブロックで実行します。
/execute if unless @a[tag=逃げ] run tp @a <x y z>
常時実行ではなくゲーム中にのみ実行するように開始ボタンを付けて押されたらレッドストーンが設置されコマンドブロックが起動する様にすれば多分行けると思います。
run
これ単体では使用できないが。サブコマンド変更された変数を実行できるサブコマンド
まあ言えばサブコマンドで設定した条件をrunの後に書いたコマンドに反映させるような事だと思ってる(感覚的に)
アドオンについて
まず「アドオンってやんな」っていう方に向けて一応説明します。
add_onとは公式Mojangが提供するMinecraft Bedrock Edition がプレイできるAndroid windows10 Xbox Nintendo Switch Playstation 4..等
worldの仕様 texture mobの挙動やmodel 等の様々な要素をカスタマイズすることの出来る物である
まあ簡単に言えばJavaのMODのようなもの
しかしスペックが問題な上統合版で可能なことは限られている
リソースパックとビヘイビアパックの違い
リソースパックはマインクラフト内に存在する名前model bgm texture animation photo colormap等の表面上の部分を変更することが出来ます。
- 土のテクスチャを自作の絵に変えてみる
- 自作のBgmを追加してみる
- フォントをカッコよくしてみたり
という事が出来ます。(一例)
ビヘイビアパックではentity drop item spawn rule recipe root_table等のゲームシステムに関係する根本的な内容を変更できます。
- 鶏に雷が当たったら村人になる
- 土からダイヤが作れるようになる
- ゾンビがスケルトンも攻撃する
- 複数のコマンドをひとつのコマンドで使えるようにする
と言う事が出来る。
作るのに必要な物とは
作るのに必要な物とはまず前提としてPCが必要!!
と言うことは無い、スマホでもアドオンの作成は可能です。
前提として必要なのはテキストエディターアプリ等のテキストをファイルに保存できるアプリとファイルマネージャーがあれば何でも言い気がします。
iPhoneはファイルを開くアプリが少ないので多少難しくなるかもしれません。
アプリで作れる?
簡単にアプリで作れることはあります。
AndroidであればMAM-マインクラフト PE アドオンメーカーと言うものもありますし
iPhoneであれば、CRAFTY CRAFT FOR MINECRAFT MODと言うものもあります。
簡単にアイテムを追加する、レシピを変更する
こういった少しだけ特徴的なアイテムやMOBは簡単に製作できると思いますが、やはりアプリでの広告や限られている機能作成を考えれば作品をより良くしたい、と言うことであれば自作等も視野に居れなければならないとも思いますよね。
肝心の作り方は?
アドオンはコマンド以上に解説が必要なので根本的な内容についてはコミュニティーサーバーかコメント欄に質問してくれれば大体は答えられます。
画像が送信できるDiscordの方に送ってくれた方が私としては助かります。
コミュニティーサーバー
このような解説をサーバーでも行うつもりです。
興味がある人は入ってください。(出来立てホヤホヤ)
追記めちゃくちゃ過疎ってんで!今なら気まずさが味わえるで!
Click here!
よきMinecraftライフを
コメント
長文失礼します!
統合版マインクラフト プレビュー版 Ver1.20.10.23で
cameraコマンドにfacing登場
[マイクラ統合版 / Preview 1.20.0.22]
來夢さんの解説とclear
色
RGB
少数点以下でいじることができる
【マインクラフト1.20】
まずはJava版の追加要素(統合版追加も視野)
お次は
新ワールドBGM登場
桜とジャングルと花の森で聞けるBGM
Aaron Cherof — Bromeliad
メサと花の森と繁茂した洞窟で聞けるBGM
Aaron Cherof — Echo in the wind
メサと砂漠で聞けるBGM
Aaron Cherof — Crescent Dunes
ホーム画面でしか聞けないBGM
Aaron Cherof — A Familiar Room
全てAaron Cerofさんが作りました
五曲ともSpotifyから聞けますので是非
(コマンドで聞けるためいれました)
以上がJava版の追加情報でした
ここからは統合版の追加情報です
cameraとinput permission
inputpermissionについては下に
inputpermissionはプレイヤー固定コマンド
こちらのコマンドは
cameraとmovementの
二つのモードがあります
cameraは視点固定モード
movementは移動固定モード
実行するときはdisabled
解除するときはdisabledじゃない方
やり方
/inputpermission set 対象 モード 実行か解除
これで終わります
参考にしたチャンネル
ドライト
Karimita / 狩人のミタ
タコ丸 / 村人狂【マイクラ 小ネタ 検証 茶番】
長文失礼しました!
Aaron Cherof — A Familiar Roomは
おまけで入れました
nice