Difference between revisions of "MISDATA.DAT"

From UFOpaedia
Jump to navigation Jump to search
m (→‎Structure: Determining "target objects")
Line 14: Line 14:
 
== Structure ==
 
== Structure ==
  
The first 20 bytes are a count up of the various recoverable tile types in the map. They're only set if you actually won the mission by eliminating all enemy forces. These offsets + 100 index into the respecitve [[BASE.DAT]] values that need to be updated.
+
{| class="wikitable"
 +
|-
 +
!Offset<br>(Decimal)
 +
!Offset<br>(Hex)
 +
!Usage
 +
|-
 +
|colspan="3"|The first 20 bytes are a count up of the various recoverable tile types in the map. These two-byte integers are only set if you actually won the mission by eliminating all enemy forces. These offsets + 100 index into the respective [[BASE.DAT]] values that they'll be added to.
  
 
See [[Equipment Recovery]] for more information.
 
See [[Equipment Recovery]] for more information.
 +
|- valign="top"
 +
!<span id="0-1"></span>0-1
 +
!<span id="0x00-0x01"></span>0x00-0x01
 +
|[[UFO Power Source]] ([[MCD#59|MCD[59]]] set to 02).
 +
|- valign="top"
 +
!<span id="2-3"></span>2-3
 +
!<span id="0x02-0x03"></span>0x02-0x03
 +
|[[UFO Navigation]] ([[MCD#59|MCD[59]]] set to 03, not counted for alien bases).
 +
|- valign="top"
 +
!<span id="4-5"></span>4-5
 +
!<span id="0x04-0x05"></span>0x04-0x05
 +
|[[UFO Construction]] ([[MCD#59|MCD[59]]] set to 04, no known tiles have this set).
 +
|- valign="top"
 +
!<span id="6-7"></span>6-7
 +
!<span id="0x06-0x07"></span>0x06-0x07
 +
|[[Alien Food]] ([[MCD#59|MCD[59]]] set to 05).
 +
|- valign="top"
 +
!<span id="8-9"></span>8-9
 +
!<span id="0x08-0x09"></span>0x08-0x09
 +
|[[Alien Reproduction]] ([[MCD#59|MCD[59]]] set to 06, no known tiles have this set).
 +
|- valign="top"
 +
!<span id="10-11"></span>10-11
 +
!<span id="0x0A-0x0B"></span>0x0A-0x0B
 +
|[[Alien Entertainment]] ([[MCD#59|MCD[59]]] set to 07).
 +
|- valign="top"
 +
!<span id="12-13"></span>12-13
 +
!<span id="0x0C-0x0D"></span>0x0C-0x0D
 +
|[[Alien Surgery]] ([[MCD#59|MCD[59]]] set to 08).
 +
|- valign="top"
 +
!<span id="14-15"></span>14-15
 +
!<span id="0x0E-0x0F"></span>0x0E-0x0F
 +
|[[Examination Room]] ([[MCD#59|MCD[59]]] set to 09).
 +
|- valign="top"
 +
!<span id="16-17"></span>16-17
 +
!<span id="0x10-0x11"></span>0x10-0x11
 +
|[[Alien Alloys]] ([[MCD#59|MCD[59]]] set to 10).
  
  <b>0-1/00-01:</b> [[UFO Power Source]]    (tiles with MCD[59] set to 02).
+
The total is divided by 2 for a UFO mission or 30 for an alien base. The value stored here is further divided by 5 to get the result you see on the debriefing screen.
  <b>2-3/02-03:</b> [[UFO Navigation]]     (tiles with MCD[59] set to 03).
+
|- valign="top"
              Not counted for alien bases.
+
!<span id="18-19"></span>18-19
  <b>4-5/04-05:</b> [[UFO Construction]]    (tiles with MCD[59] set to 04).
+
!<span id="0x12-0x13"></span>0x12-0x13
              No known tiles have this set.
+
|[[Alien Habitat]] ([[MCD#59|MCD[59]]] set to 11, no known tiles have this set).
  <b>6-7/06-07:</b> [[Alien Food]]          (tiles with MCD[59] set to 05).
+
|- valign="top"
  <b>8-9/08-09:</b> [[Alien Reproduction]] (tiles with MCD[59] set to 06).
+
!<span id="20-21"></span>20-21
              No known tiles have this set.
+
!<span id="0x14-0x15"></span>0x14-0x15
  <b>10-11/0A-0B:</b> [[Alien Entertainment]] (tiles with MCD[59] set to 07).
+
|Mission descriptor. Possible values:
  <b>12-13/0C-0D:</b> [[Alien Surgery]]      (tiles with MCD[59] set to 08).
+
<b>UFO</b>                             <b>TFTD</b>
  <b>14-15/0E-0F:</b> [[Examination Room]]    (tiles with MCD[59] set to 09).
+
  0: UFO Site                      0: USO Site
<b>16-17/10-11:</b> [[Alien Alloys]]        (tiles with MCD[59] set to 10).
+
  1: Terror Site                  1: Port/Island Attack
              The total is divided by 2 for a UFO mission or 30 for an alien base.
+
2: Base Defense (X-COM Base)    2: Base Defense (X-COM Base)
              The value stored here is further divided by 5 to get the result you
+
  3: Base Offense (Alien Base)     3: Colony Stage 1
              see on the debriefing screen.
+
  4: Mars Stage 1                  4: T'leth Stage 1
<b>18-19/12-13:</b> [[Alien Habitat]]      (tiles with MCD[59] set to 11).
+
5: Mars Stage 2                  5: T'leth Stage 2
              No known tiles have this set.
+
                                  6: T'leth Stage 3
 
+
                                  7: Artefact Site Stage 1
<b>20-21/14-15:</b> Mission descriptor. Possible values:
+
                                  8: Artefact Site Stage 2
<b>UFO</b>                                      <b>TFTD</b>
+
                                  9: Passenger/Cargo Ship Stage 1
0: UFO Site                              0: USO Site
+
                                10: Passenger/Cargo Ship Stage 2
1: Terror Site                            1: Port/Island Attack
+
                                11: Colony Stage 2
2: Base Defense (X-Com Base)              2: Base Defense (X-Com Base)
+
|-
3: Base Offense (Alien Base)              3: Colony Stage 1
+
|colspan="3"|<span id="22-73"></span><span id="0x16-0x49"></span>Values <b>22-73</b> (Hex: <b>16-49</b>) primarily hold scoring information. As per the tile recovery indexes, these are only stored in the final "end-of-combat" MISSION2.DAT. For temporary storage mid-mission, some of these values are stored in [[WGLOB.DAT]].
4: Mars Stage 1                          4: T'leth Stage 1
+
|- valign="top"
5: Mars Stage 2                          5: T'leth Stage 2
+
!<span id="22-23"></span>22-23
                                          6: T'leth Stage 3
+
!<span id="0x16-0x17"></span>0x16-0x17
                                          7: Artefact Site Stage 1
+
|Aliens killed.
                                          8: Artefact Site Stage 2
+
|- valign="top"
                                          9: Passenger/Cargo Ship Stage 1
+
!<span id="24-25"></span>24-25
                                          10: Passenger/Cargo Ship Stage 2
+
!<span id="0x18-0x19"></span>0x18-0x19
                                          11: Colony Stage 2
+
|Aliens killed score.
 
+
|- valign="top"
Values <b>22-73</b> (Hex: <b>16-49</b>) primarily hold scoring information. As per the tile recovery indexes, these are only stored in the final "end-of-combat" MISSION2.DAT. For temporary storage mid-mission, some of these values are stored in [[WGLOB.DAT]].
+
!<span id="26-27"></span>26-27
 
+
!<span id="0x1A-0x1B"></span>0x1A-0x1B
<b>22-23/16-17:</b> Aliens killed.
+
|Alien corpses.
 
+
|- valign="top"
<b>24-25/18-19:</b> Aliens killed score.
+
!<span id="28-29"></span>28-29
 
+
!<span id="0x1C-0x1D"></span>0x1C-0x1D
<b>26-27/1A-1B:</b> Alien corpses.
+
|Corpse score.
 
+
|- valign="top"
<b>28-29/1C-1D:</b> Corpse score.
+
!<span id="30-31"></span>30-31
 
+
!<span id="0x1E0x1F"></span>0x1E-0x1F
<b>30-31/1E-1F:</b> Live aliens captured.
+
|Live aliens captured.
 
+
|- valign="top"
<b>32-33/20-21:</b> Live alien score.
+
!<span id="32-33"></span>32-33
 
+
!<span id="0x20-0x21"></span>0x20-0x21
<b>34-35/22-23:</b> Artefacts (unresearched alien items) recovered.
+
|Live alien score.
 
+
|- valign="top"
<b>36-37/24-25:</b> Artifacts score.
+
!<span id="34-35"></span>34-35
 
+
!<span id="0x22-0x23"></span>0x22-0x23
<b>38-39/26-27:</b> Alien base control destroyed. This flags if you win a [[Alien_Base_Assault|base offense mission]] by killing all enemy forces, or if you destroy all 16 nav modules in the command center. If not zero, the base you were attacking will be removed from the world map at the end of combat.
+
|Artefacts (''unresearched'' alien items) recovered.
 
+
|- valign="top"
<b>40-41/28-29:</b> Base control score.
+
!<span id="36-37"></span>36-37
 
+
!<span id="0x24-0x25"></span>0x24-0x25
<b>42-43/2A-2B:</b> Civilians killed by aliens.
+
|Artefacts score.
 
+
|- valign="top"
<b>44-45/2C-2D:</b> Civilians killed by aliens score (typically negative).
+
!<span id="38-39"></span>38-39
 
+
!<span id="0x26-0x27"></span>0x26-0x27
<b>46-47/2E-2F:</b> Civilians killed by X-Com.
+
|Alien base control destroyed. This flags if you win a [[Alien_Base_Assault|base offense mission]] by killing all enemy forces, or if you destroy all 16 nav modules in the command center. If not zero, the base you were attacking will be removed from the world map at the end of combat.
 
+
|- valign="top"
<b>48-49/30-31:</b> Civilians killed by X-Com score (typically negative).
+
!<span id="40-41"></span>40-41
 
+
!<span id="0x28-0x29"></span>0x28-0x29
<b>50-51/32-33:</b> Civilians saved.
+
|Base control score.
 
+
|- valign="top"
<b>52-53/34-35:</b> Civilians saved score.
+
!<span id="42-43"></span>42-43
 
+
!<span id="0x2A-0x2B"></span>0x2A-0x2B
<b>54-55/36-37:</b> X-Com troopers killed.
+
|Civilians killed by aliens.
 
+
|- valign="top"
<b>56-57/38-39:</b> X-Com troopers killed score (typically negative).
+
!<span id="44-45"></span>44-45
 
+
!<span id="0x2C-0x2D"></span>0x2C-0x2D
<b>58-59/3A-3B:</b> X-Com troopers "retired through injury" (never actually flags).
+
|Civilians killed by aliens score (typically negative).
 
+
|- valign="top"
<b>60-61/3C-3D:</b> X-Com troopers "retired through injury" score (never actually flags).
+
!<span id="46-47"></span>46-47
 
+
!<span id="0x2E-0x2F"></span>0x2E-0x2F
<b>62-63/3E-3F:</b> X-Com troopers MIA.
+
|Civilians killed by X-COM.
 
+
|- valign="top"
<b>64-65/40-41:</b> X-Com troopers MIA score (typically negative).
+
!<span id="48-49"></span>48-49
 
+
!<span id="0x30-0x31"></span>0x30-0x31
<b>66-67/42-43:</b> Tanks lost.
+
|Civilians killed by X-COM score (typically negative).
 
+
|- valign="top"
<b>68-69/44-45:</b> Tanks lost score (typically negative).
+
!<span id="50-51"></span>50-51
 
+
!<span id="0x32-0x33"></span>0x32-0x33
<b>70-71/46-47:</b> X-Com craft lost (GeoScape ignores this if you actually lose a craft, Tactical sets it regardless).
+
|Civilians saved.
 
+
|- valign="top"
<b>72-73/48-49:</b> X-Com craft lost score (GeoScape ignores this if you actually lose a craft, Tactical doesn't set it regardless).
+
!<span id="52-53"></span>52-53
 
+
!<span id="0x34-0x35"></span>0x34-0x35
<b>74-75/4A-4B:</b> A value based on the time at the [[LOC.DAT]] location. References into a table stored in the executable in order to define the values in [[BGLOB.DAT]].
+
|Civilians saved score.
 
+
|- valign="top"
<b>76/4C:</b> For a UFO site, this is the [[LOC.DAT]] reference corresponding to the crash site. This is plausibly true for every mission type (with the possible exception of the [[Cydonia|Mars assault]]). Used to determine whether the alien ship crashed or not (and therefore whether to randomly detonate the power supply units). ''I seem to remember that tweaking this byte could have an effect on [[BGLOB.DAT]], but I might've confused myself. - [[User:Bomb Bloke|Bomb Bloke]] 03:45, 23 June 2008 (PDT)''
+
!<span id="54-55"></span>54-55
 
+
!<span id="0x36-0x37"></span>0x36-0x37
<b>77/4D:</b> Index into [[CRAFT.DAT]] pointing to the craft sent on this mission. In the case of base defense (see offset [79]), it indexes into [[BASE.DAT]].
+
|X-COM troopers killed.
 
+
|- valign="top"
<b>78/4E:</b> Victory status.
+
!<span id="56-57"></span>56-57
 +
!<span id="0x38-0x39"></span>0x38-0x39
 +
|X-COM troopers killed score (typically negative).
 +
|- valign="top"
 +
!<span id="58-59"></span>58-59
 +
!<span id="0x3A-0x3B"></span>0x3A-0x3B
 +
|X-COM troopers "retired through injury" (never actually flags).
 +
|- valign="top"
 +
!<span id="60-61"></span>60-61
 +
!<span id="0x3C-0x3D"></span>0x3C-0x3D
 +
|X-COM troopers "retired through injury" score (never actually flags).
 +
|- valign="top"
 +
!<span id="62-63"></span>62-63
 +
!<span id="0x3E-0x3F"></span>0x3E-0x3F
 +
|X-COM troopers MIA.
 +
|- valign="top"
 +
!<span id="64-65"></span>64-65
 +
!<span id="0x40-0x41"></span>0x40-0x41
 +
|X-COM troopers MIA score (typically negative).
 +
|- valign="top"
 +
!<span id="66-67"></span>66-67
 +
!<span id="0x42-0x43"></span>0x42-0x43
 +
|Tanks lost.
 +
|- valign="top"
 +
!<span id="68-69"></span>68-69
 +
!<span id="0x44-0x45"></span>0x44-0x45
 +
|Tanks lost score (typically negative).
 +
|- valign="top"
 +
!<span id="70-71"></span>70-71
 +
!<span id="0x46-0x47"></span>0x46-0x47
 +
|X-COM craft lost (GeoScape ignores this if you actually lose a craft, Tactical sets it regardless).
 +
|- valign="top"
 +
!<span id="72-73"></span>72-73
 +
!<span id="0x48-0x49"></span>0x48-0x49
 +
|X-COM craft lost score (GeoScape ignores this if you actually lose a craft, Tactical doesn't set it regardless).
 +
|- valign="top"
 +
!<span id="74-75"></span>74-75
 +
!<span id="0x4A-0x4B"></span>0x4A-0x4B
 +
|A value based on the time at the [[LOC.DAT]] location. References into a table stored in the executable in order to define the values in [[BGLOB.DAT]].
 +
|- valign="top"
 +
!<span id="76"></span>76
 +
!<span id="0x4C"></span>0x4C
 +
|For a UFO site, this is the [[LOC.DAT]] reference corresponding to the crash site. This is plausibly true for every mission type (with the possible exception of the [[Cydonia|Mars assault]]). Used to determine whether the alien ship crashed or not (and therefore whether to randomly detonate the power supply units). ''I seem to remember that tweaking this byte could have an effect on [[BGLOB.DAT]], but I might've confused myself. - [[User:Bomb Bloke|Bomb Bloke]] 03:45, 23 June 2008 (PDT)''
 +
|- valign="top"
 +
!<span id="77"></span>77
 +
!<span id="0x4D"></span>0x4D
 +
|Index into [[CRAFT.DAT]] pointing to the craft sent on this mission. In the case of base defense (see offset [79]), it indexes into [[BASE.DAT]].
 +
|- valign="top"
 +
!<span id="78"></span>78
 +
!<span id="0x4E"></span>0x4E
 +
|Victory status.
  
 
  0: Mission aborted.
 
  0: Mission aborted.
Line 117: Line 209:
 
  2: Mission lost.
 
  2: Mission lost.
 
  3: Mission completely lost through abortion (no units in exit areas).
 
  3: Mission completely lost through abortion (no units in exit areas).
 
+
|- valign="top"
<b>79/4F:</b> 0 unless the mission is a UFO site, in which case it is 1. Determines use of [77] but doesn't seem to affect [16-17].
+
!<span id="79"></span>79
 
+
!<span id="0x4F"></span>0x4F
<b>80-151/50-97:</b> A list of 36 two-byte integers, used during base defense missions. In order, they represent each module in your base, reading from left to right, top to bottom.
+
|0 unless the mission is a UFO site, in which case it is 1. Determines use of [[#77|[77]]] but doesn't seem to affect [[#16-17|[16-17]]].
 +
|- valign="top"
 +
!<span id="80-151"></span>80-151
 +
!<span id="0x50-0x97"></span>0x50-0x97
 +
|A list of 36 two-byte integers, used during base defense missions. In order, they represent each module in your base, reading from left to right, top to bottom.
  
 
At the end of battle, the tactical game engine tallies up the amount of [[Base_Defense#Destruction_Of_Base_Facilities|"target" objects]] existing within each module, and stores the results in "MISSION2.DAT". If that figure is 0 for any given destructible [[Base_Facilities_(EU)|facility]], then the geoscape engine will remove it from your base (along with any ''other'' modules that relied on that section for passage to the [[Access Lift]]).
 
At the end of battle, the tactical game engine tallies up the amount of [[Base_Defense#Destruction_Of_Base_Facilities|"target" objects]] existing within each module, and stores the results in "MISSION2.DAT". If that figure is 0 for any given destructible [[Base_Facilities_(EU)|facility]], then the geoscape engine will remove it from your base (along with any ''other'' modules that relied on that section for passage to the [[Access Lift]]).
  
 
"Target objects" are tiles that have offset 60 set to 1 within their [[MCD]] record.
 
"Target objects" are tiles that have offset 60 set to 1 within their [[MCD]] record.
 
+
|-
<b>152-167/98-A7:</b> The following bytes allow you to use the following equipment only if they are set to 1:
+
|colspan="3"|<span id="152-167"></span><span id="0x98-0xA7"></span>Bytes '''152-167''' (Hex: '''0x98-0xA7''') allow you to use the following equipment only if they are set to 1. X-COM produced equipment can be used even if it hasn't been researched (however, in order to get it into combat, you must build it - and <i>that</i> requires research). The last three entries in the list are item slots that were never used in the game.
 
+
|- valign="top"
<b>152/98:</b> [[Heavy Plasma]]       (ObData[34])
+
!<span id="152"></span>152
<b>153/99:</b> [[Heavy Plasma Clip]] (ObData[35])
+
!<span id="0x98"></span>0x98
<b>154/9A:</b> [[Plasma Rifle]]       (ObData[36])
+
|Enables [[Heavy Plasma]] ([[OBDATA.DAT|ObData]][34])
<b>155/9B:</b> [[Plasma Rifle Clip]] (ObData[37])
+
|- valign="top"
<b>156/9C:</b> [[Plasma Pistol]]     (ObData[38])
+
!<span id="153"></span>153
<b>157/9D:</b> [[Plasma Pistol Clip]] (ObData[39])
+
!<span id="0x99"></span>0x99
<b>158/9E:</b> [[Blaster Launcher]]   (ObData[40])
+
|Enables [[Heavy Plasma Clip]] ([[OBDATA.DAT|ObData]][35])
<b>159/9F:</b> [[Blaster Bomb]]       (ObData[41])
+
|- valign="top"
<b>160/A0:</b> [[Small Launcher]]     (ObData[42])
+
!<span id="154"></span>154
<b>161/A1:</b> [[Stun Bomb]]         (ObData[43])
+
!<span id="0x9A"></span>0x9A
<b>162/A2:</b> [[Alien Grenade]]     (ObData[44])
+
|Enables [[Plasma Rifle]] ([[OBDATA.DAT|ObData]][36])
<b>163/A3:</b> [[Elerium-115]]       (ObData[45])
+
|- valign="top"
<b>164/A4:</b> [[Mind Probe]]         (ObData[46])
+
!<span id="155"></span>155
<b>165/A5:</b> null>>UNDEFINED << (ObData[47])
+
!<span id="0x9B"></span>0x9B
<b>166/A6:</b> null>> empty <<   (ObData[48])
+
|Enables [[Plasma Rifle Clip]] ([[OBDATA.DAT|ObData]][37])
<b>167/A7:</b> null>> empty <<   (ObData[49])
+
|- valign="top"
 
+
!<span id="156"></span>156
X-Com produced equipment can be used even if it hasn't been researched (however, in order to get it into combat, you must build it - and <i>that</i> requires research). The last three entries in the list are item slots that were never used in the game.
+
!<span id="0x9C"></span>0x9C
 
+
|Enables [[Plasma Pistol]] ([[OBDATA.DAT|ObData]][38])
<b>168-169/A8-A9:</b> Determines the language in which the mission was initiated. If the game is saved and later loaded, this overrides whatever language was selected when the program started.
+
|- valign="top"
 +
!<span id="157"></span>157
 +
!<span id="0x9D"></span>0x9D
 +
|Enables [[Plasma Pistol Clip]] ([[OBDATA.DAT|ObData]][39])
 +
|- valign="top"
 +
!<span id="158"></span>158
 +
!<span id="0x9E"></span>0x9E
 +
|Enables [[Blaster Launcher]] ([[OBDATA.DAT|ObData]][40])
 +
|- valign="top"
 +
!<span id="159"></span>159
 +
!<span id="0x9F"></span>0x9F
 +
|Enables [[Blaster Bomb]] ([[OBDATA.DAT|ObData]][41])
 +
|- valign="top"
 +
!<span id="160"></span>160
 +
!<span id="0xA0"></span>0xA0
 +
|Enables [[Small Launcher]] ([[OBDATA.DAT|ObData]][42])
 +
|- valign="top"
 +
!<span id="161"></span>161
 +
!<span id="0xA1"></span>0xA1
 +
|Enables [[Stun Bomb]] ([[OBDATA.DAT|ObData]][43])
 +
|- valign="top"
 +
!<span id="162"></span>162
 +
!<span id="0xA2"></span>0xA2
 +
|Enables [[Alien Grenade]] ([[OBDATA.DAT|ObData]][44])
 +
|- valign="top"
 +
!<span id="163"></span>163
 +
!<span id="0xA3"></span>0xA3
 +
|Enables [[Elerium-115]] ([[OBDATA.DAT|ObData]][45])
 +
|- valign="top"
 +
!<span id="164"></span>164
 +
!<span id="0xA4"></span>0xA4
 +
|Enables [[Mind Probe]] ([[OBDATA.DAT|ObData]][46])
 +
|- valign="top"
 +
!<span id="165"></span>165
 +
!<span id="0xA5"></span>0xA5
 +
|Enables "null>>UNDEFINED <<" (ObData[47])
 +
|- valign="top"
 +
!<span id="166"></span>166
 +
!<span id="0xA6"></span>0xA6
 +
|Enables "null>> empty <<" (ObData[48])
 +
|- valign="top"
 +
!<span id="167"></span>167
 +
!<span id="0xA7"></span>0xA7
 +
|Enables "null>> empty <<" (ObData[49])
 +
|- valign="top"
 +
!<span id="168-169"></span>168-169
 +
!<span id="0xA8-0xA9"></span>0xA8-0xA9
 +
|Determines the language in which the mission was initiated. If the game is saved and later loaded, this overrides whatever language was selected when the program started.
  
 
  0 - English
 
  0 - English
 
  1 - German
 
  1 - German
 
  2 - French
 
  2 - French
 
+
|- valign="top"
<b>170/AA:</b> Only present for TFTD. Determines the depth level (that is, which [[PALETTES.DAT#TFTD Tactical Palettes|battlescape palette]] to use, whether to render air bubbles around units, and which background noise to play):
+
!<span id="170"></span>170
 +
!<span id="0xAA"></span>0xAA
 +
|Only present for TFTD. Determines the depth level (that is, which [[PALETTES.DAT#TFTD Tactical Palettes|battlescape palette]] to use, whether to render air bubbles around units, and which background noise to play):
  
 
  0 - Surface
 
  0 - Surface
Line 159: Line 304:
 
  2 - Medium Depths
 
  2 - Medium Depths
 
  3 - Deep Sea
 
  3 - Deep Sea
 
+
|- valign="top"
<b>171/AB:</b> Only present for TFTD. Unknown, never seen it flag. Could be part of the above value.
+
!<span id="171"></span>171
 +
!<span id="0xAB"></span>0xAB
 +
|Only present for TFTD. Unknown, never seen it flag. Could be part of the above value.
 +
|-
 +
|}
  
 
==See Also==
 
==See Also==

Revision as of 00:51, 3 March 2011

This 170 byte file (172 for TFTD) is only used by tactical saves. It comes in three flavours:

  • MISSION.DAT

Initially created by the GeoScape engine and stored in the MISSDAT folder. Contains info required for Battlescape Map Generation.

  • MISDATA.DAT

Created along with a battlescape save, effectively a mirror of the original "MISSION.DAT".

  • MISSION2.DAT

Appears in the MISSDAT folder at the end of combat. Contains debreifing data (such as who won, what was recovered and what points were scored). The relevant offsets for this file are unused by the previous two versions.

Values are presented according to byte offset (0 to 169/171) followed by the equivalent hex offset (00 to A9/AA) in bold. Let us know what else you can find!!

Structure

Offset
(Decimal)
Offset
(Hex)
Usage
The first 20 bytes are a count up of the various recoverable tile types in the map. These two-byte integers are only set if you actually won the mission by eliminating all enemy forces. These offsets + 100 index into the respective BASE.DAT values that they'll be added to.

See Equipment Recovery for more information.

0-1 0x00-0x01 UFO Power Source (MCD[59] set to 02).
2-3 0x02-0x03 UFO Navigation (MCD[59] set to 03, not counted for alien bases).
4-5 0x04-0x05 UFO Construction (MCD[59] set to 04, no known tiles have this set).
6-7 0x06-0x07 Alien Food (MCD[59] set to 05).
8-9 0x08-0x09 Alien Reproduction (MCD[59] set to 06, no known tiles have this set).
10-11 0x0A-0x0B Alien Entertainment (MCD[59] set to 07).
12-13 0x0C-0x0D Alien Surgery (MCD[59] set to 08).
14-15 0x0E-0x0F Examination Room (MCD[59] set to 09).
16-17 0x10-0x11 Alien Alloys (MCD[59] set to 10).

The total is divided by 2 for a UFO mission or 30 for an alien base. The value stored here is further divided by 5 to get the result you see on the debriefing screen.

18-19 0x12-0x13 Alien Habitat (MCD[59] set to 11, no known tiles have this set).
20-21 0x14-0x15 Mission descriptor. Possible values:
UFO                              TFTD
0: UFO Site                      0: USO Site
1: Terror Site                   1: Port/Island Attack
2: Base Defense (X-COM Base)     2: Base Defense (X-COM Base)
3: Base Offense (Alien Base)     3: Colony Stage 1
4: Mars Stage 1                  4: T'leth Stage 1
5: Mars Stage 2                  5: T'leth Stage 2
                                 6: T'leth Stage 3
                                 7: Artefact Site Stage 1
                                 8: Artefact Site Stage 2
                                 9: Passenger/Cargo Ship Stage 1
                                10: Passenger/Cargo Ship Stage 2
                                11: Colony Stage 2
Values 22-73 (Hex: 16-49) primarily hold scoring information. As per the tile recovery indexes, these are only stored in the final "end-of-combat" MISSION2.DAT. For temporary storage mid-mission, some of these values are stored in WGLOB.DAT.
22-23 0x16-0x17 Aliens killed.
24-25 0x18-0x19 Aliens killed score.
26-27 0x1A-0x1B Alien corpses.
28-29 0x1C-0x1D Corpse score.
30-31 0x1E-0x1F Live aliens captured.
32-33 0x20-0x21 Live alien score.
34-35 0x22-0x23 Artefacts (unresearched alien items) recovered.
36-37 0x24-0x25 Artefacts score.
38-39 0x26-0x27 Alien base control destroyed. This flags if you win a base offense mission by killing all enemy forces, or if you destroy all 16 nav modules in the command center. If not zero, the base you were attacking will be removed from the world map at the end of combat.
40-41 0x28-0x29 Base control score.
42-43 0x2A-0x2B Civilians killed by aliens.
44-45 0x2C-0x2D Civilians killed by aliens score (typically negative).
46-47 0x2E-0x2F Civilians killed by X-COM.
48-49 0x30-0x31 Civilians killed by X-COM score (typically negative).
50-51 0x32-0x33 Civilians saved.
52-53 0x34-0x35 Civilians saved score.
54-55 0x36-0x37 X-COM troopers killed.
56-57 0x38-0x39 X-COM troopers killed score (typically negative).
58-59 0x3A-0x3B X-COM troopers "retired through injury" (never actually flags).
60-61 0x3C-0x3D X-COM troopers "retired through injury" score (never actually flags).
62-63 0x3E-0x3F X-COM troopers MIA.
64-65 0x40-0x41 X-COM troopers MIA score (typically negative).
66-67 0x42-0x43 Tanks lost.
68-69 0x44-0x45 Tanks lost score (typically negative).
70-71 0x46-0x47 X-COM craft lost (GeoScape ignores this if you actually lose a craft, Tactical sets it regardless).
72-73 0x48-0x49 X-COM craft lost score (GeoScape ignores this if you actually lose a craft, Tactical doesn't set it regardless).
74-75 0x4A-0x4B A value based on the time at the LOC.DAT location. References into a table stored in the executable in order to define the values in BGLOB.DAT.
76 0x4C For a UFO site, this is the LOC.DAT reference corresponding to the crash site. This is plausibly true for every mission type (with the possible exception of the Mars assault). Used to determine whether the alien ship crashed or not (and therefore whether to randomly detonate the power supply units). I seem to remember that tweaking this byte could have an effect on BGLOB.DAT, but I might've confused myself. - Bomb Bloke 03:45, 23 June 2008 (PDT)
77 0x4D Index into CRAFT.DAT pointing to the craft sent on this mission. In the case of base defense (see offset [79]), it indexes into BASE.DAT.
78 0x4E Victory status.
0: Mission aborted.
1: Mission won.
2: Mission lost.
3: Mission completely lost through abortion (no units in exit areas).
79 0x4F 0 unless the mission is a UFO site, in which case it is 1. Determines use of [77] but doesn't seem to affect [16-17].
80-151 0x50-0x97 A list of 36 two-byte integers, used during base defense missions. In order, they represent each module in your base, reading from left to right, top to bottom.

At the end of battle, the tactical game engine tallies up the amount of "target" objects existing within each module, and stores the results in "MISSION2.DAT". If that figure is 0 for any given destructible facility, then the geoscape engine will remove it from your base (along with any other modules that relied on that section for passage to the Access Lift).

"Target objects" are tiles that have offset 60 set to 1 within their MCD record.

Bytes 152-167 (Hex: 0x98-0xA7) allow you to use the following equipment only if they are set to 1. X-COM produced equipment can be used even if it hasn't been researched (however, in order to get it into combat, you must build it - and that requires research). The last three entries in the list are item slots that were never used in the game.
152 0x98 Enables Heavy Plasma (ObData[34])
153 0x99 Enables Heavy Plasma Clip (ObData[35])
154 0x9A Enables Plasma Rifle (ObData[36])
155 0x9B Enables Plasma Rifle Clip (ObData[37])
156 0x9C Enables Plasma Pistol (ObData[38])
157 0x9D Enables Plasma Pistol Clip (ObData[39])
158 0x9E Enables Blaster Launcher (ObData[40])
159 0x9F Enables Blaster Bomb (ObData[41])
160 0xA0 Enables Small Launcher (ObData[42])
161 0xA1 Enables Stun Bomb (ObData[43])
162 0xA2 Enables Alien Grenade (ObData[44])
163 0xA3 Enables Elerium-115 (ObData[45])
164 0xA4 Enables Mind Probe (ObData[46])
165 0xA5 Enables "null>>UNDEFINED <<" (ObData[47])
166 0xA6 Enables "null>> empty <<" (ObData[48])
167 0xA7 Enables "null>> empty <<" (ObData[49])
168-169 0xA8-0xA9 Determines the language in which the mission was initiated. If the game is saved and later loaded, this overrides whatever language was selected when the program started.
0 - English
1 - German
2 - French
170 0xAA Only present for TFTD. Determines the depth level (that is, which battlescape palette to use, whether to render air bubbles around units, and which background noise to play):
0 - Surface
1 - Shallow Water
2 - Medium Depths
3 - Deep Sea
171 0xAB Only present for TFTD. Unknown, never seen it flag. Could be part of the above value.

See Also