【MinecraftJE】インベントリ内のアイテムを自動で均等分配・仕分けするブロック「SeparationBox」の概要と使い方を解説【自作MOD】

はじめに

Minecraft、とりわけJava版をやっていると、こう思うことがあります。

Character
アイテムを均等に分けたいっ!

要するに、64個何かしらのアイテムがあったとすると、うち32個をある用途に、残り32個を別の用途に使うといった感じですね。

特に、工業MOD等を触っているとこの必要性に迫られると思います。例えば、砂が一定数あるとして、その一部をガラスにしたいし、また一部を土にするといった場合です。

しかし、デフォルトのMinecraftには、これを実現するアプローチが意外と少ないことに気づくと思います。精々、手動で仕分けをするか、基本ビンなどを用いて疑似仕分けを実現する程度でしょう。そして当然、Mekanismをはじめとする工業MODにはこうした機能を持つブロックはほとんどありません。

Character
需要はありそうだけどね…

というわけで、このような需要に応えてインベントリ内にあるアイテムを自動で均等に分配して放出するブロック、「SeparationBox」(セパレーションボックス)を作成しました。特に工業MODと相性が良いと思います。この記事では、自作MODであるSeparationBoxの使い方を解説していきます。

なお、前提としてMODの導入方法についてはこの記事が詳しいです:

MODのダウンロード

本MODのダウンロードはこちらから可能です。下記リンクをクリック後、10秒待つことでダウンロードできます。ダウンロードされたjarファイルを、modsフォルダ内に入れることで機能します。

  • Forge1.20.1環境で動作します

使い方

文章で色々見るより、動画を一目見ていただいたほうが早いかもしれません。こちらをどうぞ:

ここでは、ダイヤモンドを入力としました。すると、そのダイヤモンドがSeparationBoxに入り、その後出力となる3つのチェストに、それぞれダイヤモンドがおおよそ同数で入っていったことが分かると思います。このように、等確率でアイテムを分配するのが、SeparationBoxの効果です。

そしてこの確率ですが、出力の数に応じて変わります。即ち、今回にように出力が3個の時はそれぞれに出力される確率は1/3になりますし、N個の出力がある時は、それぞれの確率は1/Nになります。

レシピ

このSeparationBoxですが、制作自体は意外と簡単です。レシピは下。鉄のインゴット×4,チェスト×1,ホッパー×1で制作可能です。

Character
サバイバルでも簡単に作れますね!

入力と出力

前述のような特性があるということは、裏を返すとSeparationBoxは入力や出力がないと動かないということです。アイテムの出力や入力を担うブロックというのは、いくつかあります。代表的なものだとホッパーがありますね。

ただ、これは、各ホッパーが入力であるか出力であるかが明示的でないので、入出力の制御が難しいという欠点があります。それぞれが入力であるか出力であるかが明らかになるようなブロックが望ましいですね。

そこで当MODが推奨しているのが、代表的な工業MOD─Mekanismにおける物流トランスポーターです。後述する理由により本MODはMekanismを前提MODとはしていませんが、Mekanismをはじめとする工業MODとは非常に相性が良いと思います。ない場合は一緒に入れると便利でしょう:

Character
ちなみに、Mekanismに依存せず入出力を行う方法もあります。詳細は後述。

物流ケーブルの使い方と入出力

  • この節はMekanismにおけるケーブルの説明であり、本MODの直接の関連はないので必要ない場合は読み飛ばして結構です。

まず、Mekanismにおける物流ケーブルとは、その名の通りアイテムの転送・インベントリへの搬入・搬出を主に目的としたブロックです。この記事はMekanismの解説を主な目的とはしていないので、簡単な使い方の説明にとどめます。

  • Mekanismにおける物流ケーブルには、基本・発展・精密・究極の4段階があります。基本的には、「基本」を使えば十分でしょう

まずは、物流ケーブルをクラフトしましょう。サバイバル環境では、以下のように鋼鉄インゴット×2,基本制御回路×1で制作できます:

なお、これらのアイテムの作り方については以下の記事が詳しいです。

これを制作したら、下のようにチェストとSeparationBoxの間を物流ケーブルで結びます:

