Help:VE267

From TrainzOnline
Revision as of 13:18, 17 May 2024 by Pw3r (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

member <function/variable name> is obsolete in object <class name>.

This error is reported by the TrainzScript compiler when script code is attempting to call an obsolete function or access an obsolete member. This error indicates that the script is not fully compatible with newer versions of the game (eg. TRS19 onward) and may not work correctly or may induce runtime performance problems. Depending on the version of Trainz in use, and the trainz-build version of the asset in question, this error may be considered a warning only. Script authors should be careful attention to this message even in cases where it is "just" a warning; it indicates a problem that needs fixing to ensure correct behaviour.

Legacy Scripts
Assets scripts developed at a time when the function/member in question was not flagged as obsolete may trigger this error. This means that the asset is reliant on obsolete functionality and will need to be updated or replaced. Route and session developers should avoid using such content in their routes. Any such content uploaded to the Download Station may be considered faulty and may be automatically submitted to the Content Repair Group.

Legacy Session Support
There is also a scenario where an update to a legacy asset may correctly use modern functionality, but also offer a fallback mode where legacy script APIs are used if the asset version originally placed used the legacy APIs. Scripts should be written such that this should be a one-off scenario with an in-place upgrade to new data formats. This should not result in the scripts continuing to use the fallback mode in place of the modern APIs.

Personal tools