1111#pragma pack(push, 1)
1231#pragma pack(push, 1)
1308#pragma pack(push, 1)
1311#pragma pack(push, 1)
1341#pragma pack(push, 1)
1353#pragma pack(push, 1)
1411#pragma pack(push, 1)
1481#pragma pack(push, 1)
1504#pragma pack(push, 1)
1578#define SPACE_OBJECT_COUNT 70
1579#define SPACE_LAST_MOVING_OBJECT 66
1580#define EYE_OBJECT 67
1581#define SCRATCH_VIEW_OBJECT 69
1582#define DIRECTION_VIEW_COUNT 62
1583#define DIRECTION_SHAPE_TABLE_COUNT 3
1593#define MANEUVER_HANDLER_COUNT 50
1595#define OBJECT_DATA_COUNT 49
1596#define OBJECT_DATA_INDEX(sourceType) ((sourceType) - 12)
1602#define OBJECT_DATA_LASER_CANNON 7
1603#define OBJECT_DATA_NEUTRON_GUN 8
1604#define OBJECT_DATA_MASS_DRIVER 9
1605#define OBJECT_DATA_PARTICLE_CANNON 10
1608#define OBJECT_DATA_TURRET_GUN 11
1609#define OBJECT_DATA_DART_DF 15
1610#define OBJECT_DATA_JAVELIN_HS 16
1611#define OBJECT_DATA_PILUM_FF 17
1612#define OBJECT_DATA_SPICULUM_IR 18
1613#define OBJECT_DATA_TORPEDO 19
1614#define OBJECT_DATA_CHAFF_POD 20
1615#define OBJECT_DATA_PORCUPINE_MINE 21
1616#define OBJECT_DATA_ASTEROID1 22
1617#define OBJECT_DATA_ASTEROID2 23
1618#define OBJECT_DATA_ASTEROID3 24
1619#define OBJECT_DATA_ASTEROID4 25
1620#define OBJECT_DATA_ASTEROID5 26
1621#define OBJECT_DATA_ASTEROID6 27
1622#define OBJECT_DATA_ROCK_CHUNK 28
1623#define OBJECT_DATA_GIRDER_CHUNK 29
1624#define OBJECT_DATA_SHIP_TUBING 30
1625#define OBJECT_DATA_METAL_SHEET 31
1626#define OBJECT_DATA_SHIP_WING 32
1627#define OBJECT_DATA_BURNING_DEBRIS 33
1628#define OBJECT_DATA_O_RING 34
1629#define OBJECT_DATA_PIPE 35
1630#define OBJECT_DATA_EXPLOSION_SMALL 36
1631#define OBJECT_DATA_EXPLOSION_MEDIUM 37
1632#define OBJECT_DATA_EXPLOSION_LARGE 38
1633#define OBJECT_DATA_THRUSTERS 43
1634#define OBJECT_DATA_EJECTED_PILOT 44
1635#define OBJECT_DATA_DEBRIS_GLASS 45
1636#define OBJECT_DATA_DATA_CAPSULE 46
1637#define OBJECT_DATA_SPACE_DUST 46
1638#define OBJECT_DATA_DEBRIS_DUST 47
1639#define MISSION_SHIP_COUNT 16
1641#define MISSION_NAV_POINT_COUNT 10
1642#define MISSION_OBJECTIVE_COUNT 8
1646#define SHIP_OBJECTIVE_NOT_ALIVE 5
void(__cdecl *g_pIxFree)(void *)
#define OBJECT_DATA_CHAFF_POD
char CutsceneSequence_size_must_be_0x1f[sizeof(CutsceneSequence)==0x1f ? 1 :-1]
@ OBJECT_DATA_ASTEROID_FIELD
char SceneFlicCacheEntry_size_must_be_0x08[sizeof(SceneFlicCacheEntry)==0x08 ? 1 :-1]
char CutsceneMusicNode_size_must_be_0x0d[sizeof(CutsceneMusicNode)==0x0d ? 1 :-1]
char ConstellationStar_size_must_be_0x06[sizeof(ConstellationStar)==0x06 ? 1 :-1]
char CannedSceneMusicCommandRecord_size_must_be_0x16[sizeof(CannedSceneMusicCommandRecord)==0x16 ? 1 :-1]
char CutsceneObjectResourceList_size_must_be_0x32[sizeof(CutsceneObjectResourceList)==0x32 ? 1 :-1]
char BriefingPacketHeader_size_must_be_0x28[sizeof(BriefingPacketHeader)==0x28 ? 1 :-1]
char BarracksBunkState_size_must_be_0x0a[sizeof(BarracksBunkState)==0x0a ? 1 :-1]
char PilotRecord_size_must_be_0x26[sizeof(PilotRecord)==0x26 ? 1 :-1]
@ MISSION_TYPE_WARP_ARRIVE
@ MISSION_TYPE_CANNED_SEQUENCE
@ MISSION_TYPE_RENDEZVOUS
@ MISSION_TYPE_SPLIT_PATROL
@ MISSION_TYPE_BOGUS_AVOID_CRASH
char CutsceneTextResource_size_must_be_0x0a[sizeof(CutsceneTextResource)==0x0a ? 1 :-1]
char CampaignGlobals_pilot_status_must_start_at_0xa0[offsetof(CampaignGlobals, pilotStatus)==0xa0 ? 1 :-1]
char CannedSceneObjectEventRecord_size_must_be_0x30[sizeof(CannedSceneObjectEventRecord)==0x30 ? 1 :-1]
char LegacyConstellationParticle_size_must_be_0x08[sizeof(LegacyConstellationParticle)==0x08 ? 1 :-1]
@ CAMPAIGN_BADGE_FIFTEEN_MISSIONS
@ CAMPAIGN_BADGE_FIVE_KILLS
@ CAMPAIGN_BADGE_TEN_MISSIONS
@ CAMPAIGN_BADGE_TWENTY_FIVE_KILLS
@ CAMPAIGN_BADGE_FIVE_MISSIONS
@ CAMPAIGN_BADGE_SHIP_TYPE_BASE
@ CAMPAIGN_BADGE_FIRST_MISSION
char InputManagerState_size_must_be_0x21[sizeof(InputManagerState)==0x21 ? 1 :-1]
char ConstellationObjectDefinition_size_must_be_0x08[sizeof(ConstellationObjectDefinition)==0x08 ? 1 :-1]
char PilotProfile_size_must_be_0x60[sizeof(PilotProfile)==0x60 ? 1 :-1]
char ScreenViewportGeometry_size_must_be_0x10[sizeof(ScreenViewportGeometry)==0x10 ? 1 :-1]
char MissionObjective_size_must_be_0x1e[sizeof(MissionObjective)==0x1e ? 1 :-1]
@ OBJECT_DATA_EJECTION_POD
@ OBJECT_DATA_PROJECTILE_IMPACT_EFFECT
@ OBJECT_DATA_SHIP_DAMAGE_EFFECT_FIRST
char TalkingHeadOrigin_size_must_be_0x08[sizeof(TalkingHeadOrigin)==0x08 ? 1 :-1]
char SceneHotspot_size_must_be_0x09[sizeof(SceneHotspot)==0x09 ? 1 :-1]
char ConversationSceneRecord_size_must_be_0x0d[sizeof(ConversationSceneRecord)==0x0d ? 1 :-1]
char MissionHeader_size_must_be_0x18[sizeof(MissionHeader)==0x18 ? 1 :-1]
char MissionObjectiveDisk_size_must_be_0x40[sizeof(MissionObjectiveDisk)==0x40 ? 1 :-1]
char NavMapBeacon_size_must_be_0x25[sizeof(NavMapBeacon)==0x25 ? 1 :-1]
char DiskFileRecord_size_must_be_0x10[sizeof(DiskFileRecord)==0x10 ? 1 :-1]
char BarracksAnimationState_size_must_be_0x68[sizeof(BarracksAnimationState)==0x68 ? 1 :-1]
char SceneAnimationObject_size_must_be_0x36[sizeof(SceneAnimationObject)==0x36 ? 1 :-1]
char HazardField_size_must_be_0x14[sizeof(HazardField)==0x14 ? 1 :-1]
char ConstellationParticle_size_must_be_0x0a[sizeof(ConstellationParticle)==0x0a ? 1 :-1]
@ OBJECT_TYPE_HYPERSPACE_JUMP_FLASH
@ OBJECT_TYPE_KILRATHI_BASE
@ OBJECT_TYPE_TIGERS_CLAW
@ OBJECT_TYPE_NEUTRON_PARTICLE_GUN
@ OBJECT_TYPE_HEAT_SEEKING_MISSILE
@ OBJECT_TYPE_DEBRIS_METAL_SHEET
@ OBJECT_TYPE_EJECTED_PILOT
@ OBJECT_TYPE_MASS_DRIVER_CANNON
@ OBJECT_TYPE_DEBRIS_WING
@ OBJECT_TYPE_DEBRIS_GLASS
@ OBJECT_TYPE_DEBRIS_DUST
@ OBJECT_TYPE_IMAGE_RECOGNITION_MISSILE
@ OBJECT_TYPE_DEBRIS_O_RING
@ OBJECT_TYPE_LASER_CANNON
@ OBJECT_TYPE_LASER_SPARK
@ OBJECT_TYPE_DEBRIS_PIPE
@ OBJECT_TYPE_ASTEROID_FIELD
@ OBJECT_TYPE_DUMB_FIRE_MISSILE
@ OBJECT_TYPE_DEBRIS_SHIP_GIRDER_CHUNK
@ OBJECT_TYPE_SPARK_TRAIL
@ OBJECT_TYPE_DEBRIS_SHIP_TUBING
char CampaignVictoryProjectile_size_must_be_0x16[sizeof(CampaignVictoryProjectile)==0x16 ? 1 :-1]
char CannedSceneObjectStateRecord_size_must_be_0x35[sizeof(CannedSceneObjectStateRecord)==0x35 ? 1 :-1]
char CannedSceneRecordHeader_size_must_be_6[sizeof(CannedSceneRecordHeader)==6 ? 1 :-1]
char SaveGameDiskCampaignState_size_must_be_0x44[sizeof(SaveGameDiskCampaignState)==0x44 ? 1 :-1]
@ OBJECTIVE_HOLD_FORMATION
@ OBJECTIVE_BREAK_FORMATION
char MusicResource_size_must_be_6[sizeof(MusicResource)==6 ? 1 :-1]
#define OBJECT_DATA_TORPEDO
char ScrambleShipDetail_size_must_be_0x05[sizeof(ScrambleShipDetail)==0x05 ? 1 :-1]
char MissionObjectiveSource_size_must_be_0x40[sizeof(MissionObjectiveSource)==0x40 ? 1 :-1]
@ OBJECT_DATA_SPICULUM_IMAGE_RECOGNITION_MISSILE
@ OBJECT_DATA_DART_DUMB_FIRE_MISSILE
@ OBJECT_DATA_PILUM_FRIEND_OR_FOE_MISSILE
@ OBJECT_DATA_JAVELIN_HEAT_SEEKING_MISSILE
char BriefingCharacterLayout_size_must_be_0x12[sizeof(BriefingCharacterLayout)==0x12 ? 1 :-1]
char SceneFlicObject_size_must_be_0x4b[sizeof(SceneFlicObject)==0x4b ? 1 :-1]
char CutsceneSoundEffect_size_must_be_0x0a[sizeof(CutsceneSoundEffect)==0x0a ? 1 :-1]
char CockpitTargetCameraOverlay_size_must_be_0x20[sizeof(CockpitTargetCameraOverlay)==0x20 ? 1 :-1]
char CampaignState_size_must_be_0x58[sizeof(CampaignState)==0x58 ? 1 :-1]
char MissionShipRecord_size_must_be_0x3c[sizeof(MissionShipRecord)==0x3c ? 1 :-1]
char MissionNavPointDisk_size_must_be_0x4d[sizeof(MissionNavPointDisk)==0x4d ? 1 :-1]
char MissionNavPoint_size_must_be_0x65[sizeof(MissionNavPoint)==0x65 ? 1 :-1]
char ScrambleAnimationActor_size_must_be_0x18[sizeof(ScrambleAnimationActor)==0x18 ? 1 :-1]
char NavMapObjectiveStyle_size_must_be_0x10[sizeof(NavMapObjectiveStyle)==0x10 ? 1 :-1]
char CutsceneResourceTable_size_must_be_0x18[sizeof(CutsceneResourceTable)==0x18 ? 1 :-1]
char ObjectResourceSlot_size_must_be_0x16[sizeof(ObjectResourceSlot)==0x16 ? 1 :-1]
char MissionShipDisk_size_must_be_0x2a[sizeof(MissionShipDisk)==0x2a ? 1 :-1]
char CannedSceneBriefingCharacterRecord_size_must_be_0x10[sizeof(CannedSceneBriefingCharacterRecord)==0x10 ? 1 :-1]
char SaveGameDiskRecord_size_must_be_0x33c[sizeof(SaveGameDiskRecord)==0x33c ? 1 :-1]
char NavMapLabel_size_must_be_0x0a[sizeof(NavMapLabel)==0x0a ? 1 :-1]
char ObjectTypeData_weaponLoadout_must_be_at_0x3e[offsetof(ObjectTypeData, weaponLoadout)==0x3e ? 1 :-1]
#define OBJECT_DATA_ASTEROID1
char PacketResourceDescriptor_size_must_be_0x0a[sizeof(PacketResourceDescriptor)==0x0a ? 1 :-1]
@ SPECIAL_MANEUVER_STOP_DRIFT
@ SPECIAL_MANEUVER_LOST_CONTROL
@ SPECIAL_MANEUVER_BLOWING_UP
@ SPECIAL_MANEUVER_NORMAL
@ SPECIAL_MANEUVER_SUPER_BRAKE
@ SPECIAL_MANEUVER_UNKNOWN_9
@ SPECIAL_MANEUVER_KILL_ENGINES
@ SPECIAL_MANEUVER_BOGUS_PUSH
@ SPECIAL_MANEUVER_AFTERBURNER
@ SPECIAL_MANEUVER_BOGUS_LOOP
char ObjectTypeData_objectClass_must_be_at_0x14[offsetof(ObjectTypeData, objectClass)==0x14 ? 1 :-1]
char CockpitResourceLayout_size_must_be_0x13a[sizeof(CockpitResourceLayout)==0x13a ? 1 :-1]
char CutsceneScene_size_must_be_0x19[sizeof(CutsceneScene)==0x19 ? 1 :-1]
char ShipIntelligenceMetadata_size_must_be_0x0c[sizeof(ShipIntelligenceMetadata)==0x0c ? 1 :-1]
@ MANEUVER_TARGET_MISSILE
char CockpitLayout_size_must_be_0x118[sizeof(CockpitLayout)==0x118 ? 1 :-1]
char SaveGameDiskObjective_size_must_be_0x19[sizeof(SaveGameDiskObjective)==0x19 ? 1 :-1]
char SaveGameRecord_size_must_be_0x3a0[sizeof(SaveGameRecord)==0x3a0 ? 1 :-1]
@ OBJECT_CLASS_FIXED_OBJECT
@ OBJECT_CLASS_CAPITAL_SHIP
@ OBJECT_CLASS_PROJECTILE
char CutscenePlane_size_must_be_0x2b[sizeof(CutscenePlane)==0x2b ? 1 :-1]
char PersonnelFileSlot_size_must_be_0x26[sizeof(PersonnelFileSlot)==0x26 ? 1 :-1]
char SceneResourceTable_size_must_be_0x08[sizeof(SceneResourceTable)==0x08 ? 1 :-1]
char ShipWeaponSlot_size_must_be_0x0a[sizeof(ShipWeaponSlot)==0x0a ? 1 :-1]
char ObjectTypeData_size_must_be_0xf3[sizeof(ObjectTypeData)==0xf3 ? 1 :-1]
char FireworkState_size_must_be_0x0c[sizeof(FireworkState)==0x0c ? 1 :-1]
char PacketSectionHandle_size_must_be_0x14[sizeof(PacketSectionHandle)==0x14 ? 1 :-1]
char MissionHeaderDisk_size_must_be_0x18[sizeof(MissionHeaderDisk)==0x18 ? 1 :-1]
BarracksBunkState bunks[8]
signed char portraitFrameCount
signed char animationPhase
const signed char * animation
signed char firstPortraitFrame
short shipPilotIndices[8]
short objectiveSighted[8]
unsigned char field_3c[0x10]
short shipMissionFlags[8]
short shipVelocityState[16]
signed char seriesHistory[8]
PilotRecord * currentPilot
signed char seriesHistoryCount
enum ObjectType playerShipType
signed char currentSeries
unsigned char aceFlags[4]
int personalityDeathMission[8]
signed char currentMission
ShortRect pilotHandBounds[5]
ShortRect rightVduBounds[5]
CockpitScannerGeometry scanner[5]
ShortRect leftVduBounds[5]
ShortPoint readoutOrigins[4][6]
CockpitBarDefinition bars[8]
ShortPoint weaponDisplayPositions[16]
ShortPoint pilotHandOrigin
signed char targetLockDisplayEnabled
CockpitScannerGeometry scanner
signed char lightOnFrame[7]
ShortPoint readoutOrigins[4]
ShortRect pilotHandBounds
signed char lightOffFrame[7]
ShortPoint damagePositions[4]
ShortPoint hudMessageOrigin
unsigned char field_16[6]
unsigned char field_1e[2]
short faceAnimationOffset
short mouthAnimationOffset
struct CutsceneMusicNode * previous
struct CutsceneMusicNode * next
unsigned char resourceIndex
unsigned char inheritedCount
unsigned char inheritedDataCount
short * dataSymbolIndices
struct CutsceneObjectResourceList * next
short * dataRuntimeIndices
unsigned char scriptCount
short * scriptSymbolIndices
short * scriptRuntimeIndices
unsigned char inheritedScriptCount
unsigned char * spriteIndices
unsigned char * scriptCursor
unsigned char * scriptStart
const unsigned char * filenameIndices
const unsigned char * sectionIndices
struct CutsceneResourceTable * next
unsigned char * sequenceIndices
unsigned char * scriptCursor
unsigned char * scriptStart
unsigned char * scriptCursor
unsigned char * scriptStart
unsigned char * planeIndices
struct CutsceneSoundEffect * next
struct CutsceneTextResource * next
unsigned char logicalFile
struct Viewport * viewport
signed char triggers[4][2]
short preloadObjectTypes[2]
unsigned short proximityRadius
short preloadObjectTypes[3]
short preloadObjectClasses[3]
signed char waveCommands[8]
short preloadLogicalFiles[3]
signed char triggers[4][2]
signed char formationIndex
signed char leaderMissionIndex
signed char formationSpot
signed char targetMissionIndex
signed char missionParameter
signed char leaderMissionIndex
signed char formationIndex
signed char formationSpot
unsigned char * labelColour
unsigned char * unvisitedColour
unsigned char * markerColour
unsigned int sizeAndFlags
unsigned char * animation
unsigned char * animation
unsigned char weaponLoadout[0xA1]
short afterburnerVelocity
unsigned char decoder[0x3020]
unsigned char input[0x400]
unsigned char ** resource
unsigned char field_45[0x11]
signed char currentMission
signed char currentSeries
signed char seriesHistoryCount
signed char seriesHistory[8]
short personalityDeathMission[8]
unsigned char aceFlags[4]
SaveGameDiskCampaignState campaign
SaveGameDiskObjective objectives[16]
MissionObjective objectives[16]
signed char * scriptStart
signed char * scriptCursor
signed char * repeatCursor
void * auxiliaryAllocation
unsigned char * linkedScript
unsigned char * scriptCursor
unsigned char * scriptStart
unsigned int decoderState
signed char animationFrame
signed char animationState
const unsigned short * animation
unsigned short geometryCount