In other languages:

User:Fried biter/workspace: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
m (→‎Deadlocks: translate)
Line 135: Line 135:
* 交差点周辺にはより多くの軌道を整備する。ある交差点がある場所へ到達するための唯一の経路にならないよう、冗長性を持たせよ。これにより、小さな問題は小さな問題のままにしておける。
* 交差点周辺にはより多くの軌道を整備する。ある交差点がある場所へ到達するための唯一の経路にならないよう、冗長性を持たせよ。これにより、小さな問題は小さな問題のままにしておける。


== Automated transport ==
== 輸送自動化 ==
[[File:train-schedule-gui.png|thumb|300px|The scheduale tab in the train GUI: 1 - switch between automatic and manual driving mode; 2 - add new train station; 3 - delete selected station; 4 - send train to selected station; 5 - add wait condition for selected station; 6 - delete selected wait condition; 7 - change logical mode of selected wait condition/ja|]]
[[File:train-schedule-gui.png|thumb|300px|列車GUIのスケジュールタブ: 1 - 自動/手動の切替; 2 - 新しい列車駅の追加; 3 - 選択中の列車駅を削除; 4 - 列車を選択中の列車駅に動かす; 5 - 選択中の列車駅に発車条件を追加; 6 - 選択中の発車条件を削除; 7 - 選択中の発車条件の論理モード(logical mode)を変更]]


Trains set on "Automatic" choose their destination stop and route on departure, and after waiting at a chain signal for five seconds, and when their destination stop disables itself by circuit condition. They choose the shortest route using a [[Railway/Train_path_finding|path finding algorithm/ja|]] that will get them to an enabled train stop with the right name, taking penalties for any apparent-at-the-time delays into account. If no such train stop exists they will skip the stop and go on to the next.
列車は出発時、連動式信号で5秒待った場合、目的地が回路条件によって自身を無効化した場合に「自動的に」停まる目的地と経路を選択する。[[Railway/Train_path_finding/ja|経路選択アルゴリズム]]に基づき、その時点で明らかな遅延を考慮に入れつつ有効な当該名称駅への最短経路を選ぶ。条件を満たす駅がない場合、その駅を飛ばして次に行く。


This section covers items used to make trains automatically transport items between stations. The player should be familiar with creating a rail system.
この節は列車駅間のアイテム自動輸送のために必要なアイテムもカバーする。プレイヤーは鉄道システム(rail system)の作成に慣れ親しまなくてはならない。


First, the player has to setup a rail system with at least two train stops, which are placed in the right-hand side of the  expected train arrival direction. By hovering over the train stop with the mouse you see the positions of the vehicles for better setting up the train station (including (un)loading machinery, refueling/repair installations).
まず、少なくとも2つの駅を到着時の向きから見て右側に設置した鉄道システムを作成せよ。駅にマウスをホバーすると乗り物の位置が見られ、列車駅を上手に設計(積み下ろし用機械、燃料補充/修復設備の取り付けを含む)する上での助けとなる。


When you set up the train schedule (see below) and fuel the train, you can start the train on it's schedule by switching from manual to automatic driving mode.
列車時刻表(以下を参照)を設定し列車に燃料を補充すれば、運行モードを手動から自動に切り替えることで列車をその時刻表どおりに走らせることができる。


=== Train schedule ===
=== 列車時刻表(train schedule) ===
The player can set up a list of train stations in the upper window. The train will route to stops in the given order, if it's at the end it will continue with the first. Currently, it's not possible to make a one-time schedule. Stations can be added by clicking button 2 (see picture). A pop-up appears with a list of all stop names. If you select one, another pop-up appears for you to select a wait condition.
プレイヤーは上側のウィンドウで列車駅のリストを設定できる。列車はその順で駅を巡るよう運行し、最後までたどり着いたら最初に戻る。現在のところ、1回きりの時刻表を作ることは出来ない。列車駅はボタン2(画像を参照)をクリックすることで追加できる。全駅名一覧のポップアップが出るのでどれかを選ぶと、発車条件(waiting condition)を選択する別のポップアップが出る。


