Fundamentals for Trainz Trainees

Trainz Asset Maintenance and Creation
TOC | BeginningsFun | AM&C | Creation | InBook Refs ORP Refs:  • Index • Containers • Kinds • Tags | Appendixes  • Vers
 Mouse use

Note to newcomers


The words Assets and Content are frequently used interchangeably on the Trainz forums because they are the same except for context. In a strict (technical computer-science-defined) sense, an 'asset' needs a container to become 'content', so we can split hairs over the difference between an Asset folder, the Asset source folder and the Content of an Install or the Contents of a Release Version (Its bundled software, i.e. both Content and so has a base collection of assets with a CM ready to add new assets from the DLS to all newcomers).[note 1]  

An Asset does not exist (within a particular Trainz Install) 'as content' just by residing somewhere on your computer's drive or network because you downloaded it[note 2] Access to the Asset can not be just by a data type association (link or call), but one in which the dependent asset is incorporated into the operational database of the install— because it is available as an independent asset or to be used by an independent 'parent' asset, which itself makes it an dependency asset (e.g. a Locomotive Bogey) placed in the container (a Locomotive digital model, a self-defining asset). An 'engine-sound' asset would obviously belong to a KIND engine-spec class of asset.   The most important container to individuals is her local data base (Selected by using 'The local content' filter (or tab) in Content Manager) which lists assets—initially just Routes and Sessions for us all; but then assets added to the code builds base data cabinets). Some items are optional. Some rolling stock parts only apply to powered rolling stock.

Asset titles


Remembering that Content and assets are often used interchangeably in Trainz-speak, these are pages in the Wikibook on the subject of Assets that do not involve intermediate or advanced Content Creation topics:

  1. Changing An Asset's Dependencies — This gets you into modifying an asset to use other sub-assets, such as for example, using a TS2009 better looking traincar bogey (truck) with that dinged-up and artfully dirty looking favorite box car from an earlier Trainz!
  2. config.txt files — In case you forgot, the heart and spine of every asset is it's config.txt file. This one is more advanced coverage than config.txt file introduced as introductory material.
  3. Copying Assets Between Versions And Copies Of Trainz — Downloaded content need not be downloaded again, neither do repaired assets. This is how to manage those needs.
  4. Cross-loading JA and libraries — JA's are compressed distributed content, compiled for a given release, libraries are the scripts they need. This deals with bringing assets from prior versions of Trainz into your newest.
  5. Hierarchy Of Assets — What they are, and how they inter-relate.
  6. When and How to modify an Asset KUID — Modifying an asset can be a violation of copyright law, but there are times when the community blesses the results. This deals with such philosophies, and gives the how-to and suggested practices to keep things straight.
  7. Removing Unwanted Assets — Trimming the FAT, the distilled wisdom of fellow users doing this hobby for years.
  8. Stations — Station assets are Industries with the product being people.
  9. Dealing with Asset Errors — An overview of assets and what you need to understand to step up and fix a few errors.
    1. Error Fixing 100 — A Table of Contents for Error Fixing 101... a series of Step-by-step illustrated tutorials on fixing Faulty Content. Should soon have links to videos on Error fixing too.
    2. Faulty Assets On DLS — List of assets which are known to need fixes for compliance with V2.9 error checking.
    3. Fixing Assets — The main reference for finding out what to do about an error message

Asset Organization


Trainz assets all start as data in the same folder, usually when edited, the folder will generally be named after the username tag listed in the mandatory parts of the TrainzBaseSpec in a config.txt file—the central data self-defining INI file that sets up each asset. As one discovers when one begins fixing faulty content two key data elements define what else must be defined inside such config.txt ini files: category-class, which loosely defines certain enumerated types describing the way the content creator means for the asset to be used (e.g. various types of rolling stock, scenery, interactive trackside items like signals, etc.) and the KIND specification container specifying certain sub-elements as are necessary.

In Trainz, all such sub-element associations are not necessarily independent assets, but some are called references (Meaning a sub-data type, a structure with particular properties and members—but which unlike a Kind can be used as a sub-element in a variety of Kinds in a parent child relationship) and which are included in various kind Kinds and whose active effects (subsequent processing) are based on the tag category-class tag and the Kind specifying that child.

Driver Session or Scenario

Route, Map or Layout


