(WIP)実践Applied Energistics2 ~自動クラフトの作例~


緒言

 AE2は複雑で分かりにくい、そんなイメージあると思います。実際分かりにくい部分もあるんですが実態以上に受け止められている、言われている印象があります。実際触り始めると何とかなるものです、そのためこの記事ではAE2を使う価値の一つである自動クラフトの話をします。
 基本的にATM9-1.20.1及びATM10-1.21.1環境をベースに展開します、自動化にあたって他modのアイテムも利用します、バージョン・環境による挙動差はあんまりよくわからないです。補助役として出てきそうな他modnリストは以下。(前提としてExtendedAE, AdvancedAEを使うのはできるだけ控えます、1.21ではJDTがありますが1.20にはないので前提としては用いません(1.20.1にないやつでは使うかも)、これも含めてあくまで一例なので自分の得意なmodや環境に合わせて代替してください)
 特にレッドストーン関連は苦手なのでもっと効率化できるものがあれば教えてください、例示したものとやってる事変わらんやんってものは書いてませんが、初学者向けに真似すればそのまま動く作例の紹介が趣旨ですので、もし希望があれば書くかもしれません。
 私は日本語版でMinecraftをプレイした経験がほとんどないため日本語のアイテム名をあまり知りません、たまに間違った名前も書いてるかもしれませんがいい感じに補完して解釈してください。
 スマホで書いたり、ノートパソコンでマイクラ起動してたりするので書き方とか違うのは気にしないでいただければと。

  • Pipez

  • Modular Routers(MR)

  • Sophisticated storage/backpacks(Sophis)

  • Integrated dynamics関連(IDs)

  • Super factory manager(SFM)

  • Laser IO

  • Create

  • Ender storage / DimStorage

  • Item Collectors

  • Just dire things(JDT)

始めに

 実際にどういう形で自動化をするかの話をする前にいくつか前提として知っておきたいことがある。

自動クラフトとは

 まずはそもそもここでいう自動化って何かという話からだが。システム内(仰々しい言い方だがAE2倉庫のことを言っていると思ってもらって大丈夫)にあるアイテムをAE2の機能を使って加工することとします。

AE2を使って可能な自動化は大きく分けて二つあります。

Pattern providerを使用しての、発注するアクティブ式

  • Pattern providerを使用して発注を通して加工するアクティブ式

  • Export  bus やInterfaceを使用してのパッシブ式

 もちろんこれは明確に区別できるものではないが、プロバイダーを用いるアクティブ式はシステム内に成果物が必ず一度入ってくるように設計する必要があるため留意すること。
 よくある勘違いとしてアクティブ式のキューは発注したアイテムがターミナルからの手動での格納以外でシステム内に入った時に完了する、つまり別のプロバイダーやインターフェースへの搬入(手動での搬入も含む)でも大丈夫である。

CPU

 恐らくこんな記事を読んでいる人は動画とかで他のAE2の解説を履修しているので不要だと思うがCPUについても触れておく。

結論を先に述べる

最低限

  • 4k Crafting Storage x1

  • Crafting co-processing unit x3

できれば(MEGA Cellsあるなら)

  • 4M or 4096k Crafting storage x1

  • MEGA Crafting co-processing unit あればあるほど良い

 AdvancedAEが入っている環境なら最終的にはQuantum computer(マルチブロック(普通のCPUもマルチブロックだが))を作るといいだろう

各ユニットをネットワーク内に設置する

こんなん
ネットワーク内に置くと見た目が変わる
直方体なら認識する(確か17x17x17が上限)
ダメなら見た目で分かる

 Crafting storageは自動クラフト用の素材を一時保管しておくための容量だ、作るものが多くなるほど、クラフトツリーが大きくなって材料が多くなるほど必要な大きさが増える。

