Trainz/tags/trainz-build tags

From Wikibooks, open books for an open world
< Trainz‎ | tags(Redirected from Trainz/tags/trainz-build tag)
Jump to: navigation, search
Fundamentals for Trainz Trainees

Introductory Trainz — page by page instruction
TOC | BeginningsFun | AM&C | Creation | InBook Refs ORP Refs:  • Index • Containers • Kinds • Tags | Appendixes  • Vers
 Mouse use

Trainz-build tag number[edit]

The trainz-build tag is an important single decimal digit floating point number that is applied to any new asset created under the installations particular technology (i.e. it's code build).

  • This quantity is often also referred to as the Trainz Version. Note that several or many code build releases (each having a unique code build number identifying it's exact mix of component software) which share and have the same trainz-build value or version number.


P train grey.png
The word version is used in Trainz to refer to three different concepts. There is the Trainz Retail Version, the Trainz Version (or more correctly, the trainz-build 'tag's value') and the Trainz Build Number, also known as the code build number or code version.
  • The Trainz Retail Version is a text string for a product release, such as Trainz Simulator 2009.
  • The Trainz version is a numeric code (e.g 2.4 or 3.6) which is incremented for each major release, formally defined by Trainz software for any new asset. This code is updated whenever a significant change to the Trainz data model is made by a code build release.
  • Most service packs (which introduce significant functionality changes) will have a new Trainz Version, but hotfixes (which do not introduce significant functionality changes) do not see a Trainz version number change. BOTH generate different code build value changes, sometimes several times over, such as one per language released early in a products life cycle. Different language versions of the same product will also generally share the same Trainz Version/trainz-build code.
  • The Trainz Code Build Number is a unique number (e.g. 44653 or 58414) that identifies an individual Trainz release. All releases (including minor changes and language translations) have a different Trainz Build Number.
  • The Trainz-build tag value uses the Trainz Version numeric code, and after TS2009-SP3, the content manager Windows title bar repeats this value for ease of reference. Assets each report a value reflecting the technology (coding of the data model) they were meant to comply with.


  • Theoretically, from a newly created asset's point of view, the content manager assigned trainz-build tag number indicates the minimum Trainz Code Version required to use the asset. Conversely, assets with a lower Trainz-build version should be compatible with the later more modern install, albeit with an occasional need to tweak and update the data model of the asset.


TS10 SP2's Content Manager (V-3.2) happily imported TS12 version (V-3.4) texture cdp's for TransDEM.exe in November 2013. Other legacy versions of Trainz will also import 'Version unidentified' trainz content.   * Trainz software suites will not attempt to download and incorporate an asset into it's local database which has a trainz-build tag that is newer than it's own version number, but ... ** Unfortunately Content Manager's will continue to report there are updates, even when they are entirely inappropriate. * One can also import inappropriate trainz-build assets from other versions of Trainz or a library collection (say of fixed assets saved before committing after Faults cleanup—a 'handy habit' for those of us running more than one Trainz install), so one need be aware of that. This tag is also an indication of the age of the asset, and the general technical configuration and standards to which it is built. The values will range up from the oldest Trainz 1.0 release (2001) with three Service Packs making the version commonly referred to as Trainz V-1.3, or Trainz 1.3. Assets with old Trainz-build numbers are not built to take advantage of new Trainz features that did not exist in the version of Trainz that the asset was built for, and the oldest used approaches which have been entirely abandoned. The trainz-build tag itself was totally unknown until Trainz UTC and many CC's of that era and for a few years into even the TRS2004 era never assigned a TB code. TRS2006's fancy-schmancy CMP advance didn't even list them in one of it's data columns! Newer Trainz releases do their best to translate these older technologies into the newer releases standards (data organization and graphical tech) but some small percentage of assets cannot be converted. * For the new Trainz users:' the moral of this story is to examine trainz-build tags (versions) ASAP after importing new content into CM and provide human intelligence as to whether to delete, keep the asset, or set it aside; seek advice before trying to use, or risk breaking Trainz for while.
* Some content can be retrograded to work in earlier Trainz releases. More recently published Routes and Sessions cannot.
TB in Assets: The TB the asset was designed, uploaded in, or forced[note 1] into by N3V's artificially narrowed upload's gate-keeper software[note 2] and the TLCP.
The current highest trainz-build (TB) 'version number' is 3.9.
The TB mapping to official Trainz release versions are as follows:
'trainz-build' By retail release's shorthand titles: code build range
Trainz 1.3 (Trainz SP3), the (original) Trainz Community Edition[note 3] ???–???, 263, 277
a non-Trainz utility (PaintShed)
Spanish Language release of TB V1.3
Trainz UTC, or Ultimate Trainz Collection
Unused, skipped unless Internationalization releases or one was used for Trainz Routes
TRS2004 initial release or SP0
TRS2004 SP1
TRS2004 SP2 - Passenger Pack
TRS2004 SP3
TRS2004 SP4 - this version made Trainz, Trainz! The only thing missing was CMP and that's the only really important difference from the TRS's series that follows V2-5 to V2-8 but for some relatively minor features and tweaks.
TRS2006 SP1
Trainz Classics 1&2
Trainz Classics 3
TS2009 SP1
TS2009 SP2 / TS2009 SP3
TS2010 / TS2010 SP1
TS2010 SP2 / TS2010 SP3 / TS2009 SP4
TS2010 SP4
TS12 and Trainz Simulator Mac
TS12 SP1
Trainz Simulator Mac2
TS12 SP2 or T:ANE?

Asset compatibility[edit]

It is important for an asset to list the correct Trainz-build in the config.txt file. It specifies the version of Trainz the asset was intended to be used with. An earlier version of Trainz will refuse to load the asset. A later version of Trainz will enable appropriate backwards compatibility workarounds (e.g. using different validation requirements) as required.  

A correctly-constructed asset built for an older version will usually function in a newer version of Trainz. However, while Trainz content validation has improved over time, and newer versions of Trainz detect errors that older versions did not pick up on, many errors are useless make work caused by callous and rapacious programmer and management practices. Often, content may be detected as 'faulty' in a current Trainz version that was missed in the version it was originally created for, but the most frequent issues are missing thumbnail images which have nothing to do with the functionality of the asset, or obsoleted tag names.

Or that is the official party line per N3V, which ignores the fact there are errors they could just fix in parsing, such as ignoring legacy tag names like type, region, asset-filename, or name-xx, etc. and similarly could convert in situ older forms to newer container forms of data, then test for faults. They do neither putting the time cost of their unprofessionalism onto the customers who must one by one correct errors their software should be handling.  

It should be noted that content that is uploaded to the Download Station is validated for faults by the most recent version of Trainz—and may be rejected if an more stringent newer fault or error test has been put in place.[1]

This depends on the version of Trainz that you are running, and if we've updated the DLS error checking. I can make content that shows no errors in TS2009, but will be rejected from the DLS under the current error checking due to issues that TS2009 could not detect. This is essentially the same here. The DLS error checking is updated regularly, and may be more strict than the error checking in TS12 SP1. OTOH, TS:Mac2 is a newer release and will have most of the updates to the error checking.

We have stated many, many, many, many, many, times over the last 12 months that the error checking on the DLS is generally ahead of that in Trainz. Hence, if you are given a rejection notice with actual errors in it, you'll need to correct these.
—N3V spokesman ZecMurphy at, May 11th, 2014.[1]

Assets generated under a perfectly valid currently supported version of Trains, using the validation compatibility for the trainz-build specified by the asset, may still be rejected by the Download Station Software.


If Content Creator Plus CCP is used to modify an asset, it will automatically update the trainz-build version in the config.txt file to the current Trainz version it came with. This is problematic and contrary to the greatest interests of the most members in the Trainz community, as the lowest trainz-build code is desired from the standpoint of giving the asset the most Trainz users access to the new product (asset). Prior to V3.2, such codes could then be manually back-dated to a lower trainz-build, but the error checking in versions since requires exporting the asset-open-for-edit by copying the folder, reverting it, deleting it, editing the trainz-build code change in the copy, then re-importing it—a discourteous number of extra steps-in-the-dance for content creators, and yet another friction point with Trainz programmers. If Using CCP to fault fix and update, often this version with the invincibility of naive programmers forcing others to toe their line and if the asset specs have changed significantly, many other changes to the config.txt file will probably be required, as CCP wants to promote the asset to the current Trainz-build version.

P train grey.png
If you don't want to spend all of your Trainz time patching assets with the user unfriendly interface of CCP and it's demands on your entries, learn to master manually editing and committing to keep the edits down to only those actually necessary.

Assets which are manually edited will need the appropriate version entered. If the line is omitted entirely, the lowest possible version is assumed. This is currently Trainz-build 1.3.Ø  

Obsolete Versions[edit]

Trainz-build numbers up to and including 2.8 are considered obsolete as of September 2012 and can no longer be uploaded to the Download Station. See the Trainz Life-Cycle Policy for additional details.

Notes and references[edit]


  1. Trainz-build tag value 'creep' or 'inflation' (TB) has been forced upon the user community by the Trainz Life-cycle Policy and establishment of stricter testing of uploads to the DLS. There has been much controversy about this between the many CCs and the N3V Management culminating in some heated discussions since the CCs necessarily want the lowest TB and the N3V management wants the highest to motivate more users to upgrade.
     • CCs, having put months or years into an asset's generation understandably want to assign as low a TB as possible so more legacy Trainz owners can use it.
     • N3V whether for mercenary and pecuniary motives, certainly not based on technical grounds, adopted the TLCP to force uploaders to comply with the last 'supported Trainz' release's minimum build code, itself an controversial policy forced on the community, many of whom feel the four year cycle is ridiculously short with the backward compatibility of a Trainz product.
  2. The point is many newer uploads have been forced to adopt what started as a tech-level measure, that don't need a high TB, and can't upload it, unless the TB is inflated. This is particularly harsh on a Route Builder CC who may have spent 5-6 years on a TS09 masterwork— who must now revise a lot of terrain and re-evaluate a long list of assets to make sure the route is nearly Trainz/Trainz Highest compliant.
  3. Auran/N3V management reissued the term 'community edition' in mid-fall of 2014 for the earliest incomplete TANE release. In the event, this proved as many feared, a premature beta-test on a wide scale, including a iMAC release for the Christmas 2014 sales cycle.


  1. a b [Can-a-new-tag-be-made-for-Trainz ], ZecMurphy, Auran Community Assistant, May 11th, 2014, 09:02 PM