Skip to content

Railroader 0.6.0

These notes cover Railroader 0.6.0, available on the Experimental branch. This is the first public release of the “Maintenance of Way Update”, our first since Railroader 2025.1.0b. With this release we are changing our versioning scheme away from year-based versioning to a semantic major.minor.patch versioning scheme.

For more background on this release, see our September 2026 Development Update video.

This release centers on two large new feature sets, along with a substantial number of other improvements:

  • Maintenance of Way and Track Construction Milestones:
    • Track now takes wear with use; keep your Maintenance of Way train supplied with ballast, ties, and rail to keep it in shape
    • The Maintenance of Way train will also handle challenging track construction milestones, first repairing Ela Bridge and then building the new mainline from Bryson to the new interchange at McClain
    • Spot worn track and post speed restriction signs
  • Official Modding Support:
    • Built in mod manager
    • Relay scripting language enables new dynamic features without resorting to running potentially unsafe third-party binaries
    • New map editor offers the ability to create your own maps with real world heightmap data
    • Note that both Relay and the Map Editor are huge new features; they are still substantially limited in certain respects, but we plan to expand their capabilities in follow-up releases. See the video above for particulars on the Map Editor.
  • New locomotives: EMD F7A & B, L-27 Articulated, and a G-16 Prairie starter engine. These all offer customization features, including customizable paint schemes, powered by Relay.
  • Some steam locomotives are now offered with multiple tender options. Locomotive pricing now reflects a combination of speed/tonnage hauling characteristics and coal/water capacity.
  • Revamped car customization: paint, lettering, and finish for your equipment. This has been added to a number of our locomotives already; more to come in followup releases.
  • Choose your horn and bell, or shape your own whistle or horn tone in the new parametric Whistle and Horn editors. Plus: redesigned rail clack and flange squeal
  • Rebuilt map: much higher-resolution terrain, the mainline realigned to more closely follow the real Murphy Branch
  • New vegetation that follows real-world land cover; weather systems that move across the map, volumetric headlight beams, and new graphics quality presets
  • Rebalanced economy and early game: weight- and distance-based pay, a steeper contract tier curve, and rescaled industries
  • A free-flying cinematic camera with saved shots, camera inertia, and crouching
  • Significant performance improvements, including updating to Unity 6.3
  • Improved Auto Engineer train handling
  • Extra experimental, may be removed: fast forward in single player