自動クラフトしようとしたらここに表示される数字

 経験上ATM環境で複雑なものを大量発注した記憶がないため、4Mくらいあれば十分かと思われる1Mだと微妙に足りないことがあったくらい(Dimennsional seedとか)

 Crafting co-processing unitは同時に行える処理数を増加させるのに必要、冗長に説明しても仕方ないので最低限3~4個は置こう、多ければ多いほどいいみたいなところはある。MEGA cellsのものは4個分の性能があるのでスペース圧縮になる。

 Crafting monitorはそのCPUで何をクラフトしているかを表示するブロック、欲しいと思うなら付けたらいい、以前まではターミナルから自動クラフトの進捗が見えなかったようなイメージがあるのでそれ用かな?

 一番大事なことだが余裕ができ次第CPUは複数個設置しよう、一つのCPUは一つ発注までしか対応できないのでよっぽど発注しないとかでもなければ不便になるはずだ、最低限一つあれば機能はするので何個設置するかはお任せします(決めれないならキリよく8個置いとけ)

サブネット

 口に出して読みたい単語って感じだがこれは単にメインネットワーク、つまり大本のMEコントローラーから伸ばしてるネットワーク以外のネットワークのことを言っているだけである。自動化に焦点を当てた際サブネットを用いる理由はアイテム種と個数を絞った状態のシステムを切り離したいためである。基本的にはストレージ無しor最小限で構成することになる。

サブネットのイメージ、チェストの部分は基本的に加工装置
何らかの手段でケーブルに電気を通すこと

 自動クラフトに用いるのであればInterfaceとStorage busだけで構成されたシステムを使うのが基本になるだろう。

Refined Storage(RS)と比べて

 AE2での自動クラフトを勧める前にRSと比較した場合の言及はしておくべきだろう、もちろんATM10-1.21.1には現時点(2025/2/3)でRSが来ていないから仕方なくAE2という話でもあるのだが、単純にAE2とRSを比較した時にAE2を用いる利点が存在するという話だ。

RSがAE2に明確に勝っている点は扱いやすさであろう

  1. チャンネル制限がない

  2. ディスクにアイテムタイプ制限がない

  3. 作業台クラフトの自動化システムの構築が楽

  4. 装置作る中間素材のクラフトが楽

 2に関してはアドオンで解決できるし、1以外に関しては運用し始めてしまえば特に問題ならない。
 つまり初学者にとってチャンネルとかいう概念を飲み込めるだけのメリットがAE2にはあるかといった話であるが、単純に倉庫modとして使うのであればあんまりない。単なる倉庫modとしてでなく自動クラフト等を含めたアイテム管理modとして考えるならAE2を使う利点が出てくるという具合だ。

 じゃあAE2の利点は一体何だ、という話だが

  1. 液体・アイテムを同一のインターフェースで管理できる

  2. 加工モードの搬出ルールにブロッキングモードがある

  3. 作業台クラフトで触媒クラフト(非消費アイテムを含むクラフト)が可能

  4. アドオンが豊富 / 連携しているmodが多い

  5. SSD(サブネットの一種)を利用した制御が可能

  6. 一つPattern providerで並列処理が可能


デバイスの仕様に関して

 自動化を組むにあたって重要な機能を持つアイテム達の基本的な仕様を説明する。

ME Interface(インターフェース)

 登録したアイテムを指定数、システム内から取り出し内部に保持する機能と内部に入ってきたアイテムをシステム内に取り込む機能を有している。
ちなみに十分な速度のアイテム輸送手段があれば後述するExport/Import busよりもアイテムのやり取りの速度は速い。

ME pattern provider(プロバイダー)

 自動化の核となるアイテムでプロバイダーの中に入れたパターンの内容に応じて隣接するインベントリに材料を搬出する機能を有している。同時にInterfaceと同様に入ってきたアイテムをシステム内に取り込む機能ももっている。

ミスしがちなサブネットの構成例

 サブネットを使いたい際にやってしまいがちなミスとしてFig.2に示すような形にしたいことが出てくる。ブロック状態のインターフェース、プロバイダーはチャンネルがつながってしまうので、上のように設置してしまうと左側のサブネットが右側のメインネットとつながってしまう。

