
配布ワールドを作ってるけど、オリジナルのレシピを追加できたらなぁ...
そんなクラフターの夢を叶える方法があります。そう、Minecraft 1.8ならね。
今回は、バニラで自分だけのクラフトレシピを追加するコマンドを解説します。
材料の並び方、出来上がるアイテムの名前や効果など細かく設定できます。
コマンドがMODに勝つ時代が、ついにやって来ました!
[2/25追記] テクスチャの変更方法についてより良い方法をご提案いただいたので修正しました。
「不思議な作業台」を入手するコマンド 作業台用トロッコを召喚するコマンド 「1」= クロック回路上部 「2」= クロック回路下部 「3」= クロック棒の下、2つのドロッパーを比較 「5」= 効果音を鳴らす (4の直後に実行)目次
今回作る仕掛けのサンプル
皆さん、ダイヤモンドをクラフトして作れたらと思いませんか?
それではお見せしましょう。題して「不思議な作業台」です。
ここに、何の変哲もない(?)作業台が置いてあります。
画像を見て分かる通り、なんと焼石とガラスでダイヤモンドを作っています!
また砂岩とレッドストーンブロックで金インゴットなど、あり得ない作り方をしていますね。
私はもっだーになったわけではありません。コマンドを使っています。
それでは、解説をしていきましょう。ステップ1: まずはトロッコとドロッパーで作業台を作ろう
※これから解説する仕掛けは、Minecraft バージョン1.8以降でないと動きません。
まずは「不思議な作業台」を入手しましょう。giveコマンドを使います。
/give @p minecraft:dropper 1 0 {display:{Name:不思議な作業台}}
次に、なんとトロッコを召喚します。
/summon MinecartRideable ~ ~1 ~
{CustomDisplayTile:1,DisplayTile:minecraft:crafting_table,DisplayOffset:42}
これは、「CustomDispayTile:1」と書けば追加できる物体です。
「DisplayTile:minecraft:crafting_table」と書いて作業台を、「DisplayOffset:42」で物体の高さを指定します。
正確には、「作業台の姿をした当たり判定のないトークン」を乗っけている感じです。
次に、このトロッコを設置する場所を用意します。
レールを設置し、レール上にトロッコを固定して、ガラスで囲みます。
トロッコの上に、なんとかして「不思議な作業台」を上向きで置いて下さい。
絶対上向きです。そして周りを適当なブロックで囲んで、隠しましょう。
これで作業台のセットは完了しました。
当たり判定がなく、一回り小さいですが、解決法は後述しますのでご安心を。ステップ2: クラフトするためのコマンドを設定しよう
このままでは、ただドロッパーを設置しただけですね。
作業台として機能させるためには、コマンドブロックの設置が必要です。2-1: 作業台の内容を比較する (testforblocksコマンド)
まず、上図のような回路を組み立てます。
「1」「2」のコマンドブロックによって、横長のクロック回路ができています。
上図を見て分かる通り、上下のコマンドブロック「1」「2」に以下のコマンドを入力します。
/fill ~ ~-1 ~ ~5 ~-1 ~ redstone_block
/fill ~ ~1 ~ ~5 ~1 ~ stone
クロック棒の上に、1ブロック開けてもう一つ「不思議な作業台」と名のついたドロッパーを置きます。
必ず、先ほどgiveコマンドで入手した「不思議な作業台」を上向きで設置して下さい。
また、このドロッパーに入れたアイテムが、そのままオリジナルレシピとして設定されます。
次に、クロック棒の下に「3」のコマンドブロックを設置し、コマンドを入力します。
/testforblocks <使う「不思議な作業台」ドロッパーの座標x y z> <もう一度同じ座標>
<上のドロッパーの座標x y z>
まず、ステップ1で用意した「不思議な作業台」の座標を二回続けて書きます。
そして最後に、クロック棒の上に設置したドロッパーの座標を書きます。
ブロックの座標を知りたい時は、デバッグモードで「Looking at:」の部分を見ましょう。
こうすることで、2つの不思議な作業台の内容が比較されます。
つまり、回路のドロッパーで設定したレシピと、使う作業台の内容が一致すれば信号が出ます。2-2: クラフトして出来上がるアイテムと効果音の設定
次に、出来上がるアイテムと効果音を設定します。
またまたあのツールが活躍しますよ。
では、回路の「4」「5」のコマンドブロックの内容を入力していきましょう。
まず「4」で出来上がるアイテムを設定するわけですが、手打ちは大変なのでツールを使います。
サイトにアクセスしたら、「BlockData」モードを選択します。
そして「Relative Co-ordinates」のチェックを外して下さい。
そして左に、ステップ1で設置した「不思議な作業台」の座標を入力します。
さらに「Block」欄に「Dropper」と入力して下さい。
次に出来上がるアイテムを設定します。
作業台の真ん中に完成品を出現させたいので、「Slot 4」を設定して下さい。
ここでアイテムの種類や名前などを設定できます。詳細な設定方法はこちらの記事をお読み下さい。
ちなみに、複数のアイテムを完成品として設定したい場合は他のスロットも設定します。
アイテムの設定が済んだら、サイトの下部に表示されているコマンドをコピーしましょう。
これをCtrl+Vキーで「4」のコマンドブロックに貼り付けます。
最後に、クラフトする際の効果音を設定します。
/playsound random.anvil_use @p <使う不思議な作業台の座標x y z>
最後に音の発生源を指定するのですが、ここでは不思議な作業台から音が鳴る設定にしています。
回路の作成とコマンドの入力、お疲れ様でした!テクスチャを変えて、トロッコ無しverを作ろう
皆さん、この「不思議な作業台」に違和感を覚えませんか?
トロッコに乗せたトークンを使っているので、当たり判定がないなど不自然な点が色々ありますね。
「これ、ドロッパーのテクスチャを変えてそのまま置けば良いんじゃ?」
そう思った方、
その通りです。私も作ってみてあとで気付きました。
それでは、ドロッパーのテクスチャを変えて作業台に見せかけましょう。
これから行う方法で配布ワールドに同梱すれば、強制的にテクスチャが変更されます。
[2/25追記] コメントにてより良い方法をご提案いただいたので、手順を修正しました。
▲配布したいワールドのセーブデータフォルダの中で作業します。
このようなフォルダ構造で、フォルダを次々作って下さい。
そして、「blockstates」フォルダの中に以下の内容でテキストを作成します。
"variants": {
"facing=up": { "model": "crafting_table" }
}
}
(これはblockstatesと呼ばれる設定ファイルです。詳細な解説はこちらの記事にまとめています。)
この内容のテキストを、「dropper.json」という名前で保存します。
そしてセーブデータフォルダに戻って、「assets」フォルダを圧縮します。
最後に、生成されたzipファイルを「resources.zip」にリネームして下さい。
これで、このワールドに入れば強制的にテクスチャが変更されます。
ふぅ.....これで完全に偽装できますね。もうトロッコは不要です。
ここで見た目が変更されるのは、上向きのドロッパーだけです。
従来の方法のように他のブロックに影響することがなく、とても便利が良い方法です。
ご提案してくださった土屋なずきさん、ありがとうございました!

