falcon4:file_formats:cam_trn_tac:cmp_file
Differences
This shows you the differences between two versions of the page.
Previous revision | |||
falcon4:file_formats:cam_trn_tac:cmp_file [2009/02/14 20:36] – lightning | — | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== .CMP file ====== | ||
- | The .CMP file is one of the files embedded within a .CAM/ | ||
- | so contains some information that is more correctly found in other files, but also copied into this file for convenience. | ||
- | |||
- | ===== .CMP file format ===== | ||
- | |||
- | ==== Raw format (compressed contents) ==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^ | ||
- | |CompressedSize |DWORD|4|Size, | ||
- | |UncompressedSize|DWORD|4|Size, | ||
- | |DATA|byte[]|(CompressedSize-4)|LZSS-compressed binary data.| | ||
- | |||
- | ==== Uncompressed contents of the DATA field ==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^Versions^ | ||
- | |CurrentTime|unsigned 32-bit integer|4| |All| | ||
- | |TE_StartTime|unsigned 32-bit integer|4| |>=48| | ||
- | |TE_TimeLimit|unsigned 32-bit integer|4| |>=48| | ||
- | |TE_VictoryPoints|Signed 32-bit integer|4| |>=49| | ||
- | |TE_Type|Signed 32-bit integer|4| |>=52| | ||
- | |TE_number_teams|Signed 32-bit integer|4| |>=52| | ||
- | |TE_number_aircraft[]|array of Signed 32-bit integer * 8|4*8=32| |>=52| | ||
- | |TE_number_f16s[]|array of Signed 32-bit integer * 8|4*8=32| |>=52| | ||
- | |TE_team|Signed 32-bit integer|4| |>=52| | ||
- | |TE_team_pts[]|array of Signed 32-bit integer *8 |4*8=32| |>=52| | ||
- | |TE_flags|Signed 32-bit integer|4| |>=52| | ||
- | |TeamInfo[]|TeamBasicInfo[8]|222 *8 = 1776| |>=52| | ||
- | |LastMajorEvent|unsigned 32-bit integer|4| |>=19| | ||
- | |lastResupply|unsigned 32-bit integer|4| |All| | ||
- | |lastRepair|unsigned 32-bit integer|4| |All| | ||
- | |lastReinforcement|unsigned 32-bit integer|4| |All| | ||
- | |TimeStamp|Signed 16-bit integer|2| |All| | ||
- | |Group|Signed 16-bit integer|2| |All| | ||
- | |GroundRatio|Signed 16-bit integer|2| |All| | ||
- | |AirRatio|Signed 16-bit integer|2| |All| | ||
- | |AirDefenseRatio|Signed 16-bit integer|2| |All| | ||
- | |NavalRatio|Signed 16-bit integer|2| |All| | ||
- | |Brief|Signed 16-bit integer|2| |All| | ||
- | |TheaterSizeX|Signed 16-bit integer|2| |All| | ||
- | |TheaterSizeY|Signed 16-bit integer|2| |All| | ||
- | |CurrentDay|byte|1| |All| | ||
- | |ActiveTeam|byte|1| |All| | ||
- | |DayZero|byte|1| |All| | ||
- | |EndgameResult|byte|1| |All| | ||
- | |Situation|byte|1| |All| | ||
- | |EnemyAirExp|byte|1| |All| | ||
- | |EnemyADExp|byte|1| |All| | ||
- | |BullseyeName|byte|1| |All| | ||
- | |BullseyeX|Signed 16-bit integer|2| |All| | ||
- | |BullseyeY|Signed 16-bit integer|2| |All| | ||
- | |TheaterName|TCHAR[40]|40| |All| | ||
- | |Scenario|TCHAR[40]|40| |All| | ||
- | |SaveFile|TCHAR[40]|40| |All| | ||
- | |UIName|TCHAR[40]|40| |All| | ||
- | |PlayerSquadronID|VU_ID|8| |All| | ||
- | |NumRecentEventEntries|Signed 16-bit integer|2| |All| | ||
- | |RecentEventEntries[]|EventNode[NumRecentEventEntries]|sizeof(EventNode)*NumRecentEventEntries| |All| | ||
- | |NumPriorityEventEntries|Signed 16-bit integer|2| |All| | ||
- | |PriorityEventEntries[]|EventNode[NumPriorityEventEntries]|sizeof(EventNode)*NumPriorityEventEntries| |All| | ||
- | |CampMapSize|Signed 16-bit integer|2| |All| | ||
- | |CampMap[]|byte[CampMapSize]|(CampMapSize) bytes| |All| | ||
- | |LastIndexNum|Signed 16-bit integer|2| |All| | ||
- | |NumAvailableSquadrons|Signed 16-bit integer|2| |All| | ||
- | |SquadInfo[]|SquadInfo[NumAvailableSquadrons]|sizeof(SquadInfo)*NumAvailableSquadrons| |All| | ||
- | |Tempo|byte|1| |>=31| | ||
- | |CreatorIP|Signed 32-bit integer|4| |>=43| | ||
- | |CreationTime|Signed 32-bit integer|4| |>=43| | ||
- | |CreationRand|Signed 32-bit integer|4| |>=43| | ||
- | |||
- | ===== Structures used ===== | ||
- | |||
- | ==== TeamBasicInfo structure==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^ | ||
- | |teamFlag|byte|1| | | ||
- | |teamColor|byte|1| | | ||
- | |teamName|T_CHAR[20]|20| | | ||
- | |teamMotto|T_CHAR[200]|200| | | ||
- | |||
- | ==== VU_ID structure==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^ | ||
- | |num_|unsigned 32-bit integer|4| | | ||
- | |creator_|unsigned 32-bit integer|4| | | ||
- | |||
- | ==== SquadInfo structure==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^Version^ | ||
- | |x|single-precision 32-bit floating point|4| |All| | ||
- | |y|single-precision 32-bit floating point|4| |All| | ||
- | |id|VU_ID|8| |All| | ||
- | |descriptionIndex|Signed 16-bit integer|4| |All| | ||
- | |nameId|Signed 16-bit integer|4| |All| | ||
- | |airbaseIcon|Signed 16-bit integer|4| |All| | ||
- | |squadronPath|Signed 16-bit integer|4| |All| | ||
- | |specialty|byte|1| |All| | ||
- | |currentStrength|byte|1| |All| | ||
- | |country|byte|1| |All| | ||
- | |airbaseName|TCHAR[40]|40| |All| | ||
- | |airbaseNameExt|TCHAR[40]|40|additional 40 characters of airbaseName (only supported in earlier versions) |<42| | ||
- | |padding|byte|1|needed for the structure' | ||
- | |||
- | ==== EventNode structure==== | ||
- | ^Field^Data Type^Width (in bytes)^Description^ | ||
- | |x|Signed 16-bit integer|2| | | ||
- | |y|Signed 16-bit integer|2| | | ||
- | |time|unsigned 32-bit integer|4| | | ||
- | |flags|byte|1| | | ||
- | |Team|byte|1| | | ||
- | |padding|byte|2|needed for the structure' | ||
- | |EventText|Int32 pointer|4|as a pointer, this is only useful in-memory and is meaningless when restored from disk | | ||
- | |UiEventNode|Int32 pointer|4|as a pointer, only useful in-memory and is meaningless when restored from disk | | ||
- | |eventTextSize|unsigned 16-bit integer|2| | | ||
- | |eventText|TCHAR[eventTextSize]|eventTextSize| | | ||
falcon4/file_formats/cam_trn_tac/cmp_file.txt · Last modified: 2024/07/31 08:35 by snakeman