ホッパー付きトロッコでアイテム回収装置を作る時、レールの敷き方やパワードレールの置く間隔、アイテム荷下ろし回路など、結構考える事が多いのでまとめてみました。
※本サイトでは、ブロックやアイテム名はJava版の名称を用いています。統合版の方は以下の通り読み替えてください。
レッドストーンダスト ⇒ レッドストーンの粉
パワードレール ⇒ 加速レール
ディテクターレール ⇒ 感知レール
ホッパー付きトロッコ
レールの上にあるホッパー付きトロッコは、真上のブロックの上に落ちているアイテムを回収する事ができます。
積載量によって変化する距離
パワードレールによって加速したホッパー付きトロッコは、空の状態が移動距離が最も延びます。アイテムを回収すると移動距離が短くなります。
以下は、停止した状態のホッパー付きトロッコにアイテムを載せてから、1つのパワードレールをオンにして、どれだけ進むのか実験した結果です。
実験結果
アイテム (スタック数) | 移動距離 (マス:m) |
---|---|
0 | 64 |
1 | 40 |
2 | 29 |
3 | 23 |
4 | 19 |
5 | 16 |
搭載するアイテム数が多くなればなるほど指数関数的に距離が短くなっています。同じ推進力ならば重い方が距離が伸びないのは物理法則通りで自然ですね。ちなみにこの性質はチェスト付きトロッコでも同じです。
ところで、普通のトロッコは人やモブが乗る(=重い)方が距離が延びます。重さと移動距離の関係が逆になっている点が混乱するポイントです。ちょっと変な仕様に感じるかもしれませんが、その理由はおそらく、プレイヤーやモブがトロッコから降りた時に止まってくれた方が便利だからでしょう。普通のトロッコは空になるとブレーキがかかり停止するという親切な機能が付いている、と考えましょう。
スピードとアイテム回収
アイテム回収のためにホッパー付きトロッコを走らせる場合、速すぎると取りこぼす可能性があります。簡単な実験をしてみました。
1か所に5種類のアイテムを1スタックづつ置いておき、色々なスピードでホッパー付きトロッコを走らせて、ちゃんとアイテムを回収できるかテストしました。
実験結果
統合版
最速スピードでは最大2種類、2スタックのアイテムしか回収できない
Java版
最速スピードでは最大4スタック4種類のアイテムを回収できる
スピードが遅ければ、統合版とJava版のどちらも最大5種類すべて回収できました。
結論
Java版では相当アイテム数が多くならない限りトロッコのスピードを気にする必要はありません。
統合版ではスピードが速くなれば取りこぼします。スピードの調整は難しいので、アイテムの種類が多い場合は、取りこぼす前提でレールを敷いたり回収する頻度を増やしたりする必要があります。
レールの敷き方
アイテム回収用にレールを敷くパターンは2種類考えられます。
周回する敷き方
ぐるっと回って帰ってくるタイプです。回収対象のブロックを一度しか通りません。帰ってくる時の線路が繋がっていないような感じですが、これでちゃんと帰ってきます。欠点は回収エリアの一方の辺の長さが偶数になってしまう、という制約があることです。
往復する敷き方
スタートしてから一番離れたブロックまで行き、折り返して同じ経路を帰ってきます。終端にブロックとパワードレールを置く必要があります。回収対象のブロックを行きと帰りで二回通るので、戻ってくるまで時間がかかりますが取りこぼす可能性は低くなります。
どっちがいい?
ホッパー付きトロッコはスピードが速すぎると取りこぼす可能性があります。特に、統合版では最高スピードでは2種類のアイテムしか回収しません。ホッパー付きトロッコのスピードを遅くするといいのですが、アイテムを吸い取ると遅くなるのでスピードを制御するのは難しいです。
またアイテム回収にスピードは求められないはずです。それよりも取りこぼす事なく確実に回収して欲しいですね。
そのため、特に統合版では往復するようにレールを敷いた方がよいでしょう。Java版では回収アイテム数が4スタックを超えるぐらいでないと取りこぼしませんが、どんな形でも単純に敷くことができる往復型の方が良いでしょう。
パワードレールを設置する間隔
満タン状態でも15マス間隔で止まる事はありません。15マス以下の間隔でパワードレールは置きましょう。回収するアイテムの数や種類が多い場合には間隔を短くした方がいいのですが、短すぎるのも資源の無駄です。10~12マス間隔ぐらいがいいでしょう。
アイテム荷下ろし回路
レールを敷いてホッパー付きトロッコを走らせた後、回収したアイテムをホッパー付きトロッコからチェストなどに収納する方法を考えます。
アイテムを荷下ろし終了後すぐに出発
ホッパー付きトロッコがアイテムを拾い集めて帰ってきたら、今度はそれをチェストなどに集める訳ですが、その間ホッパー付きトロッコを止めておかなければなりません。ちょっとした回路が必要ですが、Java版と統合版で動作が異なるので回路も異なります。
Java版
ホッパー内のアイテムをコンパレーターで読み取り、その信号をNOT回路で反転してからスタート地点のブロックに送信します。これによりコンパレーターがオン信号を出しつづけている間はパワードレールがオフになります。わかりやすく回路を組むと以下のようになります。
しかし、これでは場所をとるので実際は以下のようなコンパクトな配線になるでしょう。
コンパレーターがホッパー内のアイテム有無を調べます。無ければレッドストーン信号は出ないので、レッドストーントーチは点灯し上にあるブロックをオンにします。そのブロックからリピーターでレッドストーン信号を取り出します。レッドストーンダストでも信号は取り出せるのですがレッドストーントーチが焼き切れてしまいます。コンパレーターの上にあるブロックがオンになると、それに隣接しているパワードレールもオンになります。
レッドストーン信号を左のブロック(コンパレーターの上のブロック)に伝えれば何でもいいので、色々な方法が考えられます。
統合版
統合版では、ホッパー付きトロッコがアイテムを回収して戻ってきた時、パワードレールがオンになったままだと、また出て行ってしまう事があります。これを防ぐには、ホッパー付きトロッコが近づいた時にしばらくの間パワードレールをオフにするとよいでしょう。それにはディテクターレールとNOR回路が必要になります。
NOR回路は複数の入力があるとき、すべての入力がオフの時に出力がオンになります。
この荷下ろし回路では、ディテクターレールとコンパレーターの2つの入力がオフの時だけ出力がオンになってパワードレールがオンになります。
NOR回路はレッドストーントーチとその下のブロックで構成されます。
以下のスクショは、右から左へトロッコが通り過ぎた直後です。
トロッコが通り過ぎると、ディテクターレールはオン信号を1秒間出力します。それによってNOR回路の出力がオフになり、パワードレールもオフになるのでトロッコが停止します。
ある程度の間隔で回収
1日に1回
回収するアイテムがそれほど多くない場合は常にトロッコを走らせる必要はなく、一日に一回でいいかもしれません。その場合は、日照センサーとパルス回路を使って、朝か夜になったタイミングでパルス信号を送ります。パルス信号が短いとトロッコが十分な加速を得られないのでリピーターの遅延は4にします。
コンパレーター式のパルス回路の詳細はこちらをご覧ください。
1日に2回
上記システムのパルス回路をオブザーバーに置き換えて日照センサーを監視させます。
すると、朝と夜になったタイミングで日照センサーの変化を検出してパルス信号を出力してくれます。このパルスは1RSティックと短かすぎるのでリピーターの遅延を最大にしてパルス幅を広げます。
オブザーバー式のパルス回路の詳細はこちらをご覧ください。
数分に1回
このアイテム回収方式はとても使いどころが多いです。養鶏場の卵回収や、カボチャやスイカ、サトウキビ等の自動式農場など、アイテムが不定期に発生しつづける場合です。常にホッパー付きトロッコを走り回らせてもいいのですが、なんだかスマートではありませんね。
アイテムは5分以内に回収しなければ消えてしまうので、5分以内に一回、回収できれば良い訳です。ラブホッパー式クロック回路では最小0.8秒から最大4分16秒までの間隔でクロック周期を調節可能です。
ラブホッパー式クロック回路についてはこちらをご覧ください。
ラブホッパーに入れるアイテムは何でもいいのですが、1スタックが64個のものにしておいた方がいいでしょう。アイテム数は「クロック周期÷0.8」で計算しましょう。
例:2分毎にホッパー付きトロッコを走らせたい
120秒÷0.8 = 150個
ラブホッパーにはアイテムを2スタックと22個入れておきましょう。
実際には、ホッパー付きトロッコが出発して戻ってきて荷下ろしが完了するまでの時間を考慮しないといけません。ホッパーの荷下ろし性能はアイテム1個につき0.4秒なので、アイテムがぱんぱんの満タン状態で回収から戻って来たとしても、荷下ろしにかかる時間は最大でも、64x5x0.4=128秒=2分8秒です。レールの長さや発生するアイテムの数を考慮して回収間隔を決めましょう。
パルス回路と組み合わせる
ラブホッパー式のクロック回路はオンの時間が長すぎるので、パルス回路と組み合わせます。
上記の例のようにラブホッパー式クロックの周期が2分もあると、オンとオフの時間が1分づつになってしまいます。パワードレールがオンの時間が1分もあると、トロッコは戻ってきてまた出て行ってしまいます。それを回避するためパルス回路と組み合わせてオンの時間を0.8秒と短くします。コンパレーター式パルス回路についてはこちらをご覧ください。