The category-class tag is to Map, the manuals, Trainz menus and surveyor controls refer to 'Routes' and route building and route builder tools, while the Model railroading Hobbiest world refers to a Layout. In each case, it is meant the data set defining a virtual world which in Trainz starts with a single Base map board.

The following assets are attached to map assets:
Ground Textures
Other structures such as windmills, lighthouses, etc
Electricity pylons
Road signs and signposts
Vehicles, Static Road types —somewhat confusing to the new comer, these are also sometimes classed as buildings or scenery assets.
Track —including tunnels and spline engineered (extendable) bridges.
Trackside Objects —includes a ton of general content: (signals, speedboards, gantry's, electrical panels etc.)
Industries (including passenger stations)

Rolling Stock


Rolling Stock, such as Locomotives (engines), passenger cars (carriages), and freight cars (wagons) are placed on a map in the Surveyor editor module, but actually are attached in the related Trainz Session module, while being enumerated (listed in a reference table of kuid codes) in the map.

These asset types are component parts of rolling stock assets:
Bogies (US English: Trucks)

Scenery Assets


Scenery assets are the life blood of Trainz virtual reality world's, and can range from complex scripted interactive elements such as signals and other "Trackside" interactive objects such as Turntables, switch-motors, switch-levers, and diamond crossings, Motor Vehicle crossings to allow roads, and of course trees, shrubbery, motor cars and Trucks (lorries), buildings of all shapes and sizes or colors. The group is vast, and selecting between the various optional elements is one of the things that separates a good route builder from the excellent virtual modeler.

HTML, media, and TrainzScript assets


Media assets in Trainz serve various functions.

Sounds —Sound file types are used to create background noises such the soft murmur of a brook, the raucous cawing of a crow, the sound of a distant church bell or a noisy bustling industrial area with jack hammers. They are essential aural scenery items, serving much the same function as a well designed three-dimensional scenery building (e.g. a Tree species, or fancy house). Many are attached and part of more dynamic objects and triggered solely when there is a specific action (The noise of a mechanical switch changing the position of junction points).
HTML Assets
Rules —rules are little applets fronting for a script asset used inside Driver Sessions. They provide 'software hooks' and enable the Session to communicate values with the gameplay software.
Driver Commands —are user modifiable rules that can be changed during driving Sessons or provided as AI Drivers task commands to be executed one at a time.
  • Allowed Driver Commands are controlled by the Driver Commands Rule, and that limits the optional choices to us humans in the drop down Driver Command menu when playing a session in Driver. This means if the session designer doesn't want you to navigate via a trackmark, or allow auto-coupling or decoupling, you have to modify the session in the session editor (auto-cloning the bundled route and session into your personal version) to access such a rule afterwards in the new modified session.
Scenarios supporting files
—Scenario support has been in all versions Trainz UTC to TS12 but has largely died a natural death from disuse of TrainzScript. It is not being supported in TANE.
Scenario TSO File —Scenario support file, the main program of a Trainz Scenario
Scenario GS or GSE File —Scenario, Rule, and session support Trainz script files. Often called Gamescript files, the second variety is encrypted, so locked from user editing. That status is almost always the case for any published Scenario asset.
The ..\libraries and various asset folders will continue using *.gs (open source) and *.gse (encrypted) files which are also used to create certain asset features and Rules, new Driver Commands, etc., all supporting Sessions.

Notes and references

  1. If you are truly new to Trainz, do yourself a big favor and take it slow with DLS acquisitions. Limit yourself to small batches of ten or so a day, and take a world and experiment with them, then move on to another batch. Do that for a few weeks in different asset types each day, then after you've been bit by assets needing fixed, and gained some experience doing so, then maybe try to find a group of sessions on the same independent route with a smart search (Far too many routes have negligible or idiotic sessions attached, or were uploaded with none. Buy quality routes by shopping this way for your first months. It's cheap to pay zero for goodly designed works—and four or more sessions on a map indicate a content creator with an eye on quality.
  2. Not content just...a file waiting for you to use it... because you downloaded it from a 3rd party content creator run website (there are hundreds, a long time Tradition in the community of Trainz Content Creator's, all CCs are basically predisposed to being geeks anyway, so running a website seems to be second nature to the lot of them.
    Many CCs gather into packs, or associations that may host a website, or like Trainz Pro Routes and the like, or not, like 'pre-1970s' railroad's special interest group like Yesterdayz Trainz. Despite the hosting an interest threads on the forums, every nationality seemingly seems bent on having its organizations independent and free of N3V and Auran.