Wait conditions are used to tell the train when to leave the station. There are 7 types of wait conditions:
発車条件は列車がいつ列車駅を出発するかを決める。7種の発車条件がある。
* '''Time passed'''
* '''経過した時間'''
* '''Inventory full''' - All inventories of the train are full.
* '''インベントリが満杯''' - 列車の全インベントリが満杯。
* '''Inventory empty''' - Same as above, but empty.
* '''インベントリが空''' - 空なことを除けば上に同じ。
* '''Item count''' - The train (all cargoes summed) contains a specific amount of a certain item.
* '''貨物アイテム数''' - 特定のアイテムを一定量保持している(全車両について合算される)
* '''Circuit condition''' - The train stop is connectable to the [[Circuit network/ja|Circuit network/ja]], so the signals can used for wait conditions.
* '''回路による''' - 駅が[[Circuit network/ja|回路ネットワーク]]に繋がっていれば、シグナルが発車条件に使える。
* '''Inactivity''' - No items were added or removed for the specified amount of seconds.
* '''積み卸し終了''' - 指定した秒数の間、アイテムが積み卸しされない。
* '''Fluid count''' - The train (all fluid wagons summed) contains a specific amount of a certain fluid.
* '''流体量''' - 特定の流体を一定量保持している(全タンク貨車について合算される)


Hereafter the word "term" is used to describe ''one'' type of wait condition, and the words "wait condition" are used to describe the whole set of terms (it turns a bit into maths).
以後、「条件(term)」は''1種類''の発車条件について表現し、「発車条件(wait condition)」は条件全体の集合について表現する(ちょっと数学っぽい話になってきた)


If you add more than one term, you can change the connection of those using the logical operators AND and OR (button 7). An AND condition will result in true if all terms are true. An OR condition will return true if at least one of the terms is true.
1つ以上の条件を追加した場合、論理演算子ANDとORを用いてそれらの関係を変更できる(ボタン7)。AND条件は全ての条件が真であるときに真となる。またOR条件は少なくとも1つの条件が真である時に真を返す。


When mixing AND and OR terms, the logic is grouped by the OR terms. When evaluating the wait condition, the first term is evaluated along with all AND terms immediately following up to but excluding the next occurring OR term. If they all evaluate true, the wait condition evaluates true. Otherwise, evaluation continues with that next occurring OR term and all AND terms immediately following it, up to the next OR term. This continues until either an OR group evaluates true and the wait condition is satisfied, or all terms have been checked.
ANDとOR条件を混ぜると、OR条件でまとめられる。発車条件を評価する際、最初の条件は次にOR条件が現れるまでの続く全てのAND条件と同時に評価される。それら全てが真と評価されれば、発車条件も真と評価される。さもなくば評価は継続し、そのOR条件とそこから次にOR条件が現れるまでの続く全てのAND条件が同時に評価される。ORでまとめられたグループが真と評価され発車条件が満たされるか、全ての条件がチェックされ終わるまでこれが繰り返される。


==== Examples ====
==== ====
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
Expand for examples
例を展開
<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
Wait until full, up to 30 seconds:
30秒の間、満杯になるのを待つ:


<pre>
<pre>
Full cargo inventory
貨物車両のインベントリが満杯
OR 30 seconds passed
OR 30秒経過
</pre>
</pre>


Wait until cargo full, ''or'' circuit condition Oil > 3000:
貨物が満杯になるのを待つ、 ''または'' 回路条件 Oil > 3000:


<pre>
<pre>
Full cargo inventory
貨物車両のインベントリが満杯
OR Circuit condition - Oil > 3000
OR 回路: 原油 > 3000
</pre>
</pre>


Wait until empty, ''and'' 30 seconds passed, ''and'' 5 seconds of inactivity:
空になるのを待ち ''かつ'' 30秒が経過して ''かつ'' なにもせず5秒経過:


<pre>
<pre>
Empty cargo inventory
貨物車両のインベントリが空
AND 30 seconds passed
AND 30秒経過
AND 5 seconds of inactivity
AND 最後の積み卸しから5秒経過
</pre>
</pre>


Wait until iron ore is low, ''or'' copper ore is low ''and'' at least 30 seconds passed:
鉄鉱石が少なくなるまで待つ ''または'' 銅鉱石が少ない ''かつ'' 少なくとも30秒経過:


