Definitions
Definitions describe the types of objects in Railroader — cars, locomotives, props, loads, and more. Each definition specifies the properties and components that make up an object type.
Definitions.json
Section titled “Definitions.json”Definitions are declared in a Definitions.json file inside an asset pack. The file contains an array of definition entries:
[ { "identifier": "my-pack/my-boxcar", "metadata": { "name": "My Boxcar", "description": "A custom boxcar.", "tags": ["freight"], "credits": "Author Name" }, "definition": { "kind": "Car", "modelIdentifier": "./my-boxcar-model", "carType": "XM", ... } }]Each entry has:
| Field | Type | Description |
|---|---|---|
identifier | string | Unique ID in domain/name format |
metadata | object | Display information (see below) |
definition | object | The definition object, distinguished by kind |
Metadata
Section titled “Metadata”| Field | Type | Description |
|---|---|---|
name | string | Display name |
description | string | Short description |
tags | string[] | Categorization tags |
credits | string | Attribution |
Base Fields
Section titled “Base Fields”All definitions share these fields:
| Field | Type | Default | Description |
|---|---|---|---|
kind | string | — | Discriminator that selects the definition type |
components | Component[] | [] | Components attached to this definition |
Every other field comes from the kind — see each kind’s own page for its full field list.
Definition Types
Section titled “Definition Types”| Kind | Description |
|---|---|
Car | Freight and non-powered rolling stock |
SteamLocomotive | Steam-powered locomotive |
ArticulatedSteamLocomotive | Articulated (Mallet) steam locomotive |
DieselLocomotive | Diesel-electric locomotive |
Prop | Scenery object placed in the world (buildings, masks) |
Truck | Wheel truck / bogie |
Load | Freight or cargo type |
StaticLoadModel | Visual model for a load (static placement) |
LinearLoadModel | Visual model for a load (linear repeating) |
Material | Material override |
Texture | Texture asset reference (e.g. builder photos) |
CarStyle | Car paint scheme |
ReportingMark | Declares that a railroad exists |
Whistle | Steam whistle audio/model |
Horn | Diesel horn audio/model |
Bell | Locomotive bell audio |
Inheritance
Section titled “Inheritance”Some definitions extend others, inheriting all of their fields:
ObjectDefinition├── Car│ ├── SteamLocomotive│ │ └── ArticulatedSteamLocomotive│ └── DieselLocomotive├── Prop├── Truck├── Load├── StaticLoadModel├── LinearLoadModel├── Material├── Texture├── CarStyle├── ReportingMark├── Whistle├── Horn└── BellFor field types like AssetReference, AnimationReference, and TransformReference that appear across multiple definitions, see Common Types.
© 2026 Giraffe Lab LLC. All rights reserved.