TIE95 Cockpit File Author: Jagged Fel (jaggedfel621@gmail.com) Site: http://idmr.empirereborn.net Updated: 2009.10.05 ===== The .INT file is the master file which defines the layout of a given cockpit. All possible views and even the other screens (Goals, Threat Display, etc) are defined in each file. ===== INT Structure The following values are used through this and all of my file definitions unless otherwise specified: NAME LENGTH DESC ---- ------ ---- BYTE 1 unsigned 8-bit CHAR 1 ASCII character SHORT 2 signed Int16 LONG 8 signed Int64 STR(*) * null-terminated string, * is a decimal number There are two subsections for this file, filesize is 0x635 -- 0x000 View[28] (enum) 0x3F0 Layout[95](,) (enum) 0x62A STR(9) PanelName 0x633 BYTE Unknown 0x634 BYTE Reserved (0) -- struct View (size 0x24) { 0x00 BYTE Status (enum) 0x01 STR(9) LfdFilename 0x0A SHORT TransparencyMaskX 0x0C SHORT TransparencyMaskY 0x0E SHORT TransparencyMaskWidth 0x10 SHORT TransparencyMaskHeight 0x12 SHORT YAxis 0x14 CHAR[8] ViewName 0x1C LONG Reserved (0) } struct Layout(parameter, parameter2) (size 0x6) { 0x0 SHORT ImageX 0x2 SHORT ImageY 0x4 BYTE parameter 0x5 BYTE parameter2 } ===== Structure Details -- View -- The View section is rather simple. LfdFilename lets the application know where to find the data for the given view. Status for many of the views will be 0x91 for Default. Views such as ThreatDisplay and MissionGoals are typically identical for all craft, there is little reason to change this when creating new cockpits. Views such as Right* and *Rear tend to be mirrors of their Left* and *Forward counterparts if they are not Default. ViewName is the string shown (when applicable) when the view is in use. YAxis is the height offset from the center of the targeting reticule to the center of the screen (although the Gunboat has a value of zero when it should be 0xFFBE, or -66). -- Layout -- Well, it's pretty much just that. This portion defines where all of the bits and pieces of the cockpit go, and how they are to be displayed/behave. ImageX and ImageY are easy enough to understand. Refer to the Layout enum definition for the Parameter values. Some are fixed values, others are enums in their own right. PanlIndex values refer to the file defined later in PanelName and specifiy which image is to be used. After we get to the end and defined the locations, *now* we define which file contains all of the images for the instruments in PanelName. ===== Enum Definitions View 00 Forward 01 Left Forward 02 Left 03 Left Rear 04 Rear 05 Right Rear 06 Right 07 Right Forward 08 Forward High 09 Left Forward High 0A Left Hight 0B Left Rear High 0C Rear High 0D Right Rear High 0E Right High 0F Right Forward High 10 Up 11 Default 12 Unused 13 No Cockpit 14 Threat Display 15 Mission Goals 16 Inflight Map 17 Radio Log 18 Damage Assessment 19 Wingman Commands 1A Keyboard Commands 1B Flight Options Status 01 Present 90 Absent 91 Default C0 Mirror Forward C1 Mirror Left Forward C2 Mirror Left C3 Mirror Left Rear C4 Mirror Rear C5 Mirror Right Rear C6 Mirror Right C7 Mirror Right Forward C8 Mirror Forward High C9 Mirror Left Forward High CA Mirror Left High CB Mirror Left Rear High CC Mirror Rear High CD Mirror Right Rear High CE Mirror Right High CF Mirror Right Forward High D0 Mirror Up D1 Mirror Default D2 Mirror Unused D3 Mirror No Cockpit D4 Mirror Threat Display D5 Mirror Mission Goals D6 Mirror Inflight Map D7 Mirror Radio Log D8 Mirror Damage Assessment D9 Mirror Wingman Commands DA Mirror Keyboard Commands DB Mirror Flight Options Layout 00 Front Snesor (0, 0) 01 Rear Sensor (0, 0) 02 CMD Screen (0, Zoom) 03 Laser/Ion1 (PanlIndex, LaserOption (enum)) 04 Laser/Ion2 (PanlIndex, LaserOption (enum)) 05 Laser/Ion3 (PanlIndex, LaserOption (enum)) 06 Laser/Ion4 (PanlIndex, LaserOption (enum)) 07 Laser/Ion5 (PanlIndex, LaserOption (enum)) 08 Laser/Ion6 (PanlIndex, LaserOption (enum)) 09 Laser/Ion7 (PanlIndex, LaserOption (enum)) 0A Laser/Ion8 (PanlIndex, LaserOption (enum)) 0B Warhead Light1 (PanlIndex, WarheadOption (enum)) 0C Warhead Light2 (PanlIndex, WarheadOption (enum)) 0D Warhead Light3 (PanlIndex, WarheadOption (enum)) 0E Warhead Light4 (PanlIndex, WarheadOption (enum)) 0F Warhead Digit1 (DigitOption (enum), 0) 10 Warhead Digit2 (DigitOption (enum), 0) 11 Warhead Digit3 (DigitOption (enum), 0) 12 Warhead Digit4 (DigitOption (enum), 0) 13 Front Inner Shield (PanlIndex, 0) 14 Front Outer Shield (PanlIndex, 0) 15 Rear Inner Shield (PanlIndex, 0) 16 Rear Outer Shield (PanlIndex, 0) 17 Hull Indicator (PanlIndex, 0) 18 Speed Indicator (DigitOption (enum), 0x4A) 19 Engine Indicator (DigitOption (enum), 0x4A) 1A Engine Power (PanlIndex, 0) 1B Laser Power (PanlIndex, 0) 1C Shield Power (PanlIndex, 0) 1D Beam Power (PanlIndex, 0) 1E Mission Time (DigitOption (enum), 0) 1F Camera Light (0, 0) 20 Camera Digit (DigitOption (enum), 0) 21 Unknown1 22 Unknown2 23 Beam Segments (PanlIndex, 0) 24 Reticule (PanlIndex, 0) 25 Reticule Laser1 (PanlIndex, 0) 26 Reticule Laser2 (PanlIndex, 0) 27 Reticule Laser3 (PanlIndex, 0) 28 Reticule Laser4 (PanlIndex, 0) 29 Reticule Laser5 (PanlIndex, 0) 2A Reticule Laser6 (PanlIndex, 0) 2B Reticule Laser7 (PanlIndex, 0) 2C Reticule Laser8 (PanlIndex, 0) 2D CMD Frame (PanlIndex, 0) 2E Left Laser Frame (PanlIndex, 0) 2F Right Laser Frame (PanlIndex, 0) 30 Warhead Qty Frame (PanlIndex, 0) 31 Beam Frame (PanlIndex, 0) 32 Hull/Shield Frame (PanlIndex, 0) 33 Speed/Camera Frame (PanlIndex, 0) 34 Front Sensor Frame (PanlIndex, 0) 35 Rear Sensor Frame (PanlIndex, 0) 36 Laser Power Frame (PanlIndex, 0) 37 Engine Power Frame (PanlIndex, 0) 38 Shield Power Frame (PanlIndex, 0) 39 Beam Power Frame (PanlIndex, 0) 3A CMD System Digits (DigitOption (enum), 0x47) 3B CMD Distance - High (DigitOption (enum), 0x47) 3C CMD Distance - Low (DigitOption (enum), 0x47) 3D CMD Shield Digits (DigitOption (enum), 0x47) 3E CMD Hull Digits (DigitOption (enum), 0x47) 3F CMD Cargo String (0, 0) 40 Unknown3 41 CMD Component String (0, 0) 42 Reticule Laser Lock (PanlIndex, 0) 43 Reticule Starship Lock (PanlIndex, 0) 44 Reticule Warhead Lock (PanlIndex, 0) 45 Threat Display Name (0, 0) 46 Threat Display Cargo (0, 0) 47 Threat Display Distance - High (DigitOption (enum), 0x4A) 48 Threat Display Distance - Low (DigitOption (enum), 0x4A) 49 Threat Display Lasers (PanlIndex, 0xFD) 4A Threat Display Ions (PanlIndex, 0xFD) 4B Threat Display Warheads (PanlIndex, 0xFD) 4C Threat Display Beam (PanlIndex, 0xFD) 4D Threat Display Shields (DigitOption (enum), 0x46) 4E Threat Display Hull (DigitOption (enum), 0x52) 4F Threat Display Orders (0, 0) 50 Threat Display Target (0, 0) 51 Threat Display Distance (0, 0) 52 Threat Display Time (0, 0) 53 Disabled Shield Power Frame (PanlIndex, 0) 54 Disabled Beam Power Frame (PanlIndex, 0) 55 Disabled Beam Frame (PanlIndex, 0) 56 CMD Systems String (0, 0x46) 57 CMD Distance String (0, 0x46) 58 CMD Shields String (0, 0x46) 59 CMD Hull String (0, 0x46) 5A CMD Target String (0, 0x46) 5B CMD Beam Charge (0, 0) 5C Unknown4 5D Unknown5 5E Unknown6 LaserOption (X value is ±60 when switched) 00 Left 01 Right WarheadOption 00 Left + not used 01 Right? FD Left + used DigitOption 00 T/F Internal 01 Single Digit 02 Double Digit 03 Triple Digit 04 Quad Digit =====