何とかする方法

 ネットワークがつながってしまうのを避けるためには単体クラフトによって片方或いは両方をパネルにしてしまうか、プロバイダーをレンチで右クリックしてプロバイダーのモードを変更してあげる必要がある。
 ちなみにこのプロバイダーのモード変更はプロバイダー搬出方向を指定する機能もあり、プロバイダーの周りがごちゃついてる場合には利用することになる。

ME Export/Import bus

 自動クラフトという話に限って言えばこれらは主に成果物の回収に使うか、Redstone cardとLevel Emitterを用いたパッシブ生産のどちらかである。

アドオン系

・ME Packing Tape
設定を保持したままAE2系デバイスを取り外せる、そんなに使った記憶はない

・ME wireless connector / ME wireless setup kit
Dimension超えれない代わりにお手軽になったQuantum Link、電力に余裕がないとかでもなければコレを前提にMEコントローラーをデザイン・設置していい、設置してセットアップキットを使って接続するだけ。

コントローラーはこんなんで十分足りる
コントローラー直接にべたべた貼り付けよう

・ME Ingredient buffer
液体も入るチェストみたいもの、何かに使えそうだけど使ったことはない

・Pattern modifier
 3つのモードがある、パターンを複製したり、複数のパターンを同時に修正するのに用いる、かなり便利なので作っておくのをオススメする。

乗算モード
材料置き換えモード
複製モード

・Advanced pattern provider/ encoder
搬入面を偽装することができるプロバイダ、またそれ用にパターンを修正するためのEncoder、MekanismのMetallurgic infuserを簡単に自動化するのに用いる(後述)。地味に受け入れるアイテムを自動クラフトのアウトプットに登録されているアイテムに制限できる機能も付いている。

実用例

作業台クラフト

 AE2のクラフトの自動化は地味にめんどくさい、まず設置がめんどくさい、次に加速カードを入れるのがめんどくさい、最後にパターンを入れるのがめんどくさい。

 まずMolecular assembler(分子組立機)をプロバイダに接するように配置する、この時プロバイダから見て接する分子組立機の数が多いほど並列できるクラフト数が増加する、またこの分子組立機は複数のプロバイダで共有することができるので、互い違いになるように配置するのが効率的な配置となる(いわゆるカドケシみたいな形でどちらかを設置して隙間を埋めるようにもう片方を設置する)、こうして設置した分子組立機にはそれぞれ加速カードを入れる必要がある(知らない人向けに言うと加速カードはShift右クリックでGUIを開かずに入れれる)。上位のプロバイダや分子組立機がある環境ならそっちに乗り換えた方がいいと思います。あるならExtendedAEのAssembler Matrix(マルチブロック組立機)を組みましょう。

Mekanism(簡単な奴)

 Mekanism, Iron furnace, Thermal, Industrial foregoing等の自動搬出機能のある装置の構築例だ

自動搬出機能のある装置の構築例
ちゃんとInput/Outputの設定をしよう。特にMekanismは自動搬出をOnにするの忘れがち。
Mekaの濃縮質の場合はこんな感じ

 実際に運用するときは一つの機械じゃ速度が物足りないので並列化する。チャンネル数は嵩むがプロバイダと機械を隣接させるシンプルな系が勝手に並列化してくれるので楽。ちゃんとそれぞれのプロバイダにパターンを入れること。

Powah

 Powahに限って言えば一点気を付ける点があるが、搬出機能のない装置は図のように外部の導管等を別途利用する必要がある。もちろんシステムに取り込む方法は別途置いたInterfaceに搬入したり、装置に直接Import busを取り付ける形でも大丈夫だ。

背景が黒いせいで若干見にくいか
Powahは材料が入りすぎると加工してくれないレシピがあるのでブロッキングモードを使う。

バニラかまど

 バニラだけど全然簡単ではない、代表的な例としてMekanismのMetallurgic infuserも似たような設置法になる(後述)。前提としてかまどは横或いは下から入ったものは燃料スロットに、上から入ってきたものは精錬スロットに入るようになっている。このように二つ以上の材料を異なる面(ブロック)に搬入する必要のある装置の場合(AdvancedAEが入っている環境では材料の搬入方向を偽装できるので先述のパターンと同様に設置してよい)

