"Trainz-build" tag

From TrainzOnline
(Difference between revisions)
Jump to: navigation, search
(rv vandalism, statements of error never justified)
(Improve accuracy. Remove redundancy. Corrected voicing to first party from 3rd party. Moved the meat of the page back to the middle, not stuffed in some tiny little side area. Etc, etc.)
Line 1: Line 1:
 
{{ORP-top}}
 
{{ORP-top}}
 
==Trainz-build tag number==
 
==Trainz-build tag number==
A '''Trainz-build tag''' number or '''version number''' is the number assigned in an asset's [[Config.txt file|Config.txt]] {{wp|source code}} {{wp|INI file}} as part of the technology tracking and matching system in Trainz. It indicates the asset (or content's) '''tech-level''' for an asset built to the specifications of a '''[[Trainz build versions|Trainz code build version]]'''. As Trainz has grown and changed, the data models needed to impliment improvements changed, and the Trainz-build tag level system was installed to group the correct data type with the correct software version of Trainz releases. Exactly what makes up legal fields in a '''trainz-build tag''' ''level'' has evolved over the years, and is the source of some of the errors in the download of older content. Some required {{wp|data type}}s have been eliminated, some added, and some moved to other [[Trainz Containers]]—the data structures that are used by the trainz data KIND types as sub-data types.  
+
The '''Trainz-build tag''' number indicates the minimum '''Trainz Version''' required to use the asset. Trainz will not attempt to load an asset which has a trainz-build tag that is newer than it's own version number.
 +
This tag is also an indication of the age of the asset, and the standards to which it is built. 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.
 
 
 
 
{{UserTip|The word version has an inexact technical meaning. The meaning of ''''Trainz Retail version'''', and ''''Trainz version'''' are not identical, for the first refers to a product release, a ''''base named retail version'''' such as TRS2006 which was given when it was released into the massed market somewhere at some time. The latter, '''Trainz version''' may mean the same initially, but when that product release needs a software {{wp|Patch (computing)|bug-fix patch}} or has a {{wp|service pack}} installed the ''''''code build version'''''' and the tech-level tracking '''''software version/Trainz-build tag''''' version may both change to other code numbers. Any type of {{wp|software update}} creates a new code build number. It is how the programmer staff keeps what version has which software code inside. If the change does not change the technology of the release, if it is a {{wp|Hotfix}} the'' 'Trainz build-version' does not increment'', so the Trainz-build tag number is the same as before, whilst the code build has evolved. Service packs are considered product advancements, so both tracking code numbers will be larger. A retail release may have multiple service packs, so in it's final version—before N3V Games coins a new Retail release name— the service packs will change to reflect different technologies added with each service pack. Each such release upgrades the base named product some, so at that time, the Trainz-build version also increments—because the later indicates a different Code build of the software. }}  
+
{{UserTip|The word ''version'' is used in Trainz to refer to three different concepts. There is the '''Trainz Retail Version''', the '''Trainz Version''' and the '''Trainz Build Number'''.
 +
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. This code is updated whenever a significant change to Trainz is made. 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. Different language versions of the same product will also generally share the same ''Trainz Version''.
 +
The '''Trainz 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 uses the ''Trainz Version'' numeric code.
 +
}}  
  
{| border=2 cellpadding=5 cellspacing=2 style="align=right; float:right; margin: 10px 0 10px 10px;"
+
Trainz-Build version numbers and their mapping to official Trainz release versions are as follows:
|'''trainz-build'''<br>tech-level <br/>version or tag# || '''First Trainz product versions<br/>to support the listed content<br/>tech-level (buiild-tag) version'''
+
{| border=2 cellpadding=5 cellspacing=2  
|-
+
|'''trainz-build''' || Trainz product for which the asset was designed
| {{center|1.0 }} || [[Trainz SP3|Trainz SP3]]
+
|-
+
| {{center|1.1 }} || [[Trainz SP3|Trainz SP1]]
+
|-
+
| {{center|1.2 }} || [[Trainz SP3|Trainz SP2]]
+
 
|-
 
|-
 
| {{center|1.3 }} || [[Trainz SP3|Trainz SP3]]
 
| {{center|1.3 }} || [[Trainz SP3|Trainz SP3]]
Line 42: Line 43:
 
| {{center|3.0 }} || [[TS2009 SP1]]
 
| {{center|3.0 }} || [[TS2009 SP1]]
 
|-
 
|-
| {{center|3.1 }} || [[TS2009 SP2]]
+
| {{center|3.1 }} || [[TS2009 SP2]] / [[TS2009 SP3]]
 
|-
 
|-
| {{center|3.2 }} || [[TS2009 SP3]] / [[TS2010]]
+
| {{center|3.2 }} || [[TS2010]] / [[TS2010 SP1]]
 
|-
 
|-
| {{center|3.3 }} || [[TS2010 SP3]] / [[TS2009 SP4]]
+
| {{center|3.3 }} || [[TS2010 SP2]] / [[TS2010 SP3]] / [[TS2009 SP4]]
 
|-
 
|-
 
| {{center|3.4 }} || [[TS2010 SP4]]
 
| {{center|3.4 }} || [[TS2010 SP4]]
Line 57: Line 58:
 
|}
 
|}
  
==Trainz build versions==
 
