1. NIMBY Rails
  2. News

NIMBY Rails News

Version 1.14.26

- Object drop downs in "Flat" mode like those used for trains, lines or schedules will now refuse to display the listing if there are more than 1000 items. This *only* affects drop downs and *only* for the "Flat" mode. Every other listing or mode is still able to display 1000 items or more.
- Fix major performance regression in saves with many thousands of trains while having the line editor basics or the shift basics panel open (this fix is related to the previous change)
- Fix rare crash on enabling/disabling plots
- Fix multiplayer hang and potential crash when creating orders with lines with no reference train

Version 1.14.24

- Fix: syncing line and schedule edits in multiplayer did not properly refresh shift runs in some cases

Version 1.14.23

- Fix multiplayer crash while deleting orders until an order list is empty
- Fix crash after interacting with the file picker to import/export demand curves to files

Version 1.14

[h2]The new Schedule system is now released![/h2]
Version 1.14 revamps trains scheduling by introducing new concepts which make it both much easier and give more power for creating schedules, both simple and complex. It is also a new foundation to be able to keep evolving the scheduling features of the game. The old system strongly coupled orders to trains. While it was indeed possible to make any schedule you wanted in 1.13, it took a lot of copy pasting, individual fiddling, and external tools like Excel to be able to produce schedules for multi depot lines, to give an example. The new 1.14 structure and tools makes such a task much easier and automated.

If your designs are more limited and prefer to keep things simpler, fear not, because other than having to click a couple extra buttons, the 1.13 workflow is possible in 1.14 with very little changes. Keep reading on how use your 1.13 knowledge and habits in 1.14.

[h2]How to create autorun trains like in 1.13[/h2]
There are no changes to autorun trains in 1.14. The interface options to create and assign them are identical compared to 1.13.

[h2]How 1.13 manual train concepts correspond to 1.14 scheduling concepts[/h2]

1.13: A manual orders train has a list of orders
1.14: A Schedule has a list of orders. A train is assigned to a Shift of that Schedule to run the list of orders.

1.13: An auto copy train runs a copy of the orders of a parent manual orders train
1.14: The train is just another Shift in the Schedule. All trains always copy the Schedule orders, there's no parent vs. copier distinction.

1.13: Manual order trains can edit their orders, auto copy trains cannot edit their orders
1.14: Orders are edited in Schedules. Schedules have one or more Shifts, which auto copy the Schedule orders into the trains. All trains are copier trains in the 1.13 sense.

1.13: A manual orders train has Group options to auto interval the autocopier train orders
1.14: A Schedule has an Offsets tab, which has Group options to auto interval the Shift train orders

[h2]Example: how to create a manual train like in 1.13[/h2]

1) Purchase a train while selecting the "Run a schedule shift" orders option. Make sure the schedule is set to "Create new schedule".


2) The train is now purchased and setup to run a fresh, empty schedule. Click this button to open its schedule shift.


3) You are now in the Schedule editor. This shows the Shift Basics of the train. Click the "New Schedule" name in the left listing to select the newly created schedule.


4) It is a good idea to rename the Schedule in the Basics tab. Then click the Orders tab.


5) Since it's a newly created schedule its order list empty. In 1.14 orders are created at the schedule level, rather than at the train level. Unlike 1.13, which had a parent train where you edited orders and then zero or more copiers, in 1.14 all trains are copiers. In the Schedule Orders tab you can create and edit orders. The trains in the shifts of this schedule will auto copy them. Orders in 1.14 behave identically compared to orders in 1.13 if you don't use any of the new order features. Use Insert to create new orders, and Edit to edit existing orders.


6) And that's it. If you managed your train orders individually in 1.13, all you need to remember in 1.14 is to go to the Schedule->Orders tab to edit those orders. Everything else is the same as long as you don't engage with new features. The default behavior of all the new features ensure you get the same experience as in 1.13.


[h2]Example: how to create copier trains like in 1.13[/h2]

1) Let's use the previous schedule as the "parent" of your copier trains. Purchase one or more trains, selecting the "Run a schedule shift" orders option. But this time you will select the previously created schedule in the drop down. Make sure "Create new shift" is selected in the shift drop down if you buy a single train.


2) After purchase, the train is added as a new shift to the schedule. In 1.14 there's no parent trains, instead the schedule itself acts as the parent for all the trains assigned to it.


3) To change the copier group settings, select the schedule in the listing, then go to the Offsets tab. All orders are group 1 by default, every order you create is already set up to be modified by the settings labeled "Group 1 auto interval". The UI and mechanics are the same as in 1.13, except you can also see and toggle the individual trains manual intervals (when toggled) from this interface.


4) And that's it. Keep adding trains to the schedule on purchase, or by assigning trains in the Shift Basics panel. Remember: if in 1.13 you set a train as a copier, in 1.14 you create a shift in a schedule and assign a train to it (or you do it all at once on purchase).

[h2]What happens to existing saves?[/h2]
The manual trains and auto copier trains are imported exactly as explained in the previous examples.

[h2]Schedules in 1.14 without the legacy concepts[/h2]

NOTE: In this section I am going to explain the new features of 1.14 without focusing on the manual orders workflow of 1.13, for the most part. If you are used to the 1.13 design and prefer to not engage with new features I STRONGLY ENCOURAGE that you follow the previous how-to guide. Your habits and knowledge are just as valid as in 1.13!

At the most basic level, 1.14 introduces Schedules and Shifts. The goal of Schedules is to act as the owner of one or more order lists. Orders are now created and edited inside Schedules, and you can have more than one order list in a Schedule.

An Schedule, by itself, corresponds to no train. Neither does an order list. A Schedule is only a container for one or more order lists. You can create order lists with the controls at the top of the order listing in the Schedule Orders tab:


