The follow articles describe the format of various user-editable files used within the Trainz environment.
When creating files for use with Trainz, care should be taken to follow the specified format accurately. Even if a particular deviation from the documented format is permitted by the current game and tools, it may become disallowed in future versions as loaders are updated and validation techniques are improved.
Reading N3V File Formats
If you develop software which reads these file formats, you should accept and ignore minor deviations where feasible, in order to future-proof your software. Base your file reader on the documented format, not the particulars of the current Trainz implementation. It is likely that implementation-specific details will change between Trainz versions, whereas the file formats are typically extended but not often replaced.
Writing Binary Files
There exist a number of binary file formats which are produced by N3V or by N3V-provided utilities and which are not formally documented. We strongly recommend that third-party developers do not write directly to these formats. N3V does not support any such tools or any files created by these tools. Reading from these undocumented binary formats is considered harmless but unsupported.
Copy ProtectionThe use of an N3V binary file format should not be considered as a strong protection mechanism against snooping or modification except where specifically stated otherwise by N3V. Custom binary file formats are used to allow high-performance access to data from within the game environment. Security and obfuscation are neither primary not secondary goals for these formats, and N3V may provide mechanisms which convert from the binary formats back into "common" formats without prior notice. It should be noted that the technical capability of reverse-engineering the contents of a file does not equate to the legal right to modify or distribute said file. Before modifying someone else's content, please seek the permission of the creator. If you are in any doubt as to your rights in this area, please seek advice from a legal professional.
|This reference page may be based on or adapted from portions of freeware (Public Domain) assets used as examples and/or from the
under the . This page will likely include more textual explanations, exposition, history, and/or examples than the source page on the same material. |
The TrainzOnline Wiki is for the most part maintained by the programmers or knowledgeable content creators and may have newer more up-to-date information on the current trainz-build code standards, which have some tendency to change as features are added to the software.