パターン1
パターン2
パターン3

 いずれも全体を把握しやすくするためインターフェースに返しているが成果物は普通にプロバイダーに返す形で構わない。

 パターン1,2は二つの材料をプロバイダーから入れることになるためしっかりしっかり材料比を調整してパターンに登録する必要がある。
 例えばバニラかまどであれば石炭は8個のアイテムを精錬することができるためパターンの登録時に精錬アイテムを8個、石炭を1個、成果物を8個と登録する必要がある。

すこしめんどくさい

 パターン1では材料二つがチェストに搬出されるのでパイプでフィルタリングする必要がある。搬入先が二つくらいならこれくらいでもよい

 パターン2はサブネットを利用するタイプで材料の搬出先がインターフェースになっている、インターフェースに入った材料はストレージバスを張り付けた面に入っていく、優先度やフィルターを用いて入れる面をコントロールする。後述するがより複雑な系で使用することが主で、かまどくらいの装置であればサブネットを用いなくてもパターン1, 3の構築で十分であろう。

 パターン3はExport busを用いて石炭などの燃料を供給し続ける方式だ。これは供給し続ける素材が容易に過剰に供給でき、装置もそれ専用にしてしまう余裕がある場合に利用したい。

Enchanting Apparatus(Ars Nouveau)

 Enchanting apparatusの自動化にあたってはいくつかコツがある、ポイントは

  1. Enchanting Apparatusに付けるStorage busの優先度を上げる

  2. Enchanting Apparatus本体に入る素材が末尾になるようにレシピ登録する

  3. 十分な速度でソースを搬入する

  4. 毎tick搬出が可能な導管で搬出する(Pipez: Ultimate upgrade等)

  5. Pedestalが6個以下のレシピでなければチャンネル数が8つでは足りないのでコントローラーを含めたサブネットを利用する

一つずつしか発注しない場合3, 4に関しては無視してかまわない。

例えばこんなレシピがあるとして
レシピをこんな形で登録する
この図ではPedestalを9個しか置いてないがEnchanting Apparatusの認識範囲に入るように追加で設置すること可能

 この自動クラフトはいろんな仕様が絡んでいるので少々理解が難しい。動けばそれでいいという人は読み飛ばしてもいい。

 実はプロバイダーに登録されたレシピは実は左上から順に搬出されていくという仕様になっている。そのため二枚目の図のようにレシピを登録するとEnchanting Apparatusに入れる必要のある素材が最後に搬入されるようになる。そしてEnchanting Apparatus本体はPedestalに対応する素材が置かれている時のみ素材を受け入れる仕様があるため、優先度を上げておくことで自動的に入ってくれるようになる。
 優先度さえ設定されていれば他の輸送系でもいいのかとなると、これはこれで問題があって、クラフトが開始した後でも必要ない素材が台座に置かれたらクラフトを中断してしまうのでそもそも余計な素材は受け入れないようにしたいのだ。ブロッキングモードは成果物を回収するまで次を搬出しないのではなく搬出先のインベントリに素材が残っているかを判定している。Interface ⇒ Storage busの動きは結果的にアイテム輸送を行っているが本質的にはシステム内へのアイテムの格納という操作であり、AE2のデバイス間においてInterfaceに対してインベントリの中身を参照した時にシステム全体をインベントリとして返すようになっている。つまるところStorage busの先のアイテムもInterfaceの中身と判断されるため、クラフトが完了するまでProviderからの搬出がストップするようになっている。

ポーション醸造(バニラ)

バニラの醸造台の場合
例えばInstant Healのスプラッシュポーションの場合

外観、下のプロバイダがポーション作成用
右上のものは水ボトル作成用
登録レシピは順番と個数を注意する
水ボトル作成用のMRのActivator Moduleの設定
水ボトル作成後の搬出用
醸造台に付けるPipeのフィルタ設定
レシピを増やしたらちゃんと追加する
Match Exact NBTに設定する

 プロバイダから直接搬入ができないこと、材料の搬入面が上面なのに対して、水ボトルは側面からの搬入であるので、二つのStorage busを用いて搬入する面を分けて入れる。
 別に水ボトルの自動化はバニラの機能でもできるし、醸造台からの搬出もAE2でできるのでこれはバニラ+AE2だけの構成でも実装ができる。
 意識してなかったのであんまり覚えていないが多分どちらのプロバイダもブロッキングモードでやっている。
 問題点というか気になる点は処理速度が遅いことだろうか。