Saves from 2025.1 and earlier can’t be loaded in 0.6.0. However, you can access Railroader 2025.1.0 on the legacy-2025.1.0 Steam branch.

  • Track wears with traffic: the more tonnage that runs over it, the lower its condition. Worn ties reflect the wear, and brush grows over track that hasn’t been maintained in a while.
  • Keeping track in good shape means running Maintenance of Way work cars loaded with rail, ties, and ballast. You’ll buy these cars and materials yourself.
  • New track is built in phases and can’t be used until it’s complete. Unfinished track shows as a dashed line on the map, and survey stakes and milestone boards in the world list the materials needed next. Click a milestone board for construction details.
  • Work proceeds in walking order along the track with one gang per phase, so ballast, ties, and rail can advance on different sections at once. A build grows as continuous track from its nearest end.
  • Track is built to a specific class which corresponds to a maximum safe speed, irrespective of the track geometry (tight curves still require slower travel). If track condition drops enough to lower its class, the maximum safe speed drops too. This class does not drop while a train is on top of the track.
  • Track whose effective class allows less than its built speed is painted yellow, or red where it’s down to 10mph. The map window can be set to show these degraded sections of track.
  • Players can right click on track to post a Speed Restriction or Resume sign. Right-click a posted sign to change it. (Multiplayer: only Trainmaster players can place speed restriction signs.)
  • Previously constructed track which is purchased as-is by the player is frequently already degraded. For example, the player can expect the track to/around Bryson to be usable but damaged.
  • Construction Difficulty (Low, Medium, or High) scales the cost of construction, upgrades, and repairs. Track Wear (0 to 200%) scales how fast traffic wears track; set it to 0% to turn track wear off.
  • Construction, upgrade, and repair are costed separately. Before an upgrade, repair must first bring the track up to its current class’s condition target.
  • Rails, ties, and ballast are purchased through interchanges. Ties and ballast can also come from on-line industries.
  • The tutorial has a new track maintenance chapter: load the work train at the East Whittier MoW yard and repair the worn main line.
  • The EMD F7 joins the roster as A and B units. Besides the standard scheme, it is offered in eight paint schemes: Santa Fe Warbonnet, Southern Tuxedo, Great Northern Empire Builder, Clinchfield, Chicago Northwestern, SP Black Widow, PRR 5-stripe, and B&M Minuteman.
  • The L-27 Articulated is our first articulated (Mallet) steam locomotive and offers smokestack, pilot, and headlight configuration options.
  • The G-16 2-6-2 Prairie is one of our new starter engines with a slew of customization options. (The old G-16 Mogul is now the G-24, with its numbers corrected.)
  • New rolling stock: the 80T Ore Hopper, a 40ft Maintenance of Way car, a 1937 AAR 40ft boxcar, a Southern Class SU 36ft boxcar, and last but not least, a USRA wood caboose!
  • Pulpwood now travels on FP pulpwood cars and GB gondolas.
  • The color and lettering customization previously built into Railroader has been completely revamped with a new style system and a reimplemented Customize window. Each car gets a scheme that matches its reporting mark and car type, and (for your own equipment) you can override it with your own colors, lettering, and finish, from flat paint to polished bare metal. Trucks can be painted separately.
  • The GP9 and SD7 each gain seven railroad schemes (Central of Georgia, SP, Southern Tuxedo Black, Rio Grande, UP, B&O, and BN) and selectable details such as nose and windows, dynamic brakes, plows, lights, and bell and horn mounts. The SW1 gains five schemes (Southern Tuxedo, Southern Tuxedo Black, Seaboard, Monon, and SP).
  • The C-40, D-46, G-16, P-43, and P-48 offer a choice of tender when you buy or place them. Selling a locomotive includes its tender’s value.
  • A new parametric whistles and horns system enables more expressive and dynamic sounds; we’ve converted most of our built-in whistles and horns to the new system. The Whistle Editor and Horn Editor let you shape a custom tone on your locomotive. In multiplayer, saving the whistle or horn to a locomotive enables everybody to hear it without exchanging mod files.
  • Added horns: Leslie RS5T, RS3L, and A-200, and Nathan P3, M3, M5, and MS1. Bells are selectable from CN brass, and EMD bronze (early and late).
  • Rail-joint clack, rolling noise, and flange squeal have been redesigned. Clack follows each wheelset over the joints; squeal builds on curves.
  • New load models have been added: Flatcars carry ties, crates, lumber, and Farmall tractors, and gondolas carry rails, steel beams, and bridge timbers. Weight and dimension data has been stenciled on car sides.
  • Added a search field to the Consist Placer (Shift-T). It can also flip cars, and shows tractive effort and horsepower per ton.
  • Tonnage rating charts (maximum tonnage by grade and speed) appear when you hover the train summary in the locomotive controls or the Consist Placer, or the Tractive Effort figure in the purchase window.
  • Steam, Diesel, and general train physics simulations have been revised. Diesels model equipment characteristics much more closely, and steam locomotives now incorporate heating surface area.
  • Running a steam locomotive with the cutoff wide open is penalized more heavily as speed rises. The chuff now follows the actual cutoff.
  • Handbrakes now apply gradually instead of instantly, which makes it more practical to use them to manage speed.
  • Several steam locomotives’ specifications are corrected to match their prototypes, including the C-55, T-17, P-18, and L-27, along with coal and water capacities on the C-40, C-46, G-24, and P-43.
  • Trailing locomotives in a multiple-unit consist follow the lead unit’s independent brake.
  • Engines and tenders that come apart reconnect their brake line when they couple again.
  • Improved car lettering rendering on wide decals, and disabled decals rendering on rear-facing faces.
  • Cars with multiple headlights are now properly supported.
  • Horn, whistle, and detail models weather with their car.
  • Fixed character jitters while seated or on a ladder.
  • Improved climbing ladders on moving trains; fixed avatar drift on moving trains.
  • Auto Engineer Waypoint mode now supports setting directional waypoints, with track overlays to indicate train car positions. This makes it possible to turn a train with a single waypoint, for example, or otherwise more precisely control the movement for future potential features like “waypoint to fill water”. You can also set waypoints underneath the train, such as to reverse the engine to a given point.
  • Added stall detection: the auto engineer will post a notice and set its target speed to zero.
  • Waypoints can route across a turntable, though the AE is not qualified to operate the turntable itself.
  • The Auto Engineer’s train handling has been dramatically improved, with much more precise speed control and waypoint stopping in challenging situations.
  • Switching a moving train to Waypoint Mode keeps it rolling until you pick a destination.
  • The Auto Engineer eases into a new speed instead of jumping to it.
  • Auto Engineer crews cost $60 per crew per shift.
  • A new Loads tab in the Company window shows where every freight load is, from industry storage and engine-service supplies to your cars and orders in transit.
  • Industries now order quantities of loads, rather than car loads. Additionally, load density and car load volume is taken into account when loading freight cars.
  • New equipment arrives at the interchange you choose, at the next interchange service 24 hours after you order it. You can cancel an order for a full refund until it arrives.
  • In single player, the Time window can fast forward while at least one train is running to an Auto Engineer waypoint and every other engine is stopped. It speeds up as far as your CPU allows and stops just before a train reaches its waypoint, when a notice arrives, or when you press Escape. This feature is experimental.
  • A Railroad Speed Limit company setting (under Operations; default 45mph, 5 to 100mph) sets the speed on track with no posted limit.
  • The Auto Engineer’s speed slider follows the Railroad Speed Limit. Note that while the Auto Engineer has been thoroughly tested on the base game map, the base game map does not go above 40mph. Good luck!
  • Industry performance has been reworked to reflect how quickly you complete deliveries (both inbound and outbound). For industries that process loads, such as the saw mill and paper mill, part of the performance reflects how much of its maximum throughput it was able to achieve.
  • The contract tier curve is steeper (12.5%, 25%, 50%, 75%, and 100%) for a more noticeable change between tiers, and most industries have been rescaled to match, so higher tiers run more cars.
  • When changing tiers, production expectations ease in over three days. As before, a sustained low score drops the contract’s tier.
  • New games start with four log cars.
  • Waybill payments have been revised: every car move pays a $60 terminal fee plus a rate by weight and distance, so long, heavy hauls pay more than short, light ones. Logs and pulpwood are priced the same way instead of at a fixed rate; since their cars run without waybills, each car unloaded pays for both the loaded trip and the empty trip back, settled daily.
  • Buying freight at an interchange adds a $30 handling fee per car.
  • Locomotive prices have been completely reworked to reflect what they can pull, as well as fuel/water capacity. The purchase screen shows how much an engine pulls at road and yard speed on a grade you choose, its water range, and a curve rating.
  • Railroads with no passenger stations do not include the passenger reputation in the reputation calculation.
  • Logs are now measured in pounds.
  • /debug on (host only) temporarily enables sandbox tools in a company game until you turn it off or reload. It replaces switching to /mode sandbox and back. Converting a game to sandbox is now permanent to prevent corrupting progression state.
  • Cars with a waybill to a destination that no longer exists are fixed when the save loads.
  • Loans: interest stops once you repay in full, and available credit no longer shows a negative amount.
  • The Locations panel shows the right industry name on shared interchange tracks.
  • Car loader animations no longer retract and re-extend after you load a save.
  • Updated terrain data to much higher resolution heightmap, resulting in dramatically improved terrain detail.
  • Entire mainline has been realigned to better follow actual real life Murphy Branch mainline in most places. Areas like East Whittier, Dillsboro, and Sylva have seen significant realignments.
  • The Sylva, Governors Island, Bryson, and Andrews crossings now have protected crossings with gates, lights, and bells.
  • Turntables now have a control window and graphical interface which lets you drag an overlay to set the desired position. Click the turntable control hut to open its control window, where you can drag an arrow to line it to a track. Turntables also have a motor sound.
  • Added support for diamond crossings (though none appear in the base game map). Diamond crossings are built where two lines cross at grade.
  • Added tie plates to switches; also improved point rail geometry.
  • New Game offers a Map dropdown when more than one map is installed.
  • New and reworked map content: a McClain interchange and engine service, Rock Products at Dillsboro Quarry, Whittier Saw Mill without its switchback, Sylva’s Scott Tie Plant and Paperboard mill, Nantahala Talc & Limestone with separate load and empty tracks, and new Robinson mine structure, Andrews station, and Bryson coal dealer scenery. McClain and Rock Products each unlock with their own milestone.
  • Repairing Ela Bridge and the new mainline west from Bryson, through Alarka Jct and across Fontana Lake to Almond and the new McClain wye and interchange, are now construction milestones built by your Maintenance of Way train.
  • Connelly L2 and L3 log camps are now construction milestones beyond the initial one.
  • Walker has been realigned and changed to match updated terrain. The former switchbacks are no more and the upper section (formerly the “lower” camp) has been changed to be an optional construction milestone.
  • Railroader now checks for other cars in three dimensions, enabling building bridge crossings over other railroad lines.
  • Improved terrain fill/cut profile to build better drainage where possible.
  • Improved terrain profile under bridge abutments and at road ends.
  • Short curved segments no longer get needlessly low speed limits, and lopsided curves are restricted less.
  • Graphics preferences have been revamped to have four quality presets (Low, Medium, High, and Ultra), whose settings you can fine-tune.
  • The Rolling Stock Detail preference trims what distant cars draw (small and distant shadows, exhaust effects, and animation) to reduce frame times. Full turns this off.
  • Weather now changes gradually, and weather systems move across the map. /weather forecast shows what’s coming. Use /weather force to set a specific kind of weather across the entire map.
  • Headlights and signal lights cast visible beams of light, which you can turn off in the graphics preferences (volumetric lighting). Headlight beams stop where they hit something.
  • Completely revamped vegetation system, with specific vegetation per biome and dependent upon altitude. We expect to continue to refine this system over time.
  • Vegetation Richness setting enables trimming the less common species to save graphics memory.
  • A new Night Brightness setting controls how bright the world stays at night.
  • Ground textures and plants follow real-world land cover. Towns and building sites get dirt instead of grass, and brush stays cleared along track you keep maintained.
  • The water tower model has been revamped.
  • Engine updated to Unity 6.3. Rendering uses more CPU cores, which helps most in busy yards.
  • MSAA (anti-aliasing) has been re-enabled after changing to Forward+ rendering.
  • Trees and grass render faster, so dense forest costs less frame time.
  • Distant track no longer shimmers and moire patterns are significantly reduced.
  • Water tower and water column spouts now stop just above the car under them instead of passing through tall tenders, and the water spray is sized to fit the car.
  • Telegraph wires have been removed while we have been working on realignment and map modding. Should they return? Let us know!
  • Decal Distance (Low, Medium, or High) sets how far away lettering and heralds stay visible. Lettering no longer pops in and out as you turn the camera.
  • Steam locomotive smoke has more depth and glows when backlit. It trails smoothly behind a moving engine and becomes a continuous plume above 15mph.
  • New tonemapping changes the game’s overall color and contrast. Colors are now much truer to the specified color. Post Exposure and Contrast now default to 0.
  • Building and street lights come on when it gets dark instead of at a set time.
  • Fog rolls in with terrain as it loads instead of popping in and out. The Loading Fog graphics preference turns this off.
  • Chuff, whistle, and horn sounds fade with distance.
  • The frame rate is capped at 60 while paused or in menus.
  • Signs no longer glow white at a distance or turn black in fog.
  • Improved reflection updating as you travel across the map.
  • Track is built behind the loading screen after a teleport or map load, instead of causing a long hitch once the game appears.
  • A new free-flying camera is available at 3, which can also track or follow a car. Like the other cameras, it maintains its position, and Shift-3 switches to it and matches your current view. Control-3 opens Camera Controls, where you can save shots to F5 through F8 and glide between them. This allows for creating and replaying multiple cinematic camera moves.
  • Each player’s camera setup is saved with the game, including the fly camera’s position and saved shots.
  • Hold C to crouch.
  • Key bindings can use up to three modifier keys (for example Ctrl+Shift+B). When rebinding, hold the modifiers and press the key.
  • A Message Log window lists problems with mods and missing content.
  • An optional built-in web server lets companion apps, stream overlays, and external control panels read live gauges and the selected car. Turn it on in Preferences. A browser-based throttle demo is included.
  • Discord Rich Presence has been added and is off by default. You can share just your status (main menu or in game) or also your railroad name.
  • Added /debugui debug UI to help with diagnosing certain issues (frame time, network, etc.).
  • Console output has clickable links.
  • /location console command allows the user to pick a track location; on click it is copied to the clipboard. (Useful for modders/developers.)
  • Context menus open as a list with icons at the pointer instead of a radial menu. Although radial menus are fashionable, we think the tried and true conventional context menu is more readable, and faster to navigate.
  • Dispatcher camera is now accessed (by default) using 4 (was 3).
  • The first-person and overhead cameras sway with inertia in response to train acceleration/deceleration. Camera Inertia in Preferences sets how much.
  • The map window zooms smoothly and draws track more sharply.
  • The overhead camera now pans with the middle mouse button (rebindable) instead of the left mouse, and no longer runs away when you grab it near the horizon.
  • The Locations panel lists interchange loads in a compact table by seller, with prices.
  • Escape closes a dialog instead of opening the pause menu behind it.
  • In photo mode, hidden windows no longer block zoom and teleport clicks.
  • The overhead camera no longer jerks while following a car or swings when you switch cars.
  • When the placer can’t put cars where you click, a message says why (for example, not enough track, switch lined against, or blocked by a car) instead of nothing happening.
  • The timetable window opens the first time in a session with no timetable set.
  • Long dropdown menus scroll instead of running off the screen. Improved positioning of dropdown menus.
  • Numerous other UI tweaks and fixes.
  • Hosting a multiplayer game is now toggled within the game. The main menu offers Start Game and Join Multiplayer, and you can open any running game to multiplayer (public or friends-only) from Company > Settings, then return to single player without leaving.
  • The Employees tab data has been moved to Company > Settings > Players.
  • The game list shows each railroad’s name and reporting mark and can be filtered.
  • Accepting a Steam invite mid-game offers to save and leave to join.
  • The public game list hides railroads whose name or reporting mark Steam’s text filter flags for you, and drops descriptions it flags.
  • Clients’ clocks no longer drift from the host’s.
  • Joining shows one summary notice instead of a “connected” notice for every player already present.
  • Hosts can no longer put text formatting into the game list or the mod prompts shown on join.
  • When crew membership is required, players outside a locomotive’s crew can no longer drive it through the Auto Engineer, and cars from a disbanded crew are no longer open to everyone.
  • Fixed game data integrity issues relating to multiplayer.
  • Each railroad keeps its saves together in a .railroad file.
  • The load screen lists your railroads: by default the main save is loaded, but autosaves can be accessed and managed using an auxiliary button.
  • Revamped UI around loading, saving, and quitting.
  • Saves, timetables, preferences, and mods now live in one directory, Documents/Railroader. You can point the game to a different directory using the -homedir <path> command line argument. Player.log is still written to the AppData LocalLow directory.
  • Preferences and key bindings from 2025.1 aren’t carried over; all settings start at their defaults.
  • Saves are now written in an atomic style that makes them resilient to data corruption if the game crashes or power is lost while writing the file.