'''[[Trainz build versions|Trainz code build]]''' or version numbers are assigned first to each released ''''''retail version/retail release'''''' of Trainz, then change by application of {{wp|Hot fix}}es and {{wp|Service packs}}, but while the hot fixes change the code build number, they do not advance the Trainz-build version number, which nowadays will be displayed on the title bar of {{h|ContentManager.exe}} (this is a recent improvement). Content may be created for different versions, making use of the newer functions in a more recent release, when it does so, it must be assigned the corresponding Trainz-build tag tech-level or version number. Consequently, some new-generation assets will not function in earlier versions of the simulator. Some older one's need tweaked, so called {{h|Error fixing}} to comply with the three newer {{wp|Graphical_user_interface|GUI run time}} modules typically affected by service pack releases: {{H|Surveyor}}, {{H|Railyard}} and {{H|Driver}}.
 
&nbsp;
 
 
==Asset compatibility==
 
==Asset compatibility==
It is important ''for assets'' [[config.txt file]]s to list the version of Trainz with which they are compatible. For older Trainz builds, this is done by entering a Trainz-Build number in the model config.txt file. If used (many content creators hand create assets) the utility program [[Content Creator Plus]] will automatically add the correct trainz-build level version to the config.txt file. Manually edited asset creation frequently copies working materials from another similar asset, and in such cases the asset creator will elect to add a lower build tag version to the asset, for such levels if correctly applied, open the new asset up for use and exploitation by more people; many choose not to move on to a newer Trainz release, particularly now that later versions of TS2010 and TS2012 are needing more advanced computer architectures and high performance video cards.  
+
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.
 +
&nbsp;
 +
 
 +
A correctly-constructed asset built for an older version will usually function in a newer version of Trainz. However, Trainz content validation is improved over time, and newer versions of Trainz detect errors that older versions did not pick up on. Some content may be detected as 'faulty' in a current Trainz version that was missed in the version it was originally created for.
 +
&nbsp;
 +
 
 +
It should be noted that content that is uploaded to the [[Download Station]] is validated by the most recent version of Trainz, using the validation compatibility for the trainz-build specified by the asset.
 
&nbsp;
 
&nbsp;
==Older vs Newer build versions==
 
A correctly-constructed asset built for an older version will usually function in a newer version of Trainz, but this is not always guaranteed, as there have been amendments made to subsequent versions. An article [[List of known breaking changes]] has been in the works for some time by chief programmer [[User talk:Windwalkr|Windwalkr]]. A model using the latest graphical functions will not work in an earlier version. Assets with older technologies sometimes fail in the new data model and processing, despite the effort to fix such content items entering a users data base.
 
  
There have been recent changes to vett assets uploaded to the [[Download Station]]. Uploaded content items now are validated against the new data requirements in force for that version. The Trainz-build tag is found in all Trainz config.txt files, an {{wp|INI file|asset's INI file}}&mdash;a type of source code provided by content creators, an that number  identifies which version of Trainz you have installed and when you use the [[Content Manager]], it will not allow the download of a more advanced/recent asset with a data model that is incompatible with your version. Happily, a lower build-tag most often means the asset can still be used in newer Trainz releases.
+
If [[Content Creator Plus]] is used to modify an asset, it will automatically update the trainz-build version in the config.txt file to the current Trainz version. If this version has changed significantly, other changes to the config.txt file will probably be required.
 +
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''.
 
&nbsp;
 
&nbsp;
The approved Trainz-Build version numbers and their mapping to official Trainz release versions are as follows:
 
  
==Assigning asset build levels==
+
==Obsolete Versions==
Trainz-build numbers up to and including 2.8 are considered by N3V programmers as obsolete as of September 2012 and they believe they should no longer be used.  
+
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.
  
 
{{TBKR|trainz-build tag}}
 
{{TBKR|trainz-build tag}}

Revision as of 18:12, 14 October 2013

Trainz-build tag number

The Trainz-build tag number indicates the minimum Trainz Version required to use the asset. Trainz will not attempt to load an asset which has a trainz-build tag that is newer than it's own version number. This tag is also an indication of the age of the asset, and the standards to which it is built. 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.  

Trainz User Tip:
The word version is used in Trainz to refer to three different concepts. There is the Trainz Retail Version, the Trainz Version and the Trainz Build Number. 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. This code is updated whenever a significant change to Trainz is made. 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. Different language versions of the same product will also generally share the same Trainz Version. The Trainz 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 uses the Trainz Version numeric code.

Trainz-Build version numbers and their mapping to official Trainz release versions are as follows:

trainz-build Trainz product for which the asset was designed
1.3
Trainz SP3
1.5
Ultimate Trainz Collection
1.6
Ultimate Trainz Collection SP1
2.0
TRS2004
2.1
TRS2004 SP1
2.2
TRS2004 SP2 - Passenger Pack
2.3
TRS2004 SP3
2.4
TRS2004 SP4
2.5
TRS2006
2.6
TRS2006 SP1
2.7
Trainz Classics 1&2
2.8
Trainz Classics 3
2.9
TS2009
3.0
TS2009 SP1
3.1
TS2009 SP2 / TS2009 SP3
3.2
TS2010 / TS2010 SP1
3.3
TS2010 SP2 / TS2010 SP3 / TS2009 SP4
3.4
TS2010 SP4
3.5
TS12
3.6
TS12 and Trainz Simulator Mac
3.7
TS12 SP1

Asset compatibility

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, Trainz content validation is improved over time, and newer versions of Trainz detect errors that older versions did not pick up on. Some content may be detected as 'faulty' in a current Trainz version that was missed in the version it was originally created for.  

It should be noted that content that is uploaded to the Download Station is validated by the most recent version of Trainz, using the validation compatibility for the trainz-build specified by the asset.  

If Content Creator Plus is used to modify an asset, it will automatically update the trainz-build version in the config.txt file to the current Trainz version. If this version has changed significantly, other changes to the config.txt file will probably be required. 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

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.

Personal tools