Games/Factorio
Contents |
LTN style Logistics Train Network
Requirements:
- Factorio 2.0 with Interrupts
Reference: https://www.youtube.com/watch?v=EggDldJVggM&t=2009s
Requester Station
Where you request resources to be delivered to.
Items Needed
- Chest(s)
- Decider Combinator
- Arithmetic Combinator
- Train Stop
- communication grid
Connections
- connect chests together and then to the decider combinator input
- connect train station to decider combinator output
- connect train station to decider combinator input
- connect train station to arithmetic combinator input
- decider combinator output connects to arithmetic combinator input
- arithmetic combinator output connects to the grid
Decider combinator config
Conditions
- if resource < (less than) static value
AND
- "C" is < (less than) 1
Outputs
select "L" and define a static value of 1
Arithmetic Combinator config
Input
select "L" and multiply by -1
Output
select resource
Train stop config
- set "Set train limit" and select "L"
- Read train count "C"
Provider Station
Where you provider specific resources from.
Items Needed
- Chest(s)
- Decider Combinator x2
- Train Stop
- communication grid
Connections
- connect chests together and then to the decider combinator #1 input
- decider combinator #1 output to train stop
- train stop is connected to decider combinator #2 input
- decider combinator #2 output is connected to the communication grid
Decider combinator #1 config
Conditions
if resource is > (greater than) static value
Outputs
select "L" and define a static value of 1
Train stop config
- set "Set train limit" and select "L"
- set "Read train count" and select "C"
Decider combinator #2 config
Conditions
if "C" > (greater than) 0
Outputs
select <resource> and define a static value of 1
Depot
Where trains live until they are called for use
Items Needed
- Train Stop
- communication grid
- Decider Combinator (x2)
- Lamp
- Constant Combinator
Train stop Connections
- connect Train stop to the communication grid
Train stop config
All train stops should be set to the same configuration
- Select "Send to train"
- Rename "Depot"
Depot Timer
This is used as a global timer that only allows 1 train to accept new tasks at a time and prevents multiple trains from going for the same task.
Depot Timer Connections
- connect constant combinator to decider combinator input
- connect decider combinator output to same decider combinator input.
- connect decider combinator output to the communication grid
Depot Timer config
Constant combinator config
Outputs
- Select K and assign a value of 1
Decider Combinator
Conditions
- Set "K" < (less than) 240
Outputs
- Set "K" to the Input count
Train Controllers
These are done per train stop.
- 1 decider combinator controls a single train being activated for a new task along with turning a light green.
- a second decider combinator turns the same light red when the train is not being activated for a new task.
- The numbers used here vary per train stop. I have been using groups of 20, ie. between 20 and 40, or 40 and 60, etc. You can adjust this as needed to fit your trains in. Its recommended to have a bit of a buffer, ie dont set the diff to 1, in order to avoid overlap.
Connections
Using a second communication grid separate from the one used by the train stop and depot timer
- connect decider combinator #1 output to the lamp
- connect decider combinator #1 output to the train stop
- connect decider combinator #2 output to the lamp
Using the same communication grid as the train stop and depot timer
- connect communication grid to the input of decider combinator #1
- connect communication grid to the input of decider combinator #2
Decider combinator #1 config
Conditions
- (this can vary). K < (less than) 0 ---OR--- K > 20 (for example)
AND
- K < (less than) 40
Outputs
- P with a static value of 1
- the color green with a static value of 1
- O with a static value of 1
Decider combinator #2 config
Conditions
- (this can vary). K < (less than) 20
OR
- K > (greater than) 40
Outputs
- P with a static value of 1
- the color red with a static value of 1
Lamp
- Check "Enable/disable" and select "P" does NOT equal 1
- Check "Use colors"
- select "Color mapping"
Train
Config
Schedule
This should be set only to "depot"
Interrupts
- Create a new interrupt. Name it "<resource image> Loop"
Conditions
- <resource> provider is not full #you get this by selecting "station is not full" and then selecting the <resource> provider
AND
- <resource> requester is not full #you get this by selecting "station is not full" and then selecting the <resource> requester
AND
- Circuit <resource> < (less than) 0
AND
- Circuit O (letter O not zero) = (equals) 1
Targets
- <resource> provider -- Full cargo inventory
- <resource> requester -- Empty cargo inventory