This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
falcon4:file_formats:cam_trn_tac:uni_file [2009-02-15 00:44] lightning |
falcon4:file_formats:cam_trn_tac:uni_file [2009-02-16 06:56] (current) |
||
---|---|---|---|
Line 9: | Line 9: | ||
|NumUnits |Signed 16-bit integer|2|Number of unit records in the data that follows| | |NumUnits |Signed 16-bit integer|2|Number of unit records in the data that follows| | ||
|UncompressedSize|Signed 32-bit integer|4|Size, in bytes, of the data that follows, when it's uncompressed| | |UncompressedSize|Signed 32-bit integer|4|Size, in bytes, of the data that follows, when it's uncompressed| | ||
- | |DATA|byte[]|(CompressedSize-6) bytes|LZSS-compressed binary data.| | + | |DATA|byte[]|(CompressedSize-6) bytes|[[falcon4:file_formats:cam_trn_tac:lzss_compression|LZSS-compressed]] binary data.| |
==== Uncompressed contents of the DATA field ==== | ==== Uncompressed contents of the DATA field ==== | ||
Line 21: | Line 21: | ||
|Data[]| byte array| content and length depends on the type of unit defined in the classtable, at the index specified by (unitType -100), and the file version in-use. || All | | |Data[]| byte array| content and length depends on the type of unit defined in the classtable, at the index specified by (unitType -100), and the file version in-use. || All | | ||
- | For each unit record, you will need to retrieve the corresponding class table entry from the class table in order to | + | For each unit record, you will need to retrieve the corresponding class table entry from the [[falcon4:file_formats:ct_file|class table file ]]in order to |
interpret the data that follows in that unit record's data buffer in the .UNI file. | interpret the data that follows in that unit record's data buffer in the .UNI file. | ||
Line 41: | Line 41: | ||
Immediately following the data for that unit, is another "UnitType"/Data[] pair. This continues until you have read "NumUnits" records from the file. | Immediately following the data for that unit, is another "UnitType"/Data[] pair. This continues until you have read "NumUnits" records from the file. | ||
- | **Note: this information is valid for versions up to about version 73. Details for subsequent versions are currently not documented ** | + | **Note: this information is valid for versions up to about version 71. Details for subsequent versions are currently not documented ** |
Line 138: | Line 138: | ||
|specialty| byte|1 | | All| | |specialty| byte|1 | | All| | ||
|stores[]| byte[200] |200 | | < 69| | |stores[]| byte[200] |200 | | < 69| | ||
- | |stores[]| byte[220] |220 | | > = 69| | + | |stores[]| byte[220] |220 | | 69 thru 71 (inclusive)| |
+ | |stores[]| byte[600] |600 | | > = 72| | ||
|pilots[]| Pilot[36] | | |< 29 | | |pilots[]| Pilot[36] | | |< 29 | | ||
|pilots[]| Pilot[48] | | | > = 29 | | |pilots[]| Pilot[48] | | | > = 29 | | ||
Line 376: | Line 377: | ||
==== LoadoutArray structure ==== | ==== LoadoutArray structure ==== | ||
^Field^Data Type^Width (in bytes)^Description^Versions^ | ^Field^Data Type^Width (in bytes)^Description^Versions^ | ||
- | |Stores[]|LoadoutStruct[5]| | |All| | + | |Stores[]|LoadoutStruct[5]| 5 * 32 = 160 bytes| |All| |
==== LoadoutStruct structure ==== | ==== LoadoutStruct structure ==== |