Official modding support is new in 0.6.0. Start with Modding for an overview. If you have built mods for 2025.1 (when modding was not officially supported), see Migrating Mods to 0.6.

The big picture: Railroader 0.6.0 has a built-in mod manager, scripting language for dynamic functionality, a definition editor for cars, scenery, and other structured data, and a map editor which is still a work in progress. Mod distribution is via manual download and installation in Documents\Railroader\Mods; mods must be enabled in the in-game Mods menu. We plan to build Steam Workshop support for distribution in the future.

  • Packs are described by an Info.json file. A pack is identified as domain/name, declares a version and its dependencies, and can give load-order hints. Required dependencies must be satisfied in order for a mod to load; otherwise the game will show an error. See Asset Packs and Load Order.
  • Mods can have different “scope”: Unscoped, Optional (recorded but not required to match between players), or Client (personal to the machine and never recorded in a save). Client scope is reserved for a future release. Clients confirm before adopting a host’s mod set when they join.
  • The Manage Mods window searches mods and shows their URLs, descriptions, and dependency and version conflicts. You can enable, disable, and reconfigure mods in the middle of a save. When a save references a mod that can’t load, a Load Without It prompt appears. See Installing Mods.
  • Mods can ship .NET assemblies through an assemblies field in Info.json. DLL mods aren’t sandboxed, so they load only when the user has enabled “Allow Unsafe DLL Mods” in Preferences. See DLL Mods.
  • Relay is a scripting language for defining dynamic behavior in mods. We also use it to create customization features in base game locomotives and other equipment. Relay has classes and inheritance, closures, coroutines and generators, exceptions, modules, switch, let constants, a regex module, and a small standard library. See Relay and the Relay API reference.
  • Scripts run sandboxed. They can load from their own asset pack but can’t reach the filesystem.
  • A mod ships Main.rl for gameplay and UI logic and Data.rl for changing maps and definitions. See Main.rl and Data.rl. Packs load in dependency order and each gets its own module space. Main.rl has full engine access, and Data.rl is limited to data and definitions.
  • Modifying data: context.merge (in modifyDefinitions), map.merge (in modifyMap), and dict.merge apply RFC 7396 merge patches, so mods can amend definitions and map data in place instead of replacing them. Many data structures within Railroader have been reworked to make them more JSON-merge-friendly. A modifyDefinitions handler can change definitions at startup, a modifyMap handler can change map JSON after it’s parsed but before the map is built, and a sandboxed json module reads pack-local files.
  • Relay can access various elements of cars (car.components, car.properties, coupling observers), industries, per-car rendering and paint, and map objects (world.getMapObject).
  • Scripts can create in-game windows, add to built-in windows through extension points, and register console slash commands. See Extending the UI.
  • Script errors appear in the in-game Message Log with stack traces, including errors raised inside callbacks such as property observers and UI builders. Missing animation clips and materials in a pack are reported there too.
  • We plan to expand the Relay integration in the future to enable using it to provide custom logic/math for various other parts of the game, such as engine simulation.

