News Liste NIMBY Rails

Version 1.18
NIMBY Rails
09.02.26 12:23 Community Announcements
[p]Version 1.18 is finally released. This version has been a long time under development, also with a very long beta period, due to the complexity of its main feature, NimbyScript. Until 1.17 game mods have been limited to changing textures and adding new static rules (in the form of new trains, tracks, etc), with no new mechanics possible. NimbyScript adds programmability to game mods, allowing them to add new mechanics to the simulation.[/p][p]Some signal and script mods are already available in the Workshop, and more will appear in the future. I want to thank all mod developers (scripting or not) for their hard work in providing mods for my game. NimbyScript, its API and signal mods have been designed with their feedback over the past few months.[/p][p] [/p]

Signal texture mods

[p]
Mods can now offer new textures (or collections of textures) for signals. In 1.18 the visuals of signals have been completely made independent of their function and logic. The core simulation keeps the existing textures and rules, but by using mods you can now put any texture you wish on any signal. Multiple signals states can also be textured as desired, both the default 2 states for path signals and any amount of custom states if the mod also provides a signal texture script.

[/p]

NimbyScript

[p]
NimbyScript is a custom programing language for developing scripts for NIMBY Rails. It is quite limited compared to general purpose languages, but in exchange it has nearly the same speed as compiled C code, because is actually compiled as C code on loading the script. To ensure the future evolution of the language it has not been designed as special purpose. For example concepts like Train or Station are expressed as types, not as a first level entities of the language.

You can read the NimbyScript guide and its API reference in the official wiki:

https://wiki.nimbyrails.com/NimbyScript

The Steam modding guide explains how to make script mods:

[dynamiclink href="https://steamcommunity.com/sharedfiles/filedetails/?id=2268014666"][/dynamiclink]
For your personal saves, you can make private mods which reside in the "mods" folder of your saved games folder. A copy of the script is also stored in the save, so save sharing and multiplayer remain functional even when using private and unsubscribed Workshop scripts.

Scripts are displayed in the UI as "Extensions". These new extensions appear in some editors, like Signal properties panel or the train editor panel. Players first enable an extension in the list, then the extension can be further configured with its own UI in the same panel.

[/p]

NimbyScript APIs

[p]
There's many new features in the train simulation for 1.18, but most of them are exclusive to NimbyScript. This will allow modders to precisely express certain features the way they see fit, within the confines of the API.

[/p]

Changing the result of a path signal check

[p]
All path signals can now call into one or more scripts to change the result of a "pass" check into a "stop" check. Scripts can use any logic they want for this extra check, including checking other trains, the simulation time, looking up tags,

[/p]

Path change from any signal

[p]
All path signals can now also be path change signals by using scripts. Scripts can return a new goal position for the train checking the signal. The train will automatically pathfind to the new goal position and if it reaches it, it will also automatically pathfind toward its line stop goal. The goal position of the train can be changed an unlimited amount of times by any amount of signals or scripts, and it will always pathfind itself back to the line stop when needed.

[/p]

Lookahead system

[p]
Trains periodically scan their future path for up to 15km, and invoke a script for each path signal hit during this scan. These scripts in return can set speed limits for the train, which unlike a red signal, apply immediately and from any distance. This allow to emulate signal aspects which limit the train speed rather than just stopping it. The lookahead system can also be used to passively gather information for signal texture states.

[/p]

Marker reservations

[p]
A new "blank" signal, the marker, is now provided. This signal is very useful as a passive sensor for scripts, and it will be used like this most of the time. But it also has an active capability: it can "fake" a reservation at its point of the track. This allows to extend reservations beyond signals with the use of scripts which get called when a reservation probe runs on top of the marker signal.

[/p]

Custom signal texture state

[p]
The decision to which texture show for any given signal can be fully customized by scripts. Scripts can reference any amount of states declared in a signal texture mod to change the signal texture, under any logic they desire. This works for all signals, not just path signals.

[/p]

Shift assignation condition modifications and vetoing

[p]
When the shift dispatch system is trying to find a shift for a train, and it finds a suitable candidate, it will now call a script with all the gathered information. The script can then veto this decision to force the system to keep looking for a different shift.

The initial setup for the shift dispatch process can also be scripted. The system will first prepare a default setup with all the relevant information, like simulation time and train location, and a script can then force it to ignore some of that information so more shifts are considered, or modify some of the information, so for example shifts in the past are also considered.

[/p]

Interventions and teleporting

[p]
Lower frequency scripts with access to the more powerful SimController API can issue unlimited interventions, teleports and drive orders to trains.

[/p]

Schedule-less line running

[p]
Scripts can force a train to run a specific line at any time, ignoring the schedule system. This is useful for technical maneuvers and for roleplaying non-pax operations. These trains can even carry pax if there exists any shift with the same line scheduled a similar time, mostly useful to issue extra trains in high TPH services like subways.

[/p]

Hitching and train reconfiguration

[p]Trains can now have up to 8 different post-purchase configurations. These configurations are player-edited, in the train editor. They cannot append new cars or reorder them, only remove them from the purchased configurations. Scripts are then able to switch the train into any of these 8 configurations. For example a train could be reconfigured to to not have a locomotive prior to coupling. [/p][p][/p][p]Train coupling is now possible, and controlled by scripts. This is internally called "hitching" since "coupling" is already being used for car coupling in train compositions. The concept of "train coupling" is extremely complex when every possibility is considered, and it's unworkable to try to fit them into the UI/UX and the schedule system. So instead coupling is only offered to scripts, with an API which allows to couple any train to any other train (including multiple trains), optionally changing its orientation. Combined with reconfiguration this enables many coupling concepts. The coupling and uncoupling process will be controlled by scripts, so the specific mechanics are left to mod developers.[/p][p][/p]

