鉄道
- テクノロジーに関しては鉄道(テクノロジー)をご覧ください。
鉄道はFactorioにおける主要輸送手段の一種である。導入は複雑になりえるし大量の資源と場所を食うが、特に長距離輸送においてはベルトやロボット物流より速くて効率的である。
しかしながら、鉄道の敷設はすぐに理解できるようなものではない。自動輸送のような基本を学ぶのにもそれなりの時間がかかる。大規模な鉄道ネットワークを運営し維持することを習得するには時間と経験が必要となる。
インフラ
鉄道を敷設するには、列車を乗せるための軌道(レールともいう)を敷かねばならない。典型的にはレールプランナーで行うが、手動でも可能である。レールは2タイル単位で設置され、1タイルだけ動かすことは出来ないことに留意すること。
最小限の手動運行鉄道
最小限の手動運行鉄道は以下から成る。
機関車のそばに立ってENTERを押下すれば、乗り込んで手動運行できる。
分岐
- 分岐の作動状況は視覚的に表現されないが、レールは合流できる。レールプランナーを使えば、レールを既存レールに重ねて置くことで分岐を形成できる。分岐は路線上の枝分かれであり、列車に2方向の選択肢を与える。
- 列車は旋回角に制限があるため、2つの直線軌道が交差する点は分岐とはならない。信号ブロックを形成して衝突を防ぐことはできる。
- 並列軌道は相互に干渉しない。しかし、近すぎる場合は一方からもう一方への分岐が余計な資源を必要とする。軌道を一旦遠ざかる向きに伸ばし、そのあとで戻す必要があるため。これは信号ネットワークを複雑化する原因になるので、一般的には十分な間隔を開けずに並列軌道を敷くべきではない(ふつう軌道2本分の間隔で上手くいく)。
軌道の横断
軌道の横断には注意!列車はゲーム中で最も与ダメージが大きいものの一つであり、接触時にほとんどのプレイヤーを瞬殺する。
軌道を横断する際の適切な流儀チェックリスト。
- ズームアウトして、列車が来るか見えるようにする。
- 左を見て、次に右を見る。
- 近傍の信号を確認する。列車用信号が突然緑から赤や黄色に変わったら、列車が来るので横断してはいけない。
- 軌道付近を歩いてはいけない。完全に軌道上に入っていなくても、轢かれ得る。
- 動いている列車に飛び乗ったり飛び降りたりもできるが、失敗の対価は命である。列車は側面にもダメージ判定があるので、2台の列車の間で轢き潰されうる。
- 大量のシールドでダメージを軽減することもできる。極端な話、体一つで列車を止めることすらできる。それには瞬殺されないため複数のエネルギーシールドモジュールが必要で、しかもスーツのエネルギーを大量に消費するが。
- 体力を持つエンティティなら列車に轢かれてダメージを受けるので、自動車や戦車を軌道に放置しないように。逆に、敵勢力も…なのだが。
- 駅から遠く離れた列車は(ほぼ)最高速で運行するので、横断の際はより警戒しズームアウトしておこう。駅や信号付近では停車にむけて減速しており、低速で運行する。列車の設定によっても速かったり遅かったりする。
図に示すような安全な路線横断が建設できる。これは接近中の列車がレールを予約したとき、軌道へのアクセスを制限する。プレイヤーがレール上に居る時は、回路ネットワークを介して信号は予約され、列車はプレイヤーが軌道を離れるまで停まって待たねばならない。プレイヤーが内部にいて軌道を横断しているとき、列車のゲートは閉じているので横断部以外の軌道にプレイヤーが踏み入ることは出来ない。これは完全に安全な横断を保証するので、サーバーでよく用いられる。
列車
列車は以下から成る。
機関車 | 貨物車両 | タンク貨車 | 長距離砲車両 |
- 列車は少なくとも1台の機関車を持つ。
- 列車は1台以上の機関車に加え、任意の数の貨車を連結できる。
- 機関車は手動では前後に操縦できるが、一般には後ろ向きは遅い。左右キーは分岐で進行方向を変えるのに用いられる。
- 列車は自動操縦時には前にしか進めない。2台の機関車が逆向きに接続されていれば、自動化された列車も前にも後ろにも進める。
- 列車は運行に燃料が必要である。燃料は列車が手動モード、または駅に停まっている場合にインサータで補充可能で、自動モードで信号前に停まっていたり運行中だったりする場合には補充不可能である。
機関車のインベントリは燃料専用である。貨物車両やタンク貨車にアイテムや流体を積み込むには、列車に連結されていなければならない。車両を連結するには、貨車にせよ機関車にせよ、既存列車に対し緑の連結予測が出るくらい近くの場所に設置するか、遠くで設置した場合にはプレイヤーが手動で連結キーを押すことで連結する。同様に解放キーで解放できる。
駅
自動モード時に列車の積み下ろしができるのは列車駅だけである。 貨物車両は手動、または最大12箇所の隣接するインサータ(片側6箇所)で、タンク貨車は最大3箇所のポンプで積み下ろしできる。ポンプは頂点にあるニップルと自動的に接続される。
列車駅は通常、駅を設置して作る。駅は、軌道の右側になければならない。しかし、機関車のGUIを開き、GUIのミニマップでレールの近くをCTRL + 左クリックすることで、一時的な列車駅を作ることができる。機関車に乗った状態で、ワールドマップのレールの近くをCTRL + 左クリックしてもよい。こうして列車駅を作る場合(アイテムとしての)駅は必要ない。一時的な列車駅は、デフォルトで5秒間待機する条件を持っており、列車が駅を離れるとその駅は予定から削除される。
信号
列車用信号 | 連動式列車用信号 |
信号は、複数の列車を自動運行してもお互い衝突しないようにするため用いられる。信号は(鉄道)ネットワークをブロック単位に分割し、任意の時点でどのブロック内にも1編成しか存在しないことを保証する。ただし、手動運転した列車はすべての信号を無視することに注意すること。つまりプレイヤーが赤/黄信号を無視している場合、自動運行の列車がプレイヤーの編成に衝突することがありうる。常に自動運行中の列車を気にかけ、線路を譲ろう。
Tutorial:信号ではより詳細な信号、ブロック、デッドロックについて扱われている。
基本的な信号規則
- ブロック内にはいかなる時も1つの列車しかいられない。複数のブロックにまたがる列車はそれら全てを占有する。
- 赤信号は続くブロックが列車に占有されていることを示す。
- 黄信号は続くブロックへの進入をすでに認可されている列車が接近中であることを示す。
- 列車用信号は新たなブロックを分割し、その状態を示す。緑は空き、黄色は予約済み、赤は占有中である。
- 連動式列車用信号は新たなブロックを分割し、次の列車用信号(全て)の状態を示す。上記に加えて、青は全てではないが、1つ以上の経路が塞がれていることを示す。
- 列車は軌道の右側に設置された信号のみを通過でき、同じレールセグメントの両側に設置されていても良い。もちろん、手動操縦には関係ない。
輸送自動化
列車は出発時、連動式列車用信号で5秒待った場合、目的地が回路条件によって自身を無効化した場合に「自動的に」停まる目的地と経路を選択する。経路選択アルゴリズムに基づき、その時点で明らかな遅延を考慮に入れつつ有効な当該名称駅への最短経路を選ぶ。条件を満たす駅がない場合、その駅を飛ばして次に行く。
この節は列車駅間のアイテム自動輸送のために必要なアイテムもカバーする。プレイヤーは鉄道システム(rail system)の作成に慣れ親しまなくてはならない。
まず、少なくとも2つの駅を到着時の向きから見て右側に設置した鉄道システムを作成すること。駅にマウスをホバーすると乗り物の位置が見られ、列車駅を上手に設計(積み卸し用機械、燃料補充/修復設備の取り付けを含む)する上での助けとなる。
列車時刻表(以下を参照)を設定し列車に燃料を補充すれば、運行モードを手動から自動に切り替えることで列車をその時刻表どおりに走らせることができる。
列車の運行予定
プレイヤーは機関車のGUIの左側で駅のリストを設定できる。列車はその順で駅を巡るよう運行し、最後までたどり着いたら最初に戻る。駅はGUIで「駅を追加」をクリックすることで追加できる。選択された場合、別のボタンが表示され、ポップアップリストから待機条件を選択できる。 さらに、GUIの右側にあるマップで駅をSHIFT + 左クリックすることで、予定に新たな駅を追加できる。また、マップ中のレールの近くをCTRL + 左クリックすることで、一時的な駅を作成できる。
発車条件は列車がいつ駅を出発するかを決める。9種の発車条件がある。
- 経過した時間
- インベントリが満杯 - 列車の全インベントリが満杯。燃料のインベントリは含まない。
- インベントリが空 - 空なことを除けば上に同じ。燃料のインベントリは含まない。
- 貨物アイテム数 - 特定のアイテムを一定量保持している(全車両について合算される)。燃料のインベントリは含まない。
- 回路による - 駅が回路ネットワークに繋がっていれば、シグナルが発車条件に使える。
- 非アクティブ - 指定した秒数の間、アイテムが積み卸しされない。
- 流体量 - 特定の流体を一定量保持している(全タンク貨車について合算される)。
- 乗客あり - 少なくとも一人のプレイヤーが列車のいずれかの部分に乗っている。
- 乗客なし - 列車のいかなる部分にも、プレイヤーが一人も乗っていない。
また、待ち時間なしを設定することも可能である。この場合、列車は停車せずに駅を通過する。
以後、「条件(term)」は1種類の発車条件について表現し、「発車条件(wait condition)」は条件全体の集合について表現する(ちょっと数学っぽい話になってきた)。
1つ以上の条件を追加した場合、論理演算子ANDとORを用いてそれらの関係を変更できる。AND条件は全ての条件が真であるときに真となる。またOR条件は少なくとも1つの条件が真である時に真を返す。
AND条件とOR条件を混ぜると、OR条件でまとめられる。発車条件を評価する際、最初の条件は次にOR条件が現れるまでの続く全てのAND条件と同時に評価される。それら全てが真と評価されれば、発車条件も真と評価される。さもなくば評価は継続し、そのOR条件とそこから次にOR条件が現れるまでの続く全てのAND条件が同時に評価される。ORでまとめられたグループが真と評価され発車条件が満たされるか、全ての条件がチェックされ終わるまでこれが繰り返される。
例
例を展開
30秒の間、満杯になるのを待つ:
貨物車両のインベントリが満杯 OR 30秒経過
貨物が満杯になるのを待つ、 または 回路条件 Oil > 3000:
貨物車両のインベントリが満杯 OR 回路: 原油 > 3000
空になるのを待ち かつ 30秒が経過して かつ なにもせず5秒経過:
貨物車両のインベントリが空 AND 30秒経過 AND 最後の積み卸しから5秒経過
鉄鉱石が少なくなるまで待つ または 銅鉱石が少ない かつ 少なくとも30秒経過:
貨物: 鉄鉱石 < 500 AND 30秒経過 OR 貨物: 銅鉱石 < 500 AND 30秒経過
Factorioの発車条件ロジックは選言標準形(disjunctive normal form) (DNF)として読まれ、よって最後の例は以下のように実行される(カッコに注意)。
((貨物: 鉄鉱石 < 500 AND 30秒経過) OR (貨物: 銅鉱石 < 500 AND 30秒経過))
これは以下と同義。
((貨物: 鉄鉱石 < 500 OR 貨物: 銅鉱石 < 500) AND 30秒経過)
残念ながら、現在のUIではこのような短い記法はない。
トラブルシューティング
鉄道システムや列車が動かない場合、以下のいくつかのことを確認すること。
- 列車に燃料が供給されているか?機関車になにか燃料があることを確認すること。
- 分岐が配置ミスや機能しない状態にないか?列車が交差点を通った経路を計画できることを確認すること。
- 同一ブロックに他の列車がいないか?列車の経路が閉塞されていないことを確かめること。
- 駅は正しく設置されているか?駅にマウスカーソルを重ねたとき、黄色い矢印が駅の終端または出口へ伸びていることを確かめること。
- 列車は正しい向きで信号に進入できているか?信号は正しく設置されているか?
- 軌道を双方通行にしたい場合、鉄道用信号が互いに向き合っていなければならない。どれかにカーソルを当てれば一致しているか検証できる。一致したペアについては、もう一方が見える。
到達経路なし
列車が目標にたどり着けない場合、「到達経路がありません」シンボルが機関車の上に表示される。この場合以下を確認すること。
- 列車は現在の目的地に前方に進むだけで到達できるか?方向転換場を作るか、列車の両側に機関車を付けよ!
- 駅は正しい方向に設置されているか?駅は(機関車の進行方向に対して)軌道の右側に存在しなければならない。列車が南向きに進行している場合、駅は軌道の西側になければならない。
- 信号を使っているなら、全ての信号が正しい向きの通行を許可しているか確認すること。
- 列車軌道上の妨害を確認すること。手動で駅まで運転して欠けているレール片がないか確かめること。とくに交差点付近は無くなっていることに気づきにくい。
まだ問題があるなら以下を考慮してみること。
- 手動で運転して、交差点を越えるごとに自動に切り替える。うまくすれば、だいたいどのあたりに問題があるか知ることができる。
実績
軌道に乗る 機関車を設置する |
ファクトリオ特急 総距離1000タイル以上の列車運行計画をたてる |
足元にご注意ください 動いている機関車に轢かれて死ぬ |
プロのように軌道に乗る ゲーム開始から1時間30分以内に機関車を設置する |