To make the trains run these order lists, you create one or more Shifts under a Schedule. A Shift is assigned to one train, and it is instructed to copy the orders of one (or more) order lists into that train. It is like automated copy pasting, from the orders stored in the Schedule, into the train assigned to the Shift. To insert order lists into a Shift, go to the Shift Orders tab, then select Insert list at the bottom of the order listing:


This is the overall design goal of 1.14: to automate the large amount of manual copy pasting which was required in 1.13 when doing anything non-trivial with manual trains. By taking away the ownership of orders from Trains, and creating a new place to hold them, Schedules. And then introducing the concept of automating the pasting of these orders into trains, with Shifts.

[h3]New order features[/h3]
Timing stop: in 1.13, the time you input in the order always corresponds to the enter event of the order. It was impossible to say, "I want to enter the line at stop 1, but the time I input must correspond to the departure at stop 10". This is now possible in 1.14, by selecting to which stop the time input refers to.

Repeat: "Loop" has been replaced with the choice between a manual number of repeats or as many repeats as possible. If they are too few of them, the last run will pad, just line in 1.13.

Stacked orders: in 1.14 you can Insert orders, to create orders in the same way as in 1.13, with a specific time. But in 1.14 there's an additional way to create orders, Stack. To create stacked orders first select an existing order. You will notice the Stack creation interface has very few options, and there's no way to input a time. That's because a stacked order always follows a the selected order, without padding time. After it is created this relationship is always enforced, and the parent order and its stacked orders become a single unit you can shift and copy paste together.

[h3]Shift order features[/h3]
Orders in Shifts cannot be normally edited, but that does not mean nothing can be done to them. When selecting an order in the Shifts Order tabs it is possible to override some aspects of the order for very precise fine tuning. If you have specific per-train needs, like picking a different starting point in the morning, or changing an start time to avoid a conflict in a platform, you can use Shift Order overrides.



Enable order: the most basic override is not run the order at all.

Override start time: this allows to change the order start time in this specific shift. This setting is per order list insertion, so you can insert multiple times the same list and it will only affect an specific instance of it.

Override enter/exit/timing stop: this allows to change which of these stops are selected in the order. Use this to change the start stop of individual trains while keeping the same timing stop, for example.


[h3]New interval groups features[/h3]
Group intervals have also been enhanced in 1.14. There's now 10 interval groups per Schedule, called Offset Groups. And the setting of which order is affected by which group is done at the Order level, rather than the Shift level. Orders set to group 2 won't be affected if you change the settings of group 1, for example. This extra flexibility makes offset groups much more powerful than the very limited Group options in 1.13.



Version 1.14 is now in the beta branch

Game version 1.14 is now in the beta branch! The sole focus of this version is a redesign of the train scheduling system, to make it more powerful and promote it as an standout feature.

A new design for train schedules


Schedules are a very unique feature of NIMBY Rails. A well designed schedule is also something to be proud of as a player, so they deserve a highlighted and central spot in the game design. In 1.13 train schedules were a detail of the configuration of a train, half hidden in a tab in the train editor. In 1.14 schedules have been promoted to a top level editor, and redesigned to be their own object, independent of both trains an lines. Trains do not "own" schedules anymore.



A 1.14 schedule is a container for two new kinds of objects:

- Order lists: this is just a list of orders over a 7 day week, identical to the 1.13 train order list. Order lists are edited like the 1.13 train order lists too. A schedule can contain one or more order lists. Order lists are independent of any train, and are also independent of each other. They do not need to share any lines or orders.



- Shifts: a shift represents an instance of one (or more) order list paired with one train. Shifts can reference one or more order lists, modifying their time offset if desired. This introduces many possibilities, for example if you need 3 different versions of Friday orders, you can create a base week list without orders on Friday, 3 lists with Friday orders, and then different shifts can reference both the base weekly order list and one of the 3 Friday lists, all with specific per-shift time shifting if desired.



The order list - shift relationship allows for manual time shifting. For more automation it is possible to use the new offset group system. In 1.14 orders belong to one offset group. Then, in the shift editor, it is possible to give all orders of a certain group a time shift, without having to edit them one by one. And to make this automatic it is also possible to make the top level schedule automatically shift these groups based on durations or fixed intervals. This system replaces the old copier group settings system, while also making it much more powerful.



[h2]Auto run line trains[/h2]

If you are not interested in train scheduling and prefer to run your trains in auto run line mode, 1.14 will be virtually the same as 1.13. A few options have been changed their wording or location in the UI, but the most important ones (auto run line options and train line setting) are in the same spot with the same names. Your user experience should be identical and you can ignore the new scheduling system if you prefer to do so.

[h2]Imported 1.13 saves[/h2]

The new scheduling system in 1.14 has been designed (and, in some ways, handicapped) to ensure as much compatibility with existing saves as possible. The results of the import process depend on how the trains were configured in the 1.13 save, with these major cases:

- Auto run line trains: identical to 1.13

- Manual trains: a new schedule is created with a single order listing for their orders, then a single shift is created, which inserts the single order listing with zero offset. No offset group changes are set up. Timing will be identical except for the glue paths inserted between runs, which are now based on the line reference train.

- Auto copy trains: a new shift is created in the schedule of their parent manual train, with the single order listing inserted with zero offset. An offset group is set up reproducing the interval settings of the 1.13 copier group. Timing will be identical except for the glue paths inserted between runs, which are now based on the line reference train.


As with every beta, it is recommended you make backup copies of any saved games you plan to test, and also to save them under a different name. The first versions of a beta might be quite unstable and/or produce saved games with errors.