この時点では、これが入力であるか出力であるかを定義していません。これを定義するアイテムこそが、Mekanismにおいて存在する「コンフィギュレーター」です。サバイバル環境では、以下のレシピによって制作できます。棒×1,ラピスラズリ×1,吹込合金×2,エネルギータブレット×1ですね。

エネルギータブレットは以下のレシピで作れます。吹込合金×2,金のインゴット×3,レッドストーン×4ですね。

  • レシピを知るためにはJEIはあったほうがいいと思います

コンフィギュレーターを作って手に持ったら、物流ケーブルの端をスニークしながら右クリックします。これによって、搬入・搬出を切り替えることができます。

同様に、チェスト側も搬入・搬出を切り替えることができます。これを各方面について行うことで、どの方向が搬入で、どの方向が搬出であるかを定義することが可能になりますね。

搬入側のチェストにアイテムを入れると、アイテムが搬出側に分配されることが分かると思います。

Character
ケーブルを介さず、工業MODの各種装置の設定による搬入・搬出も可能です

UI

また、SeparationBoxを右クリックするとUIが開きます

これを見れば分かるのですが、SeparationBox自体、1枠のインベントリを有しています。この扱いとしては、入力されたアイテムを一時的にブロック内に格納し、出力先があればインベントリよりアイテムを放出する、という形をとっています。これ自体が、同種のアイテムを64個まで格納可能である点は言うに及ばないでしょう。

Character
出力先がなければ、当然止まります

MOD独自の入出力

先はMekanismを用いたアイテムの入出力について説明しましたが、実はそれとは別に、本MOD独自でアイテムの入出力システムを制作しています。従って、外部のMODに頼らずとも一応、本MOD単体で動作の確認までは可能です。

Character
一応、実用にも耐えうると思います

そのカギを握るのが、「搬入ポート」「搬出ポート」、そしてアイテムの輸送のみを目的とする「中継ポート」です。

まず、搬入ポートのレシピは以下。鉄×4,ホッパー×1で搬入ポートが4つできます:

そして搬出ポートは以下。材料自体は変わらず、配置場所だけ異なります。

最後に、中継ポートのレシピは以下。ホッパーの場所だけ異なりますね。

  • これらはJEIでも確認可能です。「@separation」といれると出てくると思います

緑色のものが搬入ポート、赤色のものが搬出ポート、青色のものが中継ポートです:

それぞれの役割ですが、名前からイメージできる通り、以下のようになっています:

搬入ポート
チェストやインベントリの隣接地点に設置し、アイテムを吸い出し、隣接するポートに転送する
搬出ポート
チェストやインベントリの隣接地点に設置し、隣接するポートから送られたアイテムをインベントリに格納する。
中継ポート
隣接する中継ポートや搬入・搬出ポートにアイテムを転送する。専ら転送目的で用いる。

これらを実際に、SeparationBoxやチェストと併用して使うなら、下のような形になります:

要するに、チェストから搬出したアイテムをSeparationBoxに搬入して、その後SeparationBoxからアイテムを搬出してチェストに搬入する、ということですね。

Character
分かれば難しいことはないですが、ちょっと複雑かも。

実践例

ここで紹介した「SeparationBox」ですが、これを実践的に使ってみた結果、意外と使えたので紹介します:

ここでは、工業MODの装置を複数使って、Botany Potsを作っている様子ですが、その過程上、どうしても粘土を粘土玉とテラコッタに分けざるを得ない場面がありました。こうした場合に、SeparationBoxは真価を発揮します。すなわち、一定数の粘土を入力として、2グループの粘土に分け、一方を粘土玉用に、もう一方をテラコッタに加工するのです。

このように、工業MODと組み合わせて威力を発揮するのが、本MODの魅力だと思います。

おしまい

ということで、主に工業MODを想定してインベントリ内のアイテムの均等分配に使えるブロック、「SeparationBox」を解説しました。この手のブロックはありそうで意外とないのが現状です。興味のある方は、一度ダウンロードし、試してみてはいかがでしょうか?意外と捗りますよ。

最新情報をチェックしよう!