A fork of Train Construction Site, updated and ported for Factorio 2.1
Mods introducing new content into the game.
Version: 0.5.8
Date: 20. 09. 2026
Features:
- Trainbuilders placed by hand now snap onto the fixed spacing of a neighbouring Trainbuilder, so you no longer have to find the exact gap yourself. Can be turned off per player.
- While holding the Trainbuilder item, the free places next to existing Trainbuilders are marked. Can be turned off per player.
Bugfixes:
- Fixed Trainbuilder data getting corrupted when robots deconstruct Trainbuilders (controllers pointed to the wrong or an empty Trainbuilder, which caused crashes later).
- Fixed Trainbuilders staying behind without rails when the rail underneath was removed first. The Trainbuilder item is now returned.
- Fixed possible crashes when removing a Trainbuilder or controller whose data was already removed.
- Fixed a crash when placing a controller next to a Trainbuilder whose data pointed to a removed Trainbuilder.
- Fixed controllers placed side by side possibly linking to the neighbouring Trainbuilder. A controller now only links to a Trainbuilder on its own axis that has no controller yet.
- Fixed Trainbuilders not being placeable on legacy straight rails.
- Fixed the Trainbuilder item not being placeable as a ghost (shift-click); it was flagged not-blueprintable, which also forbids ghosts.
- Fixed building a Trainbuilder deleting the ghost of the neighbouring Trainbuilder 7 tiles away, which silently removed Trainbuilders from blueprints.
- Fixed robots building a Trainbuilder before the rail ghost underneath it: the ghost is put back with its recipe instead of dropping the item.
- Fixed a possible crash when the controller that was next in line got removed in the same tick.
- Fixed a copied Trainbuilder controller or depot (blueprint, copy-paste) losing its station name, which broke the link between controller and depot and reset the depot request count.
- Fixed the controller being removed when robots add the last wagon of a blueprint. A controller whose Trainbuilder changes now waits until it fits again and only gives its item back after 30 seconds.
- Fixed the controller item being dropped on the ground when its Trainbuilder changes (a wagon added or removed). It now goes to the player or robot that caused the change, and is only dropped when that is not possible.
Locale:
- The last two hard coded English messages are now translated (English and German).
Changes:
- The mod's own "Transport Logistics" item group is removed again when nothing ends up in it, for example when another mod sorts all train items into its own group. Before, an empty tab was left in the crafting menu.
- The Trainbuilder update and the controllers waiting for their Trainbuilder now share a single heartbeat instead of registering two separate on_nth_tick handlers.
- Trainbuilder numbers are no longer renumbered when a Trainbuilder is removed.
- Reorganised the script files into scripts/<area>/ folders (no gameplay change).
Scripting:
- Added remote functions "get_snap_position" and "get_placing_help_slots" to the "trainConstructionSite" interface.
- Added remote function "rebuild_train_builders" to the "trainConstructionSite" interface (repairs Trainbuilder data).
Info:
- Existing saves are repaired automatically by a migration.
Version: 0.5.7
Date: 29. 06. 2026
Bugfixes:
- Fixed circular dependency with trainConstructionSiteManager.
- Removed optional dependency "? trainConstructionSiteManager >= 0.1.0" from info.json to prevent load order conflict.
Changes:
- trainConstructionSiteFork no longer declares a dependency on trainConstructionSiteManager.
- trainConstructionSiteManager remains a standalone companion mod with hard dependency on trainConstructionSiteFork >= 0.5.6.
- Remote interface "trainConstructionSite" / get_manager_data remains available for Manager 0.1.0+.
Info:
- This is a compatibility hotfix release.
- No gameplay changes.
- Recommended together with trainConstructionSiteManager 0.1.0.
Version: 0.5.6
Date: 28. 06. 2026
Features:
- Added remote interface ("trainConstructionSite") exporting get_manager_data to allow addon management mods to read storage tables.
Version: 0.5.5
Date: 27. 06. 2026
Features:
- Ported to Factorio 2.1.
- Added Factorio 2.1 rail items (rail ramp, rail support) to the Transport Logistics item group.
Changes:
- Updated factorio_version to 2.1 and base dependency to >= 2.1.
- Replaced LSlib_James_Fork dependency with FactoryLib — a new standalone utility library built for Factorio 2.1. LSlib_James_Fork has not been updated since December 2024 and it is unclear if it will receive a Factorio 2.1 update, so a custom replacement library was created.
- Replaced entity.fluidbox reads with get_fluid(index) and remove_fluid(index, amount) for Factorio 2.1 where the fluidbox property has been removed from LuaEntity.
- Replaced all runtime entity.minable writes with entity.minable_flag (entity.minable is no longer writable in 2.1).
- Changed all recipe prototypes from category (string) to categories (array), as required by Factorio 2.1.
- Updated mod title and description to reflect Factorio 2.1.
Version: 0.4.10
Date: 21. 06. 2026
Bugfixes:
- Fixed potential crash when merging two neighbouring Trainbuilders with missing surface/position data.
- Fixed potential crash when rotating a Trainbuilder before render IDs are initialised.
- Fixed potential crash when renaming a depot via the controller GUI if the controller entity was destroyed.
- Fixed potential crash when applying locomotive color if the machine tint was not set.
- Fixed potential crash when opening the controller GUI if the controller entity was invalid or destroyed.
- Fixed migration cleanup for old Help GUI data and controller builder remapping.
- Fixed quality input inventory lookup to prefer the Factorio 2.0 crafter_input enum.
- Fixed changelog formatting errors (duplicate categories in several older versions).
Version: 0.4.7
Date: 21. 06. 2026
Changes:
- Removed Factorio 1.1-only optional dependencies from info.json.
- Kept only optional dependencies that currently have Factorio 2.0 releases or are intended 2.0 compatibility targets.
- Documented supported Factorio 2.0 optional compatibility targets and removed legacy 1.1-only mods in README.
- Guarded legacy code may still exist internally where harmless, but unsupported 1.1-only mods are no longer advertised as supported dependencies.
Version: 0.4.6
Date: 21. 06. 2026
Changes:
- Audited and hardened legacy optional mod compatibility files.
- Added safe wrappers around LSlib recipe, technology, and item compatibility edits so missing/renamed optional-mod prototypes are skipped instead of crashing data stage.
- Added nil guards for old Angel/Bob/AAI/Space Exploration/JunkTrain/FARL compatibility paths.
- Hardened extra modded train fuel recipe generation when optional fuel items or technologies are missing.
- Many legacy train mods from Factorio 1.1 are still untested on Factorio 2.0; unsupported/missing prototypes now log and skip rather than abort loading.
Version: 0.4.5
Date: 21. 06. 2026
Changes:
- Changed "Allow manual placing of trains" from a startup setting to a runtime-global setting.
Bugfixes:
- Manual train placement can now be turned off and on again in an existing save without needing a prototype rebuild/restart.
- Train item place_result is kept available; script enforcement removes/refunds manually placed rolling stock only when the setting is disabled.
Version: 0.4.4
Date: 21. 06. 2026
Features:
- Added Space Age / Quality support: the Trainbuilder captures the quality of the train-part ingredient and creates rolling stock with the same quality.
- Manual-placement blocking now refunds removed rolling stock with its original quality.
Changes:
- Trainbuilder recipes still use a fluid completion marker internally; quality is tracked at runtime from the input item because fluids cannot carry quality.
Version: 0.4.3
Date: 21. 06. 2026
Features:
- Added startup setting to allow speed modules in Trainbuilders. Disabled by default.
Bugfixes:
- Enforced the manual train placement startup setting at runtime, so manually placed rolling stock is removed when the setting is disabled.
- Removed the old locomotive-manual-build exception when manual train placement is disabled.
- Updated EN/DE locale and Tips & Tricks text for the manual train placement and speed module settings.
Changes:
- Space Age loads and works on normal planetary rail surfaces. Elevated/diagonal rail building and train quality handling are not explicitly supported yet.
Version: 0.4.2
Date: 21. 06. 2026
Bugfixes:
- Rails under/around Trainbuilders stay blueprintable, fixing missing rail pieces when copying/pasting Trainbuilder blueprints.
- Rails built by robots after a Trainbuilder are kept and protected instead of being destroyed.
- Removing a rail under a Trainbuilder now removes the invalid Trainbuilder as well to avoid floating builders.
Version: 0.4.1
Date: 21. 06. 2026
Features:
- Enabled blueprinting for Trainbuilders, Trainbuilder controllers, and Traindepots.
- Added pending controller activation for robot/blueprint builds so controllers wait for builders/depots from the same blueprint instead of deleting themselves when built first.
Bugfixes:
- Removed the old hidden rail-signal entities used by train controllers and added a migration to destroy existing hidden signals, preventing blinking map markers.
Version: 0.4.0
Date: 21. 06. 2026
Changes:
- Fork release for Factorio 2.0 under the internal mod id trainConstructionSiteFork.
- Visible mod title changed to "Train Construction Site Fork - Factorio 2.0 Update".
- Added Marcel171297 to the author list and README/Tips & Tricks credits.
- Added entity event filters for build/remove/death handlers so the mod no longer processes unrelated entity events in large factories.
- Optimised the construction-site clear check to use one bounded scan for the full builder instead of multiple per-machine/per-type searches.
Features:
- Added German locale files.
Bugfixes:
- Includes all Factorio 2.0 runtime, GUI, Tips & Tricks, recipe localisation, train dispatch, and compatibility fixes from the 0.3.x porting builds.
Version: 0.3.15
Date: 21. 06. 2026
Bugfixes:
- Added localised names to generated train-building recipes so assembler recipe buttons no longer show internal names like locomotive-fluid-locomotive.
- Added English/German fallback locale entries for the vanilla generated train-building recipes.
Version: 0.3.14
Date: 21. 06. 2026
Bugfixes:
- Disabled old Tips & Tricks scripted simulations that used removed Factorio 2.0 camera/test-player APIs, fixing create_test_player/camera_position errors when opening the tips.
Version: 0.3.13
Date: 21. 06. 2026
Features:
- Added German locale files.
Bugfixes:
- Fixed English traindepot item description key casing.
- Updated tips text to use Factorio 2.0 efficiency module names.
Version: 0.3.12
Date: 21. 06. 2026
Bugfixes:
- Added an explicit rolling-stock occupancy check around the construction site before starting the next train, preventing new trains from spawning into/coupling with the train that is still leaving.
- Added guards around hidden traincontroller signal checks for migrated/script-created controllers.
Version: 0.3.11
Date: 21. 06. 2026
Bugfixes:
- Fixed crash from Creative Mod/script_raised_revive when rails are revived on top of train assemblies without a player_index.
- Normalized train controller direction to 4-way directions and added a nearest-builder fallback so controllers can find builders despite Factorio 2.0 rail/stop snapping offsets.
Version: 0.3.10
Date: 21. 06. 2026
Bugfixes:
- Fixed Traincontroller GUI crash where a vertical flow used a horizontal flow style.
- Forced another GUI cache refresh for existing saves after splitting the configuration row and item styles.
Version: 0.3.9
Date: 21. 06. 2026
Bugfixes:
- Fixed Traincontroller GUI crash caused by removed research_queue_first_slot_flow style in Factorio 2.0.
- Hid the helper rail signals used internally by train controllers so visible signal graphics no longer appear next to the controller.
- Forced another GUI cache refresh for existing saves after replacing the removed style.
Version: 0.3.8
Date: 21. 06. 2026
Bugfixes:
- Forced cached Traincontroller/Traindepot GUI layouts in existing saves to refresh, fixing lingering utility/close_white crashes.
- Opening depot/controller GUIs now refreshes layout data defensively before creating the GUI.
- Removing a train controller no longer deletes an already assembled train on the rails.
Version: 0.3.7
Date: 21. 06. 2026
Bugfixes:
- Fixed train assembly direction detection for the new assembling-machine based placement preview.
- Made train controller builder detection more tolerant to Factorio 2.0 train stop/rail positioning offsets.
- Fixed another removed Factorio 2.0 utility sprite in depot/controller GUIs.
Version: 0.3.6
Date: 21. 06. 2026
Bugfixes:
- Fixed train assembly builder not being placeable on straight rails by restoring the old player-only collision behavior for the rail-mounted entities.
Version: 0.3.5
Date: 21. 06. 2026
Bugfixes:
- Reworked train assembly placement preview to use a dedicated assembling-machine based preview entity so it no longer appears as a locomotive.
- Restored building-style collision for train assembly entities while still allowing them to sit on rails.
Version: 0.3.4
Date: 21. 06. 2026
Bugfixes:
- Fixed depot/controller GUI crash caused by removed utility/close_white sprite in Factorio 2.0.
- Fixed train assembly placement preview using the base locomotive graphics instead of the train assembly graphics.
Version: 0.3.3
Date: 21. 06. 2026
Bugfixes:
- Fixed train assemblies being placeable without straight rails in Factorio 2.0.
- Added an overlap guard to prevent multiple train assemblies from being stacked on the same location.
Version: 0.3.2
Date: 21. 06. 2026
Bugfixes:
- Fixed Factorio 2.0 runtime crash when placing depots/controllers by replacing removed TrainStopControlBehavior.enable_disable with circuit_enable_disable.
Version: 0.3.1
Date: 21. 06. 2026
Bugfixes:
- Fixed Factorio 2.0 GUI style validation error where LSlib tab button styles inherited from the vanilla tab style with the wrong style type.
Version: 0.3.0
Date: 21. 06. 2026
Changes:
- Ported the mod to Factorio 2.0.
- Switched the library dependency to LSlib_James_Fork for Factorio 2.0.
- Migrated runtime persistent data from global to storage.
- Updated train schedules to use the Factorio 2.0 schedule API.
- Updated recipe/prototype definitions for Factorio 2.0 strict prototype loading.
- Updated collision masks, rail prototypes and GUI/rendering API usage for Factorio 2.0.
Version: 0.2.19
Date: 13. 02. 2022
Bugfixes:
- Fixed collision layers with mod "Hovercrafts"
- Fixed crash when a traindepot becomes invalid
Version: 0.2.18
Date: 27. 01. 2022
Changes:
- Added compatibility for mod "SchallOverseasRailway"
- Added compatibility for mod "Renai-Transportation"
- Added extended compatibility for mod "Cargo Ships"
- Added compatibility for mod "Editor Extensions"
Version: 0.2.17
Date: 28. 12. 2021
Changes:
- Added support for modded trains with custom fuel
- Added support for pyhightech trains
- Added new technology icon for train construction
Bugfixes:
- Fixed support for modded trains from "Armored-train"
- Fixed support for modded locomotives from "cargo-ships"
- Fixed the player could obtain the actual trian fuel when deconstructing a train inside the
builder building before the train has left.
Version: 0.2.16
Date: 02. 12. 2020
Bugfixes:
- Fixed an error in the migration script when loading a map that didnt have TCS before
Version: 0.2.15
Date: 02. 12. 2020
Bugfixes:
- Adjusted a locale error in the tips and tricks from the trainbuilder
Version: 0.2.14
Date: 01. 12. 2020
Features:
- Added tips and tricks for train building
- Added tips and tricks for traindepot
- Added tips and tricks for trainbuilder
- Added tips and tricks for traincontroller
- Added support for modded train from "Junk Train"
- Added support for modded train from "fast_trans"
Changes:
- Streamlined the styling of the UIs to be more in line with base game v1.1.0
- The traincontroller now shows the color LED next to the status
- Removed the trainbuilder manual as it is obsolete (use tips and tricks instead)
- Added a close button to the traincontroller UI and the traindepot UI
- Moved the hidden train recipe fuel item to the unsorted category and added a description
Bugfixes:
- Fixed hidden train signals were invalid due to base game changes in v1.1.0
- Fixed crashes related to the color picker UI
- Fixed trains were almost unselectable on curved rails
- Fixed ingame error message due to invalid data structure, could not find the reason why...
- Fixed deconstructing the traincontroller would not return the build train to the trainbuilder
- Fixed that rotating the trainbuilder would not rotate the created rolling stock
- Fixed that changing the trainbuilder color would not color the created rolling stock directly
Version: 0.2.13
Date: 27. 11. 2020
Features:
- Dynamically changing collision_masks with basegame features
Version: 0.2.12
Date: 26. 11. 2020
Features:
- Updated to factorio v1.1.0
Version: 0.2.11
Date: 27. 08. 2020
Features:
- Added support for modded trains from "Electric Train"
- Added support for modded trains from "Electronic_Factorio_Extended_Locomotives"
Bugfixes:
- Fixed crash related to not finding any burnable fuel category
- Fixed ordeing for trains from "Battle_Locomotives"
- Fixed support for electric trains from "Electronic_Angels_Locomotives"
Version: 0.2.10
Date: 22. 08. 2020
Features:
- Updated to factorio 1.0
- Added support for spidertron from "Cannon_Spidertron"
Bugfixes:
- Fixed rounding error in train vehicle description
Version: 0.2.9
Date: 24. 07. 2020
Features:
- Added crate graphic for the train parts
- Added some basic rolling stock statistics to the train descriptions
- Updated the train assembler graphics use new working_visual definitions instead of rendering
them seperately using the renderer
Bugfixes:
- Fixed crash due to fuel_value missing on recipe fuel due to a typo
- Fixed electric locomotive recipes would be unlocked at the start of the game
- Fixed missing case of modded locomotive localised naming
- Fixed error in the train assembler east overlay graphic as it was rendering wrong
Version: 0.2.8
Date: 17. 07. 2020
Features:
- Added support for modded trains and tank from "Krastorio2"
- When allowed to manualy place trains, you now don't need to research the trainbuilder
- Added support for extra modded vehicles from "Hovercrafts"
- Added support for extra modded vehicles from "Transport_Drones"
- Added support for extra modded vehicles from "laser_tanks"
- Added support for extra modded vehicles from "aai-programmable-vehicles"
Changes:
- All optional dependencies that are for mod loading order issues are now hidden
Bugfixes:
- Fixed "space-exploration" was messing with rails and trains
- Another attempt at fixed angels industries moved the vanilla train parts to a different tab
Version: 0.2.7
Date: 04. 07. 2020
Features:
- Added support for modded trains from "Electronic_Angels_Locomotives"
- Added support for extra modded train tiers from "angelsaddons-petrotrain"
- Added support for extra modded train tiers from "angelsaddons-smeltingtrain"
- Added support for modded trains from "angelsaddons-crawlertrain"
- Added support for modded fuel from "angelspetrochem"
- Added support for modded fuel from "angelsbioprocessing"
Changes:
- Updated some sprites in the train controller gui
- Updated some sprites in the train depot gui
Bugfixes:
- Fixed guis still crashing in existing games (due to base game update v0.18.33)
- Fixed angels industries moved the vanilla train parts to a different tab
Version: 0.2.6
Date: 27. 06. 2020
Bugfixes:
- Fixed guis crashing (due to base game update v0.18.33)
Version: 0.2.5
Date: 29. 05. 2020
Bugfixes:
- Fixed crash when trying to rotate the assemblers through the GUI (due to base game v0.18.28)
- Fixed gui not reacting to button presses (due to base game update v0.18.28)
Version: 0.2.4
Date: 27. 05. 2020
Bugfixes:
- Fixed crash related to base game update v0.18.27
- Fixed crash related to destroying construction sites
Version: 0.2.3
Date: 11. 05. 2020
Features:
- Added depot graphics designed by YuokiTani
Bugfixes:
- Fixed behaviour did not register to script_raised_revive event
Version: 0.2.2
Date: 08. 04. 2020
Bugfixes:
- Fixed recipes unlocked from the start when recipe name is not the same as the item name
- Fixed crash related to picker dollies moving the trainbuilder, which is not intended
- Fixed that the Trainbuilder would show up in the bonus gui for train breaking force
- Fixed crash related to replacing an invalid train controller after changing the recipe
Version: 0.2.1
Date: 02. 04. 2020
Bugfixes:
- Fixed crash on linux due to too big sprites
Version: 0.2.0
Date: 02. 04. 2020
Features:
- Added controller and builder graphics designed by YuokiTani
- Added support for modded trains from "VehicleWagon2"
Changes:
- Updated the manual with new screenshots
- Updated thumbnail with new screenshot
Bugfixes:
- Fixed crash related due to residual data after deleting the last Traincontroller
Version: 0.1.18
Date: 22. 03. 2020
Bugfixes:
- Fixed modded trains did not have a fluid recipe if they didn't have a technology to unlock them
Version: 0.1.17
Date: 14. 03. 2020
Bugfixes:
- Fixed an issue with AAI Industry mod
Version: 0.1.16
Date: 04. 03. 2020
Bugfixes:
- Added next_upgrade=nil where it was necesary
Version: 0.1.15
Date: 02. 01. 2020
Features:
- Updated to factorio 0.18
Version: 0.1.14
Date: 07. 12. 2019
Features:
- Added support for modded fuel from "AAI industries"
- Added support for modded fuel from "Bio Industries"
Changes:
- Changed stack size of manual from 10 to 1 to prevent creating 9 duplicates by accident
- Changed required amount of fuel to craft trainfuel
Bugfixes:
- Fixed typos in the manual
Version: 0.1.13
Date: 29. 08. 2019
Features:
- Added support for modded tanks from "bobswarfare"
Bugfixes:
- Fixed bobs inserter overhaul would set trainbuilder to require express inserters
Version: 0.1.12
Date: 14. 08. 2019
Bugfixes:
- Fixed trainfuel item and recipe icon did not match
- Fixed crash when you remove all traindepots
Version: 0.1.11
Date: 13. 08. 2019
Features:
- Added graphics for trainfuel
- Added graphics for traindepot
Changes:
- Trainbuilder stack size changed (from 10 to 50)
- Trainbuilder controller stack size changed (from 50 to 10)
Bugfixes:
- Fixed space exploration's space rail didn't allow trainassemblers to be build
Version: 0.1.10
Date: 31. 07. 2019
Features:
- Added support for Multiple Unit Train Control (>= v0.1.18)
Bugfixes:
- Fixed that the manual would open when the player opened any item
- Fixed "Assemble Pipe Passthrough" (APP) adding fluid throughput to the trainassembler
Version: 0.1.9
Date: 25. 07. 2019
Bugfixes:
- Fixed crash related when playing together with the mod "Automatic Train Station Names"
Changes:
- Reference to LSlib removed, now references LSlib directly
Version: 0.1.8
Date: 24. 07. 2019
Features:
- Added setting so you can manualy build all trains without the trainbuilder.
Bugfixes:
- Fixed bots replacing a ghost did not work correctly, resulting in crash later on
Version: 0.1.7
Date: 22. 07. 2019
Features:
- Default color of locomotives is now the same color as when you would place it manualy
- Added support for modded trains from "Electronic_Locomotives"
- Added support for modded trains from "Electronic_Battle_Locomotives"
Changes:
- Now tries to insert the correct amount of trainfuel (or none if not required)
- Added interface to register trains that do not require fuel.
Bugfixes:
- Fixed some missing functions in LSlib
- Fixed that the recipes for placing down trains did not unlock when using an existing save
- Fixed that the train placing fuel was showing up on the fuel tooltip while it can't be used
Version: 0.1.6
Date: 21. 07. 2019
Features:
- Improved auto support for other train mods
- Added support for modded trains from "FactorioExtended-Plus-Transport"
- Added support for modded trains from "RailPowerSystem"
Bugfixes:
- Fixed technology recipes would not show up when research was already done
Version: 0.1.5
Date: 16. 07. 2019
Features:
- Added support for modded train stop from "SmartTrains"
Bugfixes:
- Fixed technology recipes would not show up when research was already done
Version: 0.1.4
Date: 14. 07. 2019
Features:
- Added support for modded trains from "accumulator-wagon"
- Added support for modded trains from "Armored-train"
- Added support for modded trains from "FARL"
- Added support for modded rails from "concreted-rails"
- Added support for modded train stop from "FuelTrainStop"
Bugfixes:
- Fixed loading issue where sprites (screenshots) are too big to load
Version: 0.1.3
Date: 09. 07. 2019
Features:
- Added support for modded trains from "boblogistics"
Bugfixes:
- Fixed modded belts did not have the same collision mask
Version: 0.1.2
Date: 03. 07. 2019
Features:
- Added support for modded trains from "TrainOverhaul"
- Added support for modded trains from "Realistic_Electric_Trains"
Bugfixes:
- Ignoring the ships from "cargo-ships"
- Ignoring the cheat cargo wagons from "creative-mod"
Version: 0.1.1
Date: 01. 07. 2019
Bugfixes:
- Fix crash when playing with creative mod
Version: 0.1.0 - Test release
Date: 01. 07. 2019
Features:
- Traindepot
- Trainbuilder + controller
- Manual with info about each entity
- Manual placed early game locomotive