Metallurgic infuser(Mekanism)

 パターンは3つ、一つは先ほど示したかまどと同じなので省略。
先にAdvancedAEを用いないものを示す

Oxidiserは誤字、Oxidizerが正しい

 別に難しいことはする必要はない、Chemical oxidizerを用いて前もって吹き込むガスをガス化しておくだけである。こうしてガス化のプロセスを挟んでおくと材料と同じ面から搬入できるのでめんどくさいことを考える必要なく自動化できる。
 最大の問題点はシンプルに速度が遅いことだ、Chemical oxidizerはFactory化できないからボトルネックになる。

AdvancedAEを用いる場合

これ要る?
このレシピは
こんな感じで登録しておく(濃縮済みは80mb分になるので)
指定した方向に合わせて装置も設定する

 画像のキャプション読んでもらえばそれで済むと思うが、注意点はレシピの登録を間違えやすいことぐらいだろう。

Fluix crystal(AE2)

青丸はStarage bus
黄丸はAnnihilation/ Formation plane
Storage busは反応後のFluix crystalを登録しておく
Formation planeはアイテムとして出すモードにしておく

 Fluixクリスタルなどの自動化にはAnnihilation plane及びFormation planeを用いて行う。
 分かりにくいがFormation planeはExport busではなくStorage busのような挙動を示す、つまりシステム内にあるアイテムを吐き出す機能はなく、インターフェースなどで入ってきたアイテムをシステム内を経由せず外に吐き出すものになっている。
 一方でAnnihilation planeは普通に目の前にあるアイテムやブロックをシステム内に取り込む機能を持っている、コレ自体に取り込むものをフィルタリングする機能はないためAnnihilation planeのあるシステムのStorageにフィルタをかける。
 今回のシステムはどこかがショートしてると材料がぐるぐる回るだけで出来上がらないのでちゃんとQuartz Fiberで切り離しておこう。

Living Rock(Botania)

概観
Storage busにLivingrockを登録

 LivingRockはブロックを設置してPure Daisyが変換するのを待って回収するだけなのでFormation/ Annihilation planeを用いる。
 きっちり周り8個設置していないのは電力供給だけだとチャンネルが8個しかないのでめんどくさかったためである、気になる人はいい感じに構築してほしい。
 赤いケーブルのネットワークがInterface x1, Formation plane x7
 青いケーブルのネットワークがStorage bus x1, Annihilation plane x7
 Planeは特に設定する必要はないがStorage busの設定は忘れないようにすること。

Petal apothecary(Botania)

 水を張った上で上から材料、種の順で落とすだけなので割と単純な方法で自動化ができる。一応注意点あり。


  1. ブロッキングモード

  2. ドロップ回収手段は相性の悪いものがある

  3. 完成品材料ともにアイテムドロップなので置く場所注意

  4. 水を入れる担当のModular Routerは程々に早く動作するようにしておく(別にspeed9枚詰めとまでは言わないが)

  5. 材料の搬入は真上にあるDropper Moduleを搭載したModular Routerから順々に落としていくだけ。
     水はパイプ等で搬入ができないので、水に関してもActivator Moduleを積んだModular Routerで水を入れるのだが、ここで2つ選択肢がある、水を何で入れるかという話で、ひとつは普通に水バケツか、若しくは蓮の葉でおなじみReliquaryのChaliceで入れる。Chaliceの場合一手間減るだけなのでここでは水バケツで入れることとする。