Timing changes

[p]In order to enable scripts to set arbitrary speed limitations at any time, the train dynamics formulas had to be changed and simplified. This means some saves will see a subset of their line and shift timing change, and might need manual adjustment.[/p]
Logo for NIMBY Rails
Release:26.01.2021 Genre: Simulation Entwickler: Weird and Wry Vertrieb:keine Infos Engine:keine Infos Kopierschutz:keine Infos Franchise:keine Infos
Einzelspieler Mehrspieler Koop

Aktuelle Steam News
Neue Steam News in der ePrison Datenbank

Version 1.18.26
NIMBY Rails
1 Tag 20:00 Community Announcements
Version 1.18
NIMBY Rails
09.02.26 12:23 Community Announcements
Devblog for September 2025
NIMBY Rails
01.10.25 18:47 Community Announcements
Version 1.17.11
NIMBY Rails
05.08.25 10:36 Community Announcements
Version 1.17
NIMBY Rails
31.07.25 17:51 Community Announcements
Version 1.17 is now in the beta branch
NIMBY Rails
10.07.25 16:18 Community Announcements
Devblog for June 2025
NIMBY Rails
30.06.25 21:12 Community Announcements
Devblog for May 2025
NIMBY Rails
01.06.25 22:58 Community Announcements
Version 1.16.16
NIMBY Rails
09.04.25 08:30 Community Announcements
Version 1.16
NIMBY Rails
02.04.25 15:50 Community Announcements
Version 1.16 is now in the beta branch
NIMBY Rails
07.03.25 15:46 Community Announcements
Devblog for February 2025
NIMBY Rails
02.03.25 10:17 Community Announcements
Devblog for January 2025
NIMBY Rails
30.01.25 17:46 Community Announcements
Version 1.15.17
NIMBY Rails
27.01.25 10:35 Community Announcements
Version 1.15
NIMBY Rails
04.01.25 16:50 Community Announcements
Version 1.15 is now in the beta branch
NIMBY Rails
02.12.24 09:41 Community Announcements
Devblog for October 2024
NIMBY Rails
01.11.24 12:59 Community Announcements
Version 1.14.26
NIMBY Rails
09.10.24 15:47 Community Announcements
Version 1.14.24
NIMBY Rails
02.10.24 17:24 Community Announcements
Version 1.14.23
NIMBY Rails
02.10.24 15:46 Community Announcements
Version 1.14
NIMBY Rails
02.10.24 08:50 Community Announcements
Version 1.14 is now in the beta branch
NIMBY Rails
09.09.24 13:52 Community Announcements
Devblog for August 2024
NIMBY Rails
31.08.24 15:48 Community Announcements
Devblog for July 2024
NIMBY Rails
03.08.24 15:00 Community Announcements
Version 1.13
NIMBY Rails
28.06.24 18:16 Community Announcements
Version 1.13 is now in the beta branch
NIMBY Rails
11.06.24 10:24 Community Announcements
Devblog for May 2024
NIMBY Rails
01.06.24 11:27 Community Announcements
Version 1.12
NIMBY Rails
20.05.24 17:15 Community Announcements
Version 1.12 is now in the beta branch
NIMBY Rails
29.04.24 16:29 Community Announcements
Devblog for March 2024
NIMBY Rails
02.04.24 08:47 Community Announcements
Devblog for February 2024
NIMBY Rails
29.02.24 15:36 Community Announcements
Version 1.11
NIMBY Rails
29.02.24 14:22 Community Announcements
Version 1.11 is now in the beta branch
NIMBY Rails
15.01.24 12:29 Community Announcements
Devblog for December 2023
NIMBY Rails
03.01.24 23:06 Community Announcements
Devblog for November 2023
NIMBY Rails
01.12.23 18:09 Community Announcements
Version 1.10
NIMBY Rails
30.10.23 17:38 Community Announcements
Version 1.10 is now in the beta branch
NIMBY Rails
11.10.23 09:04 Community Announcements
Devblog for September 2023
NIMBY Rails
01.10.23 09:04 Community Announcements
Devblog for August 2023
NIMBY Rails
01.09.23 17:10 Community Announcements
Devblog for July 2023
NIMBY Rails
03.08.23 18:02 Community Announcements
Version 1.9.20
NIMBY Rails
21.07.23 07:27 Community Announcements
Version 1.9.18
NIMBY Rails
19.07.23 09:12 Community Announcements
Version 1.9
NIMBY Rails
18.07.23 08:16 Community Announcements
Version 1.9 is now in the beta branch
NIMBY Rails
03.07.23 20:34 Community Announcements
Version 1.8.28
NIMBY Rails
26.05.23 08:59 Community Announcements
Version 1.8
NIMBY Rails
18.05.23 16:55 Community Announcements
Version 1.8 is now in the beta branch
NIMBY Rails
26.04.23 14:36 Community Announcements
Devblog for March 2023
NIMBY Rails
31.03.23 19:07 Community Announcements
Version 1.7
NIMBY Rails
20.03.23 18:31 Community Announcements
Version 1.7 is now in the beta branch
NIMBY Rails
28.02.23 23:09 Community Announcements
Devblog for January 2023
NIMBY Rails
31.01.23 21:45 Community Announcements
Version 1.6 update notes
NIMBY Rails
16.01.23 18:04 Community Announcements