This repository contains a collection of mods for the game Railroader.
A small mod that syncs game time across clients.
- Automatically syncs every 10 minutes.
- Adds
/timesynccommand for manual synchronization.
Extends the game's signaling logic with custom blocks, signals, and interlocking behaviors via JSON configuration.
- Detailed documentation can be found in the SignalsEverywhere/docs folder.
Allows for patching colors within the game.
Provides functionality related to reloading interchanges.
A mod to address roster limitations.
In order to get going with these mods, follow these steps:
- Get a copy of this repository.
- Copy
Paths.user.exampletoPaths.user, open it, and set the<GameDir>to your game's directory. - Open the
JooMods.slnsolution. - You're ready!
- Multi-project solution: This solution is multi-project/multi-mod-able; i.e. you can have multiple projects inside the solution, which all produce individual mods.
- Auto-deployment: Builds will always land directly in the correct folder (i.e.
GameDirectory/Mods/_AssemblyName_). - Assembly references: You can reference assemblies in the game directory (i.e.
Railroader_Data/Managed) directly and conveniently by using<GameAssembly Include="" />. - Versioning: Unless you specify an
<AssemblyVersion>yourself, it will automatically generate a version based on<MajorVersion>,<MinorVersion>, and the current year, day of year, and time.
Make sure you're using the Debug configuration. Every time you build your project, the files will be copied to your Mods folder and you can immediately start the game to test it.
Make sure you're using the Release configuration. The build pipeline will:
- Ensure it's a proper release build without debug symbols.
- Replace
$(AssemblyVersion)in theDefinition.jsonwith the actual assembly version. - Create a zip file in
binwith a ready-to-extract structure.