The map editor is a huge new feature. Railroader presently only supports partial editing of the map. A number of map elements cannot presently be created or edited in the map editor, such as signs, mileposts, signals, CTC panels, crossings, lakes, and so forth. We plan to continue building out the capabilities of the map editor over time.

  • To make modding the map more stable and accessible we have moved the majority of map data into a portable JSON map file. Some elements have not yet been ported; thus the limitations of the map editor.
  • Mods can create a whole new map. A Map definition points at the pack’s Data/Map.json and its terrain tile sets. See Map Modding.
  • A map mod can build on another through mapLayers and save only its differences. A map layered on the built-in map loads that map’s scene, so it keeps the base map’s bridges, signals, progression, and signs. Editing these elements is not currently supported.
  • Terrain data is now stored in a portable RIFF file format, which itself contains standard bitmap style data segments.
  • Each terrain tile stores a land-cover map (trees, shrub, grass, bare ground, built-up, water, and more), fetched with the terrain from ESA WorldCover. It replaces the separate vegetation, water, and object mask layers, and ground textures and planting are derived from it.
  • Terrain elevation is now sourced from Mapterhorn.
  • The map editor is single player only.
  • Terrain can be fetched from real-world elevation, sculpted, and painted with a Land Cover brush. A real-world imagery overlay can be traced.
  • Layered maps show which objects override the base, similar to Unity prefabs. The user can revert the changes, as well as hide inherited content.
  • Freight loads are now stored in JSON definitions, making it possible for a mod to define new loads on its own.
  • Removed car archetypes; instead, AAR style string car types are used. Loads can define a car type filter; an industry component without a car-type filter set will take the car types from the load, if present. This makes it easier to expand loads to new car types without modifying all industries. See: Car Types
  • Editor from the main menu opens the editor UI, which enables creating new mods (in Documents\Railroader\ModDev), and new definitions within them. This creates the directory and scaffolded Info.json and Definitions.json files.
  • The Definition Editor enables editing cars, locomotives, tenders, loads, bells, horns, and reporting marks. It supports undo and redo, duplicate, filtering, and capturing builder photos. Although it is possible to use Data.rl to modify another definition, the definition system does not support layering in the same way the map data system does.
  • The experimental Whistle Editor and Horn Editor export .rrwhistle and .rrhorn files, which a Whistle or Horn definition can reference through paramsReference instead of an audio clip. See Parametric Whistles & Horns.
  • The new Car Style system enables describing the aesthetic settings of a car with CSS-like styles. Selectors match elements, classes, and ids. A standard vocabulary of style classes is documented. Styles can be used to create generic color schemes for use across many cars, or to define styles specific to one piece of rolling stock.
  • Styles can set decal text, images, fonts, and positional offsets. A customize-color or customize-text property allows a style to opt in to showing fields in the car’s Customize window. A Relay API registers custom style properties.
  • Cars can colorize multiple distinct meshes using Renderer Groups. Styles can control their colors as with decals.
  • For cars where more control is desired, a paint map system has been created to enable setting up to 4 colors using a “paint map” texture. Think of the texture as defining the stripes and shapes that make up a detailed paint scheme. The RGBA colors of the paint map are replaced by modder-provided or player-chosen colors, and the paint map texture can be changed at runtime, or even loaded from other mods. This technique has been put to work to build out multiple customizable paint schemes across our diesel fleet. See Paint Maps.
  • Mods can define Reporting Marks, optionally limited to certain car types, and a paint scheme’s car series sets the road numbers its cars receive. See ReportingMark. 2025.1’s ReportingMarks.txt is no longer used.
  • Decals can be configured to show different content types: road number, reporting mark, railroad name, data, text, and image.
  • Text decals can be styled with font-family (serif or sans-serif), font-size (in points), and text-align (left, center, or right). See Decal.
  • Props (models loaded as part of the map) can also declare renderer groups and base styles, and each placement on the map can override them, enabling varying colors. See Prop.
  • Additional new definition types include: ArticulatedSteamLocomotive, LinearLoadModel, and Whistle.