概観
種は後ろに置く

 こんな感じで空バケツ・水バケツをそれぞれホワイトリストに登録したActivator Moduleをシンクとアポセカリーに向けて設定しておく。
 回収はBotaniaのFunctional flowerのHopperhockで行っている、隣接したインベントリに回収なのでプロバイダの下でも問題ない。Item Collectorなんかの高速なものだと回収する前に拾ってしまう。お好みでDemagnetization coilをつけてもよし。

 ここで1つオプションの話をしておくコレはラグ軽減の話で、Activator Moduleみたいなクリッカーの類は割と重いことが多い、今回の場合も水の入っているPetal Apothecaryに無駄に水かけ続けると程々に負荷になるので、それの対策としてModular Routerを赤石制御しておく。

 コンパレーターをおくとApothecaryに水が入っているか検知できるので、こんな感じに配置して赤石制御をしている、わざわざnot回路を挟んでいるのはLow動作(つまり信号なしで動作の状態)にしても動作は止まるものの負荷軽減になっていなかったためである。

Runic altar(Botania)

基本はアポセカリーと似ている

概観
Collectorの設定でLivingrockはブラックリストにいれる
こんなレシピだと
Livingrockは最後に
Wand of forestをホワイトリストに
Wand of forestと一緒にいれる
もう一方はブラックリスト

 Runic Altarは右クリックでアイテムをい入れられるので、こちらもModular Router + Activator Moduleの組み合わせを使用する。マナスプレッダーは何でも良いが上位の物のほうがチャージが早い。
 自分の環境だけかもしれないがRone of JötunheimrとかのMythicBotany産のルーンを作ろうとした時に一個目のアイテムが虚空に消えることがある、ログインし直したら治ったり、違うルーンでも起こるようになったりする、入れる順番を変えると治ったりするので詰まってるときはそれが原因かもしれない。

Infusion altar(Mystical agriculture)

サブネットに搬入を行う、台座の数的にコントローラーが必要、他の導管で制御できるなら

概観
Modular RouterにつけるStorage busの設定
つながっていない台座に送るように設定

 プロバイダはブロッキングモードにしておく。中央の台座とModular RouterにつけるStorage busは優先度を高く設定しておこう。特に意識しなくても中央に来る材料が先頭になるようなレシピになっていると思われる。
 中央の台座の横のレッドストーンはクラフトの起動用。

Blood Altar(Blood magic)

見えるように手前のルーンは置いていない

祭壇周りをごちゃごちゃさせたくない場合はEntangleを使って搬入出を行うと良い。

レッドストーン動作に設定

 Blood Altarはクラフトの完成時に直下のレッドストーンランプにパルス信号を出力してくれる、ブロックを伝って伝達されるので、パルス信号で搬出するように設定した導管を祭壇の隣に置くだけで良い。プロバイダは忘れずにブロッキングモードに設定すること。
 注意点としてタイムボトル等で加速すると出力されるパルス信号も短くなってしまうので、信号を取りこぼしてしまう事がある。極端に短い信号でなければCreateのPulse Extender等で信号の長さは延長できるので調整してほしい。
 LPの供給に関してはHematophagous Beeで生産したものか、Blood wellの儀式で生産したものを搬入するか、村人のスポナー(村人はLPの供給量が多い)を利用して手動で生産する。搬入の場合はDislacement rune, 手動供給する場合はSacrifice rune等を設置して供給量を確保しよう。供給があまりにも遅いと注入した血液が蒸発して損失が発生する。
 自分はレッドストーン関連はよく分からないのでもっといい形があるかもしれない。 

多分書く

  • Petal apothecary(Botania)

  • Runic altar(Botania)

  • Living Rock/Wood(Botania)

  • Blood altar(Blood magic)

  • RSから無理やりAE2にブリッジしてAE2の機能で自動加工する手法

  • Atomic Reconstructor(Actually addition)

  • ポーション醸造(Industrial Foregoing)

  • Goo conversion(Just Dire Things)

  • Infusion altar(Mystical agriculture)

多分書かない(自動化だけどあんまりAE2関係ないor必要量が多くない)

  • Dimensional minerの自動修復(Occultism)

  • 自動マナ生産(Botania)

  • 自動LP生産(Blood magic)

  • Extreme Reactors

  • Forbidden & arcanusの4要素

  • リソースmod(Mystical agriculture, Productive bees等)

  • Time crystal(Just Dire Things)