by Hermios
Allows trainstations to call trains when conditions are fulfilled
2 months ago
0.14 - 0.16
Owner: Hermios
Source: Hermios/Factorio
License: MIT
Created: 1 year, 10 months ago
Latest Version: 0.4.3 (2 months ago)
Factorio version: 0.14 - 0.16
Downloaded: 1446 times

This mod allows you to automatically call trains under conditions.
First, research the technology "Train Caller"
Then, add the equipment "Train caller equipment" to your train
Then, connect your train station to signals (Each train station has an extra red selection box)
An option "Allow multiple calls" allows a train to be called several times in a row. If deactivated, it will first go to predefined stations.

-version 0.2.1:
The mod is now compatible with bob logistics
IMPORTANT : I retrieved the requirement of vehicle grid, however, a grid is still mandatory (vehicle grid or bob logistics)

version 0.2.0 : The train can be called from network when objects are required (i.e. ghosts items on the floor) near a station.

To make it work:
- Activate the option "Activate call train" on the train station
- Activate the option "Activate call train from network" from the train
- Connect the train station to any item that works with the network
Put at least one construction robot in the roboport of this network.
If a ghost is present on the network area, and the train has the required item, it will move the station, and stay there until no item is required.
Required : Vehicle Equipment
Have fun! (And please feedbacks :D)

-version 0.3.0
Big changes here!
1- Compatible with 0.15 (Starting from 0.15.10)
2- Now, the call conditions are made on the train station. You can add as much condition as you want for the circuit
If the required conditions are followed, the train station will required one element. If any train around who has been activated for the train call has the requested element, it will answer the call.
Same concept for network, but only one condition : Ghosts!
3- When the train arrives is at the calling station (and only then), the station doesn't read train content anymore. If you have the TrainSignalSender mod activated (Not mandatory, but highly recommanded), the train will automatically send its signals to the station. Once the train doesn't follow the condition of the station anymore, this one returns to its previous status (Content of train read or not), and the train comes back to its default station (Or stay where he is, if no default station was defined)

Last, but not least (at least for programmers), this mod contains a directory "Libs". This directory can be implemented in your own mod. If you are interested (and enough to ask), I'll provide you with an explanation to make it work.
This libs allow you to manage useful libraries (To create prototypes/entities etc.), manage your guis (Create forms in advance for better performances) and play with signal buttons (The one of the core is quite limited for now).

Have fun

Bugfix : 0.3.1->When a path is not found, this is now display as for normal train scheduled.

- Bugs fixed, more stable version

The mod has been deeply changed. The gui is limited to one option: "Allow multiple calls".
To call trains, trainstations need first to be connected to signals (Each train station has a special selection box, red,where lines shall be connected). No ghost implementation anymore (This can be solved by combinating this mod and a new one, Roboport Converter)
When a train is called, the train station is added to its list, at the end of the queue and follow the standard way of queue management.
In case of "allow multiple calls", if more than one tran station calls the train, they are added to the list. If not, there is a hidden queue anyway, but the train will come back to its default train stations before going to the new one (Thus, no train station is ever ignored, but their priority is lower).
Choose of train is managed, depending on how many items they already have in queue, and if they allow multiple calls
Possible combinatio with the mod TrainSignalSender (last version!). A train can be called because its contain the require item, fluid, or because its registered with the required signal.

Critical fixes (Conflicts with other mods)

Fix issue with german languages (Thanks Tokito99)