Skip to content
You're reading the docs for Railroader 0.6 (the MoW Update), currently available on the Experimental branch.

Car Types

Railroader uses AAR-like codes to identify car types. Each car has one type, and that type may be used in other contexts, usually as a query or filter.

The code prefix determines how the game classifies a car for gameplay (e.g. whether it counts as freight, a locomotive, etc.). Custom car types that share a prefix with built-in types are classified automatically — for example, a custom car with type HM would be treated as a hopper and as freight.

Every car type the base game’s rolling stock uses:

TypeDescriptionClassified as
CBSBaggage carBaggage
FBFlatcar with bulkheadsFreight, flatcar
FLSkeleton log carFreight, flatcar
FMFlatcarFreight, flatcar
GBGondolaFreight, gondola
GSDrop-bottom gondolaFreight, gondola
HMHopper, 2 bayFreight
HMAHopper, oreFreight
HMRHopper, coveredFreight
HTHopper, 3 bayFreight
LDDiesel locomotiveLocomotive, diesel
LSSteam locomotiveLocomotive, steam
LTTenderTender
MWXMaintenance-of-way carMaintenance of way
NECabooseCaboose
PBPassenger carCoach
PBOPassenger car, observationCoach
TMTank carFreight, tank car
XMBoxcarFreight

Locomotive types start with L, with one exception: LT (tender) is not classified as a locomotive. A tender is a separate car type of its own, since gameplay code often needs to tell a locomotive and its tender apart (for example, when checking whether a car can run under its own power). Custom locomotive types should start with L (but not LT) to pick up locomotive classification automatically.

A mod is free to introduce codes beyond the list above. These are the prefixes the game tests, and what each one makes a car:

PrefixClassified as
X, H, T, F, GFreight
TTank car
FFlatcar
GGondola
L (except LT)Locomotive
LSSteam locomotive
LDDiesel locomotive
LTTender
PBCoach
CBBaggage
NECaboose
MWMaintenance of way

A code can pick up more than one classification: TM is both freight and a tank car. Anything outside these prefixes is classified as none of them, which is what you want for a car that shouldn’t turn up in freight operations.

The Equipment Placer groups cars by prefix too, under its own set of headings — X is “Box Car”, H is “Hopper”, and so on, with the longest matching prefix winning. A custom XM-prefixed car lands under Box Car alongside the base game’s.

Car type filters are comma-separated patterns used to match rolling stock by their AAR car type code. They appear in style definitions, industry components, and load model definitions.

A filter is a comma-separated list of patterns. Each pattern is either an exact match or a prefix wildcard (ending in *):

PatternMatches
XMExactly XM
XM,FMExactly XM or FM
HM,HTHoppers: HM or HT
H*Any type starting with H (e.g. HM, HT, HMR, HMA, etc.)
G*,TMAny kind of gondolas, or TM tank cars.
*Anything

Exact matches are case-insensitive. An empty or absent filter matches all car types.

IndustryFilterWhy
Coal loaderHM,HTAccepts open and covered hoppers
Diesel fuelingTMOnly tank cars
Pulpwood loadingFBOnly bulkhead flatcars
Log loadingFLOnly skeleton log cars
BallastHM,HT,G*Hoppers and gondolas
General freightXM,G*,FMBoxcars, gondolas, and flatcars
Interchange*Accepts any car