Trainz/Content Creators Guide

The Content Creator’s Guides (CCG) in whatever format and era, are designed to assist 3rd party content creators design and create functional content for the Trainz Railroad Simulator of the day. Since the advent of TS2009, the CCG's role as official reference document has been chaotically replaced by the generally incomplete and overall geek-language of the various 's distributed reference pages. The purpose of today's Trainz Wiki is that of the several seminal CCG documents &mdash; to detail the way in which all content should be designed and built to be compatible with Trainz's Graphics User Interfaces--the run time modules generating a virtual world and interactivity within. From late 2014 the TrainzOnline web pages began to be altered to describe the use of the various new functions in its Trainz: A New Era, and by early 2018 updates were to new standards expected in the forthcoming TRS19, released in late 2018. The point is these specifications, capability changes and evolving reference pages are actually dependent upon the Trainz Community's wishlist this particular go, in a product which spawns a new generation about every third year. The software implementing new user-asked-for-features forces any new necessary data definitions that were incorporated into the new release. Since new capabilities are what sells new versions (at least to current customers) new capabilities are actually dependent upon the new definitions now incorporated into the data model itself. And the Trainz Community, and its various subcommunities aren't shy and retiring, they make their voices heard and ultimately, SOME OF the data model therefore always changes somewhat  with most major version releases. So the coding of routines in the major modules has also been moving targets, especially with each version since TRS2006 incorporating more and more up front error checking&mdash;which is to say, check assets for compliance with those pre-published standards. The rare and unusual characteristic of Trainz models is their near total lack of incompatible older data. That's not to say an item off the DLS will automatically work, but that with some work, we humans can update them so they'll work with the new release. This is nearly as good, and far more educational.

Why a New User Consults CCG
Most assets can be upgraded relatively easily, and while an original Trainz asset won't have the slick look and feel of something developed with a 64 bit version of Trainz, most will generally function handily with a dollop of TLC, and many work fine as is without modifications. While the data configuration's details required by an asset of type X of KIND Y have evolved from the initial Trainz 0.9 Beta release; those original data enumerations have been remarkably stable and consistent, albeit repackaged a bit from time to time into new containers after such and such a build.

Other changes sometimes obsoleting a former legal keyword and related group of related values, sometimes replacing them requiring a translation step or substitution, and other times generalizing a data type into a or bundled into a  and modified and enhanced to provide alternative new mode by the addition other control keywords allowing something simple and limited to morph into wider variations taking on a suite of attributes.

If the Trainz Wiki provides specs for today's data model, when the asset has a venerable history coming into being in the misty pre-history of Trainz, one finds the new day model is filled with containers and may require a different KIND and category-class than the thing you download from the DLS which looks only vaguely like today's standard, but only because there are a handful of key words that match up. Well you can't call Ghost Busters', so what're you gonna do? The answer is go back and see how such an asset was configured in the earlier day, and what is said about its parameters. Then you go to the Trainz Wiki article page, but don't look at the current page like before (you had a look earlier, or you wouldn't have found it so different!), but goto the history and load up the very first page. You should see a spec more similar to the DLS download with it's 'faults'. Then examine the next changes after known release dates. TS09 began the Wiki era CCG replacement, so will be the earliest standards. It is also the most compatible to the TRS2006 family of releases (Up through TC3. The next key dates will be in 2011 (post-TS10 updates) and 2012 or 2013, etc. The Content Manager (CM) module manages content on your computer, communicates with the Download Station and uploads or downloads content. TS09 introduced greatly improved sorting and classification filtering, further refined in TS12, making searching and problem identification far more easily than in previous versions of Trainz.  TANE on the other hand, benefiting from greatly enhanced architecture optimizing use of multiple core 64 bit native processing power actually reduced searching and sorting ease because of an absurdly bad user interface design that is effectively hostile to users. Further the design triggers a sort immediately with a change of a single specification's change of state (e.g. one letter in a name parameter, in a mix of 5-6 criteria.)

Beginning with the TRS2006 Content Creator Plus module, CMs since incorporate error checking that assists in creating model assets that are compatible with the Download Station requirements, and in the creation of successful route and session run-time assets which are not crashed by bad digital models. Something which was all too common well into the late TRS2006 era, but not as bad as the crashes to the blue screen of death that occurred in the earliest Trainz.

This document provides the standards and procedures for a content creator to enter data for the model asset, using Content Creator Plus. It also provides advice on the creation of the model mesh using 3dsmax, and the creation of correct texture files for the model.

Scripting is an integral part of model creation, however details on script code and usage are included in a separate document. Only brief references to Scripting are made in this document, as far as they effect the creation requirements.

New content creation features added to TC include:
 * ability to vary track sounds on track for tunnels and bridges and for bogeys (tracksounds)
 * basic animated turnouts
 * ability to create backdrop objects
 * control of invisible track display (visible in minimap)
 * third-party configuration tags, in an extensions container
 * use of asset thumbnails, replacing art files and other picture files
 * new coupler performance tags and wheelslip functions
 * a new kind steam engine and kind texture group.

List of published CCG versions
CCG's were issued contemporaneously with the major retail releases in the Trainz evolved software system. The below are listed most recent to oldest.

Auran's in PDF format, the last official CCG was put up by the user community on the Trainz Wiki, where it is still answering questions left murkey in the Trainz Wiki official reference pages. Here on the Trainz Wikibook, we hope to fill in such knowledge gaps.

 See Also:  &mdash;
 * 1) TRS2006     download TRS2006 CCG
 * 2) TRS2004      TRS2004CCG download
 * 3) Trainz UTC      UTC_CCP_COMPLETE.zip &mdash; UTC in French  UTC_french_creation.zip
 * 4) Trainz 1.3 &mdash; like several of the links documented above the earliest Trainz CCG published as HTM files were seen to become disconnected links during the Summer-Fall of 2014 as Auran and N3V reconfigured it's websites and brought new servers online in preparation of the release of TANE (T:ANE). A complaint and service ticket including a direct appeal to Tony Hilliam was made.
 * 1) Trainz 1.3 &mdash; like several of the links documented above the earliest Trainz CCG published as HTM files were seen to become disconnected links during the Summer-Fall of 2014 as Auran and N3V reconfigured it's websites and brought new servers online in preparation of the release of TANE (T:ANE). A complaint and service ticket including a direct appeal to Tony Hilliam was made.