<pre>
<pre>
Cargo: Iron ore < 500
貨物: 鉄鉱石 < 500
AND 30 seconds passed
AND 30秒経過
OR Cargo: Copper ore < 500
OR 貨物: 銅鉱石 < 500
AND 30 seconds passed
AND 30秒経過
</pre>
</pre>


Factorio's wait condition logic is read as disjunctive normal form ([https://en.wikipedia.org/wiki/Disjunctive_normal_form DNF]), and so this last example is processed as (note the parenthesis):
Factorioの発車条件ロジックは選言標準形(disjunctive normal form) ([https://ja.wikipedia.org/wiki/選言標準形 DNF])として読まれ、よって最後の例は以下のように実行される(カッコに注意)


<pre>((Cargo: Iron ore < 500 AND 30 seconds passed) OR (Cargo: Copper ore < 500 AND 30 seconds passed))</pre>
<pre>((貨物: 鉄鉱石 < 500 AND 30秒経過) OR (貨物: 銅鉱石 < 500 AND 30秒経過))</pre>


Which is the same as this:
これは以下と同義。


<pre>((Cargo: Iron ore < 500 OR Cargo: Copper ore < 500) AND 30 seconds passed)</pre>
<pre>((貨物: 鉄鉱石 < 500 OR 貨物: 銅鉱石 < 500) AND 30秒経過)</pre>


Unfortunately, there is no way to write that shorter form in the current UI.
残念ながら、現在のUIではこのような短い記法はない。
</div></div>
</div></div>


=== Troubleshooting ===
=== トラブルシューティング ===


Below are some things to verify if a rail system or train is not working.
鉄道システムや列車が動かない場合、以下のいくつかのことを確認せよ。


* Is the train fueled? Ensure that the locomotive has [[fuel/ja|fuel/ja]] of some kind.
* 列車に燃料が供給されているか?機関車になにか[[fuel/ja|燃料]]があることを確認せよ。
* Misplaced or non-functional switches? Ensure that the train can plan a path through the switches.
* 交差点が配置ミスや機能しない状態にないか?列車が交差点を通った経路を計画できることを確認せよ。
* Another train on the same [[Railway#Segment|segment/ja|]] or [[Railway#Block|block/ja|]]? Make sure the path of the train is unobstructed.
* 同一[[Railway/ja#セグメント|セグメント]][[Railway/ja#ブロック|ブロック]]に他の列車がいないか?列車の経路が閉塞されていないことを確かめよ。
* Train stops placed correctly? Make sure that the yellow arrows when hovering on the stop point towards the end or exit of the stop.
* 駅は正しく設置されているか?駅にホバーしたとき、黄色い矢印が駅の終端または出口へ伸びていることを確かめよ。
* Is the train allowed to enter signals from the right direction? Are the signals set correctly?
* 列車は正しい向きで信号に突入できているか?信号は正しく設置されているか?
* If a track is supposed to be two-way, the rail signals should be opposite each other. You can verify they match up by hovering the cursor over one. For a matched pair, it will show the other.
* 軌道を双方通行にしたい場合、鉄道用信号が互いに向き合っていなければならない。どれかにカーソルをホバーすれば一致しているか検証できる。一致したペアについては、もう一方が見える。


==== No path ====
==== 到達経路なし ====
When trains cannot reach the target, a "no path" symbol pops up over the locomotive. Check:
列車が目標にたどり着けない場合、「到達経路がありません」シンボルが機関車の上に表示される。以下を確認。
* Can the train reach its current destination by '''only driving forward'''? Build turning slopes or place a locomotive at both ends of a train!
* 列車は現在の目的地に'''前方に進むだけ'''で到達できるか?方向転換場を作るか、列車の両側に機関車を付けよ!
* Are the train stops standing in the right direction? Train stops must be on the right hand side of the track.
* 駅は正しい方向に設置されているか?駅は軌道の右側に存在しなければならない。
* If you use rail signals, check that the signals are all allowing traffic in the correct direction.
* 鉄道用信号を使っているなら、全ての信号が正しい向きの通行を許可しているか確認せよ。
* Check for interruptions in the train tracks, drive to the station manually to check there are no rail parts missing. Especially near junctions these can be hard to spot if missing.
* 列車軌道上の妨害を確認せよ。手動で駅まで運転して欠けているレール片がないか確かめよ。とくに交差点付近は無くなっていることに気づきにくい。


If you are still having problems, consider:
まだ問題があるなら以下を考慮。
* Driving the train manually, and as you pass each switch, try switching to automatic. When it works, you will know the rough area of the problem.
* 手動で運転して、交差点を越えるごとに自動に切り替える。うまくすれば、だいたいどのあたりに問題があるか知ることができる。
[http://imgur.com/a/Nq2Yk A pictorial summary of typical problems].
[http://imgur.com/a/Nq2Yk 典型的な問題を要約した図(説明は英語)].


<!-- These tutorials are no longer included because they are outdated. However, this section can be put back into the article when there are newer or in-wiki tutorials
<!-- これらのチュートリアルはもはや古くなったため含まれていない。しかしながら、より新しい/wiki内のチュートリアルがあるならこの節を記事に復活させても良い(訳注:以下、コメント部のため未訳)


== User tips and tricks ==
== User tips and tricks ==

Revision as of 05:24, 17 March 2018

作業場/workspace 日本語話者の方、マサカリ投げてくださると助かります


テクノロジーに関しては鉄道技術(研究)をご覧ください。

鉄道(Railway)はFactorioにおける主要輸送手段の一種。導入は複雑になりえるし大量の資源と場所を食うが、特に長距離輸送に於いてはベルトロボット物流より速くて効率的。

しかしながら、鉄道の建築は即座に理解できるようなものではない。自動輸送のような基本を学ぶのにもいくらかの時間がかかる。大規模な鉄道ネットワークを運営し維持してゆくことを学習するには時間と経験が必要となる。

インフラ

鉄道を建設するには、列車を乗せるための軌道(track。線路(rail)とも)を敷かねばならない。典型的にはレールプランナーで行われるが、手動でも可能。線路は2タイル単位で設置され、1タイルだけ動かすことは出来ないことに留意せよ。

最小限の手動運行鉄道

最小限の手動運行鉄道は以下から成る。

機関車のそばに立ってENTERを押下すれば乗り込んで手動運行できる。

分岐

  • 分岐の作動状況に視覚的表現はないものの、レールは合流できる。レールプランナーを使えば、レールを既存レールに重ねて置くことで分岐を形成できる。分岐は路線上の枝分かれであり、列車に2方向の選択肢を与える。
  • 列車は旋回角に制限があるため、2つの直線軌道が交差する点は分岐とはならない。信号ブロックを形成して衝突を防ぐことはできる。
  • 並列軌道は相互に干渉しない。しかし、近すぎる場合には一方からもう一方への分岐が余計な資源を必要とする。軌道を一旦遠ざかる向きに伸ばし、そのあとで戻す必要がある。これは複雑な信号ネットワークの原因になるので、一般的には十分な間隔を開けずに並列軌道を敷くべきではない(ふつう軌道2本分の間隔で上手くいく)。
安全な鉄道横断の例

軌道の横断

軌道の横断には注意!列車はゲーム中で最も与ダメージが大きいものの一つであり、接触時にほとんどのプレイヤーを瞬殺する。

軌道を横断する際の適切な流儀チェックリスト。

  1. ズームアウトして列車が来るか見えるようにする。
  2. 左を見て、次に右を見る。
  3. 近傍の信号を確認。列車用信号が突然青から赤や黄色に変わったら、列車が来るので横断してはいけない。
  4. 完全には軌道上にいなくとも轢かれうるので、軌道付近を歩いてはいけない。
  5. 動いている列車に飛び乗ったり飛び降りたりもできるが、失敗の対価は命である。列車の側面もダメージ判定が有り、2台の列車の間で轢き潰されうる。
  6. 大量のシールドはダメージを軽減しうる。極端な場合には、体一つで列車を止めることすらできる。このためには瞬殺されないように相当なエネルギーシールドモジュールが必要で、スーツのエネルギーを大量に消費する。
  7. 体力を持つものなら列車に轢かれるとダメージを受けるので、自動車戦車を軌道に放置しないように。この対象には敵勢力をも含むのだが。
  8. から遠く離れた列車は(ほぼ)最高速で運行するので、横断の際はより警戒しズームアウトしておこう。や信号付近では止まるために減速しており、低速で運行する。設定が違っても早かったり遅かったりする。

図に示すような安全な路線横断が建設できる。これは接近中の列車がレールを予約したとき、軌道へのアクセスを制限する。プレイヤーがレール上に居る時は、回路ネットワークを介して信号は予約され、列車はプレイヤーが軌道を離れるまで停まって待たねばならない。プレイヤーが内部にいて軌道を横断しているとき、列車のゲートは閉じているので横断部以外の軌道にプレイヤーが踏み入ることは出来ない。これは完全に安全な横断を保証するので、サーバーでよく用いられる。

列車

列車は以下から成る。

Locomotive.png
機関車
Cargo wagon.png
貨物車両
Fluid wagon.png
タンク貨車
Artillery wagon.png
曲射砲車両
貨物車両が列車と連結するように設置する。
  • 列車は少なくとも1台の機関車を持つ。
  • 列車は1台以上の機関車に加え、任意の数の貨車を持てる。
  • 機関車は手動では前後に操縦できるが、一般には後ろ向きは遅い。左右キーは分岐で進行方向を変えるのに用いられる。
  • 列車は自動操縦時には前にしか進めない。2台の機関車が逆向きに接続されていれば、自動化された列車も前にも後ろにも進める。
  • 列車は運行に燃料が必要。燃料は列車が手動モード、または駅に停まっている場合にインサータで補充可能で、自動モードで信号前に停まっていたり運行中だったりする場合には補充不可能。

機関車のインベントリは燃料専用。貨物車両タンク貨車にアイテムや流体を積み込むには、列車に接続されていなければならない。車両を接続するには、貨車にせよ機関車にせよ、既存列車に対し緑の接続予測が出るような近くの場所に設置するか、遠くで設置した場合にはプレイヤーが手動で接続(connect)キーを押すことで接続する。同様に切断(disconnect)キーで切断できる。貨物車両は手動、または最大12箇所の隣接するインサータ(片側6箇所)で、タンク貨車は最大3箇所のポンプで積み下ろしできる。ポンプは頂点にあるニップルと自動的に接続される。

列車駅

ごく小規模な列車駅。

列車駅は以下から成る。

Train stop.png
Straight rail.png
レール
Inserter.png
インサータ
Pump.png
ポンプ


列車駅(train station)は少なくとも1つのと、貨物車両タンク貨車を積み下ろししたり機関車燃料を積み込んだり曲射砲車両に弾薬を積み込んだり列車を修復したりするためのストレージや分配システムからなる。

列車駅(train stations)駅(train stops)とを混同しないように。 列車駅は概念で、はアイテムである。

列車軌道に隣接してインサータを置くことで駅での積み下ろしができる。貨物車両や曲射砲車両にアイテムを自動で積み下ろしするにはインサータが唯一の手段である。タンク貨車の場合はポンプ。

信号

Factorioには2種の信号(Signal)がある。

Rail signal.png
鉄道用信号
Rail chain signal.png
連動式信号

信号を理解するのは困難かもしれない。以下に示すいくつかの概念の理解は重要である。

  • レールセグメント(Rail segment)
軌道の一部分(アイテム一個分)。
  • セグメント(Segment)
分岐や交差を含まない連続した軌道の、単一のパス。信号を用いる場合に重要となる。セグメントをマウスオーバーするとその数字が確認できる。数字はワールド内でユニークだが、0や1から始まるわけではない。
  • ブロック(Block) (訳注: 非公式には閉塞区間(block)の訳語、また鉄道における閉塞(block system)の概念を用いることも多い)
鉄道用信号で区切られるセグメントの集まり。デフォルトでは、任意の繋がっているセグメントは列車が走れるかや一方通行であるかにかかわらず1つのブロックを形成する(例: 分岐点で、分岐のどちら側のセグメントも同じブロックに属する)。ブロックはプレイヤーがレールや連動式信号を持っている間、線路上に色付きの線として確認できる。

信号は複数の列車を自動運行させるために用いられる。手動操縦の列車は後述する規則のほとんどすべてを無視することに注意。他の自動運行列車はプレイヤーの動きによって動的に変化する信号規則をも守るが、プレイヤーが赤/黄信号を無視した場合にはときたま衝突が不可避となる。常に自動運行列車に気を配り、通行権を与えよう。

ブロックについての素晴らしい説明はこのフォーラムポストを参照。

基本的な信号規則

  • ブロック内にはいつでも1台の列車しかいられない。複数のブロックにまたがる列車はそれら全てを占有する。
  • 赤信号は続くブロックが列車に占有されていることを示す。
  • 黄信号は続くブロックへの進入をすでに認可されている列車が接近中であることを示す。
  • 鉄道用信号は新たなブロックを分割し、その状態を示す。緑は空き、黄色は予約済み、赤は占有中。
  • 連動式信号は新たなブロックを分割し、次の鉄道用信号(全て)の状態を示す。上記に加えて、青は全滅ではないものの1つ以上のパスが塞がれていることを示す。
  • 列車は軌道の右側に設置された信号のみを通過でき、同じレールセグメントの両側に設置されていても良い。もちろん、手動操縦には関係ないが。

デッドロック

デッドロック(Deadlock)、またはグリッドロック(Gridlock)は全ての列車が他の列車に妨害されることで生じる。ほとんどすべての場合、2つ以上の列車について全てのブロックに他の列車が(少なくとも)1編成いるため立ち往生となっている。

デッドロックの発生

デッドロックは、2つ以上の列車が解決不能な信号の衝突によって交差を通り抜けられなくなったときに発生する。数少ないその他のパターンは以下。

  1. 一時的 - 経路上の一時的トラブル、たとえば邪魔な列車が積み下ろし中とか、回路ネットワークで信号が閉じられた場合に生じる。たいてい勝手に解決する。
  2. 準永続的 - 経路確定時に生じた問題の帰結であり、列車の燃料不足やレールの破損でよく生じる。修復にはプレイヤーの行動が必要かもしれないし、(レールの破損なら)建設ロボットで自動的に直るかも知れない。
  3. 永続的 - 最悪のパターンで、自動では解決せず、プレイヤーがいくつかの列車を手動運転で交差から出してやらないといけないことが多い。大体の場合、誤った信号配置や到達不能な駅によって生じる。

デッドロックは偶然にもプレイヤーの失敗によっても引き起こされうることに注意。完璧に信号化された鉄道すらも、時たま問題を抱えることとなる。デッドロックの生じる確率は信号化の質と反比例してはいるのだが。

デッドロック率に影響を与える要素

  • 列車の長さ(同じレールや信号の配置なら、列車が短いほど低確率。その列車がレールに与える影響が小さいため)
  • ブロック長: 十分なスペースを持つブロックはデッドロック率が低い。
  • 軌道のレイアウト: ある種の配置は他のものよりデッドロックに陥りやすい。
  • 列車の量 - 交差点を利用する列車が多いほどデッドロックに陥りやすい。
  • 頻繁にレールが交差するエリアで待たねばならないとき、デッドロック率は更に高くなる。

これらの要素から、どのようにデッドロック率を減らせるか?

  • 4方向の交差点やラウンドアバウト(円)を用いた交差点を使わない。
  • よりよい3方向交差点を用いる。列車用双方向三叉交差点の詳細はここを見よ。
  • 列車の方向を変えるときのみラウンドアバウトを使うようにして、交通量の多い交差点には使わない。
  • 交差点周辺にはより多くの軌道を整備する。ある交差点がある場所へ到達するための唯一の経路にならないよう、冗長性を持たせよ。これにより、小さな問題は小さな問題のままにしておける。

輸送自動化

列車GUIのスケジュールタブ: 1 - 自動/手動の切替; 2 - 新しい列車駅の追加; 3 - 選択中の列車駅を削除; 4 - 列車を選択中の列車駅に動かす; 5 - 選択中の列車駅に発車条件を追加; 6 - 選択中の発車条件を削除; 7 - 選択中の発車条件の論理モード(logical mode)を変更

列車は出発時、連動式信号で5秒待った場合、目的地が回路条件によって自身を無効化した場合に「自動的に」停まる目的地と経路を選択する。経路選択アルゴリズムに基づき、その時点で明らかな遅延を考慮に入れつつ有効な当該名称駅への最短経路を選ぶ。条件を満たす駅がない場合、その駅を飛ばして次に行く。

この節は列車駅間のアイテム自動輸送のために必要なアイテムもカバーする。プレイヤーは鉄道システム(rail system)の作成に慣れ親しまなくてはならない。

まず、少なくとも2つの駅を到着時の向きから見て右側に設置した鉄道システムを作成せよ。駅にマウスをホバーすると乗り物の位置が見られ、列車駅を上手に設計(積み下ろし用機械、燃料補充/修復設備の取り付けを含む)する上での助けとなる。

列車時刻表(以下を参照)を設定し列車に燃料を補充すれば、運行モードを手動から自動に切り替えることで列車をその時刻表どおりに走らせることができる。

列車時刻表(train schedule)

プレイヤーは上側のウィンドウで列車駅のリストを設定できる。列車はその順で駅を巡るよう運行し、最後までたどり着いたら最初に戻る。現在のところ、1回きりの時刻表を作ることは出来ない。列車駅はボタン2(画像を参照)をクリックすることで追加できる。全駅名一覧のポップアップが出るのでどれかを選ぶと、発車条件(waiting condition)を選択する別のポップアップが出る。

発車条件は列車がいつ列車駅を出発するかを決める。7種の発車条件がある。

  • 経過した時間
  • インベントリが満杯 - 列車の全インベントリが満杯。
  • インベントリが空 - 空なことを除けば上に同じ。
  • 貨物アイテム数 - 特定のアイテムを一定量保持している(全車両について合算される)。
  • 回路による - 駅が回路ネットワークに繋がっていれば、シグナルが発車条件に使える。
  • 積み卸し終了 - 指定した秒数の間、アイテムが積み卸しされない。
  • 流体量 - 特定の流体を一定量保持している(全タンク貨車について合算される)。

以後、「条件(term)」は1種類の発車条件について表現し、「発車条件(wait condition)」は条件全体の集合について表現する(ちょっと数学っぽい話になってきた)。

1つ以上の条件を追加した場合、論理演算子ANDとORを用いてそれらの関係を変更できる(ボタン7)。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ではこのような短い記法はない。

トラブルシューティング

鉄道システムや列車が動かない場合、以下のいくつかのことを確認せよ。

  • 列車に燃料が供給されているか?機関車になにか燃料があることを確認せよ。
  • 交差点が配置ミスや機能しない状態にないか?列車が交差点を通った経路を計画できることを確認せよ。
  • 同一セグメントブロックに他の列車がいないか?列車の経路が閉塞されていないことを確かめよ。
  • 駅は正しく設置されているか?駅にホバーしたとき、黄色い矢印が駅の終端または出口へ伸びていることを確かめよ。
  • 列車は正しい向きで信号に突入できているか?信号は正しく設置されているか?
  • 軌道を双方通行にしたい場合、鉄道用信号が互いに向き合っていなければならない。どれかにカーソルをホバーすれば一致しているか検証できる。一致したペアについては、もう一方が見える。

到達経路なし

列車が目標にたどり着けない場合、「到達経路がありません」シンボルが機関車の上に表示される。以下を確認。

  • 列車は現在の目的地に前方に進むだけで到達できるか?方向転換場を作るか、列車の両側に機関車を付けよ!
  • 駅は正しい方向に設置されているか?駅は軌道の右側に存在しなければならない。
  • 鉄道用信号を使っているなら、全ての信号が正しい向きの通行を許可しているか確認せよ。
  • 列車軌道上の妨害を確認せよ。手動で駅まで運転して欠けているレール片がないか確かめよ。とくに交差点付近は無くなっていることに気づきにくい。

まだ問題があるなら以下を考慮。

  • 手動で運転して、交差点を越えるごとに自動に切り替える。うまくすれば、だいたいどのあたりに問題があるか知ることができる。

典型的な問題を要約した図(説明は英語).


Achievements

Trans-factorio-express-achievement.png Trans-Factorio express

Have a train plan a path 1000 tiles or longer.

Connection to OpenTTD

Factorio's railway system works basically exactly like the block signals in Open Traffic Tycoon Deluxe. Players who have ever played that game will find some elements of it in Factorio. If not, they can learn from the OpenTTD documentation.

See also