今回解説したコマンドがお役に立てれば幸いです。
「これはどうするの?」などコメント待ってます。
最近書いたコマンド解説記事
参考にさせて頂いた動画様
Custom Crafting V2 in minecraft 1.8 - YouTube
1.9versionも出来れば書いてください
Relative Co-ordinatesをなんで外すんですか?
Relative Co-ordinatesはつまり相対座標のことなので、デバッグモードで調べたドロッパーの座標(絶対座標)を使うためにはチェックを外す必要があります。
?
blockdataで中身を消去(または初期化)する方法はないのでしょうか。setblockで無理やりドロッパーを同じ個所に配置してドロッパーごと初期化できるものの、その都度金床が壊れるときのようにウィンドウが閉じてしまいまして…。同じ作業をしようとしたときにもう一度右クリックしなければならず非常に手間がかかります。簡潔に言えば「コマンド使用のみで特定の配置でアイテムが消えるレシピ」を作りたいのです。良い案がありましたらご教示ください。
作業台付きトロッコを召還しようとしても、{CustomDisplayTile:1,DisplayTile:crafting_table,DisplayOffset:42}は有効な数値ではありません と表示され、トロッコも現れません。使用しているPCはmacです。もしかしてmacでは使用できないのでしょうか?
申し訳ございません、コマンド内の「minecraft:」が抜けたまま放置していました。正しい召喚コマンドはこちらです
/summon MinecartRideable ~ ~1 ~
{CustomDisplayTile:1,DisplayTile:mine craft:crafting_table,DisplayOffset:42}
/summon MinecartRideable ~ ~1 ~
{CustomDisplayTile:1,DisplayTile:mine craft:crafting_table,DisplayOffset:42}
と打っても
{CustomDisplayTile:1,DisplayTile:mine は有効な数値ではありません
とでます
申し訳ありませんiPhoneから打って勝手にスペースが入ったのを放置していました…mineの後のスペースを消して頂ければ動きます
わざわざ絶対座標調べなくても相対座標で良いと思うのですが
絶対座標だといくつも並べる時いちいち設定しないといけないけど
相対座標なら直線に同じのを並べるだけであとは設定変えなくてもいいのでそっちの方が楽じゃないですか?
/summon MinecartRideable ~ ~1 ~
{CustomDisplayTile:1,DisplayTile:minecraft:crafting_table,DisplayOffset:42}
をコピーしてペーストしても、手動で入力しても、最後の set:42} の部分が入り切りません。
そのままEnterキーを押すと赤い文字で
データタグの解析に失敗しました:Undalanced brackts:{CustomDisplayTile:1,DisplayTile:minecraft:crafting_table,DisplayOff
と表示されます。
マインクラフト1.10.2で遊びたいのですが使用不可能なのでしょうか?
「5」= 効果音を鳴らす (4の直後に実行)部分に表示されているコマンド、
/playsound random.anvil_use @p
とありますが、正しくは
/playsound minecraft:block.anvil.use master @p
ではないでしょうか
ご確認宜しくお願い致します
えっと、1.10.2マルチで使うとドロッパーの中が変わらないのですが…
シングルだと正常に動きます。
マルチだと動かないのでしょうか
ごめんなさい、
常時実行にしてませんでした。
1.11は/summon minecart ~ ~1 ~ {CustomDisplayTile:1,DisplayTile:minecraft:crafting_table,DisplayOffset:42}
でできます。
この解説は1.8用なんです。
1.9+では/playsound minecraft:block.anvil.use master @p を使ってください。
配布ワールドで使わせていただきました。
ありがとうございました
1.10.2で出来ませんでした
個人的に絶対座標を使ったんじゃないですか?
手動では文字数制限があるので、
コマンドブロックを使って下さい
これを1.12のfunctionで動かすためにはどうすればいいですか?
今思いついているのはストラクチャーでこの回路を地下深くに作っちゃうことなんですができればfunction内だけで実装したいです。
いいやり方を教えてください。
/summon MinecartRideable ~ ~1 ~
の後のスペースを忘れていませんか?
お待ち! この記事は最後の更新から1年以上経過している古い記事だ。新しいバージョンに合わせて装置を作り直してスクショを取り直して解説を書き直す面倒臭さが君には分かるかい?