<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://temp.ufopaedia.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Emphyrio</id>
	<title>UFOpaedia - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://temp.ufopaedia.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Emphyrio"/>
	<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/Special:Contributions/Emphyrio"/>
	<updated>2026-05-01T03:24:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=28628</id>
		<title>Wish List (EU)</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=28628"/>
		<updated>2010-08-09T12:43:59Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;X-Com is a great game and as evidence just look to the fact this wiki exists even though the game pre-dates the internet. In all it&#039;s greatness X-Com has some elements and behaviors players wish they could change. This is a repository of those desires. Some day a fan mod may make your wish come true...&lt;br /&gt;
&lt;br /&gt;
= I Wish... =&lt;br /&gt;
State what you want AND what X-com does normally. Sign your name if you think &amp;quot;Oh man! That would be great!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Geoscape and Strategic ==&lt;br /&gt;
&lt;br /&gt;
=== Smarter Aircraft Movement Around Globe ===&lt;br /&gt;
I wish all craft understood the shortest distance between two points on a globe is a curved path towards the poles. Normally a craft goes in the opposite direction than it should (towards the equator). Pain in the ass when the base in the UK sends a craft to Siberia.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Smart Interception ===&lt;br /&gt;
&lt;br /&gt;
Aircraft intercepting a UFO just head straight toward the UFOs current position at all times. Unless the UFO is already on a head-on course, this results in the interceptor travelling through a closing parabolic spiral path, and often missing the UFO and ending up in a tail-chase, and then just falling further behind unless the UFO stops or reverses course. This is pretty basic stuff, fighter pilots have known how to do this better for nearly a hundred years. It is particularly important if the aircraft you are trying to intercept is moving faster than you (eg if you are flying an Interceptor). &lt;br /&gt;
&lt;br /&gt;
What is needed is to plot the UFO&#039;s current course and speed (which X-Com has from radar data), and plot an intercept course. The maths for this is pretty easy (the intersection of 2 vectors) and can be implemented in a few lines of code, if we can find out where the current interception algorithm is, and patch it. &lt;br /&gt;
&lt;br /&gt;
Actually the radar bearing shown on screen is only accurate to within 45 degrees. I presume that X-Com does actually know the UFO&#039;s bearing, since it can clearly track the UFO&#039;s movements. Finding where that variable is located might be different. &lt;br /&gt;
&lt;br /&gt;
While we&#039;re at it, it would be nice if the UFO detection information displayed the actual bearing in degrees, rather than just the compass direction (North East, South, etc). &lt;br /&gt;
&lt;br /&gt;
Even if the improved intercept algorithm only used a bearing accurate to within 45 degrees, that would still be better for remote UFOs. You might need to switch to &amp;quot;head straight for it&amp;quot; once you get to very close range. [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Score for retaliation Battleships===&lt;br /&gt;
&lt;br /&gt;
When a Battleship on retaliation attacks your base and is shot down, you get no score for it. This is completely illogical and it discourages any use of base defences. You should get normal 700 (or even 1400) points for it.&lt;br /&gt;
--[[User:Kyrub|Kyrub]] 14:05, 30 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: I&#039;m not sure about this. Yes it&#039;s illogical, but it could also be a licence to get a huge score if you have a strong enough base. [[User:Spike|Spike]] 12:16, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: The impenetrable base setup would turn into a cheat. As the aliens will keep hammering the base with a battleship until one breaks through, you&#039;ll have a steady supply of points without having to really do anything. Some balancing, such as paying to rearm your defence modules, ought to be thrown in to balance things out. -[[User:NKF|NKF]] 23:13, 13 September 2008 (PDT)&lt;br /&gt;
:::A better fix would be to remove the retaliation flag when a battleship is destroyed. If someone can post a savegame with a never-ending flow of base attacks, I may have a look at the fix. [[User:Seb76|Seb76]] 01:05, 15 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
=== All Aircraft Weapons Useful ===&lt;br /&gt;
&lt;br /&gt;
In a balanced game, all weapons should have their uses, or at least a niche, but sadly this is not so:&lt;br /&gt;
&lt;br /&gt;
The Cannon is only useful for shooting down Small Scouts, and even that is practically impossible, due to the difficulty in closing to 10km range with any UFO, particularly the fast-accelerating Small Scout.&lt;br /&gt;
&lt;br /&gt;
The Stingray is not even useful for shooting down Small Scouts (destroys them 57% of the time) and the Avalanche is better in every meaningful way. It also takes twice as long to rearm, making it operationally much worse than the Avalanche.&lt;br /&gt;
&lt;br /&gt;
The Laser Cannon is inferior to the Avalanche for everything. It does have a higher payload but this is hardly relevant. If attacking a UFO that you would struggle to kill with Avalanches, you are unlikely to own an aircraft that will survive long enough to inflict more damage than an Avalanche if it mounted Laser Cannon. &lt;br /&gt;
&lt;br /&gt;
The Fusion Ball Launcher has a [[Talk:Craft_Armaments#Fusion_Balls_better_than_Plasma_Beams.3F¦possible niche]] in fighting Battleships when mounted on Interceptors. Even then, it is difficult and expensive to have aircraft configured to fight only one enemy. &lt;br /&gt;
&lt;br /&gt;
Unfortunately, the optimum path for craft weapon development is all-Avalanche followed by all-Plasma Beam. This is a shame. &lt;br /&gt;
&lt;br /&gt;
Suggestions to &#039;tune up&#039; the other weapons:&lt;br /&gt;
&lt;br /&gt;
*Cannon - Increase the damage to 20 or 25. So at least there is a pay-off if you manage to get in close. &lt;br /&gt;
*Stingray - Double the rearm rate so it can be reloaded as fast as an Avalanche launcher. Increase the ammo capacity to 9 or 12. Then up the rearm rate again (triple or quadruple) so it can still be reloaded as fast as Avalanche. Even then, it&#039;s probably not better than the Avalanche, so maybe it make it &#039;&#039;more&#039;&#039; accurate than the Avalanche instead of less. Raise Stingray to 90%, or to 80% but drop Avalanche to 65%.&lt;br /&gt;
*Laser Cannon - increase accuracy to 50% and damage to 100. Give it infinite ammunition.&lt;br /&gt;
*FBL - increase the ammo from 2 to 3. Increase damage to 250 or even 255. It&#039;s far and away the most expensive weapon to operate so it might as well pack the biggest punch.&lt;br /&gt;
&lt;br /&gt;
It might be worth considering &#039;tune down&#039; the Plasma Beam as well, particularly its stand-off range.&lt;br /&gt;
[[User:Spike|Spike]] 06:59, 14 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tougher UFOs  ===&lt;br /&gt;
&lt;br /&gt;
==== The Problem ====&lt;br /&gt;
&lt;br /&gt;
So let me get this straight. The first hybrid airborne weapon that humans ever build, and it immediately outclasses every weapon the aliens ever built, including their Battleship weapon? After all the Aliens have only been building plasma weapons for a few million years, us humans have been doing it for &#039;&#039;months&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
More to the point, once you get Plasma Beams, downing UFOs is like shooting fish in a barrel. Even Battleships aren&#039;t that exciting if you show up with enough ships. &lt;br /&gt;
&lt;br /&gt;
What is needed is to push up the range, damage, and rate of fire of all the UFO weapons, particularly the UFOs you will be fighting by the time you have plasma beams. At a minimum, the weapon on a Battleship should be at least as powerful as, say, 2 Plasma Beams (as found on the XCom craft it is fighting)? Instead of slightly less than half as powerful? Compared to a single Plasma Beam, only the Battleship weapon has better range. It has double the accuracy, slightly higher damage, but half the fire rate. Net 5.7% more firepower than one Plasma Beam, but no match for 2. And the Battleship weapon of course is the most powerful in the alien arsenal. &lt;br /&gt;
&lt;br /&gt;
Possible tune ups for UFOs:&lt;br /&gt;
&lt;br /&gt;
*Battleship - increase to 255 weapon power, improve reload rate to 12 (from 24). Now roughly equivalent to 4 Plasma Beams in total firepower (on Beginner difficulty). Increase range to 69km, so that the Battleship commences fire as soon as an XCom craft begins its attack run. Or better, increase range to 70+km, the limit of the interception window, so that the Battleship starts firing immediately the XCom craft enters air combat range. This would disrupt XCom aircrafts&#039; ability to form up into a flight of 4, prior to commencing their attack. Overall, this would make it much harder to down Battleships. Increasing weapon range to 70+km would also make it much harder to tail a Battleship - manual control in the Geoscape would be needed to hold off outside of combat range. Really, the Battleship should not sit there like a sitting duck. Does it think XCom are friendly?&lt;br /&gt;
*Terror Ship - increase range to 52 (or decrease Plasma Beam range to 42), so stand-off kills are not possible with Plasma Beams?&lt;br /&gt;
*Actually maybe all the larger UFOs should have weapon range 69-70+km, so they behave very aggressively toward XCom craft. &lt;br /&gt;
&lt;br /&gt;
NB: Strange effects occur if weapon range goes over 70km so it&#039;s probably best to leave it at 70km rather than 75km.&lt;br /&gt;
&lt;br /&gt;
NB: Also, changes to rate of fire need to be looked at carefully though because Difficulty Level also reduces reload rate for UFOs. Between Beginner (Difficulty 0) and Superhuman (Difficulty 4), rate of fire (and thus firepower) for Battleships, Terror Ships and Supply Ships increases by 24/(24-4x2=16) or 50%. But if the base reload rate for these weapons was reduced to 12, the transition from Beginner to Advanced would increase firepower &#039;&#039;&#039;three&#039;&#039;&#039; times for these 3 UFOs (less so for the smaller UFOs). It is less risky to increase the weapon power. Unfortunately there are only 2 firepower variables to play with - damage and reload rate - so there are not a lot of options, especially for the Battleship which already has weapon strength 148 out of a probable maximum of 255.&lt;br /&gt;
&lt;br /&gt;
:More detail on this. For Medium Scout, Large Scout and Abductor, with nominal reload rate 48gs, the rate of fire improves +20% between Beginner and Superhuman. For Harvester (32gs) it improves one third. For Large UFOs (Terror Ship, Supply Ship, Battleship - 24gs) the improvement is +50%. [[User:Spike|Spike]] 20:28, 14 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
I think we should assume that the Battleship, which is bigger than the entire XCom base, is engaging XCom craft with its secondary weapons rather than its main armament, which could probably destroy Manhattan with a glancing hit. &lt;br /&gt;
&lt;br /&gt;
I would really like to see the hypothetical Mega-Battleship go up against XCom&#039;s finest - a flight of 4 Avengers armed with dual Plasma Cannon or dual Fusion Ball Launchers. With the Battleship having 70+km range, 255 weapon power, and an effective fire rate on Superhuman triple that of the PB, it would have the firepower of 11 Plasma Beams - 36% more firepower than the whole attacking XCom force combined. To be honest I think that would be carnage, not sure XCom could win. So that would be tuning the Battleship up too much. The 3-fold increase in rate of fire when on Superhuman is just too much. Maybe just max out the damage to 255 and range to 75. This gives a 72% increase in firepower, and a challenging tactical problem for XCom (forming up and approaching under fire).&lt;br /&gt;
&lt;br /&gt;
The smaller UFOs can probably stay as they are. It is not until later in the game that XCom advances so that even large UFOs are easy pickings. What is the crossover point? Maybe the medium UFOs. So it might be good to reduce the reload times of the medium UFOs from 48 / 32 to 24, a good increase in firepower. &lt;br /&gt;
&lt;br /&gt;
In general I think all UFOs energy weapons should have at least as good range as the XCom energy weapons, even the Medium Scout. Again, they have been using these weapons for millions of years and we only just figured out how to copy them from the aliens, how could our weapons be better than the aliens? How did our first plasma weapon out-range and out-perform all but the hugest UFO plasma beam? And on an airframe the size of a Small Scout we mount &#039;&#039;two&#039;&#039; such weapons? On the battlefield we only are able to replicate alien weapons;  how is it that in the air we are able to improve on them &#039;&#039;masssively&#039;&#039;?&lt;br /&gt;
&lt;br /&gt;
Perhaps there should never be a stand-off advantage, except possibly with missiles -which should be less accurate with longer range. The XCom stand off advantage is really unfair because as far as I have seen the UFOs never attempt to close to effective range, even when they are getting killed. They don&#039;t break off much, either, though I think I have seen that happen on occasion. &lt;br /&gt;
&lt;br /&gt;
==== Specific Proposals ==== &lt;br /&gt;
&lt;br /&gt;
===== No Standoff Beam Attacks =====&lt;br /&gt;
&lt;br /&gt;
Increase &#039;&#039;all&#039;&#039; UFO plasma weapon ranges to at least 55km (compared to 52km for the XCom plasma weapon). Now only launched XCom weapons (Avalanche and Fusion Ball) have standoff advantage. Probably also reduce the accuracy of the Avalanche to 60% and buff Stingray accuracy to 80%, providing both weapons with a useful niche role.&lt;br /&gt;
&lt;br /&gt;
===== No Standoff Attacks =====&lt;br /&gt;
&lt;br /&gt;
Increase &#039;&#039;all&#039;&#039; UFO plasma weapon ranges to 66km (compared to 52km for the XCom plasma weapon). Now &#039;&#039;no&#039;&#039; XCom weapon has standoff advantage. (The benefit of a longer range weapon is simply spending less time being fired on by the UFO.)&lt;br /&gt;
&lt;br /&gt;
===== Twitchy Aliens =====&lt;br /&gt;
&lt;br /&gt;
Increase all UFO ranges to 69km. They will attack as soon as XCom aircraft commence any attack run.&lt;br /&gt;
&lt;br /&gt;
===== Hostile Aliens =====&lt;br /&gt;
&lt;br /&gt;
Increase all UFO ranges to 70km. They will attack as soon as XCom aircraft enter intercept range. UFOs now fire first, and tailing them unchallenged is impossible. &lt;br /&gt;
&lt;br /&gt;
===== Improved Medium UFOs =====&lt;br /&gt;
&lt;br /&gt;
Reduce (improve) the nominal reload time of Medium UFOs, Abductors and Harvesters, from 48gs and 32gs to 24gs. This increases the challenge in the early-mid game, when XCom might first be deploying advanced weapons.&lt;br /&gt;
&lt;br /&gt;
===== Improved Battleships =====&lt;br /&gt;
&lt;br /&gt;
Increase damage to 255. They&#039;re firing (bigger) Fusion Balls! A Battleship now has the same firepower as one XCom Craft with dual Plasma Beams (gosh wow!). It&#039;s a start, but what if we...&lt;br /&gt;
&lt;br /&gt;
===== Super Battleships =====&lt;br /&gt;
&lt;br /&gt;
... also reduce nominal reload time to 18gs. Giving a further one-third extra firepower on Beginner, 60% more on Superhuman.&lt;br /&gt;
&lt;br /&gt;
===== Mega Battleships =====&lt;br /&gt;
&lt;br /&gt;
... or for a real challenge, reduce reload time to 12gs. A further doubling of the firepower on Beginner - a further &#039;&#039;four&#039;&#039; times increase on Superhuman. Now Superhuman Battleships out-gun the biggest fleet XCom can throw at them!&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 00:25, 19 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
: the flip side of this is weakening Xcom craft - apart from firepower issues there is also the issue of range: the ranges of the transport craft are such that really no more than 1 manned base is necessary to cover the globe for terror site defense. Setting e.g. the fuel capacity of the Skyranger to 500 results in roughly 1 base per continent required. This has interesting strategic consequences: need for more bases makes the ecomics more challenging (and thus slows down research). [[User:Emphyrio|Emphyrio]] 08:43, 9 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
===Enforced Variant Games===&lt;br /&gt;
&lt;br /&gt;
Various people like to play various variant games, such as No Alien Technology, or No Detection, or No Lethal Weapons - see for example Scott Jones&#039; notes to XComUtil. It would be nice to have options on the game executable to enforce these scenarios. Self restraint is hard! [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Some of these variant scenarios have been implemented by [[User:Seb76#Mods|Seb76]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Recruit Certain Alien Types===&lt;br /&gt;
&lt;br /&gt;
Consider that not all aliens are loyal to their master (most TFTD alien has a device lodged to its brain), it would be interesting (or at least cool) if we could recuit such aliens to the XCOM cause. Maybe we can remove the controling devices from captive aliens after research on that species. Or convince the head of the Snakemen that it would be far more benefit to his race to help us instead of the Ethereals [[User:L-Zwei|L-Zwei]] 23:25, 12 September 2008 (PDT).&lt;br /&gt;
&lt;br /&gt;
Only certain alien types should be recruitable. Ones that should NOT be include Mutons (as they are directly controlled by Ethereals), Chrysallids (unbalancing), etc. It would be nice to be able to reverse-engineer Cyberdiscs or Sectopods, or make it that a Cyberdisc must be researched to build hovertanks/etc.&lt;br /&gt;
[[User:MagicJuggler|MagicJuggler]] 13:32, 18 September 2008 (PDT)&lt;br /&gt;
: It&#039;s pretty obvious which ones should be recruitable: non-robotic terror units that are captured alive. Chryssalids should simply do melee damage instead of impregnating (as the resulting spawn would not be mind-controlled and therefore XCOM wouldn&#039;t do it). Silacoids would be pretty ineffectual, and reapers slightly less so, but both would be disposable scouts. Celatids might actually have some use (eating through hulls with acid, and arcing over walls) but are fragile. All of these would require capturing a terror alien alive after researching Psi Amp. The two robotic units should require a live alien Engineer researched as well as UFO Construction, and the materials for building one would be one corpse of the appropriate type, Alien alloys and Elerium (to repair and refuel the husk). The Sectopod should probably be nerfed somewhat, so that it isn&#039;t quite so invincible to Heavy Plasma shots - after all, it was probably a twisted and melted modern art piece by the time it finally went down). [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Game option: sell only researched items ===&lt;br /&gt;
&lt;br /&gt;
The fact that you may sell the alien items for the best price once you get them, without any research, is illogical. Such staff would never get on the market, being top secret and potentially dangerous to the humanity.&lt;br /&gt;
&lt;br /&gt;
Selling without proper research does not help the replay value of the game either: once you know the &amp;quot;right path&amp;quot; to get the best items, you simply sell anything else immediately and ignore the unnecessary research. Too easy.&lt;br /&gt;
&lt;br /&gt;
Therefore I wish for this game option: unknown items are sold for 0 (including the alien corpses), the known ones for their full price. This makes the sustainable economics much harder to develop and it gives sense to the &amp;quot;useless&amp;quot; research. Last but not least, it adds a lot of depth to the gameplay: will you choose research of a new weapon you need on the field, or of a mind probe that will earn you millions in sales? --[[User:Kyrub|Kyrub]] 15:55, 6 April 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
: I really like this option, it&#039;s a great idea. Makes the game harder and makes it more interesting, more varied. Gives extra value to the otherwise &amp;quot;useless&amp;quot; research paths. Good thinking! [[User:Spike|Spike]] 15:06, 24 August 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
: I&#039;d prefer that unresearched artifacts/corpses sold for a fraction of their original value (no more than 25%). It makes no sense that nobody would pay to research them for themselves. Additionally, Laser Cannon sell price needs to be nerfed. [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== New Research Mechanics ===&lt;br /&gt;
&lt;br /&gt;
The above comments spurred some ideas to make the research more realistic and the path to victory less obvious. &lt;br /&gt;
&lt;br /&gt;
For flavor reasons, give research options vague names instead of exact names. This already exists in some research topics, such as &amp;quot;New Fighter Craft&amp;quot; instead of &amp;quot;Firestorm&amp;quot;. So, research topics might read &amp;quot;Alien Hovertank Wreck&amp;quot; instead of &amp;quot;Cyberdisc Corpse&amp;quot;, &amp;quot;Grey Alien Corpse&amp;quot; instead of &amp;quot;Sectoid Corpse&amp;quot; or &amp;quot;Alien Pistol&amp;quot; instead of &amp;quot;Plasma Pistol&amp;quot;. The names would be revealed in the UFOpaedia entry, and certain items would then be renamed as per common sense.&lt;br /&gt;
&lt;br /&gt;
Hide the ranks of aliens in captivity until they are researched (so you&#039;d see Live Grey Alien #1, Live Grey Alien #2 if you had two Sectoids available for research). However, if you happened to have two Soldier ranks in containment, you&#039;d only see one topic. The same rank/race combination would never appear again, but you might have to research several specimens of the same species to get the useful one you want. The alternative would be to have researched Mind Probe, which would tell you exactly what you had in containment (just as it does on the battlefield).&lt;br /&gt;
&lt;br /&gt;
Once an alien or its corpse is researched, then all other instances of that alien or its body are renamed appropriately. For example, research a live Muton and Muton corpses become obvious, and vice versa. &amp;quot;Live Green Humanoid Alien&amp;quot; is also renamed to &amp;quot;Live Muton&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Finally, there should be a few more prerequisites in place to make less useful research more necessary. As someone else has mentioned, you should need a Cyberdisc Corpse to research Hovertanks. I&#039;d also suggest that Psi Amp and Mind Shield require the research of Mind Probe (seeing as both entail scanning for minds as a logical first step), and that Flying Suits require Floater Corpse, Cyberdisc Corpse or a live Floater researched as an additional prerequisite (not Ethereals, as they fly with the power of their huge brains). [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
:These are all good suggestions and make a lot of sense. An alternative explanation of the names (seen in some fan fiction) is that these names are not the real names, but are made up by XCom troops based on some limited battlefield experience of them. But revealing the &amp;quot;real&amp;quot; alien race names through Research is a fun idea. [[User:Spike|Spike]] 08:44, 1 September 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
== Battlescape and Tactical ==&lt;br /&gt;
&lt;br /&gt;
===Equipment Management===&lt;br /&gt;
&lt;br /&gt;
All wishes are currently implemented!&lt;br /&gt;
&lt;br /&gt;
===Fog of War Improvements===&lt;br /&gt;
&lt;br /&gt;
I&#039;m sure most of these would be an absolute PAIN to implement, but I figured I&#039;d toss the ideas out here.&lt;br /&gt;
&lt;br /&gt;
====Prior Recon of Battlefield====&lt;br /&gt;
One thing that has always irked me is X-COM has no terrain knowledge when it lands, despite having probably circled the place two or three times before landing and thus they should know at least some of the area.  This would be nice, but isn&#039;t too important.  Probably would be a pain to implement so X-COM would have all knowledge of external features but no knowledge of building interiors, anyways.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Yes at the very least, when you splash the UFO, it could tell you (via some miracle technology such as &amp;quot;satellite reconnaisance&amp;quot;) what the terrain type is of the landing zone area. Then you could adjust equipment accordingly. And adjust your uniform camouflage (if using one of the uniform mods). [[User:Spike|Spike]] 12:16, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Geoscape: center on the site, then maximum zoom. Aside from having to disambiguate forest from jungle, this works fine for knowing the exact terrain you&#039;re getting into. -- [[User:Zaimoni|Zaimoni]] 10:17, 4 Sept 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
:::This is already present in the game.  To center the Geoscape on a specific location, right-click on the target spot.  To do maximum zoom in, right click on the Zoom-In button(and the same works for Zoom-Out).  Also, Jungle and Forest use the same display algorithm, but are easy to differentiate; Forest occurs NORTH of the equator, and Jungle occurs SOUTH. [[User:Arrow Quivershaft|Arrow Quivershaft]] 13:23, 4 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Returning to AQ&#039;s original suggestion, it wouldn&#039;t be too hard would it for the dropship to &amp;quot;radar map&amp;quot; the target, and then have the basic map show up on your scanner on Turn 1? [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
====Dynamic Fog====&lt;br /&gt;
&lt;br /&gt;
The Fog of War in X-COM is clumsily implemented, compared to modern expectations.  Everything starts out black, but after exploring, is shown...and it&#039;s kept in the same showing, regardless of whether you actually have LoS to that area anymore.  It would be nice if when you no longer had Line of Sight to a particular map area, it would be cloaked in a way so that you knew the terrain, but not the units there.  Since I&#039;ve sometimes spent over half an hour trying to hunt down that last alien hiding in area I&#039;d already explored.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
====Deactivate Object Radar====&lt;br /&gt;
&lt;br /&gt;
Currently, in X-COM, any objects dropped in a given square show on your Battlescape, regardless of whether you have Line of Sight to the square or not.  In regards to dropped weapons/grenades/equipment/dead soldiers/dead aliens, this doesn&#039;t make a large difference.  But in the case of STUNNED aliens, a quick scan across the Battlescape can tell you whether the alien you stunned 10 turns ago is still down, or stood back up(the stunned alien object will disappear from the stack).  Of course, since aliens which have revived from stun are almost always disarmed(and the ones that aren&#039;t probably should&#039;ve been killed instead), the usefulness of this &#039;exploit&#039; is reduced mainly to finding out that the last alien you&#039;re looking for is just wandering aimlessly and unarmed.  Perhaps leave stacks showing the same until you regain LoS to that area? [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Restore Game from Battlescape===&lt;br /&gt;
&lt;br /&gt;
It would be nice to be able to reload a saved game directly from the Battlescape &amp;quot;?&amp;quot; screen, rather than having to go through the process of Abandoning to the Geoscape. Would you need to check it was a Battlescape save and not a Geoscape save? Maybe, maybe not. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Warm Grenades===&lt;br /&gt;
&lt;br /&gt;
Currently when you set the timer on a grenade (or HE pack), the timer runs down every turn regardless of whether the grenade is worn, held, or dropped. Then, when the timer runs out, it explodes unless it is held or worn. There is no real grenade or explosive that works this way. Once the timer (fuse) starts running, they explode regardless. However for most hand grenades, the timer (fuse) doesn&#039;t start until after you throw/drop the grenade. It would be nice to have both of these real world behaviours, and lose the game&#039;s default behaviour. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Technically the way the game implements grenades, they don&#039;t have a timer. At least, not as such. When you set a grenade, the game just assigns it a turn to blow up on. Once the turn has passed, the game checks to see that it&#039;s on the ground and blows it up if it is, otherwise it doesn&#039;t. I believe Seb76 has already addressed this in his patches where there&#039;s an option to make grenade blow up regardless whether they are in inventory or otherwise the moment the timer is set. X-Com Apocalypse does a good job of this. The moment the grenade is so much as moved after the timer is set, it counts down. - [[User:NKF|NKF]] 23:01, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: To simulate an actual timer, you would need to do something like: Every turn that a primed grenade is being held by a unit during the &amp;quot;explode&amp;quot; check, increment by +1 the turn when that grenade is going to explode. [[User:Spike|Spike]] 19:10, 14 September 2008 (PDT)&lt;br /&gt;
:::I think I would change quantity2 ([[OBPOS.DAT]]) to a countdown instead of a turn, and use quantity3 as a flag indicating if the count has started. This flag is set any time a turn ends and the grenade has no owner. Taking it back in your hand once the timer has started won&#039;t help and the thing must be thrown... quantity2 is decreased if quantity3 is set, and the grenade blows up as usual. [[User:Seb76|Seb76]] 01:35, 15 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: That would be great. It would be exactly consistent with a &#039;spoon&#039; type hand grenade. The timer only starts when you release the grenade, but after that it explodes at a definite time regardless of whether you pick it up or not. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
===Stun Grenades===&lt;br /&gt;
&lt;br /&gt;
I want flashbangs.--[[User:Brunpal|Brunpal]] 22:59, 11 September 2008 (PDT)&lt;br /&gt;
:Instead of stunning, I&#039;d see more effect if it would remove some TUs to units having line of sight (to be fare it should affect xcom units too). It would help against reaction fire (which is the point of flashbangs). Given that grenades detonate at the end turns, it would require a good coordination to have the grenade detonate exactly at the end of the alien turn, and just before your attack. Being able to open doors à la xcom2 would also help to throw flashbangs just before a craft assault... [[User:Seb76|Seb76]] 22:03, 12 September 2008 (PDT)&lt;br /&gt;
::That would be good. Hard to program, potentially extremely unbalancing, but good. I considered a &amp;quot;debuff&amp;quot; kind of ability (as you suggest) for flashbangs, vs the more obvious substitution of [[stun]] for [[Explosions|HE]] damage. In the end, I picked &amp;quot;I want flashbangs.&amp;quot;--[[User:Brunpal|Brunpal]] 03:32, 13 September 2008 (PDT)&lt;br /&gt;
: Maybe flashbangs dont&#039; work on Aliens - otherwise, XCom would use them, right? :) But seriously, I too would like flashbangs, and stun grenades / concussion grenades. Both of these would make the game easier, though. With flashbangs, you might have to compensate by just giving the aliens more TUs. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
::More options for the player is going to make it easier for any kind of game. Particularly of games like XCOM where the computer can&#039;t take advantage of the changes. However I don&#039;t believe a weak stun grenade (like 44 stun damage, comparable to AC-HE) would change the game much because the 80 item limit remains.--[[User:Brunpal|Brunpal]] 22:21, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Night Vision===&lt;br /&gt;
&lt;br /&gt;
I &#039;&#039;&#039;don&#039;t&#039;&#039;&#039; want to add night vision equipment to the game. I assume that either (1) all XCom units already have night vision gear as standard, but it&#039;s not as good as alien night vision, and the visibility that XCom units have at night is based on their standard-issue night vision gear, or (2) night vision gear does not work on Aliens. Either they do not appear on night vision, or maybe worse - maybe the aliens can manipulate night vision equipment, causing worse than normal vision, or hallucinations, and even tricking XCom units into firing on each other. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Throwing over stuff===&lt;br /&gt;
&#039;&#039;&#039;(Moved to Talk, as this is not a bug and so does not need fixing.)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Assault Time Limit===&lt;br /&gt;
&lt;br /&gt;
One of the cool things about UFO Defence is there are no time limits on the scenarios. This is great as it allows for a totally different kind of tactics and much more flexibility. &lt;br /&gt;
It&#039;s more of a &amp;quot;thinking man&#039;s game&amp;quot; as a result. But... arguably this is not very realistic for UFO Assault missions. If the Aliens are getting creamed, they should try to make a getaway if they can (just like XCom would). A simple way to implement this would be a hard time limit (say 20 turns?) on a UFO Assault. Another way would be to base it on Alien Morale. At a certain Morale level the aliens decide to dust off. Give the player say 3 turns warning while they rev up  the engines. Then if there is still a Navigator or Engineer in the Control Room alive, the ship takes off. Any XCom troops still aboard are MIA. &lt;br /&gt;
&lt;br /&gt;
You might run into problems if the UFO took off but then landed again or was shot down, generating another ground mission with potentially &#039;&#039;&#039;more&#039;&#039;&#039; Aliens than were still alive at the end of the Assault. (Still, maybe they hatch some more clones if they get time to....) [[User:Spike|Spike]] 09:51, 4 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: It strikes me as justified they don&#039;t do that. Troops loose in the vessel could be seriously bad. It would be nice if they dusted off on the condition that their morale was low enough or 3 X-com soldiers had the door in their sights without aliens alive outside in the latter case and no X-com soldiers on board in either case. also, if the UFO has a hole in either the command or engine room, it would have to set down before leaving the atmosphere. [[User:(name here)|(name here)]]&lt;br /&gt;
&lt;br /&gt;
Taking off with troops onboard would be perfectly safe (for the aliens) and justifiable if one assumes that alien ships in flight are inherently inhospitable for humans.  This is easily done by saying that they undergo accelerations that humans can&#039;t withstand (splat), can&#039;t withstand for any length of time (pass out), or that they intentionally make rapid accelerations in different directions, either normally or just if they&#039;re trying to bash some intruders around.  Naturally, the aliens themselves would either be immune to these (tough physique / their built-in antigrav devices?), or be in acceleration chairs, safe from all this.&lt;br /&gt;
&lt;br /&gt;
Alternatively, when you get the warning that the UFO is going to take off, you&#039;ve got a certain amount of time to either get everyone &#039;&#039;&#039;off&#039;&#039;&#039; the UFO, or to get everyone &#039;&#039;&#039;on&#039;&#039;&#039; it (or as many as you can).  There could be a follow-up mission that takes place in &amp;quot;sky&amp;quot; terrain, where the outdoors is either impassable (the easy way) or else instantly withdraws units from combat (flying suits / parachutes).  The soldiers&#039; goals would be to either take out the aliens and presumably safely land and salvage the UFO, or take out the UFO&#039;s means of flying (power cores / navigator?).  In the latter case, they might have a certain number of turns to withdraw or be caught in the crash, with possible casualties just like the aliens, mitigated to some degree by their armour and maybe where inside the UFO they are.&lt;br /&gt;
&lt;br /&gt;
In the case of a crash, there could be a final mission to finish off the surviving aliens, using the X-COM soldiers that survive the crash, and no landing craft (it&#039;s still back at the old landing site).  Alternatively, you could say that there &#039;&#039;&#039;is&#039;&#039;&#039; an X-COM landing craft parked outside (with all remaining members of the original landing party), since the in-flight time / distance was presumably low and the original X-COM craft quickly packed up and flew to the new landing site. &amp;amp;mdash; [[User:Wisq|Wisq]] 17:11, 18 April 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
===Alien AI===&lt;br /&gt;
&lt;br /&gt;
====Attempts to rearm====&lt;br /&gt;
Aliens cannot pick up items, but I wish they would. If an alien has no useful weapons in inventory they should either head for cover or head for a plasma weapon. Panicked aliens drop their weapons but never seem to pick them up when they managed to pull themselves together. It would be nice if they tried to arm themselves again. --[[User:Brunpal|Brunpal]] 13:55, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Even if it&#039;s too hard to make aliens head towards weapons (is it safe?, could it be used to trap them, not to mention the complexities of route finding) - it would still be good if an unarmed alien checked for usable weapons in every square it moved through, and at least picked up one loaded weapon or grenade per turn. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Fixing the AI for this could be really hard. Apart from all the possible exploits by XCom, the AI is probably a really hard part of the game to reverse engineer. You could say that an unarmed alien is no threat anyway (we are only concerned about aliens without psi or built in weapons). So nothing is lost even with an exploitable method of re-arming. By exploitable I mean the XCom player can manipulate re-arming, e.g. by leaving weapons out in the open as bait for traps. &lt;br /&gt;
&lt;br /&gt;
Maybe the simplest modification would be to &#039;&#039;not&#039;&#039; drop weapons when the alien panics? This does not require delving in to the AI, just intercepting the panic effects. Dont make aliens drop any weapons when they panic. It would be reasonable to return the weapon in hand to inventory, so there is a TU cost for the alien to bring the weapon back into play again. &lt;br /&gt;
&lt;br /&gt;
This would not work for aliens who were stunned and wake up, or who were mind controlled by XCom and made to drop their weapons. But it would probably catch 80% of cases. &lt;br /&gt;
&lt;br /&gt;
Another cheat, short of fixing the AI, is just to pick up weapons that the alien walks over. It could also pick up &amp;quot;spare&amp;quot; weapons from adjacent aliens (cheating on TUs - basically just teleporting the items to the unarmed alien). Spare alien weapons are almost invariably grenades. I have not had a lot of success in getting unarmed aliens to use grenades, so more research is needed here. Maybe only certain types of aliens use grenades, or only in certain circumstances?&lt;br /&gt;
&lt;br /&gt;
Really, really cheating would be to teleport any weapon laying around the battlefield into the alien&#039;s inventory. But I think it is more fair just to say panicked aliens dont drop their equipment. [[User:Spike|Spike]] 16:13, 13 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
==== End Psi Bullying and Psi Baiting ====&lt;br /&gt;
When the aliens use psi attacks they always go for your guys with the most chance of failing the attack and going nuts. Is it possible to make those pesky aliens attack random soldiers, regardless of their psi skill/strength? &lt;br /&gt;
&lt;br /&gt;
: Not a bad idea to randomise this a bit, because while initially this tactic helps the aliens, it becomes so predictable that it can be used against them by deploying unarmed &amp;quot;Psi Bait&amp;quot; soldiers to draw off all the attacks. (Or make aliens avoid controlling/panicking soldiers who have no loaded weapons. But then folks would just give them pea shooters and wear armour.) [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== 80 Item Limit on Base Defense Mission ===&lt;br /&gt;
: Well you get the 80 item limit on every mission, but it hurts more on a Base Defence as you have more limited ability, or sometimes no ability, to manage what goes into those 80 items. I was thinking about a couple of (theoretical) ways to fix this and I hit on a new one (new for me anyway): Why not take the 80 items from the Transport(s), first Transport then second Transport until you run out of items or hit 80. This has a few benefits:&lt;br /&gt;
:* Ready made interface to manage the 80-item limit, the Stores &amp;lt;&amp;gt; Craft (Equip Craft) Screen.&lt;br /&gt;
:* If you have no warning at all, the 80 items will probably make good tactical sense in general terms, even if they are are not totally optimised for Base Defence (no proximity mines, etc).&lt;br /&gt;
: I think that copying the Transport inventory into the Battlescape inventory would be relatively to implement (though what do I know?). As a simplification, you could move only the inventory in the &#039;&#039;first available&#039;&#039; Transport that is present in the Base, into the Battlescape, and not bother looking in more than one place (other Transports, Base Stores) to get up to 80. It would then be a bit of a drag if your Transports are all out on a mission when your Base gets attacked though. Or perhaps inspect the inventory of Transport 1 (wherever it is in the world), and then attempt to copy its inventory, using equipment present in the Base?&lt;br /&gt;
: Another way of doing it which has been mentioned elsewhere is to try to reverse the order of the items in the Stores list. This has the effect of putting the more advanced weapons first, rather than the more basic weapons. There could be all kinds of unwanted side effects of this, depending on various programming issues.&lt;br /&gt;
: Actually there is already a fix for the 80-item limit in XComUtil. XComUtil records a standard assign weapon set for each of your troops, and then teleports those weapons to the Battlescape from your Base Stores, regardless of the 80-item limit (but still subject to the Battlescape&#039;s 170-item limit). Not 100% sure if this works for Base Defence missions though. &lt;br /&gt;
:[[User:Spike|Spike]] 13:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== Collision Detection Bugs ===&lt;br /&gt;
I have noticed that sometimes you can shoot through hard objects, for example, recently I had a soldier up on the roof of a house overlooking a large scout craft. When a Sectiod moved through one of the inner doors of the UFO, my man shot him straight through the intact ufo roof!  &lt;br /&gt;
&lt;br /&gt;
=== Base Defence Systems Cause Alien Casualties ===&lt;br /&gt;
&lt;br /&gt;
I don’t know if this is already implemented in the game? When the aliens attack your base and you defend it with base defense measures does the following occur and if not a mod maybe? When you hit the battleship with your weapons but it still gets through (e.g. you hit the battleship with some missiles before it lands) can the number of attackers be reduced accordingly. For example if you hit it with some missiles then maybe they could have a couple less soldiers attacking (could be random small amount) or when you hit with loads of stuff like plenty of fusion balls and the battleship just makes it then their attack could be reduced to a few aliens (all others got killed in the defense). As I say not sure if this is already there to some degree (not played in a long time and I’m not at that stage yet this time round). &lt;br /&gt;
&lt;br /&gt;
: The general view is probably that Base Defence missions are a boon to XCOM already, so why make them any easier. At very least there would need to be more damage to the loot than there was to the Alien&#039;s combat effectiveness, otherwise this unbalances the game in favour of XCOM. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== Alien vs Alien ===&lt;br /&gt;
This one is way out there. Alien v Alien battles out with main game, just random battlescape maps. Sectoid and their terrorists against Floaters and theirs etc. One side human controlled the other computer. Choice of ships involved etc. &lt;br /&gt;
&lt;br /&gt;
:I actually love this idea. It might just about be possible using XComUtil, if someone is a total XComUtil guru.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
There was a utility to do this from Devisraad. it has long since been removed from his site, but someone may still have it. The basics was you renamed unit and it automatically replaced graphics flag to swap out the units. Didn&#039;t work on the Large Aliens but still was a fun mod  --[[User:BladeFireLight|BladeFireLight]] 02:20, 6 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Aircraft in Base Defence Battlescape ===&lt;br /&gt;
&lt;br /&gt;
New graphics for the Interceptor and Firestorm on the battlescape. All your ships could remain in their hangers when the aliens attack your base. Don’t understand why Mythos did not do this originally.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Simply for one reason: the limit on the size of the battlescape. UFO maps are usually limited to 10000 tiles (50x50x4), on Bases you have 9600 (60x60x3), the last level one being dirt. You need 3 levels to display X-COM craft. [[User:Hobbes|Hobbes]] 14:28, 23 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Could you not do it but clip off the top level of the craft - leaving the ground level and &#039;deck&#039; level? It would be a cool terrain area to fight in. I like the fact that in TFTD you can still see your subs during a base defence. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
It is possible to edit the map files to include the Skyranger, but you&#039;ll have to use Xcomutil to play with that terrain and I think it would never launch during base defense missions (but I&#039;m not sure on that - never tried editing the X-COM base terrain). [[User:Hobbes|Hobbes]] 19:25, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
This could be done by creating new &amp;quot;hangar&amp;quot; map modules, each containing one of the five possible X-COM craft. Bung the modules into [[GEODATA.DAT]] at index 0C, and you&#039;re done. The catch is you can&#039;t have all craft or the MCD array will overflow. The base terrain uses ~160 tiles as it is (out of the max of 256), while the craft use about 60 each (on average). Putting them all in would take the table above 300 entries (that is to say, the game&#039;d crash).&lt;br /&gt;
&lt;br /&gt;
&#039;Cause XcomUtil already provides us with an Intercepter design made up of SkyRanger parts, I suppose the way to go would be to only implement those two craft. If you have any alien technology ships, they could either be left out (&amp;quot;they were fast enough to escape&amp;quot;) or rendered as SkyRangers.&lt;br /&gt;
&lt;br /&gt;
It should also be noted that bases are made up of two levels, not three. Luckily, all the craft are only three levels high, so cutting out the landing gear still works. - [[User:Bomb Bloke|Bomb Bloke]] 19:56, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Very true about the MCD limit, that&#039;s why I only mentioned the Skyranger but the Interceptor could be added as well (and would not make much sense to have your first defense mission with a nice Avenger parked on the hangar while your Interceptors are being blow to bits by Battleships). The bases are 3 levels but you can only modify two of them. The game engine automatically adds a layer of &#039;dirt modules&#039; either at top or bottom. Hmmm, this just gave me an idea for the wish list... [[User:Hobbes|Hobbes]] 20:29, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Both alien and X-Com bases &#039;&#039;are&#039;&#039; only two levels. There must be something screwy in your game; XcomUtil maybe?&lt;br /&gt;
&lt;br /&gt;
It occurs to me that removing landing gear and stuff might make it &#039;&#039;just&#039;&#039; possible to jam in the Lightning tiles as well (as the MCD requirements would also shrink slightly). That&#039;d make it possible to add the Firestorm, too. Seems a shame to get that far then leave out the Avenger, though...&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 21:30, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nevermind, I completely misread your previous post. Yes, they are two levels only, could be Xcomutil that adds the 3rd level.&lt;br /&gt;
&lt;br /&gt;
- [[User:Hobbes|Hobbes]] 22:30, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
You may be able to get 3 levels in an X-Com Base but not 4. EU has a smaller amount of memory alocated. I dont know the limit but 60x60x4 will crash EU. TFTD has no problem --[[User:BladeFireLight|BladeFireLight]] 02:25, 6 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I got partway through this and then decided to change my methods entirely and start from scratch. So I thought I might as well post my progress anyways, as it&#039;s already about on par with the crude TFTD implementation: You always have the same craft appear in your hanger regardless of what is (or isn&#039;t!) there.&lt;br /&gt;
&lt;br /&gt;
[[Image:Skyranger In Hanger.rar]]&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 05:40, 17 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Hey BB, a while ago I have modded the plane terrain files so that the Skyranger appears facing east instead of south. If you want to use that one (to make it a little different) let me know. [[User:Hobbes|Hobbes]] 08:23, 17 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Thanks, but don&#039;t worry about it for now: it&#039;ll make the MCD arrays larger still, so I&#039;ll consider it when I get all the other stuff done. &lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 17:01, 19 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The completed mod is now included in my toolpack. As usual, I&#039;ve only done cursory testing on it, but I&#039;m pretty sure it&#039;s stable enough. &lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 06:40, 20 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Fixed firing TUs ===&lt;br /&gt;
&lt;br /&gt;
Something that always bugged me was how the weapons used percentages for firing TUs. It doesn&#039;t make sense that the faster a soldier got, the longer it would take to fire a weapon.&lt;br /&gt;
: This is because you can&#039;t fire an automatic weapon any faster than it will shoot. However, it otherwise makes minimal sense, as you point out. I suggest two alternative solutions. Firstly, that only automatic fire modes use a fixed percentage of a soldier&#039;s time units, and other modes use a fixed number of TUs. This would entail the newer soldiers spraying and your most elite taking fast, selective single shots. The alternative is that each firing mode for each weapon entails its own formula (revealed in the UFOpaedia but essentially hidden during the battlescape) along the lines of &amp;quot;X% of TUs + Y TUs&amp;quot;. Snap fire would be a low % of total plus a low fixed cost, Aimed would be a low % of total with a high fixed cost, and Auto would be a high % of total with a low fixed cost. While this is somewhat complex, in-game you wouldn&#039;t have to worry, and it accounts for what can be reduced (i.e. aiming speed) and what can never be improved by a soldier (i.e. cyclic rate of fire or time for a missile to lock). [[User:Stubbs|Stubbs]]&lt;br /&gt;
:: These observations are very sensible. However we also need to consider the impact on game balance. If you implement this in an even-handed way, alien rates of fire will increase as they have high TUs. Or, if you fudge it so that alien rates of fire remain the same, then X-Com&#039;s advantage will increase as the game progresses. Neither of these are desirable. It would be extremely hard to implement this and still maintain game balance. [[User:Spike|Spike]] 08:41, 1 September 2009 (EDT)&lt;br /&gt;
:::Each turn has the exact same duration, but is divided into TUs separately for each soldier. That&#039;s a simplification that works well in a turn-based game and reflects the fact that a soldier is fast or slow. However, weapons need to be aimed and will not fire faster than normal, thus they require a fixed percentage of the turn duration. In other words, soldiers gain movement speed, but fire at the same rate. This is both desirable and logical, just not self-explanatory. Thus, I would definitely stick to how TUs consumption is solved currently. [[User:mingos|mingos]]&lt;br /&gt;
&lt;br /&gt;
=== In-flight Interception ===&lt;br /&gt;
&lt;br /&gt;
Yes, I know that this idea is nigh-impossible, but I was thinking, wouldn&#039;t it be awesome to infiltrate a battleship, kill the aliens inside and escape, with the geoscape being shown zooming past underneath? Also, in a similar vein to the &amp;quot;aliens dust off after 3 turns&amp;quot; idea, after killing the aliens ( or blowing up the power cores, maybe?)you would have to get as many troops as possible to the drop ship in 3 turns(in retrospect I guess that you could only do this with the Lightning because of the doors) or the ship crashes and all troops not in the dropship are missing in action. Yes, this idea is impractical and would be really hard to program, but the idea of blowing a UFO up from the inside just seems epic to me. [[User:WolfenMage|WolfenMage]]&lt;br /&gt;
&lt;br /&gt;
=== Impose cost to using Psionic attacks===&lt;br /&gt;
&lt;br /&gt;
I think everyone agrees Psi attacks are too powerful. I would propose to impose a cost to using Psionic attacks. This could take the form of decreasing the physical stats after using a PSi attack (after all all: the psionic races are physically weak). This could for example lead to a soldier becoming a weakling or even fainting or dying from using psi-attack. Another possibility is to decrease mental stats (in this case the ratio would be that humans are not really being adapted to psi: you could be expected to go crazy playing mind games) leading to a decrease in psionic powers or maybe panicking or beserking the soldier using psi. Together with  limiting psi attacks of MCed units proposed elsewhere this would rebalance the later game somewhat... [[User:Emphyrio|Emphyrio]] 07:22, 9 August 2010 (EDT) &lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
===Fix All Bugs===&lt;br /&gt;
&lt;br /&gt;
Oh no [[User:Seb76#Bug Fixes|Seb76]] already did this! :) [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= I Wished (And My Wish Came True)... =&lt;br /&gt;
&lt;br /&gt;
== Geoscape and Strategic ==&lt;br /&gt;
&lt;br /&gt;
=== Fuel Ready always ===&lt;br /&gt;
[[User:Seb76#Mods|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
I wish that I could send out craft at any fuel or ammo level. Normally craft can only leave a base if fully &amp;quot;ready&amp;quot;. Craft is only &amp;quot;ready&amp;quot; at 100% fuel (or 0% fuel using an exploit) but there&#039;s no logical reason why a full tank and full ammo is required. Fully repaired... that&#039;s fine. I can live with pilots refusing to fly a plane missing a wing even if it means England is lost to aliens. 15 hours to fill a tank? Retarded but I can live with that too if I can send out a craft at 20% fuel.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
:Actually, many modern aircraft &#039;&#039;&#039;do&#039;&#039;&#039; require the fuel tanks to be full on takeoff, and fairly empty on landing.  The weight of the fuel is figured into the takeoff aerodynamics, and the tank being full prevents fuel &#039;sloshing&#039; in the tanks and not actually making it to the engine.  (Conversely, many aircraft need to have dispensed of much of that fuel weight before landing.)  This holds for most runway-takeoff craft, but may not apply to anything with VTOL capacity; I&#039;m unsure there.&lt;br /&gt;
&lt;br /&gt;
:I do agree that non-full weapons aren&#039;t as critical, though.  But from a logical standpoint, most modern aircraft should not be launched on an empty fuel tank.  I also should noted that an Elerium-fueled craft with [[Known_Bugs#Elerium-fueled_Craft_Bug|50% fuel or less remaining]] will automatically return to base, regardless of distance from base.  Of course, given that such craft fuel up quickly, its less of an issue there. [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:05, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Hum, maybe you can try [[User:Seb76#Mods|this]]? [[User:Seb76|Seb76]] 13:01, 8 August 2008 (PDT)&lt;br /&gt;
::Thanks! But I can&#039;t try it. I&#039;ve not been able to get my copy of Xcom to run properly except on a Win98 install. VC2008 requires a more modern OS. I&#039;m sure I could &#039;&#039;eventually&#039;&#039; figure out a way to get it running, but I tried once and wasted too much time before giving up.--[[User:Brunpal|Brunpal]] 14:45, 8 August 2008 (PDT)&lt;br /&gt;
:AFAIK VC2008 binaries should run OK on Win98 as long as the runtime is deployed. Anyway, the loader uses CreateRemoteThread API which is not available in Win98 so don&#039;t even bother. &#039;&#039;&#039;However&#039;&#039;&#039;, you can manually patch the binary if you want ;-) Data to patch (all in hexadecimal):&lt;br /&gt;
 offset 0x41752: 2A0075 -&amp;gt; 18207C&lt;br /&gt;
:HTH. [[User:Seb76|Seb76]] 14:56, 8 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Base Build Stacking===&lt;br /&gt;
[[User:Seb76#Base Building Stacking|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
At the moment you are only allowed to build next to a finished module, and you aren&#039;t allowed to plan ahead in your base construction. It would be nice to at least be able to plan more than one phase of construction in advance. This would be pretty easy to implement. There is no need to code any new &amp;quot;queuing system&amp;quot;. Just place the new module next to an existing under-construction module, but increment the build time to the normal build time + the time remaining on the under-construction module (the lowest time remaining that would make the square you are building in, a legal square to build in). As a premium for build stacking, you have to pay the costs up-front. As with normal construction, all costs are non-refundable if you change your mind. (There would probably need to be some on-screen feedback for how long the module would take to build, before you were committed to building it.) [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
See also: Discussion on [[Talk:Wish List|Talk page]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Battlescape and Tactical ==&lt;br /&gt;
&lt;br /&gt;
=== Equipment Management ===&lt;br /&gt;
&lt;br /&gt;
==== Soldiers remembers THEIR equipment ====&lt;br /&gt;
[[XcomUtil|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
I wish soldiers remembered what equipment they LAST used and start with that gear when they land. Normally soldiers grab various gear and put lots of crap on their belt. I put most things on the shoulder slots, and keep many things spare things on the ship just in case I need them. (I only want IN rounds if it&#039;s night. Stop picking them up before I shoot you in the back!) Takes forever to sort out the gear so the weakling isn&#039;t carrying all the rockets etc.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
:This is already available in [[XcomUtil]].  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:07, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
====Access to Stats screens during equipment allocation====&lt;br /&gt;
[[User:Seb76#Equipment Screen|Mostly implemented - here]]&lt;br /&gt;
&lt;br /&gt;
In Battlescape you can get to Stats screens by right clicking on one of the unit&#039;s status bars. However you can&#039;t do this in the Equipment screen. Things like Statstrings and (even more so) [[User:Seb76|Seb76]]&#039;s modified Equipment screen with actual/max weight help. But it would be nice to be able to see exact stats. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Decrease Accuracy for targets out of sight===&lt;br /&gt;
[[User:Seb76#Range_Based_Accuracy|Brilliantly implemented - here]]&lt;br /&gt;
&lt;br /&gt;
How come you can easily shoot on something you do not see?&lt;br /&gt;
I find the over-used scout-sniper tactic is a cheap exploit of the X-COM. The tactical game should describe a combat, not a cowardly shooting practice. It would turn into a nice feature, if there would be a penalty of (let us say) -20% to the accuracy of anybody who is firing on a target out of his current sight. This can greatly enhance the tactical depth of the game. (Seb around? ;-) --[[User:Kyrub|Kyrub]] 14:20, 30 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
...discussed [http://www.ufopaedia.org/index.php?title=Talk:Wish_list here]&lt;br /&gt;
&lt;br /&gt;
===Enough Smoke===&lt;br /&gt;
[[User:Seb76#Mods|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
It would be nice to increase the current limit on smoke/fire hexes. This is due to their locations being stored in a small, fixed length array. In effect you can only get about 3-4 smoke grenades worth of smoke or fire on the map at the same time. Being able to use smoke liberally would really open up new tactics. At the moment all you can really do is cover the LZ in smoke when you exit the transport, and maybe cover one advance over open ground. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
:I did something for that on my loader. Heavy testing is required because it is hard to be make sure smoke still works as before (testing is the hardest part actually). [[User:Seb76|Seb76]] 14:09, 18 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Alien AI ===&lt;br /&gt;
&lt;br /&gt;
====Aliens better with explosions====&lt;br /&gt;
Partly implemented [[User:Seb76#Bug Fixes|here (waypoint bug fix)]] and [[User:Seb76#Mods|here (Blaster drift)]]. &#039;&#039;(Possibly move this to talk, as notwithstanding these 2 bugs, apparently the Aliens are fairly safe with lethal explosives.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I wish that aliens using grenades or blaster bombs or stun bombs (anything that goes boom) would use more sense. They should not want to use items that go boom when they are guaranteed to be caught in the blast radius. The alien can use grenades and blaster bombs by going out of line of sight before the explosion goes off. That may not save them if the explosion blows out the walls. At least it would be less stupid then firing a point blank blaster bomb vs taking 5 steps and setting up another waypoint. Units with morale above 100 or mind controlled should still be suicidal as normal.--[[User:Brunpal|Brunpal]] 13:55, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Actually, the aliens are quite careful with their explosives, they just seem to be prone to the occasional accident. They&#039;re not likely to fire off a blaster or grenade too close to them - as evident by the strategy where if you see an alien with a BB but can&#039;t shoot back, the safest place is to stand next to it. The blaster bomb vertical waypoint fix in the loader also eliminates the &#039;oops&#039; moments where they plot a vertical right angle too close to themselves and there just happens to be a wall to the south. However, they do need more care with stun bombs as you often get to see an alien fire a stun bomb point blank into a HWP parked next to it. But I guess we are talking about three different weapon types here, so they may not be as careful with a standard firearm as they are with grenades and the BB. Wish the Apocalypse aliens at least had as much sense as the UFO/TFTD aliens. In that game, they&#039;re utterly psychotic with explosives and ignore nearby allies. -[[User:NKF|NKF]] 14:34, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mind Controlled then Hostile ===&lt;br /&gt;
If you mind control a human (civilians) in a terror mission, they become enemies when you lose control (meaning you have to kill the poor idiots to finish the mission). Any chance that they could revert to friendlies/non enemies again when you lose control.&lt;br /&gt;
: Now fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Mind Controlled then MIA ===&lt;br /&gt;
Men who are under alien control when you win become MIA, any chance they could be saved (you will have killed all the aliens after all).&lt;br /&gt;
: I believe XComUtil fixes this MIA issue. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
:: XcomUtil 9.6 also restores all DOA if you win to. Not what was intended. This feature has been removed as of 9.7 until I can fix it. --[[User:BladeFireLight|BladeFireLight]] 02:27, 6 January 2010 (EST)&lt;br /&gt;
: Now also fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Open Doors But Don&#039;t Enter/Exit ===&lt;br /&gt;
&lt;br /&gt;
Open doors like they do in TFTD (I know this is mentioned above with the good stun grenades idea).&lt;br /&gt;
: Now fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Category =&lt;br /&gt;
The page needs to be listed in various categories, which ones I don&#039;t know. Also links on other pages to this one would aid people finding it.&lt;br /&gt;
&lt;br /&gt;
: OK how about this one: [[User:Spike|Spike]] 12:21, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
[[Category:Oddities and bugs]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=28622</id>
		<title>Wish List (EU)</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=28622"/>
		<updated>2010-08-09T11:22:31Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: cost to psi proposed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;X-Com is a great game and as evidence just look to the fact this wiki exists even though the game pre-dates the internet. In all it&#039;s greatness X-Com has some elements and behaviors players wish they could change. This is a repository of those desires. Some day a fan mod may make your wish come true...&lt;br /&gt;
&lt;br /&gt;
= I Wish... =&lt;br /&gt;
State what you want AND what X-com does normally. Sign your name if you think &amp;quot;Oh man! That would be great!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Geoscape and Strategic ==&lt;br /&gt;
&lt;br /&gt;
=== Smarter Aircraft Movement Around Globe ===&lt;br /&gt;
I wish all craft understood the shortest distance between two points on a globe is a curved path towards the poles. Normally a craft goes in the opposite direction than it should (towards the equator). Pain in the ass when the base in the UK sends a craft to Siberia.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Smart Interception ===&lt;br /&gt;
&lt;br /&gt;
Aircraft intercepting a UFO just head straight toward the UFOs current position at all times. Unless the UFO is already on a head-on course, this results in the interceptor travelling through a closing parabolic spiral path, and often missing the UFO and ending up in a tail-chase, and then just falling further behind unless the UFO stops or reverses course. This is pretty basic stuff, fighter pilots have known how to do this better for nearly a hundred years. It is particularly important if the aircraft you are trying to intercept is moving faster than you (eg if you are flying an Interceptor). &lt;br /&gt;
&lt;br /&gt;
What is needed is to plot the UFO&#039;s current course and speed (which X-Com has from radar data), and plot an intercept course. The maths for this is pretty easy (the intersection of 2 vectors) and can be implemented in a few lines of code, if we can find out where the current interception algorithm is, and patch it. &lt;br /&gt;
&lt;br /&gt;
Actually the radar bearing shown on screen is only accurate to within 45 degrees. I presume that X-Com does actually know the UFO&#039;s bearing, since it can clearly track the UFO&#039;s movements. Finding where that variable is located might be different. &lt;br /&gt;
&lt;br /&gt;
While we&#039;re at it, it would be nice if the UFO detection information displayed the actual bearing in degrees, rather than just the compass direction (North East, South, etc). &lt;br /&gt;
&lt;br /&gt;
Even if the improved intercept algorithm only used a bearing accurate to within 45 degrees, that would still be better for remote UFOs. You might need to switch to &amp;quot;head straight for it&amp;quot; once you get to very close range. [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Score for retaliation Battleships===&lt;br /&gt;
&lt;br /&gt;
When a Battleship on retaliation attacks your base and is shot down, you get no score for it. This is completely illogical and it discourages any use of base defences. You should get normal 700 (or even 1400) points for it.&lt;br /&gt;
--[[User:Kyrub|Kyrub]] 14:05, 30 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: I&#039;m not sure about this. Yes it&#039;s illogical, but it could also be a licence to get a huge score if you have a strong enough base. [[User:Spike|Spike]] 12:16, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: The impenetrable base setup would turn into a cheat. As the aliens will keep hammering the base with a battleship until one breaks through, you&#039;ll have a steady supply of points without having to really do anything. Some balancing, such as paying to rearm your defence modules, ought to be thrown in to balance things out. -[[User:NKF|NKF]] 23:13, 13 September 2008 (PDT)&lt;br /&gt;
:::A better fix would be to remove the retaliation flag when a battleship is destroyed. If someone can post a savegame with a never-ending flow of base attacks, I may have a look at the fix. [[User:Seb76|Seb76]] 01:05, 15 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
=== All Aircraft Weapons Useful ===&lt;br /&gt;
&lt;br /&gt;
In a balanced game, all weapons should have their uses, or at least a niche, but sadly this is not so:&lt;br /&gt;
&lt;br /&gt;
The Cannon is only useful for shooting down Small Scouts, and even that is practically impossible, due to the difficulty in closing to 10km range with any UFO, particularly the fast-accelerating Small Scout.&lt;br /&gt;
&lt;br /&gt;
The Stingray is not even useful for shooting down Small Scouts (destroys them 57% of the time) and the Avalanche is better in every meaningful way. It also takes twice as long to rearm, making it operationally much worse than the Avalanche.&lt;br /&gt;
&lt;br /&gt;
The Laser Cannon is inferior to the Avalanche for everything. It does have a higher payload but this is hardly relevant. If attacking a UFO that you would struggle to kill with Avalanches, you are unlikely to own an aircraft that will survive long enough to inflict more damage than an Avalanche if it mounted Laser Cannon. &lt;br /&gt;
&lt;br /&gt;
The Fusion Ball Launcher has a [[Talk:Craft_Armaments#Fusion_Balls_better_than_Plasma_Beams.3F¦possible niche]] in fighting Battleships when mounted on Interceptors. Even then, it is difficult and expensive to have aircraft configured to fight only one enemy. &lt;br /&gt;
&lt;br /&gt;
Unfortunately, the optimum path for craft weapon development is all-Avalanche followed by all-Plasma Beam. This is a shame. &lt;br /&gt;
&lt;br /&gt;
Suggestions to &#039;tune up&#039; the other weapons:&lt;br /&gt;
&lt;br /&gt;
*Cannon - Increase the damage to 20 or 25. So at least there is a pay-off if you manage to get in close. &lt;br /&gt;
*Stingray - Double the rearm rate so it can be reloaded as fast as an Avalanche launcher. Increase the ammo capacity to 9 or 12. Then up the rearm rate again (triple or quadruple) so it can still be reloaded as fast as Avalanche. Even then, it&#039;s probably not better than the Avalanche, so maybe it make it &#039;&#039;more&#039;&#039; accurate than the Avalanche instead of less. Raise Stingray to 90%, or to 80% but drop Avalanche to 65%.&lt;br /&gt;
*Laser Cannon - increase accuracy to 50% and damage to 100. Give it infinite ammunition.&lt;br /&gt;
*FBL - increase the ammo from 2 to 3. Increase damage to 250 or even 255. It&#039;s far and away the most expensive weapon to operate so it might as well pack the biggest punch.&lt;br /&gt;
&lt;br /&gt;
It might be worth considering &#039;tune down&#039; the Plasma Beam as well, particularly its stand-off range.&lt;br /&gt;
[[User:Spike|Spike]] 06:59, 14 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Tougher UFOs  ===&lt;br /&gt;
&lt;br /&gt;
==== The Problem ====&lt;br /&gt;
&lt;br /&gt;
So let me get this straight. The first hybrid airborne weapon that humans ever build, and it immediately outclasses every weapon the aliens ever built, including their Battleship weapon? After all the Aliens have only been building plasma weapons for a few million years, us humans have been doing it for &#039;&#039;months&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
More to the point, once you get Plasma Beams, downing UFOs is like shooting fish in a barrel. Even Battleships aren&#039;t that exciting if you show up with enough ships. &lt;br /&gt;
&lt;br /&gt;
What is needed is to push up the range, damage, and rate of fire of all the UFO weapons, particularly the UFOs you will be fighting by the time you have plasma beams. At a minimum, the weapon on a Battleship should be at least as powerful as, say, 2 Plasma Beams (as found on the XCom craft it is fighting)? Instead of slightly less than half as powerful? Compared to a single Plasma Beam, only the Battleship weapon has better range. It has double the accuracy, slightly higher damage, but half the fire rate. Net 5.7% more firepower than one Plasma Beam, but no match for 2. And the Battleship weapon of course is the most powerful in the alien arsenal. &lt;br /&gt;
&lt;br /&gt;
Possible tune ups for UFOs:&lt;br /&gt;
&lt;br /&gt;
*Battleship - increase to 255 weapon power, improve reload rate to 12 (from 24). Now roughly equivalent to 4 Plasma Beams in total firepower (on Beginner difficulty). Increase range to 69km, so that the Battleship commences fire as soon as an XCom craft begins its attack run. Or better, increase range to 70+km, the limit of the interception window, so that the Battleship starts firing immediately the XCom craft enters air combat range. This would disrupt XCom aircrafts&#039; ability to form up into a flight of 4, prior to commencing their attack. Overall, this would make it much harder to down Battleships. Increasing weapon range to 70+km would also make it much harder to tail a Battleship - manual control in the Geoscape would be needed to hold off outside of combat range. Really, the Battleship should not sit there like a sitting duck. Does it think XCom are friendly?&lt;br /&gt;
*Terror Ship - increase range to 52 (or decrease Plasma Beam range to 42), so stand-off kills are not possible with Plasma Beams?&lt;br /&gt;
*Actually maybe all the larger UFOs should have weapon range 69-70+km, so they behave very aggressively toward XCom craft. &lt;br /&gt;
&lt;br /&gt;
NB: Strange effects occur if weapon range goes over 70km so it&#039;s probably best to leave it at 70km rather than 75km.&lt;br /&gt;
&lt;br /&gt;
NB: Also, changes to rate of fire need to be looked at carefully though because Difficulty Level also reduces reload rate for UFOs. Between Beginner (Difficulty 0) and Superhuman (Difficulty 4), rate of fire (and thus firepower) for Battleships, Terror Ships and Supply Ships increases by 24/(24-4x2=16) or 50%. But if the base reload rate for these weapons was reduced to 12, the transition from Beginner to Advanced would increase firepower &#039;&#039;&#039;three&#039;&#039;&#039; times for these 3 UFOs (less so for the smaller UFOs). It is less risky to increase the weapon power. Unfortunately there are only 2 firepower variables to play with - damage and reload rate - so there are not a lot of options, especially for the Battleship which already has weapon strength 148 out of a probable maximum of 255.&lt;br /&gt;
&lt;br /&gt;
:More detail on this. For Medium Scout, Large Scout and Abductor, with nominal reload rate 48gs, the rate of fire improves +20% between Beginner and Superhuman. For Harvester (32gs) it improves one third. For Large UFOs (Terror Ship, Supply Ship, Battleship - 24gs) the improvement is +50%. [[User:Spike|Spike]] 20:28, 14 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
I think we should assume that the Battleship, which is bigger than the entire XCom base, is engaging XCom craft with its secondary weapons rather than its main armament, which could probably destroy Manhattan with a glancing hit. &lt;br /&gt;
&lt;br /&gt;
I would really like to see the hypothetical Mega-Battleship go up against XCom&#039;s finest - a flight of 4 Avengers armed with dual Plasma Cannon or dual Fusion Ball Launchers. With the Battleship having 70+km range, 255 weapon power, and an effective fire rate on Superhuman triple that of the PB, it would have the firepower of 11 Plasma Beams - 36% more firepower than the whole attacking XCom force combined. To be honest I think that would be carnage, not sure XCom could win. So that would be tuning the Battleship up too much. The 3-fold increase in rate of fire when on Superhuman is just too much. Maybe just max out the damage to 255 and range to 75. This gives a 72% increase in firepower, and a challenging tactical problem for XCom (forming up and approaching under fire).&lt;br /&gt;
&lt;br /&gt;
The smaller UFOs can probably stay as they are. It is not until later in the game that XCom advances so that even large UFOs are easy pickings. What is the crossover point? Maybe the medium UFOs. So it might be good to reduce the reload times of the medium UFOs from 48 / 32 to 24, a good increase in firepower. &lt;br /&gt;
&lt;br /&gt;
In general I think all UFOs energy weapons should have at least as good range as the XCom energy weapons, even the Medium Scout. Again, they have been using these weapons for millions of years and we only just figured out how to copy them from the aliens, how could our weapons be better than the aliens? How did our first plasma weapon out-range and out-perform all but the hugest UFO plasma beam? And on an airframe the size of a Small Scout we mount &#039;&#039;two&#039;&#039; such weapons? On the battlefield we only are able to replicate alien weapons;  how is it that in the air we are able to improve on them &#039;&#039;masssively&#039;&#039;?&lt;br /&gt;
&lt;br /&gt;
Perhaps there should never be a stand-off advantage, except possibly with missiles -which should be less accurate with longer range. The XCom stand off advantage is really unfair because as far as I have seen the UFOs never attempt to close to effective range, even when they are getting killed. They don&#039;t break off much, either, though I think I have seen that happen on occasion. &lt;br /&gt;
&lt;br /&gt;
==== Specific Proposals ==== &lt;br /&gt;
&lt;br /&gt;
===== No Standoff Beam Attacks =====&lt;br /&gt;
&lt;br /&gt;
Increase &#039;&#039;all&#039;&#039; UFO plasma weapon ranges to at least 55km (compared to 52km for the XCom plasma weapon). Now only launched XCom weapons (Avalanche and Fusion Ball) have standoff advantage. Probably also reduce the accuracy of the Avalanche to 60% and buff Stingray accuracy to 80%, providing both weapons with a useful niche role.&lt;br /&gt;
&lt;br /&gt;
===== No Standoff Attacks =====&lt;br /&gt;
&lt;br /&gt;
Increase &#039;&#039;all&#039;&#039; UFO plasma weapon ranges to 66km (compared to 52km for the XCom plasma weapon). Now &#039;&#039;no&#039;&#039; XCom weapon has standoff advantage. (The benefit of a longer range weapon is simply spending less time being fired on by the UFO.)&lt;br /&gt;
&lt;br /&gt;
===== Twitchy Aliens =====&lt;br /&gt;
&lt;br /&gt;
Increase all UFO ranges to 69km. They will attack as soon as XCom aircraft commence any attack run.&lt;br /&gt;
&lt;br /&gt;
===== Hostile Aliens =====&lt;br /&gt;
&lt;br /&gt;
Increase all UFO ranges to 70km. They will attack as soon as XCom aircraft enter intercept range. UFOs now fire first, and tailing them unchallenged is impossible. &lt;br /&gt;
&lt;br /&gt;
===== Improved Medium UFOs =====&lt;br /&gt;
&lt;br /&gt;
Reduce (improve) the nominal reload time of Medium UFOs, Abductors and Harvesters, from 48gs and 32gs to 24gs. This increases the challenge in the early-mid game, when XCom might first be deploying advanced weapons.&lt;br /&gt;
&lt;br /&gt;
===== Improved Battleships =====&lt;br /&gt;
&lt;br /&gt;
Increase damage to 255. They&#039;re firing (bigger) Fusion Balls! A Battleship now has the same firepower as one XCom Craft with dual Plasma Beams (gosh wow!). It&#039;s a start, but what if we...&lt;br /&gt;
&lt;br /&gt;
===== Super Battleships =====&lt;br /&gt;
&lt;br /&gt;
... also reduce nominal reload time to 18gs. Giving a further one-third extra firepower on Beginner, 60% more on Superhuman.&lt;br /&gt;
&lt;br /&gt;
===== Mega Battleships =====&lt;br /&gt;
&lt;br /&gt;
... or for a real challenge, reduce reload time to 12gs. A further doubling of the firepower on Beginner - a further &#039;&#039;four&#039;&#039; times increase on Superhuman. Now Superhuman Battleships out-gun the biggest fleet XCom can throw at them!&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 00:25, 19 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
===Enforced Variant Games===&lt;br /&gt;
&lt;br /&gt;
Various people like to play various variant games, such as No Alien Technology, or No Detection, or No Lethal Weapons - see for example Scott Jones&#039; notes to XComUtil. It would be nice to have options on the game executable to enforce these scenarios. Self restraint is hard! [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Some of these variant scenarios have been implemented by [[User:Seb76#Mods|Seb76]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Recruit Certain Alien Types===&lt;br /&gt;
&lt;br /&gt;
Consider that not all aliens are loyal to their master (most TFTD alien has a device lodged to its brain), it would be interesting (or at least cool) if we could recuit such aliens to the XCOM cause. Maybe we can remove the controling devices from captive aliens after research on that species. Or convince the head of the Snakemen that it would be far more benefit to his race to help us instead of the Ethereals [[User:L-Zwei|L-Zwei]] 23:25, 12 September 2008 (PDT).&lt;br /&gt;
&lt;br /&gt;
Only certain alien types should be recruitable. Ones that should NOT be include Mutons (as they are directly controlled by Ethereals), Chrysallids (unbalancing), etc. It would be nice to be able to reverse-engineer Cyberdiscs or Sectopods, or make it that a Cyberdisc must be researched to build hovertanks/etc.&lt;br /&gt;
[[User:MagicJuggler|MagicJuggler]] 13:32, 18 September 2008 (PDT)&lt;br /&gt;
: It&#039;s pretty obvious which ones should be recruitable: non-robotic terror units that are captured alive. Chryssalids should simply do melee damage instead of impregnating (as the resulting spawn would not be mind-controlled and therefore XCOM wouldn&#039;t do it). Silacoids would be pretty ineffectual, and reapers slightly less so, but both would be disposable scouts. Celatids might actually have some use (eating through hulls with acid, and arcing over walls) but are fragile. All of these would require capturing a terror alien alive after researching Psi Amp. The two robotic units should require a live alien Engineer researched as well as UFO Construction, and the materials for building one would be one corpse of the appropriate type, Alien alloys and Elerium (to repair and refuel the husk). The Sectopod should probably be nerfed somewhat, so that it isn&#039;t quite so invincible to Heavy Plasma shots - after all, it was probably a twisted and melted modern art piece by the time it finally went down). [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Game option: sell only researched items ===&lt;br /&gt;
&lt;br /&gt;
The fact that you may sell the alien items for the best price once you get them, without any research, is illogical. Such staff would never get on the market, being top secret and potentially dangerous to the humanity.&lt;br /&gt;
&lt;br /&gt;
Selling without proper research does not help the replay value of the game either: once you know the &amp;quot;right path&amp;quot; to get the best items, you simply sell anything else immediately and ignore the unnecessary research. Too easy.&lt;br /&gt;
&lt;br /&gt;
Therefore I wish for this game option: unknown items are sold for 0 (including the alien corpses), the known ones for their full price. This makes the sustainable economics much harder to develop and it gives sense to the &amp;quot;useless&amp;quot; research. Last but not least, it adds a lot of depth to the gameplay: will you choose research of a new weapon you need on the field, or of a mind probe that will earn you millions in sales? --[[User:Kyrub|Kyrub]] 15:55, 6 April 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
: I really like this option, it&#039;s a great idea. Makes the game harder and makes it more interesting, more varied. Gives extra value to the otherwise &amp;quot;useless&amp;quot; research paths. Good thinking! [[User:Spike|Spike]] 15:06, 24 August 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
: I&#039;d prefer that unresearched artifacts/corpses sold for a fraction of their original value (no more than 25%). It makes no sense that nobody would pay to research them for themselves. Additionally, Laser Cannon sell price needs to be nerfed. [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== New Research Mechanics ===&lt;br /&gt;
&lt;br /&gt;
The above comments spurred some ideas to make the research more realistic and the path to victory less obvious. &lt;br /&gt;
&lt;br /&gt;
For flavor reasons, give research options vague names instead of exact names. This already exists in some research topics, such as &amp;quot;New Fighter Craft&amp;quot; instead of &amp;quot;Firestorm&amp;quot;. So, research topics might read &amp;quot;Alien Hovertank Wreck&amp;quot; instead of &amp;quot;Cyberdisc Corpse&amp;quot;, &amp;quot;Grey Alien Corpse&amp;quot; instead of &amp;quot;Sectoid Corpse&amp;quot; or &amp;quot;Alien Pistol&amp;quot; instead of &amp;quot;Plasma Pistol&amp;quot;. The names would be revealed in the UFOpaedia entry, and certain items would then be renamed as per common sense.&lt;br /&gt;
&lt;br /&gt;
Hide the ranks of aliens in captivity until they are researched (so you&#039;d see Live Grey Alien #1, Live Grey Alien #2 if you had two Sectoids available for research). However, if you happened to have two Soldier ranks in containment, you&#039;d only see one topic. The same rank/race combination would never appear again, but you might have to research several specimens of the same species to get the useful one you want. The alternative would be to have researched Mind Probe, which would tell you exactly what you had in containment (just as it does on the battlefield).&lt;br /&gt;
&lt;br /&gt;
Once an alien or its corpse is researched, then all other instances of that alien or its body are renamed appropriately. For example, research a live Muton and Muton corpses become obvious, and vice versa. &amp;quot;Live Green Humanoid Alien&amp;quot; is also renamed to &amp;quot;Live Muton&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Finally, there should be a few more prerequisites in place to make less useful research more necessary. As someone else has mentioned, you should need a Cyberdisc Corpse to research Hovertanks. I&#039;d also suggest that Psi Amp and Mind Shield require the research of Mind Probe (seeing as both entail scanning for minds as a logical first step), and that Flying Suits require Floater Corpse, Cyberdisc Corpse or a live Floater researched as an additional prerequisite (not Ethereals, as they fly with the power of their huge brains). [[User:Stubbs|Stubbs]]&lt;br /&gt;
&lt;br /&gt;
:These are all good suggestions and make a lot of sense. An alternative explanation of the names (seen in some fan fiction) is that these names are not the real names, but are made up by XCom troops based on some limited battlefield experience of them. But revealing the &amp;quot;real&amp;quot; alien race names through Research is a fun idea. [[User:Spike|Spike]] 08:44, 1 September 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
== Battlescape and Tactical ==&lt;br /&gt;
&lt;br /&gt;
===Equipment Management===&lt;br /&gt;
&lt;br /&gt;
All wishes are currently implemented!&lt;br /&gt;
&lt;br /&gt;
===Fog of War Improvements===&lt;br /&gt;
&lt;br /&gt;
I&#039;m sure most of these would be an absolute PAIN to implement, but I figured I&#039;d toss the ideas out here.&lt;br /&gt;
&lt;br /&gt;
====Prior Recon of Battlefield====&lt;br /&gt;
One thing that has always irked me is X-COM has no terrain knowledge when it lands, despite having probably circled the place two or three times before landing and thus they should know at least some of the area.  This would be nice, but isn&#039;t too important.  Probably would be a pain to implement so X-COM would have all knowledge of external features but no knowledge of building interiors, anyways.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Yes at the very least, when you splash the UFO, it could tell you (via some miracle technology such as &amp;quot;satellite reconnaisance&amp;quot;) what the terrain type is of the landing zone area. Then you could adjust equipment accordingly. And adjust your uniform camouflage (if using one of the uniform mods). [[User:Spike|Spike]] 12:16, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Geoscape: center on the site, then maximum zoom. Aside from having to disambiguate forest from jungle, this works fine for knowing the exact terrain you&#039;re getting into. -- [[User:Zaimoni|Zaimoni]] 10:17, 4 Sept 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
:::This is already present in the game.  To center the Geoscape on a specific location, right-click on the target spot.  To do maximum zoom in, right click on the Zoom-In button(and the same works for Zoom-Out).  Also, Jungle and Forest use the same display algorithm, but are easy to differentiate; Forest occurs NORTH of the equator, and Jungle occurs SOUTH. [[User:Arrow Quivershaft|Arrow Quivershaft]] 13:23, 4 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Returning to AQ&#039;s original suggestion, it wouldn&#039;t be too hard would it for the dropship to &amp;quot;radar map&amp;quot; the target, and then have the basic map show up on your scanner on Turn 1? [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
====Dynamic Fog====&lt;br /&gt;
&lt;br /&gt;
The Fog of War in X-COM is clumsily implemented, compared to modern expectations.  Everything starts out black, but after exploring, is shown...and it&#039;s kept in the same showing, regardless of whether you actually have LoS to that area anymore.  It would be nice if when you no longer had Line of Sight to a particular map area, it would be cloaked in a way so that you knew the terrain, but not the units there.  Since I&#039;ve sometimes spent over half an hour trying to hunt down that last alien hiding in area I&#039;d already explored.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
====Deactivate Object Radar====&lt;br /&gt;
&lt;br /&gt;
Currently, in X-COM, any objects dropped in a given square show on your Battlescape, regardless of whether you have Line of Sight to the square or not.  In regards to dropped weapons/grenades/equipment/dead soldiers/dead aliens, this doesn&#039;t make a large difference.  But in the case of STUNNED aliens, a quick scan across the Battlescape can tell you whether the alien you stunned 10 turns ago is still down, or stood back up(the stunned alien object will disappear from the stack).  Of course, since aliens which have revived from stun are almost always disarmed(and the ones that aren&#039;t probably should&#039;ve been killed instead), the usefulness of this &#039;exploit&#039; is reduced mainly to finding out that the last alien you&#039;re looking for is just wandering aimlessly and unarmed.  Perhaps leave stacks showing the same until you regain LoS to that area? [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Restore Game from Battlescape===&lt;br /&gt;
&lt;br /&gt;
It would be nice to be able to reload a saved game directly from the Battlescape &amp;quot;?&amp;quot; screen, rather than having to go through the process of Abandoning to the Geoscape. Would you need to check it was a Battlescape save and not a Geoscape save? Maybe, maybe not. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Warm Grenades===&lt;br /&gt;
&lt;br /&gt;
Currently when you set the timer on a grenade (or HE pack), the timer runs down every turn regardless of whether the grenade is worn, held, or dropped. Then, when the timer runs out, it explodes unless it is held or worn. There is no real grenade or explosive that works this way. Once the timer (fuse) starts running, they explode regardless. However for most hand grenades, the timer (fuse) doesn&#039;t start until after you throw/drop the grenade. It would be nice to have both of these real world behaviours, and lose the game&#039;s default behaviour. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Technically the way the game implements grenades, they don&#039;t have a timer. At least, not as such. When you set a grenade, the game just assigns it a turn to blow up on. Once the turn has passed, the game checks to see that it&#039;s on the ground and blows it up if it is, otherwise it doesn&#039;t. I believe Seb76 has already addressed this in his patches where there&#039;s an option to make grenade blow up regardless whether they are in inventory or otherwise the moment the timer is set. X-Com Apocalypse does a good job of this. The moment the grenade is so much as moved after the timer is set, it counts down. - [[User:NKF|NKF]] 23:01, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: To simulate an actual timer, you would need to do something like: Every turn that a primed grenade is being held by a unit during the &amp;quot;explode&amp;quot; check, increment by +1 the turn when that grenade is going to explode. [[User:Spike|Spike]] 19:10, 14 September 2008 (PDT)&lt;br /&gt;
:::I think I would change quantity2 ([[OBPOS.DAT]]) to a countdown instead of a turn, and use quantity3 as a flag indicating if the count has started. This flag is set any time a turn ends and the grenade has no owner. Taking it back in your hand once the timer has started won&#039;t help and the thing must be thrown... quantity2 is decreased if quantity3 is set, and the grenade blows up as usual. [[User:Seb76|Seb76]] 01:35, 15 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: That would be great. It would be exactly consistent with a &#039;spoon&#039; type hand grenade. The timer only starts when you release the grenade, but after that it explodes at a definite time regardless of whether you pick it up or not. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
===Stun Grenades===&lt;br /&gt;
&lt;br /&gt;
I want flashbangs.--[[User:Brunpal|Brunpal]] 22:59, 11 September 2008 (PDT)&lt;br /&gt;
:Instead of stunning, I&#039;d see more effect if it would remove some TUs to units having line of sight (to be fare it should affect xcom units too). It would help against reaction fire (which is the point of flashbangs). Given that grenades detonate at the end turns, it would require a good coordination to have the grenade detonate exactly at the end of the alien turn, and just before your attack. Being able to open doors à la xcom2 would also help to throw flashbangs just before a craft assault... [[User:Seb76|Seb76]] 22:03, 12 September 2008 (PDT)&lt;br /&gt;
::That would be good. Hard to program, potentially extremely unbalancing, but good. I considered a &amp;quot;debuff&amp;quot; kind of ability (as you suggest) for flashbangs, vs the more obvious substitution of [[stun]] for [[Explosions|HE]] damage. In the end, I picked &amp;quot;I want flashbangs.&amp;quot;--[[User:Brunpal|Brunpal]] 03:32, 13 September 2008 (PDT)&lt;br /&gt;
: Maybe flashbangs dont&#039; work on Aliens - otherwise, XCom would use them, right? :) But seriously, I too would like flashbangs, and stun grenades / concussion grenades. Both of these would make the game easier, though. With flashbangs, you might have to compensate by just giving the aliens more TUs. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
::More options for the player is going to make it easier for any kind of game. Particularly of games like XCOM where the computer can&#039;t take advantage of the changes. However I don&#039;t believe a weak stun grenade (like 44 stun damage, comparable to AC-HE) would change the game much because the 80 item limit remains.--[[User:Brunpal|Brunpal]] 22:21, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Night Vision===&lt;br /&gt;
&lt;br /&gt;
I &#039;&#039;&#039;don&#039;t&#039;&#039;&#039; want to add night vision equipment to the game. I assume that either (1) all XCom units already have night vision gear as standard, but it&#039;s not as good as alien night vision, and the visibility that XCom units have at night is based on their standard-issue night vision gear, or (2) night vision gear does not work on Aliens. Either they do not appear on night vision, or maybe worse - maybe the aliens can manipulate night vision equipment, causing worse than normal vision, or hallucinations, and even tricking XCom units into firing on each other. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Throwing over stuff===&lt;br /&gt;
&#039;&#039;&#039;(Moved to Talk, as this is not a bug and so does not need fixing.)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Assault Time Limit===&lt;br /&gt;
&lt;br /&gt;
One of the cool things about UFO Defence is there are no time limits on the scenarios. This is great as it allows for a totally different kind of tactics and much more flexibility. &lt;br /&gt;
It&#039;s more of a &amp;quot;thinking man&#039;s game&amp;quot; as a result. But... arguably this is not very realistic for UFO Assault missions. If the Aliens are getting creamed, they should try to make a getaway if they can (just like XCom would). A simple way to implement this would be a hard time limit (say 20 turns?) on a UFO Assault. Another way would be to base it on Alien Morale. At a certain Morale level the aliens decide to dust off. Give the player say 3 turns warning while they rev up  the engines. Then if there is still a Navigator or Engineer in the Control Room alive, the ship takes off. Any XCom troops still aboard are MIA. &lt;br /&gt;
&lt;br /&gt;
You might run into problems if the UFO took off but then landed again or was shot down, generating another ground mission with potentially &#039;&#039;&#039;more&#039;&#039;&#039; Aliens than were still alive at the end of the Assault. (Still, maybe they hatch some more clones if they get time to....) [[User:Spike|Spike]] 09:51, 4 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: It strikes me as justified they don&#039;t do that. Troops loose in the vessel could be seriously bad. It would be nice if they dusted off on the condition that their morale was low enough or 3 X-com soldiers had the door in their sights without aliens alive outside in the latter case and no X-com soldiers on board in either case. also, if the UFO has a hole in either the command or engine room, it would have to set down before leaving the atmosphere. [[User:(name here)|(name here)]]&lt;br /&gt;
&lt;br /&gt;
Taking off with troops onboard would be perfectly safe (for the aliens) and justifiable if one assumes that alien ships in flight are inherently inhospitable for humans.  This is easily done by saying that they undergo accelerations that humans can&#039;t withstand (splat), can&#039;t withstand for any length of time (pass out), or that they intentionally make rapid accelerations in different directions, either normally or just if they&#039;re trying to bash some intruders around.  Naturally, the aliens themselves would either be immune to these (tough physique / their built-in antigrav devices?), or be in acceleration chairs, safe from all this.&lt;br /&gt;
&lt;br /&gt;
Alternatively, when you get the warning that the UFO is going to take off, you&#039;ve got a certain amount of time to either get everyone &#039;&#039;&#039;off&#039;&#039;&#039; the UFO, or to get everyone &#039;&#039;&#039;on&#039;&#039;&#039; it (or as many as you can).  There could be a follow-up mission that takes place in &amp;quot;sky&amp;quot; terrain, where the outdoors is either impassable (the easy way) or else instantly withdraws units from combat (flying suits / parachutes).  The soldiers&#039; goals would be to either take out the aliens and presumably safely land and salvage the UFO, or take out the UFO&#039;s means of flying (power cores / navigator?).  In the latter case, they might have a certain number of turns to withdraw or be caught in the crash, with possible casualties just like the aliens, mitigated to some degree by their armour and maybe where inside the UFO they are.&lt;br /&gt;
&lt;br /&gt;
In the case of a crash, there could be a final mission to finish off the surviving aliens, using the X-COM soldiers that survive the crash, and no landing craft (it&#039;s still back at the old landing site).  Alternatively, you could say that there &#039;&#039;&#039;is&#039;&#039;&#039; an X-COM landing craft parked outside (with all remaining members of the original landing party), since the in-flight time / distance was presumably low and the original X-COM craft quickly packed up and flew to the new landing site. &amp;amp;mdash; [[User:Wisq|Wisq]] 17:11, 18 April 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
===Alien AI===&lt;br /&gt;
&lt;br /&gt;
====Attempts to rearm====&lt;br /&gt;
Aliens cannot pick up items, but I wish they would. If an alien has no useful weapons in inventory they should either head for cover or head for a plasma weapon. Panicked aliens drop their weapons but never seem to pick them up when they managed to pull themselves together. It would be nice if they tried to arm themselves again. --[[User:Brunpal|Brunpal]] 13:55, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Even if it&#039;s too hard to make aliens head towards weapons (is it safe?, could it be used to trap them, not to mention the complexities of route finding) - it would still be good if an unarmed alien checked for usable weapons in every square it moved through, and at least picked up one loaded weapon or grenade per turn. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Fixing the AI for this could be really hard. Apart from all the possible exploits by XCom, the AI is probably a really hard part of the game to reverse engineer. You could say that an unarmed alien is no threat anyway (we are only concerned about aliens without psi or built in weapons). So nothing is lost even with an exploitable method of re-arming. By exploitable I mean the XCom player can manipulate re-arming, e.g. by leaving weapons out in the open as bait for traps. &lt;br /&gt;
&lt;br /&gt;
Maybe the simplest modification would be to &#039;&#039;not&#039;&#039; drop weapons when the alien panics? This does not require delving in to the AI, just intercepting the panic effects. Dont make aliens drop any weapons when they panic. It would be reasonable to return the weapon in hand to inventory, so there is a TU cost for the alien to bring the weapon back into play again. &lt;br /&gt;
&lt;br /&gt;
This would not work for aliens who were stunned and wake up, or who were mind controlled by XCom and made to drop their weapons. But it would probably catch 80% of cases. &lt;br /&gt;
&lt;br /&gt;
Another cheat, short of fixing the AI, is just to pick up weapons that the alien walks over. It could also pick up &amp;quot;spare&amp;quot; weapons from adjacent aliens (cheating on TUs - basically just teleporting the items to the unarmed alien). Spare alien weapons are almost invariably grenades. I have not had a lot of success in getting unarmed aliens to use grenades, so more research is needed here. Maybe only certain types of aliens use grenades, or only in certain circumstances?&lt;br /&gt;
&lt;br /&gt;
Really, really cheating would be to teleport any weapon laying around the battlefield into the alien&#039;s inventory. But I think it is more fair just to say panicked aliens dont drop their equipment. [[User:Spike|Spike]] 16:13, 13 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
==== End Psi Bullying and Psi Baiting ====&lt;br /&gt;
When the aliens use psi attacks they always go for your guys with the most chance of failing the attack and going nuts. Is it possible to make those pesky aliens attack random soldiers, regardless of their psi skill/strength? &lt;br /&gt;
&lt;br /&gt;
: Not a bad idea to randomise this a bit, because while initially this tactic helps the aliens, it becomes so predictable that it can be used against them by deploying unarmed &amp;quot;Psi Bait&amp;quot; soldiers to draw off all the attacks. (Or make aliens avoid controlling/panicking soldiers who have no loaded weapons. But then folks would just give them pea shooters and wear armour.) [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== 80 Item Limit on Base Defense Mission ===&lt;br /&gt;
: Well you get the 80 item limit on every mission, but it hurts more on a Base Defence as you have more limited ability, or sometimes no ability, to manage what goes into those 80 items. I was thinking about a couple of (theoretical) ways to fix this and I hit on a new one (new for me anyway): Why not take the 80 items from the Transport(s), first Transport then second Transport until you run out of items or hit 80. This has a few benefits:&lt;br /&gt;
:* Ready made interface to manage the 80-item limit, the Stores &amp;lt;&amp;gt; Craft (Equip Craft) Screen.&lt;br /&gt;
:* If you have no warning at all, the 80 items will probably make good tactical sense in general terms, even if they are are not totally optimised for Base Defence (no proximity mines, etc).&lt;br /&gt;
: I think that copying the Transport inventory into the Battlescape inventory would be relatively to implement (though what do I know?). As a simplification, you could move only the inventory in the &#039;&#039;first available&#039;&#039; Transport that is present in the Base, into the Battlescape, and not bother looking in more than one place (other Transports, Base Stores) to get up to 80. It would then be a bit of a drag if your Transports are all out on a mission when your Base gets attacked though. Or perhaps inspect the inventory of Transport 1 (wherever it is in the world), and then attempt to copy its inventory, using equipment present in the Base?&lt;br /&gt;
: Another way of doing it which has been mentioned elsewhere is to try to reverse the order of the items in the Stores list. This has the effect of putting the more advanced weapons first, rather than the more basic weapons. There could be all kinds of unwanted side effects of this, depending on various programming issues.&lt;br /&gt;
: Actually there is already a fix for the 80-item limit in XComUtil. XComUtil records a standard assign weapon set for each of your troops, and then teleports those weapons to the Battlescape from your Base Stores, regardless of the 80-item limit (but still subject to the Battlescape&#039;s 170-item limit). Not 100% sure if this works for Base Defence missions though. &lt;br /&gt;
:[[User:Spike|Spike]] 13:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== Collision Detection Bugs ===&lt;br /&gt;
I have noticed that sometimes you can shoot through hard objects, for example, recently I had a soldier up on the roof of a house overlooking a large scout craft. When a Sectiod moved through one of the inner doors of the UFO, my man shot him straight through the intact ufo roof!  &lt;br /&gt;
&lt;br /&gt;
=== Base Defence Systems Cause Alien Casualties ===&lt;br /&gt;
&lt;br /&gt;
I don’t know if this is already implemented in the game? When the aliens attack your base and you defend it with base defense measures does the following occur and if not a mod maybe? When you hit the battleship with your weapons but it still gets through (e.g. you hit the battleship with some missiles before it lands) can the number of attackers be reduced accordingly. For example if you hit it with some missiles then maybe they could have a couple less soldiers attacking (could be random small amount) or when you hit with loads of stuff like plenty of fusion balls and the battleship just makes it then their attack could be reduced to a few aliens (all others got killed in the defense). As I say not sure if this is already there to some degree (not played in a long time and I’m not at that stage yet this time round). &lt;br /&gt;
&lt;br /&gt;
: The general view is probably that Base Defence missions are a boon to XCOM already, so why make them any easier. At very least there would need to be more damage to the loot than there was to the Alien&#039;s combat effectiveness, otherwise this unbalances the game in favour of XCOM. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
=== Alien vs Alien ===&lt;br /&gt;
This one is way out there. Alien v Alien battles out with main game, just random battlescape maps. Sectoid and their terrorists against Floaters and theirs etc. One side human controlled the other computer. Choice of ships involved etc. &lt;br /&gt;
&lt;br /&gt;
:I actually love this idea. It might just about be possible using XComUtil, if someone is a total XComUtil guru.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
There was a utility to do this from Devisraad. it has long since been removed from his site, but someone may still have it. The basics was you renamed unit and it automatically replaced graphics flag to swap out the units. Didn&#039;t work on the Large Aliens but still was a fun mod  --[[User:BladeFireLight|BladeFireLight]] 02:20, 6 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Aircraft in Base Defence Battlescape ===&lt;br /&gt;
&lt;br /&gt;
New graphics for the Interceptor and Firestorm on the battlescape. All your ships could remain in their hangers when the aliens attack your base. Don’t understand why Mythos did not do this originally.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Simply for one reason: the limit on the size of the battlescape. UFO maps are usually limited to 10000 tiles (50x50x4), on Bases you have 9600 (60x60x3), the last level one being dirt. You need 3 levels to display X-COM craft. [[User:Hobbes|Hobbes]] 14:28, 23 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Could you not do it but clip off the top level of the craft - leaving the ground level and &#039;deck&#039; level? It would be a cool terrain area to fight in. I like the fact that in TFTD you can still see your subs during a base defence. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
It is possible to edit the map files to include the Skyranger, but you&#039;ll have to use Xcomutil to play with that terrain and I think it would never launch during base defense missions (but I&#039;m not sure on that - never tried editing the X-COM base terrain). [[User:Hobbes|Hobbes]] 19:25, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
This could be done by creating new &amp;quot;hangar&amp;quot; map modules, each containing one of the five possible X-COM craft. Bung the modules into [[GEODATA.DAT]] at index 0C, and you&#039;re done. The catch is you can&#039;t have all craft or the MCD array will overflow. The base terrain uses ~160 tiles as it is (out of the max of 256), while the craft use about 60 each (on average). Putting them all in would take the table above 300 entries (that is to say, the game&#039;d crash).&lt;br /&gt;
&lt;br /&gt;
&#039;Cause XcomUtil already provides us with an Intercepter design made up of SkyRanger parts, I suppose the way to go would be to only implement those two craft. If you have any alien technology ships, they could either be left out (&amp;quot;they were fast enough to escape&amp;quot;) or rendered as SkyRangers.&lt;br /&gt;
&lt;br /&gt;
It should also be noted that bases are made up of two levels, not three. Luckily, all the craft are only three levels high, so cutting out the landing gear still works. - [[User:Bomb Bloke|Bomb Bloke]] 19:56, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Very true about the MCD limit, that&#039;s why I only mentioned the Skyranger but the Interceptor could be added as well (and would not make much sense to have your first defense mission with a nice Avenger parked on the hangar while your Interceptors are being blow to bits by Battleships). The bases are 3 levels but you can only modify two of them. The game engine automatically adds a layer of &#039;dirt modules&#039; either at top or bottom. Hmmm, this just gave me an idea for the wish list... [[User:Hobbes|Hobbes]] 20:29, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Both alien and X-Com bases &#039;&#039;are&#039;&#039; only two levels. There must be something screwy in your game; XcomUtil maybe?&lt;br /&gt;
&lt;br /&gt;
It occurs to me that removing landing gear and stuff might make it &#039;&#039;just&#039;&#039; possible to jam in the Lightning tiles as well (as the MCD requirements would also shrink slightly). That&#039;d make it possible to add the Firestorm, too. Seems a shame to get that far then leave out the Avenger, though...&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 21:30, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Nevermind, I completely misread your previous post. Yes, they are two levels only, could be Xcomutil that adds the 3rd level.&lt;br /&gt;
&lt;br /&gt;
- [[User:Hobbes|Hobbes]] 22:30, 4 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
You may be able to get 3 levels in an X-Com Base but not 4. EU has a smaller amount of memory alocated. I dont know the limit but 60x60x4 will crash EU. TFTD has no problem --[[User:BladeFireLight|BladeFireLight]] 02:25, 6 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I got partway through this and then decided to change my methods entirely and start from scratch. So I thought I might as well post my progress anyways, as it&#039;s already about on par with the crude TFTD implementation: You always have the same craft appear in your hanger regardless of what is (or isn&#039;t!) there.&lt;br /&gt;
&lt;br /&gt;
[[Image:Skyranger In Hanger.rar]]&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 05:40, 17 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Hey BB, a while ago I have modded the plane terrain files so that the Skyranger appears facing east instead of south. If you want to use that one (to make it a little different) let me know. [[User:Hobbes|Hobbes]] 08:23, 17 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Thanks, but don&#039;t worry about it for now: it&#039;ll make the MCD arrays larger still, so I&#039;ll consider it when I get all the other stuff done. &lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 17:01, 19 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The completed mod is now included in my toolpack. As usual, I&#039;ve only done cursory testing on it, but I&#039;m pretty sure it&#039;s stable enough. &lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 06:40, 20 January 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Fixed firing TUs ===&lt;br /&gt;
&lt;br /&gt;
Something that always bugged me was how the weapons used percentages for firing TUs. It doesn&#039;t make sense that the faster a soldier got, the longer it would take to fire a weapon.&lt;br /&gt;
: This is because you can&#039;t fire an automatic weapon any faster than it will shoot. However, it otherwise makes minimal sense, as you point out. I suggest two alternative solutions. Firstly, that only automatic fire modes use a fixed percentage of a soldier&#039;s time units, and other modes use a fixed number of TUs. This would entail the newer soldiers spraying and your most elite taking fast, selective single shots. The alternative is that each firing mode for each weapon entails its own formula (revealed in the UFOpaedia but essentially hidden during the battlescape) along the lines of &amp;quot;X% of TUs + Y TUs&amp;quot;. Snap fire would be a low % of total plus a low fixed cost, Aimed would be a low % of total with a high fixed cost, and Auto would be a high % of total with a low fixed cost. While this is somewhat complex, in-game you wouldn&#039;t have to worry, and it accounts for what can be reduced (i.e. aiming speed) and what can never be improved by a soldier (i.e. cyclic rate of fire or time for a missile to lock). [[User:Stubbs|Stubbs]]&lt;br /&gt;
:: These observations are very sensible. However we also need to consider the impact on game balance. If you implement this in an even-handed way, alien rates of fire will increase as they have high TUs. Or, if you fudge it so that alien rates of fire remain the same, then X-Com&#039;s advantage will increase as the game progresses. Neither of these are desirable. It would be extremely hard to implement this and still maintain game balance. [[User:Spike|Spike]] 08:41, 1 September 2009 (EDT)&lt;br /&gt;
:::Each turn has the exact same duration, but is divided into TUs separately for each soldier. That&#039;s a simplification that works well in a turn-based game and reflects the fact that a soldier is fast or slow. However, weapons need to be aimed and will not fire faster than normal, thus they require a fixed percentage of the turn duration. In other words, soldiers gain movement speed, but fire at the same rate. This is both desirable and logical, just not self-explanatory. Thus, I would definitely stick to how TUs consumption is solved currently. [[User:mingos|mingos]]&lt;br /&gt;
&lt;br /&gt;
=== In-flight Interception ===&lt;br /&gt;
&lt;br /&gt;
Yes, I know that this idea is nigh-impossible, but I was thinking, wouldn&#039;t it be awesome to infiltrate a battleship, kill the aliens inside and escape, with the geoscape being shown zooming past underneath? Also, in a similar vein to the &amp;quot;aliens dust off after 3 turns&amp;quot; idea, after killing the aliens ( or blowing up the power cores, maybe?)you would have to get as many troops as possible to the drop ship in 3 turns(in retrospect I guess that you could only do this with the Lightning because of the doors) or the ship crashes and all troops not in the dropship are missing in action. Yes, this idea is impractical and would be really hard to program, but the idea of blowing a UFO up from the inside just seems epic to me. [[User:WolfenMage|WolfenMage]]&lt;br /&gt;
&lt;br /&gt;
=== Impose cost to using Psionic attacks===&lt;br /&gt;
&lt;br /&gt;
I think everyone agrees Psi attacks are too powerful. I would propose to impose a cost to using Psionic attacks. This could take the form of decreasing the physical stats after using a PSi attack (after all all: the psionic races are physically weak). This could for example lead to a soldier becoming a weakling or even fainting or dying from using psi-attack. Another possibility is to decrease mental stats (in this case the ratio would be that humans are not really being adapted to psi: you could be expected to go crazy playing mind games) leading to a decrease in psionic powers or maybe panicking or beserking the soldier using psi. Together with  limiting psi attacks of MCed units proposed elsewhere this would rebalance the later game somewhat... [[User:Emphyrio|Emphyrio]] 07:22, 9 August 2010 (EDT) &lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
===Fix All Bugs===&lt;br /&gt;
&lt;br /&gt;
Oh no [[User:Seb76#Bug Fixes|Seb76]] already did this! :) [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= I Wished (And My Wish Came True)... =&lt;br /&gt;
&lt;br /&gt;
== Geoscape and Strategic ==&lt;br /&gt;
&lt;br /&gt;
=== Fuel Ready always ===&lt;br /&gt;
[[User:Seb76#Mods|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
I wish that I could send out craft at any fuel or ammo level. Normally craft can only leave a base if fully &amp;quot;ready&amp;quot;. Craft is only &amp;quot;ready&amp;quot; at 100% fuel (or 0% fuel using an exploit) but there&#039;s no logical reason why a full tank and full ammo is required. Fully repaired... that&#039;s fine. I can live with pilots refusing to fly a plane missing a wing even if it means England is lost to aliens. 15 hours to fill a tank? Retarded but I can live with that too if I can send out a craft at 20% fuel.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
:Actually, many modern aircraft &#039;&#039;&#039;do&#039;&#039;&#039; require the fuel tanks to be full on takeoff, and fairly empty on landing.  The weight of the fuel is figured into the takeoff aerodynamics, and the tank being full prevents fuel &#039;sloshing&#039; in the tanks and not actually making it to the engine.  (Conversely, many aircraft need to have dispensed of much of that fuel weight before landing.)  This holds for most runway-takeoff craft, but may not apply to anything with VTOL capacity; I&#039;m unsure there.&lt;br /&gt;
&lt;br /&gt;
:I do agree that non-full weapons aren&#039;t as critical, though.  But from a logical standpoint, most modern aircraft should not be launched on an empty fuel tank.  I also should noted that an Elerium-fueled craft with [[Known_Bugs#Elerium-fueled_Craft_Bug|50% fuel or less remaining]] will automatically return to base, regardless of distance from base.  Of course, given that such craft fuel up quickly, its less of an issue there. [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:05, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Hum, maybe you can try [[User:Seb76#Mods|this]]? [[User:Seb76|Seb76]] 13:01, 8 August 2008 (PDT)&lt;br /&gt;
::Thanks! But I can&#039;t try it. I&#039;ve not been able to get my copy of Xcom to run properly except on a Win98 install. VC2008 requires a more modern OS. I&#039;m sure I could &#039;&#039;eventually&#039;&#039; figure out a way to get it running, but I tried once and wasted too much time before giving up.--[[User:Brunpal|Brunpal]] 14:45, 8 August 2008 (PDT)&lt;br /&gt;
:AFAIK VC2008 binaries should run OK on Win98 as long as the runtime is deployed. Anyway, the loader uses CreateRemoteThread API which is not available in Win98 so don&#039;t even bother. &#039;&#039;&#039;However&#039;&#039;&#039;, you can manually patch the binary if you want ;-) Data to patch (all in hexadecimal):&lt;br /&gt;
 offset 0x41752: 2A0075 -&amp;gt; 18207C&lt;br /&gt;
:HTH. [[User:Seb76|Seb76]] 14:56, 8 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Base Build Stacking===&lt;br /&gt;
[[User:Seb76#Base Building Stacking|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
At the moment you are only allowed to build next to a finished module, and you aren&#039;t allowed to plan ahead in your base construction. It would be nice to at least be able to plan more than one phase of construction in advance. This would be pretty easy to implement. There is no need to code any new &amp;quot;queuing system&amp;quot;. Just place the new module next to an existing under-construction module, but increment the build time to the normal build time + the time remaining on the under-construction module (the lowest time remaining that would make the square you are building in, a legal square to build in). As a premium for build stacking, you have to pay the costs up-front. As with normal construction, all costs are non-refundable if you change your mind. (There would probably need to be some on-screen feedback for how long the module would take to build, before you were committed to building it.) [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
See also: Discussion on [[Talk:Wish List|Talk page]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Battlescape and Tactical ==&lt;br /&gt;
&lt;br /&gt;
=== Equipment Management ===&lt;br /&gt;
&lt;br /&gt;
==== Soldiers remembers THEIR equipment ====&lt;br /&gt;
[[XcomUtil|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
I wish soldiers remembered what equipment they LAST used and start with that gear when they land. Normally soldiers grab various gear and put lots of crap on their belt. I put most things on the shoulder slots, and keep many things spare things on the ship just in case I need them. (I only want IN rounds if it&#039;s night. Stop picking them up before I shoot you in the back!) Takes forever to sort out the gear so the weakling isn&#039;t carrying all the rockets etc.&lt;br /&gt;
--[[User:Brunpal|Brunpal]]&lt;br /&gt;
&lt;br /&gt;
:This is already available in [[XcomUtil]].  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:07, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
====Access to Stats screens during equipment allocation====&lt;br /&gt;
[[User:Seb76#Equipment Screen|Mostly implemented - here]]&lt;br /&gt;
&lt;br /&gt;
In Battlescape you can get to Stats screens by right clicking on one of the unit&#039;s status bars. However you can&#039;t do this in the Equipment screen. Things like Statstrings and (even more so) [[User:Seb76|Seb76]]&#039;s modified Equipment screen with actual/max weight help. But it would be nice to be able to see exact stats. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Decrease Accuracy for targets out of sight===&lt;br /&gt;
[[User:Seb76#Range_Based_Accuracy|Brilliantly implemented - here]]&lt;br /&gt;
&lt;br /&gt;
How come you can easily shoot on something you do not see?&lt;br /&gt;
I find the over-used scout-sniper tactic is a cheap exploit of the X-COM. The tactical game should describe a combat, not a cowardly shooting practice. It would turn into a nice feature, if there would be a penalty of (let us say) -20% to the accuracy of anybody who is firing on a target out of his current sight. This can greatly enhance the tactical depth of the game. (Seb around? ;-) --[[User:Kyrub|Kyrub]] 14:20, 30 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
...discussed [http://www.ufopaedia.org/index.php?title=Talk:Wish_list here]&lt;br /&gt;
&lt;br /&gt;
===Enough Smoke===&lt;br /&gt;
[[User:Seb76#Mods|Implemented - here]]&lt;br /&gt;
&lt;br /&gt;
It would be nice to increase the current limit on smoke/fire hexes. This is due to their locations being stored in a small, fixed length array. In effect you can only get about 3-4 smoke grenades worth of smoke or fire on the map at the same time. Being able to use smoke liberally would really open up new tactics. At the moment all you can really do is cover the LZ in smoke when you exit the transport, and maybe cover one advance over open ground. [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&lt;br /&gt;
:I did something for that on my loader. Heavy testing is required because it is hard to be make sure smoke still works as before (testing is the hardest part actually). [[User:Seb76|Seb76]] 14:09, 18 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Alien AI ===&lt;br /&gt;
&lt;br /&gt;
====Aliens better with explosions====&lt;br /&gt;
Partly implemented [[User:Seb76#Bug Fixes|here (waypoint bug fix)]] and [[User:Seb76#Mods|here (Blaster drift)]]. &#039;&#039;(Possibly move this to talk, as notwithstanding these 2 bugs, apparently the Aliens are fairly safe with lethal explosives.)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I wish that aliens using grenades or blaster bombs or stun bombs (anything that goes boom) would use more sense. They should not want to use items that go boom when they are guaranteed to be caught in the blast radius. The alien can use grenades and blaster bombs by going out of line of sight before the explosion goes off. That may not save them if the explosion blows out the walls. At least it would be less stupid then firing a point blank blaster bomb vs taking 5 steps and setting up another waypoint. Units with morale above 100 or mind controlled should still be suicidal as normal.--[[User:Brunpal|Brunpal]] 13:55, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Actually, the aliens are quite careful with their explosives, they just seem to be prone to the occasional accident. They&#039;re not likely to fire off a blaster or grenade too close to them - as evident by the strategy where if you see an alien with a BB but can&#039;t shoot back, the safest place is to stand next to it. The blaster bomb vertical waypoint fix in the loader also eliminates the &#039;oops&#039; moments where they plot a vertical right angle too close to themselves and there just happens to be a wall to the south. However, they do need more care with stun bombs as you often get to see an alien fire a stun bomb point blank into a HWP parked next to it. But I guess we are talking about three different weapon types here, so they may not be as careful with a standard firearm as they are with grenades and the BB. Wish the Apocalypse aliens at least had as much sense as the UFO/TFTD aliens. In that game, they&#039;re utterly psychotic with explosives and ignore nearby allies. -[[User:NKF|NKF]] 14:34, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mind Controlled then Hostile ===&lt;br /&gt;
If you mind control a human (civilians) in a terror mission, they become enemies when you lose control (meaning you have to kill the poor idiots to finish the mission). Any chance that they could revert to friendlies/non enemies again when you lose control.&lt;br /&gt;
: Now fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Mind Controlled then MIA ===&lt;br /&gt;
Men who are under alien control when you win become MIA, any chance they could be saved (you will have killed all the aliens after all).&lt;br /&gt;
: I believe XComUtil fixes this MIA issue. [[User:Spike|Spike]] 12:22, 24 November 2008 (CST)&lt;br /&gt;
:: XcomUtil 9.6 also restores all DOA if you win to. Not what was intended. This feature has been removed as of 9.7 until I can fix it. --[[User:BladeFireLight|BladeFireLight]] 02:27, 6 January 2010 (EST)&lt;br /&gt;
: Now also fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
=== Open Doors But Don&#039;t Enter/Exit ===&lt;br /&gt;
&lt;br /&gt;
Open doors like they do in TFTD (I know this is mentioned above with the good stun grenades idea).&lt;br /&gt;
: Now fixed by the Seb76 loader [[User:Spike|Spike]] 19:13, 11 December 2009 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Category =&lt;br /&gt;
The page needs to be listed in various categories, which ones I don&#039;t know. Also links on other pages to this one would aid people finding it.&lt;br /&gt;
&lt;br /&gt;
: OK how about this one: [[User:Spike|Spike]] 12:21, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
[[Category:Oddities and bugs]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Links&amp;diff=28587</id>
		<title>Links</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Links&amp;diff=28587"/>
		<updated>2010-08-07T16:50:35Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: update of link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= X-COM: General =&lt;br /&gt;
&lt;br /&gt;
http://www.strategycore.co.uk - StategyCore (formally X-Com Tactical Command, but merged with a few other sites).&lt;br /&gt;
&lt;br /&gt;
http://www.xcomufo.com - this is currently the best source for all x-com games and also got a nifty forum.&lt;br /&gt;
&lt;br /&gt;
[http://www.amazon.com/exec/obidos/tg/detail/-/1559587644/qid=1115799224/sr=1-1/ref=sr_1_1/102-6566557-1460918?v=glance&amp;amp;s=books Official Strategy Guide (on Amazon)]&lt;br /&gt;
&lt;br /&gt;
[http://www.xcomufo.com/usg.html Kasey Chang&#039;s Unofficial Strategy Guide]&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/X-COM X-COM on Wikipedia]&lt;br /&gt;
&lt;br /&gt;
[http://www.amazon.co.uk/exec/obidos/ASIN/0761502351/qid=1129803663/sr=1-2/ref=sr_1_10_2/202-3990578-4860612 Novel by Diane Duane]&lt;br /&gt;
&lt;br /&gt;
== Remakes and Inspired Games ==&lt;br /&gt;
* http://www.smksoftware.ru/pufo.shtml - Pocket UFO by SMK Software. Beta release, screenshots.&lt;br /&gt;
* http://ufo-extraterrestrials.com/ - by Chaos Concept. Unknown 3D engine. Screenshots, Czech forums&lt;br /&gt;
* http://ufo.myexp.de/ - TBS based on Quake2 engine. Pre-demo, screenshots&lt;br /&gt;
* http://ufo2000.sourceforge.net/ - extending original data files. Beta release&lt;br /&gt;
* http://www.ufo-aftermath.com/ - as published by Altar. Full Commercial Release&lt;br /&gt;
* http://www.projectxenocide.com/ - Alpha release&lt;br /&gt;
* http://www.xforce-online.de/ - German site, version 0.900 release&lt;br /&gt;
* http://www.invasion2021.narod.ru  - Russian site, English translations, screenshots, pre-demo.&lt;br /&gt;
* http://www.xcom-lasthope.com - CounterStrike-based at the moment. Awaiting a good HalfLife SDK programmer to wean it off CS.&lt;br /&gt;
* http://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,20,2712 - Fully functional recompilation for GP2X handheld.&lt;br /&gt;
&lt;br /&gt;
== Fanfiction ==&lt;br /&gt;
&lt;br /&gt;
[http://scifiemporium.xcomufo.com/ Daniel Blakemore&#039;s Sci-Fi Emporium]&lt;br /&gt;
&lt;br /&gt;
[http://www.fanfiction.net/l/424/3/0/1/1/0/0/0/1/ Fanfiction.net section on X-COM]&lt;br /&gt;
&lt;br /&gt;
[http://www.geocities.com/TimesSquare/Lair/1798/xcomlite.html Fernando&#039;s Saga]&lt;br /&gt;
&lt;br /&gt;
[http://www.geocities.com/Area51/Rampart/5504/wd.html COMBASE:NOVA]&lt;br /&gt;
&lt;br /&gt;
[http://www.strategycore.co.uk/forums/index.php?showforum=48 StrategyCore Moderated Fanfic]&lt;br /&gt;
&lt;br /&gt;
[[Stumpy&#039;s War]] - a commander&#039;s log.&lt;br /&gt;
&lt;br /&gt;
== Forums ==&lt;br /&gt;
&lt;br /&gt;
[http://www.xcomufo.com/forums XComUFO]&lt;br /&gt;
&lt;br /&gt;
[http://www.strategycore.co.uk/forums StrategyCore]&lt;br /&gt;
&lt;br /&gt;
== Modders ==&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
[http://www.bladefirelight.com/ Scott T. Jones and Blade FireLight&#039;s XcomUtil] - also see our wiki notes [[XcomUtil|here]]&lt;br /&gt;
&lt;br /&gt;
[http://www.daishiva.com/phpBB2/generic.php?page=progLinks.shtml Daishiva&#039;s MapView], which lets you view, edit, and create terrain tiles, UFOs, etc.&lt;br /&gt;
&lt;br /&gt;
[http://www.stonepool.com/xcom/ Hatfarm&#039;s UFO Editing Site]&lt;br /&gt;
&lt;br /&gt;
[http://dosbox.sourceforge.net DOSBox], a DOS emulator wrapper for XCOM in WinXP. Also see notes [[Info#Working_In_Windows|here]].&lt;br /&gt;
&lt;br /&gt;
== UFOpaedias ==&lt;br /&gt;
[http://ufopedia.csignal.org/ X-COM Trilogy UFOpedia] - Game graphic UFOpedias for all 3 Xcom games&lt;br /&gt;
&lt;br /&gt;
http://www.xcomufo.com/x1ufopaedia/index.html - with game graphics&lt;br /&gt;
&lt;br /&gt;
http://www.ufopaedia.com - Danial&#039;s UFOpaedia&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Links&amp;diff=20057</id>
		<title>Links</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Links&amp;diff=20057"/>
		<updated>2009-03-03T15:04:12Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: GP2X version under remakes (rather here than under official ports?)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= X-COM: General =&lt;br /&gt;
&lt;br /&gt;
http://www.strategycore.co.uk - StategyCore (formally X-Com Tactical Command, but merged with a few other sites).&lt;br /&gt;
&lt;br /&gt;
http://www.xcomufo.com - this is currently the best source for all x-com games and also got a nifty forum.&lt;br /&gt;
&lt;br /&gt;
[http://www.amazon.com/exec/obidos/tg/detail/-/1559587644/qid=1115799224/sr=1-1/ref=sr_1_1/102-6566557-1460918?v=glance&amp;amp;s=books Official Strategy Guide (on Amazon)]&lt;br /&gt;
&lt;br /&gt;
[http://www.xcomufo.com/usg.html Kasey Chang&#039;s Unofficial Strategy Guide]&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/X-COM X-COM on Wikipedia]&lt;br /&gt;
&lt;br /&gt;
[http://www.amazon.co.uk/exec/obidos/ASIN/0761502351/qid=1129803663/sr=1-2/ref=sr_1_10_2/202-3990578-4860612 Novel by Diane Duane]&lt;br /&gt;
&lt;br /&gt;
== Remakes and Inspired Games ==&lt;br /&gt;
* http://www.smksoftware.ru/pufo.shtml - Pocket UFO by SMK Software. Beta release, screenshots.&lt;br /&gt;
* http://ufo-extraterrestrials.com/ - by Chaos Concept. Unknown 3D engine. Screenshots, Czech forums&lt;br /&gt;
* http://ufo.myexp.de/ - TBS based on Quake2 engine. Pre-demo, screenshots&lt;br /&gt;
* http://ufo2000.sourceforge.net/ - extending original data files. Beta release&lt;br /&gt;
* http://www.ufo-aftermath.com/ - as published by Altar. Full Commercial Release&lt;br /&gt;
* http://www.projectxenocide.com/ - Alpha release&lt;br /&gt;
* http://www.xforce-online.de/ - German site, version 0.900 release&lt;br /&gt;
* http://www.invasion2021.narod.ru  - Russian site, English translations, screenshots, pre-demo.&lt;br /&gt;
* http://www.xcom-lasthope.com - CounterStrike-based at the moment. Awaiting a good HalfLife SDK programmer to wean it off CS.&lt;br /&gt;
* http://archive.gp2x.de/cgi-bin/cfiles.cgi?,0,0,0,20,2712 - Fully functional recompilation for GP2X handheld.&lt;br /&gt;
&lt;br /&gt;
== Fanfiction ==&lt;br /&gt;
&lt;br /&gt;
[http://scifiemporium.xcomufo.com/ Daniel Blakemore&#039;s Sci-Fi Emporium]&lt;br /&gt;
&lt;br /&gt;
[http://www.fanfiction.net/l/424/3/0/1/1/0/0/0/1/ Fanfiction.net section on X-COM]&lt;br /&gt;
&lt;br /&gt;
[http://www.geocities.com/TimesSquare/Lair/1798/xcomlite.html Fernando&#039;s Saga]&lt;br /&gt;
&lt;br /&gt;
[http://www.geocities.com/Area51/Rampart/5504/wd.html COMBASE:NOVA]&lt;br /&gt;
&lt;br /&gt;
[http://www.strategycore.co.uk/forums/index.php?showforum=48 StrategyCore Moderated Fanfic]&lt;br /&gt;
&lt;br /&gt;
[[Stumpy&#039;s War]] - a commander&#039;s log.&lt;br /&gt;
&lt;br /&gt;
== Forums ==&lt;br /&gt;
&lt;br /&gt;
[http://www.xcomufo.com/forums XComUFO]&lt;br /&gt;
&lt;br /&gt;
[http://www.strategycore.co.uk/forums StrategyCore]&lt;br /&gt;
&lt;br /&gt;
== Modders ==&lt;br /&gt;
&lt;br /&gt;
== Utilities ==&lt;br /&gt;
&lt;br /&gt;
[http://members.aol.com/stjones/xcomutil/ Scott T. Jones&#039;s XcomUtil] - also see our wiki notes [[XcomUtil|here]]&lt;br /&gt;
&lt;br /&gt;
[http://www.daishiva.com/phpBB2/generic.php?page=progLinks.shtml Daishiva&#039;s MapView], which lets you view, edit, and create terrain tiles, UFOs, etc.&lt;br /&gt;
&lt;br /&gt;
[http://www.stonepool.com/xcom/ Hatfarm&#039;s UFO Editing Site]&lt;br /&gt;
&lt;br /&gt;
[http://dosbox.sourceforge.net DOSBox], a DOS emulator wrapper for XCOM in WinXP. Also see notes [[Info#Working_In_Windows|here]].&lt;br /&gt;
&lt;br /&gt;
== UFOpaedias ==&lt;br /&gt;
http://www.xcomufo.com/x1ufopaedia/index.html - with game graphics&lt;br /&gt;
&lt;br /&gt;
http://www.ufopaedia.com - Danial&#039;s UFOpaedia&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19916</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19916"/>
		<updated>2009-03-01T21:25:22Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: weapon stats?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset &amp;lt;s&amp;gt;355596&amp;lt;/s&amp;gt; 355600 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt; &lt;br /&gt;
:See the [[PRODUCT.DAT]] page. --[[User:Zombie|Zombie]] 16:25, 24 February 2009 (CST)&lt;br /&gt;
:: ok, this is actually is a useful bit of information, I &amp;lt;s&amp;gt;would&amp;lt;/s&amp;gt; have put it in the article.. --[[User:Emphyrio|Emphyrio]] 07:06, 25 February 2009 (CST)&lt;br /&gt;
:Good deal. I also added a note to the top of [[PRODUCT.DAT]] (and linked the [[Manufacturing_Profitability]] to PRODUCT.DAT - that should&#039;ve been there, too). -[[User:MikeTheRed|MikeTheRed]] 11:17, 25 February 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== craft weapon stats? ==&lt;br /&gt;
&lt;br /&gt;
I guess the craft weapon stats could be in here too?&lt;br /&gt;
as far I can see these are at 353378 (plain 1.4), 18 bytes, 9x2 byte:&amp;lt;BR&amp;gt;&lt;br /&gt;
index/range/acc/dmg/??/time/no of ammo/??/ammo&amp;lt;BR&amp;gt;&lt;br /&gt;
--[[User:Emphyrio|Emphyrio]] 15:25, 1 March 2009 (CST)&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=PRODUCT.DAT&amp;diff=19592</id>
		<title>PRODUCT.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=PRODUCT.DAT&amp;diff=19592"/>
		<updated>2009-02-25T20:58:49Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: corrected offset&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Product.dat holds information on the manufacturable items in the game, such as the time needed to build. To modify the stats of items made here look at [[OBDATA.DAT]].&lt;br /&gt;
&lt;br /&gt;
Most (if not all) of this info was obtained from [http://www.stonepool.com/xcom/hacking/product.html Hatfarm&#039;s] website. There are still values that are unknown in their function.&lt;br /&gt;
&lt;br /&gt;
The PRODUCT.DAT data can also be found at offset 355600 in the vanilla 1.4 [[GEOSCAPE.EXE]]. &lt;br /&gt;
&lt;br /&gt;
==Structure==&lt;br /&gt;
Each entry is 18 bytes long with 35 entries totaling 630 bytes. Values are presented according to byte offset (0 to 17).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0-3 (4 Bytes):&#039;&#039;&#039; Cost to manufacture item, in low-to-high byte format ([0] x 1, [1] x 256, [2] x 256&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;, [3] x 256&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;). This is the cost shown on the Build screen. Byte 3 is always 0; the most costly item requires 900k (256&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; = 16.8 million).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4-5 (2 Bytes):&#039;&#039;&#039; Engineering Hours needed to complete one item (low byte, high byte)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;6-7 (2 Bytes):&#039;&#039;&#039; Work space needed (low byte, high byte). It&#039;s conjecture that Byte 7 is the high byte for Byte 6; it&#039;s always 0. No item comes close to needing 256 work spaces (36 is the max).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8-13 (6 Bytes):&#039;&#039;&#039; An odd data-packing scheme to show manufacturing prerequisites. Bytes 8-10 show the prequisite; the matching Bytes 11-13 show how many are needed. Here, &amp;quot;matching&amp;quot; means whether it&#039;s the 1st, 2nd, or 3rd byte. Possible values for prerequisites (Bytes 8-10) - indexes into [[BASE.DAT]]:&lt;br /&gt;
:*60 = E115&lt;br /&gt;
:*88 = Alloys&lt;br /&gt;
:*80 = Power Source&lt;br /&gt;
:*81 = Navigation&lt;br /&gt;
:*255 = null (no prereq)&lt;br /&gt;
:For example, the Avenger&#039;s bytes 8-13 read: 88, 80, 81, 120, 2, 1. It needs 120 Alloys, 2 PSs, and 1 Nav.&lt;br /&gt;
&lt;br /&gt;
:This is an odd packing scheme because they used 6 bytes to show values for only 4 possible prerequisites. They could&#039;ve just used 4 bytes, with each one specific to the four prereq types. Possibly they were originally thinking of having many more types of prequisites (but any one item could only have a max of 3 prerequisites). Perhaps e.g. TFTD has more prereqs. In any event, it&#039;s interesting inasmuch as it&#039;s a rare(?) example of X-COM packing data that should have been in an external list (per relational database rules) into its parent flat file. A somewhat similar example can be found with ammo requirements in bytes 25-28 of [[OBDATA.DAT]].&lt;br /&gt;
&lt;br /&gt;
:Note that these bytes are also the cause of the [[Manufacturing_Profitability#Laser_Cannons_vs._Fusion_Ball_Launchers|Fusion Ball Launcher (FBL) manufacturing &amp;quot;bug&amp;quot;]]. The FBL does not require an Alien Alloy for the first FBL made (as shown on the Build screen), but subsequent FBLs made in the same batch run &#039;&#039;do&#039;&#039; require an Alloy. For the FBL (the first Product in this file), bytes 8-13 read: 255, 88, 255, 0, 1, 0. It is the &#039;&#039;&#039;only&#039;&#039;&#039; PRODUCT.DAT item that does not have all its prerequisites shifted to the left (i.e., byte 8 is never null if there is a prequisite, for everything but the FBL). Apparently the Build screen itself (and the first item made) is coded to stop checking prerequisites as soon as it finds a null prereq - but subsequently the manufacturing code &#039;&#039;does&#039;&#039; check all 3 prerequisite columns. Editing PRODUCT.DAT to shift the Alloy prereq &amp;quot;left&amp;quot; fixes the problem (the first FBL shows, and uses, one Alloy). This fix only affects new production jobs; current jobs are stored in BPROD.DAT. Also note that the source data for PRODUCT.DAT is stored in the .EXE; you&#039;d have to edit the executable to permanently fix the bug. Or just consider it a tiny gift from the programmers - one Alloy saved for each FBL manufacturing job - and get back to work saving the world. &#039;&#039;Courtesy of Zombie:&#039;&#039; The Executable&#039;s source bytes for PRODUCT.DAT&#039;s FBL are 459821-459838 in [[HackerTools|MS-Edit]] with 100 columns or 459720-459737 normally. Just look for 255, 88, 255 and that&#039;ll be the start of the mess. This is for the CE executable. If you have the DOS version, simply search for the three numbers above and you should find it near the end of Geoscape.exe.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;14 (1 Byte):&#039;&#039;&#039; Item type manufactured. Indexes into [[BASE.DAT]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;15 (1 Byte):&#039;&#039;&#039; Unknown - always 1?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;16 (1 Byte?):&#039;&#039;&#039; Researched / Can Build flag. At the start of game, all values are set to 1.&lt;br /&gt;
:* 0 - Can be built&lt;br /&gt;
:* 1 - Cannot be built (yet; needs research)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;17 (1 Byte):&#039;&#039;&#039; Unknown - always 0?&lt;br /&gt;
&lt;br /&gt;
==List of Entries==&lt;br /&gt;
Again ripped from [http://www.stonepool.com/xcom/hacking/product.html Hatfarm&#039;s] website&lt;br /&gt;
&lt;br /&gt;
  1 - Fusion Ball Launcher&lt;br /&gt;
  2 - Laser Cannon&lt;br /&gt;
  3 - Plasma Cannon&lt;br /&gt;
  4 - Fusion Ball&lt;br /&gt;
  5 - Tank/Laser Cannon&lt;br /&gt;
  6 - Hovertank/Plasma&lt;br /&gt;
  7 - Hovertank/Launcher&lt;br /&gt;
  8 - HWP Fusion Bomb&lt;br /&gt;
  9 - Laser Pistol&lt;br /&gt;
 10 - Laser Rifle&lt;br /&gt;
 11 - Heavy Laser&lt;br /&gt;
 12 - Motion Scanner&lt;br /&gt;
 13 - Medi-kit&lt;br /&gt;
 14 - Psi-Amp&lt;br /&gt;
 15 - Heavy Plasma&lt;br /&gt;
 16 - Heavy Plasma Clip&lt;br /&gt;
 17 - Plasma Rifle&lt;br /&gt;
 18 - Plasma Rifle Clip&lt;br /&gt;
 19 - Plasma Pistol&lt;br /&gt;
 20 - Plasma Pistol Clip&lt;br /&gt;
 21 - Blaster Launcher&lt;br /&gt;
 22 - Blaster Bomb&lt;br /&gt;
 23 - Small Launcher&lt;br /&gt;
 24 - Stun Bomb&lt;br /&gt;
 25 - Alien Grenade&lt;br /&gt;
 26 - Mind Probe&lt;br /&gt;
 27 - Personal Armour&lt;br /&gt;
 28 - Power Suit&lt;br /&gt;
 29 - Flying Suit&lt;br /&gt;
 30 - Alien Alloys&lt;br /&gt;
 31 - UFO Power Source&lt;br /&gt;
 32 - UFO Navigation&lt;br /&gt;
 33 - FIRESTORM&lt;br /&gt;
 34 - LIGHTNING&lt;br /&gt;
 35 - AVENGER&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
* [[BASE.DAT]] - Contains the quantity of these and other items at each base&lt;br /&gt;
* [[BPROD.DAT]] - Current production at bases&lt;br /&gt;
* [[OBDATA.DAT]] - Statistics for most items (not crafts, craft weapons, armor, or alloys)&lt;br /&gt;
* [[Saved Game Files]]&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19591</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19591"/>
		<updated>2009-02-25T20:57:52Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: edited out some not completely correct (and thus) confusing info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset &amp;lt;s&amp;gt;355596&amp;lt;/s&amp;gt; 355600 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt; &lt;br /&gt;
:See the [[PRODUCT.DAT]] page. --[[User:Zombie|Zombie]] 16:25, 24 February 2009 (CST)&lt;br /&gt;
:: ok, this is actually is a useful bit of information, I &amp;lt;s&amp;gt;would&amp;lt;/s&amp;gt; have put it in the article.. --[[User:Emphyrio|Emphyrio]] 07:06, 25 February 2009 (CST)&lt;br /&gt;
:Good deal. I also added a note to the top of [[PRODUCT.DAT]] (and linked the [[Manufacturing_Profitability]] to PRODUCT.DAT - that should&#039;ve been there, too). -[[User:MikeTheRed|MikeTheRed]] 11:17, 25 February 2009 (CST)&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19582</id>
		<title>GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19582"/>
		<updated>2009-02-25T13:12:40Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: add manufacturing stats&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &amp;quot;Geoscape&amp;quot; program that handles base management and aircraft, a.k.a. XCOM outside of tactical combat. [[TACTICAL.EXE]] handles combat. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In the WinCE version, GEOSCAPE and TACTICAL are one executable, &amp;quot;UFO Defense.exe&amp;quot;. Due to this confusion (what wiki pages place things on, when they&#039;re practically identical), currently GEOSCAPE, TACTICAL, and UFO Defense information appear here. (Unless and until someone wants to break everything up... then again, having highly related stuff in one place is a good thing.)&lt;br /&gt;
&lt;br /&gt;
Also see [[Versions]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= X-COM Complete Packages =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This entry is only a stub for the moment. We grognards on the wiki ask anyone who has bought one of the new packages to tell us things like:&lt;br /&gt;
#Who did you get it from - GamersGate, Steam, or elsewhere? (If it is found that they&#039;re both selling the exact same package, we&#039;ll say so here.)&lt;br /&gt;
#What version of X-COM UFO Defense is included? Probably the Win CE version (below), yes?&lt;br /&gt;
#Any trouble installing, or other considerations to keep in mind?&lt;br /&gt;
#Any problems versus what you expect from X-COM? (if you played it before, or have been reading this wiki, or whatever)&lt;br /&gt;
Et cetera. This info is intended to help those who might buy the packages in the future, and is also intended to tell us old hands what&#039;s in the package.&lt;br /&gt;
&lt;br /&gt;
Once we get 3-5 mini-reviews, we&#039;ll remove these italicized comments, and collapse reviews into a more &amp;quot;wiki-like&amp;quot; overview. (We&#039;ll include a link to the time/version when you posted individual reviews.) So, newcomers who bought the Complete Package, please make a new &amp;quot;Review #(next #)&amp;quot; section below, with a summary review. And see the new [[Talk:GEOSCAPE.EXE#New Bundles]] section for more in-depth Q&amp;amp;A and comments.&lt;br /&gt;
&lt;br /&gt;
If any of you have the ability to make comments on Steam or GamersGate that are tacked onto the new X-COM bundles, please post a comment letting people know about this wiki. &#039;&#039;&#039;www.UFOpaedia.org&#039;&#039;&#039;, loud and proud.&amp;lt;/i&amp;gt; It&#039;s 1999. We&#039;re here to save Earth.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Thanks, and welcome!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;u&amp;gt;wfames, elliotw2, or other new Complete Package folks&amp;lt;/u&amp;gt; - please put your comments under a heading like the one below - thanks!&#039;&#039;&#039; -[[User:MikeTheRed|MikeTheRed]] 03:51, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
==Review #1 by wfames==&lt;br /&gt;
&lt;br /&gt;
Everything seems fine except for psionics.  Soldiers in both original X-Com and TFTD do not seem to gain any Psi Skill for either successful or unsuccessful mind control attempts.  MC also never seems to work more than once in any given battle.  Makes psionics practically useless.  It&#039;s still a great game, even with that frustration, though.&lt;br /&gt;
&lt;br /&gt;
= XCOM: UFO Defense (U.S. DOS) version 1.4 =&lt;br /&gt;
*Is 382,957 bytes long for the virgin 1.4 executable&lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 379,729. There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*If you have installed [[XcomUtil]], it may alter the length of GEOSCAPE. &#039;&#039;Does anybody have a modified version, so we can put the length here? --[[User:MikeTheRed|MikeTheRed]]&#039;&#039;&lt;br /&gt;
** My XCOM Util GEOSCAPE size is 415,271 --[[User:Pi Masta|Pi Masta]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= XCOM Windows Collector&#039;s Edition =&lt;br /&gt;
*Variously called the &#039;&#039;&#039;Win CE&#039;&#039;&#039; or &#039;&#039;&#039;Gold&#039;&#039;&#039; version on the wiki&lt;br /&gt;
*Is 495,616 bytes long &lt;br /&gt;
*Starting at byte 648, reads:&lt;br /&gt;
 XCOM: UFO Defense Gold Edition&lt;br /&gt;
 This awesome game was compiled on Sep  8 1999 at 08:57:11&lt;br /&gt;
 Copyright - 1999 Hasbro Interactive/MicroProse Software&lt;br /&gt;
 Party on dude.&lt;br /&gt;
*If you install XcomUtil, it separates your &#039;&#039;UFO Defense.exe&#039;&#039; into GEOSCAPE and TACTICAL executables. They are almost identical copies of &#039;&#039;UFO Defense.exe&#039;&#039;, however they start at the right place when run. This allows the game to closely mimick the Dos version by having its main loop run in a batch file. &lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 480,145 (75391x). There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*Has tank &amp;amp; inbuilt alien weapon stats at byte 447,868 (6D57Cx, see below).&lt;br /&gt;
*Has the copy protection codes written in the manual starting at byte 475,176 (74028x) (despite the fact that the game stopped asking for these prior to the Windows port!).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Vehicle Stats = &lt;br /&gt;
&lt;br /&gt;
At offset 353,020 in X-COM 1.4 (DOS - modified by XCUtil), the vehicle statistics begin.&lt;br /&gt;
&#039;&#039;Emphyrio: start at 353014?, each entry 14 records of 2 bytes, 5 Xcom craft and then 8 Alien&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Each Vessel Statistic is two bytes and is 0 through 65,535 (in UGE format), and go in the following order:&lt;br /&gt;
&lt;br /&gt;
Pointer to craft name in [[ENGLISH.DAT]]&amp;lt;BR&amp;gt;&lt;br /&gt;
Points&amp;lt;BR&amp;gt;&lt;br /&gt;
Weapon Pods&amp;lt;BR&amp;gt;&lt;br /&gt;
Maximum Speed&amp;lt;BR&amp;gt;&lt;br /&gt;
Acceleration&amp;lt;BR&amp;gt;&lt;br /&gt;
Fuel&amp;lt;BR&amp;gt;&lt;br /&gt;
Damage (armor)&amp;lt;BR&amp;gt;&lt;br /&gt;
Size Class&amp;lt;BR&amp;gt;&lt;br /&gt;
Unknown (UFO only stat)&amp;lt;BR&amp;gt;&lt;br /&gt;
Unknown (UFO only stat)&amp;lt;BR&amp;gt;&lt;br /&gt;
Weapon Range (UFOs only)&amp;lt;BR&amp;gt;&lt;br /&gt;
Weapon Damage (UFOs only)&amp;lt;BR&amp;gt;&lt;br /&gt;
Crew&amp;lt;BR&amp;gt;&lt;br /&gt;
HWP&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various X-COM vessel section in UGE format:&lt;br /&gt;
&lt;br /&gt;
Skyranger: 248 - 2 - 2 - 0 - 220 - 5 - 150 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Lightning: 28 - 12 - 8 - 0 - 30 - 0 - 32 - 3&amp;lt;BR&amp;gt;&lt;br /&gt;
Avenger: 24 - 21 - 10 - 0 - 60 - 0 - 176 - 4&amp;lt;BR&amp;gt;&lt;br /&gt;
Interceptor: 52 - 8 - 3 - 0 - 232 - 3 - 100 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Firestorm: 104 - 16 - 9 - 0 - 20 - 0 - 244 - 1&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A bit below the Firestorm statistics are the stats for various Alien Ships, I&#039;ll probably do them later.&lt;br /&gt;
&lt;br /&gt;
At offset 380,668 the Tank Statistics begin.&lt;br /&gt;
&lt;br /&gt;
= Armor Stats =&lt;br /&gt;
&lt;br /&gt;
At offset 369,898 in the DOS version; the personal armor statistics begin.&lt;br /&gt;
&lt;br /&gt;
The Statistics are in two byte format and go in the following order:&lt;br /&gt;
&lt;br /&gt;
Front Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Left Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Right Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Rear Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Under Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various armor stats in UGE format: &lt;br /&gt;
&lt;br /&gt;
Unarmored X-COM Personnel: 12 - 0 - 8 - 0 - 8 - 0 - 5 - 0 - 2 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Personal Armor: 50 - 0 - 40 - 0 - 40 - 0 - 30- 0 - 30 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So on, etc.&lt;br /&gt;
&lt;br /&gt;
= Alien Stats =&lt;br /&gt;
&lt;br /&gt;
This section is for the structure of the alien stats, as found in GEOSCAPE. For actual data and additional information, see the [[Alien_Stats|alien statistics]] page. Also see Zombie&#039;s excellent alien stats page at [http://www.strategycore.co.uk/xcom/pg/ufoalienstats StrategyCore]. &#039;&#039;(Have YOU made your StratCore and [http://www.xcomufo.com XCOMUFO] accounts yet?)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alien stats are found as 33 records of 39 bytes each, in all versions of X-COM. They are identical in all versions. This data actually represents the &amp;quot;core&amp;quot; alien stats; modifiers are used to determine the final stats relative to game difficulty level. (In most, but not all, cases, the core stats are the same as the Beginner level stats.)&lt;br /&gt;
&lt;br /&gt;
Alien stats start in each version of X-COM at the following location. This is a byte &#039;&#039;count&#039;&#039;, not an offset; with counts, the first byte in the file is byte 1:&lt;br /&gt;
 &amp;lt;u&amp;gt;Version&amp;lt;/u&amp;gt;        &amp;lt;u&amp;gt;Location&amp;lt;/u&amp;gt;&lt;br /&gt;
 DOS 1.4         379,729  (GEOSCAPE.EXE)  &lt;br /&gt;
 WinCE Gold      480,145  (UFO Defense.exe)&lt;br /&gt;
 Playstation     501,212&lt;br /&gt;
 TFTD            486,930&lt;br /&gt;
&lt;br /&gt;
Alien names are not actually found in Geoscape; it just has 33 strings of data... the alien each string applies to has been inferred by matching against aliens in the game.&lt;br /&gt;
&lt;br /&gt;
The 39 bytes correspond to the following values. For the below, statements also apply to TFTD, since it&#039;s relevant to understanding the bytes:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0:&#039;&#039;&#039;   Race - Corresponds to Unitref[000]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1:&#039;&#039;&#039;   Rank - Corresponds to Unitref[042]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[011]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3:&#039;&#039;&#039;   Can Fly - No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4:&#039;&#039;&#039;   TUs - Corresponds to Unitref[025]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;5:&#039;&#039;&#039;   Health - Corresponds to Unitref[026]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;6:&#039;&#039;&#039;   Energy - Corresponds to Unitref[027]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;7:&#039;&#039;&#039;   Reactions - Corresponds to Unitref[028]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8:&#039;&#039;&#039;   Strength - Corresponds to Unitref[017]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;9:&#039;&#039;&#039;   Firing Accuracy - Corresponds to Unitref[023]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;10:&#039;&#039;&#039;   Throwing Accuracy - Corresponds to Unitref[024]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;11:&#039;&#039;&#039;   Melee Accuracy - Corresponds to Unitref[056]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;12:&#039;&#039;&#039;   Front Armor - Corresponds to Unitref[029]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;13:&#039;&#039;&#039;   Left Armor - Corresponds to Unitref[030]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;14:&#039;&#039;&#039;   Right Armor - Corresponds to Unitref[031]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;15:&#039;&#039;&#039;   Rear Armor - Corresponds to Unitref[032]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;16:&#039;&#039;&#039;   Under Armor - Corresponds to Unitref[033]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;17:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[034]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;18:&#039;&#039;&#039;   Energy Recharge - Corresponds to Unitref[035]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;19:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[036]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;20:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 1&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;21:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[046]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;22:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[048] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;23:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[052] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;NOTE: For additional important info on the last two bytes, see [[Talk:UNITREF.DAT]]. My notes below do not take that info into account. For the moment though I&#039;m leaving it as is. I sure wish we could figure the bytes out, and get rid of all the conjecture! - [[User:MikeTheRed|MikeTheRed]] 08:05, 6 November 2006 (PST)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
These Unitref bytes ([48] and [52]) and now Geoscape Core values have long stumped us hardcore X-Commies. The two bytes &amp;lt;b&amp;gt;always&amp;lt;/b&amp;gt; equal the same value for a given alien, including all aliens of the same race (the N&#039;s below). And, they&#039;re the same between Geoscape and Unitref. Clearly it must be important (or a goof!), but exactly what it is, who knows. Although this page is for X-COM, I&#039;ve included TFTD in the hopes it helps folks - but it&#039;s been so long since I&#039;ve played TFTD, I can&#039;t remember those units at all.&lt;br /&gt;
&lt;br /&gt;
How&#039;s this for a thought?... &lt;br /&gt;
 &amp;lt;u&amp;gt;Dimension&amp;lt;/u&amp;gt;   &amp;lt;u&amp;gt;Byte(s)&amp;lt;/u&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
        X     22&lt;br /&gt;
 &lt;br /&gt;
        Y     23&lt;br /&gt;
 &lt;br /&gt;
        Z     24  (top when standing)&lt;br /&gt;
              25  (top when kneeling)&lt;br /&gt;
              26  (bottom)&lt;br /&gt;
&lt;br /&gt;
Maybe they represent the &amp;quot;size in profile&amp;quot; (&amp;quot;width&amp;quot;), affecting likelihood to hit. A game could be tried with a target 20 squares away, set 22 and 23 alternately to 5 or 2 (or 1 or 0?), and see if it affects the successful shots percentage. 0 or even 1 might break the game, though.&lt;br /&gt;
&lt;br /&gt;
Also, how do these values (2 to 5) correlate with the &amp;quot;pixel drawings&amp;quot; of units? I can&#039;t seem to find that info at the moment... aren&#039;t units and tiles defined as something like 16x16x[[Height|28]]? If so, then perhaps the values (2 to 5) are multiplied by 3 or something to get their final &amp;quot;width&amp;quot; for bullet interception??  --[[User:MikeTheRed|MikeTheRed]] 05:20, 17 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
:I finally got the OSG (w00t!), and noticed the following: The section on weapon accuracy says (p. 221) that target size affects the chance to hit, and &amp;quot;the &#039;size&#039; of each alien is listed along with all other alien statistics in Chapter 9&amp;quot;. But the alien stats tables (p. 250 ff.) only lists Height as a possible &#039;size&#039; stat, and the text write-ups don&#039;t otherwise address &amp;quot;target size&amp;quot; with any precision. This discrepancy - that Chapter 8 talks about &#039;&#039;&#039;size&#039;&#039;&#039;, but Chapter 9 only has &#039;&#039;&#039;height&#039;&#039;&#039; - might (might!) mean there are more variables that determine target area size, but somehow they didn&#039;t make it to the alien stats tables.&lt;br /&gt;
&lt;br /&gt;
:The description for Height (p. 249) does say, &amp;quot;Taller creatures are easier to hit than short ones are. An alien with a height of 40, for example, is twice as easy to hit as an alien with a height of 20.&amp;quot; (Note: The tallest [[Height]] is actually 23. And also notice, Float is never mentioned.) This &#039;&#039;might&#039;&#039; mean only height affects this, or it could be read in a general way; other dimensions (X and Y in addition to Z) might also affect it.&lt;br /&gt;
&lt;br /&gt;
:Somebody should do some firing accuracy tests while hacking these potential X &amp;amp; Y bytes! But I still don&#039;t know how the values for [22] &amp;amp; [23] compare to what X-COM considers tile width... we know the Height byte accurately reflects the full range of possible values (0 to 23), but I doubt 5 is the full (pixel?) width of a tile. This might mean it&#039;s not width, then (or maybe [22] &amp;amp; [23] are added, or they are individually multiplied by 3 or something??) If anyone who knows about tile width could say something, I&#039;d appreciate it. --[[User:MikeTheRed|MikeTheRed]] 11:24, 1 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
In any event, here&#039;s a summary of bytes [22] and [23], in the hopes we can figure it out. They&#039;re always identical for a given race, and [22] always equals [23].&lt;br /&gt;
&lt;br /&gt;
                  &#039;&#039;&#039;X-COM                            TFTD&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
          &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;        &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
            2     Sectoid         6          2     Aquatoid        6   &lt;br /&gt;
                                                   Bio-Drone       1 &lt;br /&gt;
            3     Celatid         1                Tentaculat      1   &lt;br /&gt;
                  Chryssalid      1&lt;br /&gt;
                  Civilian        2          3     Calcinite       1   &lt;br /&gt;
                  Ethereal        3                Civilian        2   &lt;br /&gt;
                  Floater         6                Deep_One        1   &lt;br /&gt;
                  Muton           3                Gill_Man        4   &lt;br /&gt;
                  Snakeman        5                Tasoth          2   &lt;br /&gt;
 &lt;br /&gt;
            4     Cyberdisc       1          4     Coelacant       1   &lt;br /&gt;
                  Hovertank       1                Displacer       1   &lt;br /&gt;
                  Reaper          1                Hallucinoid     1   &lt;br /&gt;
                  Sectopod        1                Lobster_Man     5   &lt;br /&gt;
                  Tank            1                Triscene        1   &lt;br /&gt;
                                                   Xarquid         1 &lt;br /&gt;
            5     Silacoid        1  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;24:&#039;&#039;&#039;   Standing Height - Corresponds to Unitref[049]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;25:&#039;&#039;&#039;   Kneeling Height - Corresponds to Unitref[050]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26:&#039;&#039;&#039;   Floating Height - Corresponds to Unitref[051]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;27:&#039;&#039;&#039;   [[Damage#Susceptible_to...|Damage Modifier]] Category - Corresponds to Unitref[055]&lt;br /&gt;
&lt;br /&gt;
This field is simply a look-up table, or more directly, a way to categorize the units into similar groups. The actual modifiers are listed elsewhere in the executable. A value of 1 indicates the second DM category, a value of 4 indicates the 5th, etc. The values of 2 and 3 are not seen in the alien stats as they refer to X-COM soldier armor info. I&#039;m not sure about 13 as the Zombie&#039;s stats haven&#039;t been found yet, but there is a category in the DM&#039;s for it.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Category&#039;&#039;&#039;    &#039;&#039;&#039;Unit Type(s)&#039;&#039;&#039;&lt;br /&gt;
     &#039;&#039;&#039;0&#039;&#039;&#039;      Not for units, but is used for Terrain and Items&lt;br /&gt;
     &#039;&#039;&#039;1&#039;&#039;&#039;      Civilian, Sectoid, Celatid, Floater&lt;br /&gt;
     &#039;&#039;&#039;2&#039;&#039;&#039;      Personal Armor&lt;br /&gt;
     &#039;&#039;&#039;3&#039;&#039;&#039;      Power Suit, Flying Suit&lt;br /&gt;
     &#039;&#039;&#039;4&#039;&#039;&#039;      Tanks, Hovertanks&lt;br /&gt;
     &#039;&#039;&#039;5&#039;&#039;&#039;      Snakemen&lt;br /&gt;
     &#039;&#039;&#039;6&#039;&#039;&#039;      Ethereal&lt;br /&gt;
     &#039;&#039;&#039;7&#039;&#039;&#039;      Muton&lt;br /&gt;
     &#039;&#039;&#039;8&#039;&#039;&#039;      Silacoid&lt;br /&gt;
     &#039;&#039;&#039;9&#039;&#039;&#039;      Chryssalid&lt;br /&gt;
    &#039;&#039;&#039;10&#039;&#039;&#039;      Reaper&lt;br /&gt;
    &#039;&#039;&#039;11&#039;&#039;&#039;      Sectopod&lt;br /&gt;
    &#039;&#039;&#039;12&#039;&#039;&#039;      Cyberdisc&lt;br /&gt;
    &#039;&#039;&#039;13&#039;&#039;&#039;      Zombie&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;28:&#039;&#039;&#039;   Psi Skill - Corresponds to Unitref[037]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;29:&#039;&#039;&#039;   Psi Strength - Corresponds to Unitref[057]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;30:&#039;&#039;&#039;   Bravery (encoded) - Corresponds to Unitref[059]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;31:&#039;&#039;&#039;   Motion scanner size - Corresponds to Unitref[061]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;32:&#039;&#039;&#039;   &#039;&#039;1 for Cyberdisc, 0 for all others including TFTD... isn&#039;t &amp;quot;Explodes&amp;quot;; the TFTD Bio-Drone also explodes...&#039;&#039; - Corresponds to Unitref[071]&lt;br /&gt;
&lt;br /&gt;
I edited the Cyberdisc&#039;s field to 0 and checked to see if it exploded. It still did. Obviously this field is for something else. I&#039;ll work on this some more. --[[User:Zombie|Zombie]] 20:15, 15 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;33:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;34:&#039;&#039;&#039;   Corpse type - Corresponds to Unitref[038]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;35:&#039;&#039;&#039;   Big unit (2x2)  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;36:&#039;&#039;&#039;   Victory point score - Corresponds to Unitref[039]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;37:&#039;&#039;&#039;   Aggression - Corresponds to Unitref[044]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;38:&#039;&#039;&#039;   Intelligence - Corresponds to Unitref[073]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This data was just put together working heavily with Zombie and his great SC [http://www.strategycore.co.uk/xcom/pg/ufoalienstats alien stats] page.&lt;br /&gt;
&lt;br /&gt;
= Country Labels =&lt;br /&gt;
Starting at offset 396480 (hex: 0x60CC0) are the records that contain the location of the labels for the country names on the world. In order they are X, Y, and English.dat index all signed short integers (6 bytes for each record). X should never be negative but between 0 and 2880, Y should be between -720 and 720 (See [[WORLD.DAT]]). The English.dat file, despite all other array indexes appears to start at 1 and not 0, thus a value of 611 in here represents index 610 in a zero based English.dat array. (It stands to reason that these work for the other language files as well)&lt;br /&gt;
&lt;br /&gt;
= File Templates =&lt;br /&gt;
There appears to be &#039;templates&#039; of some of the [[Saved Game Files|game files]] stored within this executable. Makes sense as initially no saved game files are present when installed. Here is a list of known positions and the corresponding file. Offsets are from DOS Version of the game patched with XComUtil&lt;br /&gt;
{| {{StdDescTable}}&lt;br /&gt;
|- {{StdDescTable_Heading}}&lt;br /&gt;
! Offset (Hex) !! Offset (Dec) !! Length (Bytes) !! File&lt;br /&gt;
|-&lt;br /&gt;
| 5AB28 || 371496 || 2112|| [[RESEARCH.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B5E0 || 374240 ||  272|| [[FACIL.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B6F0 || 374512 || 1820|| [[PURCHASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5D894 || 383124 || 576 || [[DIPLOM.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5E48C || 386188 || 1392|| [[UP.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5EB90 || 387984 ||   84|| [[ACTS.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5FAC0 || 391872 || 2336|| [[BASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5FBB8 || 392120 || 5200|| [[CRAFT.DAT]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Possibly these are in-game data structures used to hold the current in-memory state, between game saves?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Detection Ranges =&lt;br /&gt;
&lt;br /&gt;
Detection ranges are hard coded into the executable at the following locations (Win CE / Gold edition):&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Platform&lt;br /&gt;
!Address&lt;br /&gt;
!Data bytes&lt;br /&gt;
!Hex&lt;br /&gt;
!Range&lt;br /&gt;
!nm&lt;br /&gt;
|-&lt;br /&gt;
|Aircraft||591EA||C8 00||x00C8||200||600&lt;br /&gt;
|-&lt;br /&gt;
|Hyperwave||59237||20 03||x0328||800||2400&lt;br /&gt;
|-&lt;br /&gt;
|Lg Radar||5926D||EE 02||x02EE||750||2250&lt;br /&gt;
|-&lt;br /&gt;
|Sm Radar||59278||F4 01||x01F4||500||1500&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Patching &amp;quot;88 13&amp;quot; to these locations = x1388 = 5000 range units = 15,000 nm pretty much gives that platform visibility over the whole world. Of course Small Radar still only has a 10% detection chance per half hour.&lt;br /&gt;
&lt;br /&gt;
= Battlescape Terrain List =&lt;br /&gt;
&lt;br /&gt;
In the UFO CE executable, offset 476156 (743FCx) marks the beginning of the [[WORLD.DAT]] terrain to battlescape terrain conversion list. 13 double byte values.&lt;br /&gt;
&lt;br /&gt;
 02 00 01 00 01 00 01 00 01 00 07 00 02 00 06 00 06 00 08 00 00 00 02 00 08 00&lt;br /&gt;
&lt;br /&gt;
For example, a mission initiated in a GeoScape polygon of type 5 will be performed in battlescape terrain type 7 (mountains).&lt;br /&gt;
&lt;br /&gt;
Note that jungle (type 00) missions in the north will end up as forest missions, and forest (type 02) missions in the south will end up as jungle missions. See offset 10 in [[GEODATA.DAT]] for the full battlescape terrain list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Manufacturing stats =&lt;br /&gt;
&lt;br /&gt;
The original data for the product manufacturing information in [[PRODUCT.DAT]] is contained in the geoscape executable, at offset 355600 (for plain 1.4 version). &lt;br /&gt;
&lt;br /&gt;
= See Also =&lt;br /&gt;
* [[TACTICAL.EXE]] - Sister executable used for Turn based strategy (merged with geoscape.exe in WinCE edition)&lt;br /&gt;
* [[UNITREF.DAT]] - Stats on current units (both XCOM and Alien) in play&lt;br /&gt;
* [[Saved Game Files]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19581</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19581"/>
		<updated>2009-02-25T13:06:55Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset 355596 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&amp;lt;BR&amp;gt;&lt;br /&gt;
0-3 ??&amp;lt;BR&amp;gt;&lt;br /&gt;
4-7 cost&amp;lt;BR&amp;gt;&lt;br /&gt;
8-9 hours&amp;lt;BR&amp;gt;&lt;br /&gt;
10 workspace&amp;lt;BR&amp;gt;&lt;br /&gt;
11-14 ??&amp;lt;BR&amp;gt;&lt;br /&gt;
15 elerium / alloys -&amp;gt; 2nd for craft&amp;lt;BR&amp;gt;&lt;br /&gt;
16 alloys / power &amp;lt;BR&amp;gt;&lt;br /&gt;
17 - / navigation&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:See the [[PRODUCT.DAT]] page. --[[User:Zombie|Zombie]] 16:25, 24 February 2009 (CST)&lt;br /&gt;
:: ok, this is actually is a useful bit of information, I would put it in the article.. --[[User:Emphyrio|Emphyrio]] 07:06, 25 February 2009 (CST)&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19578</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19578"/>
		<updated>2009-02-24T20:49:16Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: /* Manufacturing stats? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset 355596 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&amp;lt;BR&amp;gt;&lt;br /&gt;
0-3 ??&amp;lt;BR&amp;gt;&lt;br /&gt;
4-7 cost&amp;lt;BR&amp;gt;&lt;br /&gt;
8-9 hours&amp;lt;BR&amp;gt;&lt;br /&gt;
10 workspace&amp;lt;BR&amp;gt;&lt;br /&gt;
11-14 ??&amp;lt;BR&amp;gt;&lt;br /&gt;
15 elerium / alloys -&amp;gt; 2nd for craft&amp;lt;BR&amp;gt;&lt;br /&gt;
16 alloys / power &amp;lt;BR&amp;gt;&lt;br /&gt;
17 - / navigation&amp;lt;BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19577</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19577"/>
		<updated>2009-02-24T20:48:11Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: /* Manufacturing stats? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset 355596 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&amp;lt;\BR&amp;gt;&lt;br /&gt;
0-3 ??&amp;lt;\BR&amp;gt;&lt;br /&gt;
4-7 cost&amp;lt;\BR&amp;gt;&lt;br /&gt;
8-9 hours&amp;lt;\BR&amp;gt;&lt;br /&gt;
10 workspace&amp;lt;\BR&amp;gt;&lt;br /&gt;
11-14 ??&amp;lt;\BR&amp;gt;&lt;br /&gt;
15 elerium / alloys -&amp;gt; 2nd for craft&amp;lt;\BR&amp;gt;&lt;br /&gt;
16 alloys / power &amp;lt;\BR&amp;gt;&lt;br /&gt;
17 - / navigation&amp;lt;\BR&amp;gt;&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19576</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19576"/>
		<updated>2009-02-24T20:47:38Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: /* Manufacturing stats? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Has someone worked out the manufacturing stats at offset 355596 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&lt;br /&gt;
0-3 ??&lt;br /&gt;
4-7 cost&lt;br /&gt;
8-9 hours&lt;br /&gt;
10 workspace&lt;br /&gt;
11-14 ??&lt;br /&gt;
15 elerium / alloys -&amp;gt; 2nd for craft&lt;br /&gt;
16 alloys / power &lt;br /&gt;
17 - / navigation&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19575</id>
		<title>Talk:GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=19575"/>
		<updated>2009-02-24T20:47:18Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: New section: Manufacturing stats?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I just remembered something: Some bitmaps are stored in the executable. I think one such bitmap belongs to the Geoscape side bar. If the offsets for this can be located in the executable, you should be able to sign it off as an irrelevant section if you&#039;re hunting for particular variables in the executable. &lt;br /&gt;
&lt;br /&gt;
But that&#039;s the hard part. Where do you look? And what image width are we looking at? &lt;br /&gt;
&lt;br /&gt;
I once tried creating a program that took in an offset number, a line width number and how many bytes you want displayed from then on as the parameters. It would then open up one of the executables and draw the bytes on the screen as a bitmap of sorts. Kind of never got off the ground - I got distracted and now a year has passed and all my programming knowledge has gone into a vegetative state. I wonder if a program like this would be useful in locating tables or images in the file? &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The Geoscape side bar? Isn&#039;t that in [[GEOBORD.SCR]]?&lt;br /&gt;
&lt;br /&gt;
Regardless, something to mask out known offsets in the file would certainly come in handy.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:41, 21 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets ==&lt;br /&gt;
&lt;br /&gt;
This page is going to get rather long if we explain in detail all of the offsets here. I don&#039;t know if we should merge the Alien stats to the [[Alien Stats]] page or make a new page for it?&lt;br /&gt;
&lt;br /&gt;
Also technically the Weapon stats are stored in Tactical so probably should be put on that page.&lt;br /&gt;
&lt;br /&gt;
I&#039;ve found some other offsets and if I keep digging I&#039;m sure I&#039;ll find more. See my talk page for a mock-up of what I&#039;m thinking for the format. [[User:Pi Masta|Pi Masta]] 15:21, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Well, in terms of length, it is (or is going to be) much like other game files: lots and lots of offsets, and their descriptions.  It&#039;s not a page a casual player is going to reference.--[[User:Ethereal Cereal|Ethereal Cereal]] 15:56, 12 March 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
Added the Detection Range offsets that Seb76 found. By the way fwiw my view is that only technically minded people will be looking at the wiki entry for a game save file so it&#039;s ok to fill this page with a lot of offsets. [[User:Spike|Spike]] 16:13, 9 March 2008 (PDT)&lt;br /&gt;
----&lt;br /&gt;
Well then, if you don&#039;t mind about huge posts, I guess it is a good place to put some stuff I discovered with static dissassembly of the executable [before my hard drive burns down ;)], some info may already be known (gold edition, sorry about the crude format...):&lt;br /&gt;
&lt;br /&gt;
Damage modifiers:&lt;br /&gt;
 .data:0046DE74 damageModifierIncendiary dw 64h,64h,50h, 0,28h,46h,46h,64h, 0,50h,0AAh,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DE74                                         ; DATA XREF: sub_429CA0+2B�r&lt;br /&gt;
 .data:0046DE74                                         ; sub_429CA0+132�r ...&lt;br /&gt;
 .data:0046DE90 damageModifierHE dw 64h,64h,64h,64h,4Bh,64h,64h,64h,82h,64h,64h,50h,3Ch,50h; 0&lt;br /&gt;
 .data:0046DEAC damageModifierLaser dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,96h,64h,46h; 0&lt;br /&gt;
 .data:0046DEC8 damageModifierPlasma dw 64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,64h,50h,64h,46h; 0&lt;br /&gt;
 .data:0046DEE4 damageModifierStun dw 64h,64h,5Ah,50h,64h,64h,50h,64h,64h,5Ah,64h,64h,64h, 0; 0&lt;br /&gt;
 .data:0046DF00 damageModifierMelee dw 64h,78h,64h,64h,5Ah,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
 .data:0046DF1C damageModifierAcidSpit dw 64h,0A0h,6Eh,64h,28h,64h,64h,64h,64h,64h,64h,64h,64h,64h; 0&lt;br /&gt;
&lt;br /&gt;
HWP weapons data:&lt;br /&gt;
 .data:0046D57C builtinWeaponStats structBuiltinWeaponStats &amp;lt;0, 4, 3Ch, 3Ch, 21h, 0, 0, 5Ah, 50h, 0&amp;gt;; 0&lt;br /&gt;
 .data:0046D57C                                         ; DATA XREF: sub_403350+99�r&lt;br /&gt;
 .data:0046D57C                                         ; sub_40FF70+105�r ...&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 0Ch, 55h, 37h, 2Dh, 0, 0, 73h, 4Bh, 0&amp;gt;; 1&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 11h, 6Eh, 32h, 21h, 0, 0, 55h, 4Bh, 0&amp;gt;; 2&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 24h, 6Eh, 56h, 1Eh, 0, 0, 64h, 3Ch, 0&amp;gt;; 3&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;2, 28h, 8Ch, 0, 0, 0, 0, 78h, 50h, 1&amp;gt;; 4&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;7, 26h, 8Ch, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 5&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;4, 22h, 82h, 4Bh, 1Eh, 0, 0, 6Eh, 3Ch, 0&amp;gt;; 6&lt;br /&gt;
 .data:0046D57C structBuiltinWeaponStats &amp;lt;3, 22h, 64h, 4Bh, 1Eh, 32h, 23h, 6Eh, 3Ch, 0&amp;gt;; 7&lt;br /&gt;
The structure is:&lt;br /&gt;
 00000000 structBuiltinWeaponStats struc ; (sizeof=0x14)&lt;br /&gt;
 00000000 damageType dw ?&lt;br /&gt;
 00000002 ammoType dw ?&lt;br /&gt;
 00000004 damage dw ?&lt;br /&gt;
 00000006 snapshotAcc dw ?&lt;br /&gt;
 00000008 snapshotTU dw ?&lt;br /&gt;
 0000000A autoshotAcc dw ?&lt;br /&gt;
 0000000C autoshotTU dw ?&lt;br /&gt;
 0000000E aimshotAcc dw ?&lt;br /&gt;
 00000010 aimshotTU dw ?&lt;br /&gt;
 00000012 blasterEffect dw ?&lt;br /&gt;
 00000014 structBuiltinWeaponStats ends&lt;br /&gt;
&lt;br /&gt;
Funding countries borders polylines:&lt;br /&gt;
 .data:00474AD4 GeoBordersData dw 0FFFFh                ; DATA XREF: GeoDrawBorders+3�r&lt;br /&gt;
 .data:00474AD4                                         ; GeoDrawBorders+C�o&lt;br /&gt;
 .data:00474AD6 dw 221h&lt;br /&gt;
 .data:00474AD8 dw 0FF43h&lt;br /&gt;
 .data:00474ADA dw 238h&lt;br /&gt;
 .data:00474ADC dw 0FF3Dh&lt;br /&gt;
 .data:00474ADE dw 22Ch&lt;br /&gt;
 .data:00474AE0 dw 0FF28h&lt;br /&gt;
 .data:00474AE2 dw 233h&lt;br /&gt;
 .data:00474AE4 dw 0FF1Fh&lt;br /&gt;
 .data:00474AE6 dw 236h&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Funding countries names coordinates:&lt;br /&gt;
 .data:00474DF8 GeoCountryNamesData dw 280h             ; DATA XREF: GeoDrawCountryNames+6�o&lt;br /&gt;
 .data:00474DFA dw 0FF40h&lt;br /&gt;
 .data:00474DFC dw 263h&lt;br /&gt;
 .data:00474DFE dw 0B30h&lt;br /&gt;
 .data:00474E00 dw 0FE53h&lt;br /&gt;
 .data:00474E02 dw 25Ch&lt;br /&gt;
 .data:00474E04 dw 0B2Ch&lt;br /&gt;
 .data:00474E06 dw 0FEABh&lt;br /&gt;
 .data:00474E08 dw 260h&lt;br /&gt;
 .data:00474E0A dw 14h&lt;br /&gt;
 .data:00474E0C dw 0FE8Ch&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Craft data:&lt;br /&gt;
 .data:0046F9A8 craftsData structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Bh, 65236, 1, 3100, 8, 30, 800, 4, 0, 0, 0, 0Ch, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 1&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ch, 65136, 2, 5400, 0Ah, 60, 1200, 4, 0, 0, 0, 1Ah,\&lt;br /&gt;
 .data:0046F9A8                  0, 4, 0&amp;gt;               ; 2&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Dh, 65286, 2, 2100, 3, 1000, 100, 4, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 3&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Eh, 65286, 2, 4200, 9, 20, 500, 4, 0, 0, 0, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0&amp;gt;                     ; 4&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B2h, 100, 2, 2200, 0Ch, 0, 50, 5, 38h, 0C8h, 0, 0, 0,\&lt;br /&gt;
 .data:0046F9A8                  0, 0&amp;gt;                  ; 5&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B3h, 150, 2, 2400, 9, 0, 200, 4, 38h, 0FAh, 140078h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 6&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B4h, 250, 2, 2700, 9, 0, 250, 4, 30h, 12Ch, 140110h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 7&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B5h, 500, 2, 4000, 8, 0, 500, 3, 30h, 1F4h, 2800B0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 8&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B6h, 500, 2, 4300, 8, 0, 500, 3, 20h, 1F4h, 2800A0h,\&lt;br /&gt;
 .data:0046F9A8                  0, 0, 0, 0&amp;gt;            ; 9&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B7h, 1000, 2, 4800, 6, 0, 1200, 2, 18h, 7D0h, \&lt;br /&gt;
 .data:0046F9A8                  780150h, 0, 0, 0, 0&amp;gt;   ; 10&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B8h, 1400, 2, 5000, 6, 0, 3000, 1, 18h, 0FA0h, \&lt;br /&gt;
 .data:0046F9A8                  8C0208h, 0, 0, 0, 0&amp;gt;   ; 11&lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;2B9h, 800, 2, 3200, 6, 0, 2200, 2, 18h, 0BB8h, \&lt;br /&gt;
 .data:0046F9A8                  3C0120h, 0, 0, 0, 0&amp;gt;   ; 12&lt;br /&gt;
known fields:&lt;br /&gt;
 00000000 structCraftData struc ; (sizeof=0x1C)&lt;br /&gt;
 00000000 nameIdx dw ?&lt;br /&gt;
 00000002 scoreDestroyed dw ?                     ; base 10&lt;br /&gt;
 00000004 weaponPods dw ?&lt;br /&gt;
 00000006 maxSpeed dw ?                           ; base 10&lt;br /&gt;
 00000008 acceleration dw ?&lt;br /&gt;
 0000000A fuelCapacity dw ?                       ; base 10&lt;br /&gt;
 0000000C damageCapacity dw ?                     ; base 10&lt;br /&gt;
 0000000E ufoSize dw ?&lt;br /&gt;
 00000010 anonymous_5 dw ?&lt;br /&gt;
 00000012 field_12 dw ?  &#039;&#039;alien weapon damage&#039;&#039;&lt;br /&gt;
 00000014 field_14 dd ?  &#039;&#039;alien weapon distance in km*8  -kyrub&#039;&#039;&lt;br /&gt;
 00000018 cargoSpace db ?&lt;br /&gt;
 00000019 field_19 db ?&lt;br /&gt;
 0000001A field_1A db ?&lt;br /&gt;
 0000001B anonymous_6 db ?&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
Base components data:&lt;br /&gt;
 .data:00470640 baseElements baseComponentStruct &amp;lt;249h, 300, 1, 4, 0, 0, 5&amp;gt;; 0&lt;br /&gt;
 .data:00470640                                         ; DATA XREF: BaseEditDrawSideBar_sub_432EF0+12D�r&lt;br /&gt;
 .data:00470640                                         ; BuildFacilities+74�o ...&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ah, 400, 16, 10, 1Eh, 0, 4&amp;gt;; 1&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Bh, 750, 26, 30, 0Ah, 0, 4&amp;gt;; 2&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Ch, 800, 32, 35, 32h, 0, 4&amp;gt;; 3&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Dh, 500, 12, 10, 0, 0, 5&amp;gt;; 4&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Eh, 800, 25, 15, 0, 0, 4&amp;gt;; 5&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;24Fh, 200, 16, 5, 0, 3201F4h, 5&amp;gt;; 6&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;250h, 150, 10, 5, 0FAh, 0, 4&amp;gt;; 7&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;251h, 400, 18, 15, 0Ah, 0, 4&amp;gt;; 8&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;252h, 400, 24, 10, 0, 3C0258h, 0Ah&amp;gt;; 9&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;253h, 600, 34, 12, 0, 460384h, 0Ah&amp;gt;; 10&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;254h, 800, 34, 14, 0, 5004B0h, 0Ah&amp;gt;; 11&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;255h, 1200, 38, 15, 0, 0, 9&amp;gt;; 12&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;256h, 1300, 33, 5, 0, 0, 9&amp;gt;; 13&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;257h, 750, 24, 16, 0Ah, 0, 8&amp;gt;; 14&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;258h, 1400, 26, 30, 0, 0, 9&amp;gt;; 15&lt;br /&gt;
 .data:00470640 baseComponentStruct &amp;lt;259h, 200, 25, 25, 1, 0, 4&amp;gt;; 16&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 baseComponentStruct struc ; (sizeof=0x10)&lt;br /&gt;
 00000000 stringId dw ?&lt;br /&gt;
 00000002 cost dw ?                               ; base 10&lt;br /&gt;
 00000004 constructionTime db ?                   ; base 10&lt;br /&gt;
 00000005 maintenance db ?                        ; base 10&lt;br /&gt;
 00000006 anonymous_4 dw ?&lt;br /&gt;
 00000008 anonymous_5 dd ?&lt;br /&gt;
 0000000C anonymous_8 dd ?&lt;br /&gt;
 00000010 baseComponentStruct ends&lt;br /&gt;
&lt;br /&gt;
Alien missions data (I made another post for this one in missions.dat):&lt;br /&gt;
 .data:00470E70 alienMissionData structAlienMission &amp;lt;5, 1, 0, 12Ch&amp;gt;      ; 0&lt;br /&gt;
 .data:00470E70                                         ; DATA XREF: SpawnAlienShip+10D�r&lt;br /&gt;
 .data:00470E70                                         ; UpdateAlienMissions+78�r ...&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;6, 1, 2, 104h&amp;gt;      ; 1 ;&lt;br /&gt;
 .data:00470E70 structAlienMission &amp;lt;7, 2, 4, 12Ch&amp;gt;      ; 2 ;&lt;br /&gt;
 .data:00470E70 structAlienMission 5 dup(&amp;lt;0FFFFh, 0FFFFh, 0FFFFh, 0FFFFh&amp;gt;); 3&lt;br /&gt;
 ...&lt;br /&gt;
fields:&lt;br /&gt;
 00000000 structAlienMission struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 ufoType dw ?&lt;br /&gt;
 00000002 numUfoToSpawn dw ?&lt;br /&gt;
 00000004 unknown dw ?&lt;br /&gt;
 00000006 timeCounter dw ?&lt;br /&gt;
 00000008 structAlienMission ends&lt;br /&gt;
&lt;br /&gt;
Ground patches (used to spawn locations on continents):&lt;br /&gt;
 .data:00471278 randPlaces structArea &amp;lt;640h, 0FDF8h, 0A0h, 28h&amp;gt;    ; 0&lt;br /&gt;
 .data:00471278                                         ; DATA XREF: GetRandomPositionOnContinent+2D�r&lt;br /&gt;
 .data:00471278                                         ; GetRandomPositionOnContinent+46�r ...&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FDF8h, 0F0h, 50h&amp;gt;    ; 1&lt;br /&gt;
 .data:00471278 structArea &amp;lt;8C0h, 0FE70h, 50h, 50h&amp;gt;     ; 2&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FE70h, 0A0h, 50h&amp;gt;    ; 3&lt;br /&gt;
 .data:00471278 structArea &amp;lt;820h, 0FE70h, 0A0h, 50h&amp;gt;    ; 4&lt;br /&gt;
 .data:00471278 structArea &amp;lt;730h, 0FEC0h, 0A0h, 50h&amp;gt;    ; 5&lt;br /&gt;
 .data:00471278 structArea &amp;lt;7D0h, 0FEC0h, 0B0h, 60h&amp;gt;    ; 6&lt;br /&gt;
 .data:00471278 structArea &amp;lt;870h, 0FEB0h, 0A0h, 88h&amp;gt;    ; 7&lt;br /&gt;
&lt;br /&gt;
 00000000 structArea struc ; (sizeof=0x8)&lt;br /&gt;
 00000000 xstart dw ?&lt;br /&gt;
 00000002 ystart dw ?&lt;br /&gt;
 00000004 width dw ?&lt;br /&gt;
 00000006 height dw ?&lt;br /&gt;
 00000008 structArea ends&lt;br /&gt;
&lt;br /&gt;
Zones sectors (used to get the zone number for a world coordinate):&lt;br /&gt;
 .data:00474F38 geo_globe_zones structGlobeZone &amp;lt;618h, 987h, 0FDD0h, 0FE47h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00474F38                                         ; DATA XREF: GetWorldZoneFromPos+10�o&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;730h, 987h, 0FE48h, 0FF0Fh, 0&amp;gt;; 1&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;780h, 95Fh, 0FF10h, 0FFAFh, 0&amp;gt;; 2&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 0FD30h, 0FDCFh, 1&amp;gt;; 3&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0, 0B3Fh, 1E0h, 2D0h, 2&amp;gt;; 4&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;870h, 9D7h, 0FFB0h, 0FFFFh, 3&amp;gt;; 5&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A4Fh, 0, 77h, 3&amp;gt;; 6&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;898h, 0A27h, 78h, 1DFh, 3&amp;gt;; 7&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1DFh, 0FDD0h, 0FEE7h, 4&amp;gt;; 8&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 13Fh, 0FEE8h, 0FF87h, 5&amp;gt;; 9&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A78h, 1B7h, 0FF88h, 0FFFFh, 5&amp;gt;; 10&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B7h, 0, 13Fh, 6&amp;gt; ; 11&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;140h, 22Fh, 0FEE8h, 0FF87h, 7&amp;gt;; 12&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 2CFh, 0FE70h, 0FEE7h, 7&amp;gt;; 13&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FEE8h, 0FFD7h, 7&amp;gt;; 14&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;2D0h, 347h, 0FE70h, 4Fh, 8&amp;gt;; 15&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 4AFh, 0FE70h, 0FFD7h, 8&amp;gt;; 16&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1E0h, 59Fh, 0FDD0h, 0FE6Fh, 9&amp;gt;; 17&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;348h, 59Fh, 0FFD8h, 18Fh, 0Ah&amp;gt;; 18&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 617h, 0FDD0h, 0FE47h, 0Bh&amp;gt;; 19&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 72Fh, 0FE48h, 0FF0Fh, 0Bh&amp;gt;; 20&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 77Fh, 0FF10h, 0FFAFh, 0Bh&amp;gt;; 21&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 86Fh, 0FFB0h, 0FFFFh, 0Bh&amp;gt;; 22&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;5A0h, 897h, 0, 1DFh, 0Bh&amp;gt;; 23&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;4B0h, 59Fh, 0FE70h, 0FFD7h, 0Bh&amp;gt;; 24&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;988h, 0A77h, 0FDD0h, 0FF0Fh, 0Ch&amp;gt;; 25&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;960h, 0A77h, 0FF10h, 0FFAFh, 0Ch&amp;gt;; 26&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;9D8h, 0A77h, 0FFB0h, 0FFFFh, 0Ch&amp;gt;; 27&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A50h, 27h, 0, 77h, 0Dh&amp;gt;; 28&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;0A28h, 27h, 78h, 1DFh, 0Dh&amp;gt;; 29&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;28h, 1B8h, 140h, 1DFh, 0Dh&amp;gt;; 30&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 22Fh, 0FF88h, 4Fh, 0Eh&amp;gt;; 31&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;230h, 2CFh, 0FFD8h, 4Fh, 0Eh&amp;gt;; 32&lt;br /&gt;
 .data:00474F38 structGlobeZone &amp;lt;1B8h, 347h, 50h, 1DFh, 0Eh&amp;gt;; 33&lt;br /&gt;
&lt;br /&gt;
Same for country zones:&lt;br /&gt;
 .data:00475090 geo_glob_country_zones structGlobeZone &amp;lt;758h, 7F8h, 0FE78h, 0FF00h, 0&amp;gt;; 0&lt;br /&gt;
 .data:00475090                                         ; DATA XREF: GetCountryFromPos+11�o&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;7F8h, 8ACh, 0FE78h, 0FF18h, 0&amp;gt;; 1&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;820h, 848h, 0FF18h, 0FF30h, 0&amp;gt;; 2&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8A8h, 8C0h, 0FF00h, 0FF38h, 0&amp;gt;; 3&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8ACh, 8F0h, 0FEA0h, 0FF00h, 0&amp;gt;; 4&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;8F0h, 924h, 0FE94h, 0FEC0h, 0&amp;gt;; 5&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0F0h, 190h, 0FDD0h, 0FE98h, 1&amp;gt;; 6&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0C0h, 0F0h, 0FE20h, 0FEB0h, 1&amp;gt;; 7&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;190h, 258h, 0FD98h, 0FEC0h, 1&amp;gt;; 8&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;258h, 528h, 0FD80h, 0FE70h, 1&amp;gt;; 9&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;528h, 550h, 0FDD0h, 0FE28h, 1&amp;gt;; 10&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B00h, 10h, 0FE20h, 0FE70h, 2&amp;gt;; 11&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;0B18h, 38h, 0FE70h, 0FEA8h, 3&amp;gt;; 12&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;30h, 78h, 0FE48h, 0FE84h, 4&amp;gt;; 13&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;38h, 78h, 0FE8Ch, 0FEA8h, 5&amp;gt;; 14&lt;br /&gt;
 .data:00475090 structGlobeZone &amp;lt;58h, 90h, 0FEA8h, 0FED8h, 5&amp;gt;; 15&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
Dot color data for LOC.DAT entries shawn on world map (can&#039;t think of a better name...):&lt;br /&gt;
 .data:00475202 locationColor dw 0, 0Dh, 0Bh, 9, 1, 5, 7, 3           ; 0&lt;br /&gt;
 .data:00475202                                         ; DATA XREF: geoDrawLocations+ED�r&lt;br /&gt;
&lt;br /&gt;
Just after that are data describing the mask for drawing the location (I don&#039;t remember the format, but it shouldn&#039;t be something too complicated to decypher)&lt;br /&gt;
&lt;br /&gt;
Flare pattern (tactical mode):&lt;br /&gt;
 .data:0046C558 flarePattern db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 0&lt;br /&gt;
 .data:0046C558                                         ; DATA XREF: LightmapAddFlarePattern+7�o&lt;br /&gt;
 .data:0046C558                                         ; LightmapAddFlarePattern+19�o&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 31&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 62&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 93&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 124&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 155&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 186&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 217&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 248&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 279&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 310&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 341&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 372&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 403&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 434&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 465&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 496&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 4, 3, 2, 2, 2, 3, 4, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh; 527&lt;br /&gt;
 .data:0046C558 db 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 5, 4, 4, 3, 3, 3, 4, 4, 5, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh; 558&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 8, 7, 6, 6, 5, 5, 4, 4, 4, 5, 5, 6, 6, 7, 8, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 589&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 0Ah, 9, 8, 7, 6, 6, 6, 5, 5, 5, 6, 6, 6, 7, 8, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Fh, 10h; 620&lt;br /&gt;
 .data:0046C558 db 10h, 0Fh, 0Eh, 0Eh, 0Dh, 0Ch, 0Bh, 0Ah, 9, 9, 8, 7, 7, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Dh, 0Eh, 0Eh, 0Fh, 10h; 651&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 9, 9, 8, 8, 7, 7, 7, 7, 7, 8, 8, 9, 9, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 10h, 10h; 682&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 9, 9, 8, 8, 8, 8, 8, 9, 9, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h; 713&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Ah, 0Ah, 0Ah, 9, 9, 9, 9, 9, 0Ah, 0Ah, 0Ah, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h; 744&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Ah, 0Ah, 0Ah, 0Ah, 0Ah, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h; 775&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Bh, 0Bh, 0Bh, 0Bh, 0Bh, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h; 806&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Dh, 0Dh, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Ch, 0Dh, 0Dh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h; 837&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Dh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 868&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Eh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 899&lt;br /&gt;
 .data:0046C558 db 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 0Fh, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h, 10h; 930&lt;br /&gt;
&lt;br /&gt;
Sorry for the big post and the raw format... [[User:Seb76|Seb76]] 13:59, 10 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Construction costs for access lifts:&lt;br /&gt;
 .data:0046E69C basePrice dd 800000, 950000, 900000, 600000, 1000000, 650000, 550000, 500000, 750000; 0&lt;br /&gt;
 .data:0046E69C dd 800000, 750000, 600000, 3 dup(500000); 9&lt;br /&gt;
[[User:Seb76|Seb76]] 11:01, 16 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==New Bundles==&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Complete Package&amp;quot; and such versions of X-Com from Steam, interestingly enough, include both versions of the game, at least .exe wise. The one that runs when you just launch from the Steam menu is the original European version, 1.2, so I wonder exactly why they included the other version. -[[User:Elliotw2|Elliotw2]] 2009-01-15 18:01:37&lt;br /&gt;
&lt;br /&gt;
:Hiya Elliotw2! I wasn&#039;t watching this page&#039;s Talk page before, but I am now.&lt;br /&gt;
:As for the various versions, I dusted off some 10 y.o. DOS floppies a few years ago. They still worked, and I ran with it (U.S. DOS v. 1.4). Although I&#039;ve read a lot about the other versions on this wiki, I&#039;ll let the other vets here address what you just said (smile). I personally would have chosen the U.S. version... Vets, why would they have both versions in the bundle, but make the default be the European version?&lt;br /&gt;
:Elliotw2, please leave a mini-review (or repeat what you just said) at [[GEOSCAPE.EXE#X-COM_Complete_Packages]] (see my new &amp;quot;mini-review&amp;quot; format request there). Sorry for the mess, newcomers - especially having this tucked away under GEOSCAPE, but it makes sense to us grognards. As always, we will change and grow as needed, and &amp;quot;us&amp;quot; easily includes &amp;quot;you&amp;quot;. For now, we&#039;re just trying to make sure that newcomers can find what they need here, and that there&#039;s a place for info on the Complete Packages to be voiced.&lt;br /&gt;
:-[[User:MikeTheRed|MikeTheRed]] 03:49, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Manufacturing stats? ==&lt;br /&gt;
&lt;br /&gt;
Mas someone worked out the manufacturing stats at offset 355596 (vanilla 1.4)??&lt;br /&gt;
As far as I can see it looks like 35 records of 18 bytes&lt;br /&gt;
0-3 ??&lt;br /&gt;
4-7 cost&lt;br /&gt;
8-9 hours&lt;br /&gt;
10 workspace&lt;br /&gt;
11-14 ??&lt;br /&gt;
15 elerium / alloys -&amp;gt; 2nd for craft&lt;br /&gt;
16 alloys / power &lt;br /&gt;
17 - / navigation&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=TACTICAL.EXE&amp;diff=19574</id>
		<title>TACTICAL.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=TACTICAL.EXE&amp;diff=19574"/>
		<updated>2009-02-24T18:18:01Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In the Windows CE version this is combined with [[GEOSCAPE.EXE]] into one executable called &#039;&#039;UFO Defense&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Weapon Stats =&lt;br /&gt;
&lt;br /&gt;
For WinCE, the tank and inbuilt alien weapon stats start at byte 447,868 (0x6D57C), for DOS Tactical.EXE it starts (for version ??) at byte 391,278 (0x5F86E), at offset 379426 for plain 1.4 version. These are 8 records of 20 bytes each. They&#039;re all stored in 16-bit (2 byte) values.  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;0:&#039;&#039;&#039; Damage Type&lt;br /&gt;
* &#039;&#039;&#039;1:&#039;&#039;&#039; Ammo Type&lt;br /&gt;
* &#039;&#039;&#039;2:&#039;&#039;&#039; Damage&lt;br /&gt;
* &#039;&#039;&#039;3:&#039;&#039;&#039; Snap Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;4:&#039;&#039;&#039; Snap Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;5:&#039;&#039;&#039; Auto Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;6:&#039;&#039;&#039; Auto Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;7:&#039;&#039;&#039; Aim Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;8:&#039;&#039;&#039; Aim Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;9:&#039;&#039;&#039; Blaster Effect&lt;br /&gt;
&lt;br /&gt;
Weapons are in the order listed in this table:&lt;br /&gt;
{| {{StdCenterTable}} &lt;br /&gt;
|- {{StdDescTable_Heading}}&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Unit !! Damage Type !! Ammo Type !! Damage !! Snap Acc. !! Snap TU&#039;s !! Auto Acc. &lt;br /&gt;
! Auto TU&#039;s !! Aim Acc. !! Aim TU&#039;s !! Blaster Eff? &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Cannon]]          || 0 || 4  || 60  || 60 || 33 || 0  || 0  || 90  || 80 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Rocket Launcher]] || 2 || 12 || 85  || 55 || 45 || 0  || 0  || 115 || 75 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Laser Cannon]]    || 3 || 17 || 110 || 50 || 33 || 0  || 0  || 85  || 75 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Hovertank/Plasma]]     || 4 || 36 || 110 || 86 || 30 || 0  || 0  || 100 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Hovertank/Launcher]]   || 2 || 40 || 140 || 0  || 0  || 0  || 0  || 120 || 80 || 1 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Celatid]]              || 7 || 38 || 140 || 75 || 30 || 0  || 0  || 110 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Cyberdisc]]            || 4 || 34 || 130 || 75 || 30 || 0  || 0  || 110 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Sectopod]]             || 3 || 34 || 100 || 75 || 30 || 50 || 35 || 110 || 60 || 0 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= English2.dat mapping =&lt;br /&gt;
* 0x5F910 (DOS version) - obdata index to english2.dat lookup (2 bytes each, data is the index to english2.dat (or german2.dat, etc)&lt;br /&gt;
** See the [[Talk:TACTICAL.EXE|discussion page]] for more details&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=TACTICAL.EXE&amp;diff=19573</id>
		<title>TACTICAL.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=TACTICAL.EXE&amp;diff=19573"/>
		<updated>2009-02-24T18:16:41Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: weapon stat offset&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In the Windows CE version this is combined with [[GEOSCAPE.EXE]] into one executable called &#039;&#039;UFO Defense&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Weapon Stats =&lt;br /&gt;
&lt;br /&gt;
For WinCE, the tank and inbuilt alien weapon stats start at byte 447,868 (0x6D57C), for DOS Tactical.EXE it starts at byte 391,278 (0x5F86E) for version ??, at 379426 for plain 1.4 version. These are 8 records of 20 bytes each. They&#039;re all stored in 16-bit (2 byte) values.  &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;0:&#039;&#039;&#039; Damage Type&lt;br /&gt;
* &#039;&#039;&#039;1:&#039;&#039;&#039; Ammo Type&lt;br /&gt;
* &#039;&#039;&#039;2:&#039;&#039;&#039; Damage&lt;br /&gt;
* &#039;&#039;&#039;3:&#039;&#039;&#039; Snap Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;4:&#039;&#039;&#039; Snap Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;5:&#039;&#039;&#039; Auto Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;6:&#039;&#039;&#039; Auto Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;7:&#039;&#039;&#039; Aim Shot Acc.&lt;br /&gt;
* &#039;&#039;&#039;8:&#039;&#039;&#039; Aim Shot TU&#039;s&lt;br /&gt;
* &#039;&#039;&#039;9:&#039;&#039;&#039; Blaster Effect&lt;br /&gt;
&lt;br /&gt;
Weapons are in the order listed in this table:&lt;br /&gt;
{| {{StdCenterTable}} &lt;br /&gt;
|- {{StdDescTable_Heading}}&lt;br /&gt;
!align=&amp;quot;left&amp;quot;| Unit !! Damage Type !! Ammo Type !! Damage !! Snap Acc. !! Snap TU&#039;s !! Auto Acc. &lt;br /&gt;
! Auto TU&#039;s !! Aim Acc. !! Aim TU&#039;s !! Blaster Eff? &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Cannon]]          || 0 || 4  || 60  || 60 || 33 || 0  || 0  || 90  || 80 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Rocket Launcher]] || 2 || 12 || 85  || 55 || 45 || 0  || 0  || 115 || 75 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Tank/Laser Cannon]]    || 3 || 17 || 110 || 50 || 33 || 0  || 0  || 85  || 75 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Hovertank/Plasma]]     || 4 || 36 || 110 || 86 || 30 || 0  || 0  || 100 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Hovertank/Launcher]]   || 2 || 40 || 140 || 0  || 0  || 0  || 0  || 120 || 80 || 1 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Celatid]]              || 7 || 38 || 140 || 75 || 30 || 0  || 0  || 110 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Cyberdisc]]            || 4 || 34 || 130 || 75 || 30 || 0  || 0  || 110 || 60 || 0 &lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;left&amp;quot;| [[Sectopod]]             || 3 || 34 || 100 || 75 || 30 || 50 || 35 || 110 || 60 || 0 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= English2.dat mapping =&lt;br /&gt;
* 0x5F910 (DOS version) - obdata index to english2.dat lookup (2 bytes each, data is the index to english2.dat (or german2.dat, etc)&lt;br /&gt;
** See the [[Talk:TACTICAL.EXE|discussion page]] for more details&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19552</id>
		<title>GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19552"/>
		<updated>2009-02-22T20:53:50Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &amp;quot;Geoscape&amp;quot; program that handles base management and aircraft, a.k.a. XCOM outside of tactical combat. [[TACTICAL.EXE]] handles combat. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In the WinCE version, GEOSCAPE and TACTICAL are one executable, &amp;quot;UFO Defense.exe&amp;quot;. Due to this confusion (what wiki pages place things on, when they&#039;re practically identical), currently GEOSCAPE, TACTICAL, and UFO Defense information appear here. (Unless and until someone wants to break everything up... then again, having highly related stuff in one place is a good thing.)&lt;br /&gt;
&lt;br /&gt;
Also see [[Versions]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= X-COM Complete Packages =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This entry is only a stub for the moment. We grognards on the wiki ask anyone who has bought one of the new packages to tell us things like:&lt;br /&gt;
#Who did you get it from - GamersGate, Steam, or elsewhere? (If it is found that they&#039;re both selling the exact same package, we&#039;ll say so here.)&lt;br /&gt;
#What version of X-COM UFO Defense is included? Probably the Win CE version (below), yes?&lt;br /&gt;
#Any trouble installing, or other considerations to keep in mind?&lt;br /&gt;
#Any problems versus what you expect from X-COM? (if you played it before, or have been reading this wiki, or whatever)&lt;br /&gt;
Et cetera. This info is intended to help those who might buy the packages in the future, and is also intended to tell us old hands what&#039;s in the package.&lt;br /&gt;
&lt;br /&gt;
Once we get 3-5 mini-reviews, we&#039;ll remove these italicized comments, and collapse reviews into a more &amp;quot;wiki-like&amp;quot; overview. (We&#039;ll include a link to the time/version when you posted individual reviews.) So, newcomers who bought the Complete Package, please make a new &amp;quot;Review #(next #)&amp;quot; section below, with a summary review. And see the new [[Talk:GEOSCAPE.EXE#New Bundles]] section for more in-depth Q&amp;amp;A and comments.&lt;br /&gt;
&lt;br /&gt;
If any of you have the ability to make comments on Steam or GamersGate that are tacked onto the new X-COM bundles, please post a comment letting people know about this wiki. &#039;&#039;&#039;www.UFOpaedia.org&#039;&#039;&#039;, loud and proud.&amp;lt;/i&amp;gt; It&#039;s 1999. We&#039;re here to save Earth.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Thanks, and welcome!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;u&amp;gt;wfames, elliotw2, or other new Complete Package folks&amp;lt;/u&amp;gt; - please put your comments under a heading like the one below - thanks!&#039;&#039;&#039; -[[User:MikeTheRed|MikeTheRed]] 03:51, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
==Review #1 by wfames==&lt;br /&gt;
&lt;br /&gt;
Everything seems fine except for psionics.  Soldiers in both original X-Com and TFTD do not seem to gain any Psi Skill for either successful or unsuccessful mind control attempts.  MC also never seems to work more than once in any given battle.  Makes psionics practically useless.  It&#039;s still a great game, even with that frustration, though.&lt;br /&gt;
&lt;br /&gt;
= XCOM: UFO Defense (U.S. DOS) version 1.4 =&lt;br /&gt;
*Is 382,957 bytes long for the virgin 1.4 executable&lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 379,729. There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*If you have installed [[XcomUtil]], it may alter the length of GEOSCAPE. &#039;&#039;Does anybody have a modified version, so we can put the length here? --[[User:MikeTheRed|MikeTheRed]]&#039;&#039;&lt;br /&gt;
** My XCOM Util GEOSCAPE size is 415,271 --[[User:Pi Masta|Pi Masta]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= XCOM Windows Collector&#039;s Edition =&lt;br /&gt;
*Variously called the &#039;&#039;&#039;Win CE&#039;&#039;&#039; or &#039;&#039;&#039;Gold&#039;&#039;&#039; version on the wiki&lt;br /&gt;
*Is 495,616 bytes long &lt;br /&gt;
*Starting at byte 648, reads:&lt;br /&gt;
 XCOM: UFO Defense Gold Edition&lt;br /&gt;
 This awesome game was compiled on Sep  8 1999 at 08:57:11&lt;br /&gt;
 Copyright - 1999 Hasbro Interactive/MicroProse Software&lt;br /&gt;
 Party on dude.&lt;br /&gt;
*If you install XcomUtil, it separates your &#039;&#039;UFO Defense.exe&#039;&#039; into GEOSCAPE and TACTICAL executables. They are almost identical copies of &#039;&#039;UFO Defense.exe&#039;&#039;, however they start at the right place when run. This allows the game to closely mimick the Dos version by having its main loop run in a batch file. &lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 480,145 (75391x). There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*Has tank &amp;amp; inbuilt alien weapon stats at byte 447,868 (6D57Cx, see below).&lt;br /&gt;
*Has the copy protection codes written in the manual starting at byte 475,176 (74028x) (despite the fact that the game stopped asking for these prior to the Windows port!).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Vehicle Stats = &lt;br /&gt;
&lt;br /&gt;
At offset 353,020 in X-COM 1.4 (DOS - modified by XCUtil), the vehicle statistics begin.&lt;br /&gt;
&#039;&#039;Emphyrio: start at 353014?, each entry 14 records of 2 bytes, 5 Xcom craft and then 8 Alien&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Each Vessel Statistic is two bytes and is 0 through 65,535 (in UGE format), and go in the following order:&lt;br /&gt;
&lt;br /&gt;
(unknown, index?)&amp;lt;BR&amp;gt;&lt;br /&gt;
(value)&amp;lt;BR&amp;gt;&lt;br /&gt;
no. of weapons&amp;lt;BR&amp;gt;&lt;br /&gt;
Maximum Speed&amp;lt;BR&amp;gt;&lt;br /&gt;
Acceleration&amp;lt;BR&amp;gt;&lt;br /&gt;
Fuel&amp;lt;BR&amp;gt;&lt;br /&gt;
Damage (armor)&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown, 4 for xcom)&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown), 0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown), 0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown),0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown),0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
crew&amp;lt;BR&amp;gt;&lt;br /&gt;
HWP&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various X-COM vessel section in UGE format:&lt;br /&gt;
&lt;br /&gt;
Skyranger: 248 - 2 - 2 - 0 - 220 - 5 - 150 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Lightning: 28 - 12 - 8 - 0 - 30 - 0 - 32 - 3&amp;lt;BR&amp;gt;&lt;br /&gt;
Avenger: 24 - 21 - 10 - 0 - 60 - 0 - 176 - 4&amp;lt;BR&amp;gt;&lt;br /&gt;
Interceptor: 52 - 8 - 3 - 0 - 232 - 3 - 100 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Firestorm: 104 - 16 - 9 - 0 - 20 - 0 - 244 - 1&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A bit below the Firestorm statistics are the stats for various Alien Ships, I&#039;ll probably do them later.&lt;br /&gt;
&lt;br /&gt;
At offset 380,668 the Tank Statistics begin.&lt;br /&gt;
&lt;br /&gt;
= Armor Stats =&lt;br /&gt;
&lt;br /&gt;
At offset 369,898 in the DOS version; the personal armor statistics begin.&lt;br /&gt;
&lt;br /&gt;
The Statistics are in two byte format and go in the following order:&lt;br /&gt;
&lt;br /&gt;
Front Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Left Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Right Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Rear Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Under Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various armor stats in UGE format: &lt;br /&gt;
&lt;br /&gt;
Unarmored X-COM Personnel: 12 - 0 - 8 - 0 - 8 - 0 - 5 - 0 - 2 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Personal Armor: 50 - 0 - 40 - 0 - 40 - 0 - 30- 0 - 30 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So on, etc.&lt;br /&gt;
&lt;br /&gt;
= Alien Stats =&lt;br /&gt;
&lt;br /&gt;
This section is for the structure of the alien stats, as found in GEOSCAPE. For actual data and additional information, see the [[Alien_Stats|alien statistics]] page. Also see Zombie&#039;s excellent alien stats page at [http://www.strategycore.co.uk/xcom/pg/ufoalienstats StrategyCore]. &#039;&#039;(Have YOU made your StratCore and [http://www.xcomufo.com XCOMUFO] accounts yet?)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alien stats are found as 33 records of 39 bytes each, in all versions of X-COM. They are identical in all versions. This data actually represents the &amp;quot;core&amp;quot; alien stats; modifiers are used to determine the final stats relative to game difficulty level. (In most, but not all, cases, the core stats are the same as the Beginner level stats.)&lt;br /&gt;
&lt;br /&gt;
Alien stats start in each version of X-COM at the following location. This is a byte &#039;&#039;count&#039;&#039;, not an offset; with counts, the first byte in the file is byte 1:&lt;br /&gt;
 &amp;lt;u&amp;gt;Version&amp;lt;/u&amp;gt;        &amp;lt;u&amp;gt;Location&amp;lt;/u&amp;gt;&lt;br /&gt;
 DOS 1.4         379,729  (GEOSCAPE.EXE)  &lt;br /&gt;
 WinCE Gold      480,145  (UFO Defense.exe)&lt;br /&gt;
 Playstation     501,212&lt;br /&gt;
 TFTD            486,930&lt;br /&gt;
&lt;br /&gt;
Alien names are not actually found in Geoscape; it just has 33 strings of data... the alien each string applies to has been inferred by matching against aliens in the game.&lt;br /&gt;
&lt;br /&gt;
The 39 bytes correspond to the following values. For the below, statements also apply to TFTD, since it&#039;s relevant to understanding the bytes:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0:&#039;&#039;&#039;   Race - Corresponds to Unitref[000]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1:&#039;&#039;&#039;   Rank - Corresponds to Unitref[042]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[011]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3:&#039;&#039;&#039;   Can Fly - No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4:&#039;&#039;&#039;   TUs - Corresponds to Unitref[025]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;5:&#039;&#039;&#039;   Health - Corresponds to Unitref[026]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;6:&#039;&#039;&#039;   Energy - Corresponds to Unitref[027]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;7:&#039;&#039;&#039;   Reactions - Corresponds to Unitref[028]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8:&#039;&#039;&#039;   Strength - Corresponds to Unitref[017]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;9:&#039;&#039;&#039;   Firing Accuracy - Corresponds to Unitref[023]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;10:&#039;&#039;&#039;   Throwing Accuracy - Corresponds to Unitref[024]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;11:&#039;&#039;&#039;   Melee Accuracy - Corresponds to Unitref[056]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;12:&#039;&#039;&#039;   Front Armor - Corresponds to Unitref[029]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;13:&#039;&#039;&#039;   Left Armor - Corresponds to Unitref[030]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;14:&#039;&#039;&#039;   Right Armor - Corresponds to Unitref[031]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;15:&#039;&#039;&#039;   Rear Armor - Corresponds to Unitref[032]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;16:&#039;&#039;&#039;   Under Armor - Corresponds to Unitref[033]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;17:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[034]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;18:&#039;&#039;&#039;   Energy Recharge - Corresponds to Unitref[035]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;19:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[036]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;20:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 1&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;21:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[046]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;22:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[048] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;23:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[052] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;NOTE: For additional important info on the last two bytes, see [[Talk:UNITREF.DAT]]. My notes below do not take that info into account. For the moment though I&#039;m leaving it as is. I sure wish we could figure the bytes out, and get rid of all the conjecture! - [[User:MikeTheRed|MikeTheRed]] 08:05, 6 November 2006 (PST)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
These Unitref bytes ([48] and [52]) and now Geoscape Core values have long stumped us hardcore X-Commies. The two bytes &amp;lt;b&amp;gt;always&amp;lt;/b&amp;gt; equal the same value for a given alien, including all aliens of the same race (the N&#039;s below). And, they&#039;re the same between Geoscape and Unitref. Clearly it must be important (or a goof!), but exactly what it is, who knows. Although this page is for X-COM, I&#039;ve included TFTD in the hopes it helps folks - but it&#039;s been so long since I&#039;ve played TFTD, I can&#039;t remember those units at all.&lt;br /&gt;
&lt;br /&gt;
How&#039;s this for a thought?... &lt;br /&gt;
 &amp;lt;u&amp;gt;Dimension&amp;lt;/u&amp;gt;   &amp;lt;u&amp;gt;Byte(s)&amp;lt;/u&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
        X     22&lt;br /&gt;
 &lt;br /&gt;
        Y     23&lt;br /&gt;
 &lt;br /&gt;
        Z     24  (top when standing)&lt;br /&gt;
              25  (top when kneeling)&lt;br /&gt;
              26  (bottom)&lt;br /&gt;
&lt;br /&gt;
Maybe they represent the &amp;quot;size in profile&amp;quot; (&amp;quot;width&amp;quot;), affecting likelihood to hit. A game could be tried with a target 20 squares away, set 22 and 23 alternately to 5 or 2 (or 1 or 0?), and see if it affects the successful shots percentage. 0 or even 1 might break the game, though.&lt;br /&gt;
&lt;br /&gt;
Also, how do these values (2 to 5) correlate with the &amp;quot;pixel drawings&amp;quot; of units? I can&#039;t seem to find that info at the moment... aren&#039;t units and tiles defined as something like 16x16x[[Height|28]]? If so, then perhaps the values (2 to 5) are multiplied by 3 or something to get their final &amp;quot;width&amp;quot; for bullet interception??  --[[User:MikeTheRed|MikeTheRed]] 05:20, 17 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
:I finally got the OSG (w00t!), and noticed the following: The section on weapon accuracy says (p. 221) that target size affects the chance to hit, and &amp;quot;the &#039;size&#039; of each alien is listed along with all other alien statistics in Chapter 9&amp;quot;. But the alien stats tables (p. 250 ff.) only lists Height as a possible &#039;size&#039; stat, and the text write-ups don&#039;t otherwise address &amp;quot;target size&amp;quot; with any precision. This discrepancy - that Chapter 8 talks about &#039;&#039;&#039;size&#039;&#039;&#039;, but Chapter 9 only has &#039;&#039;&#039;height&#039;&#039;&#039; - might (might!) mean there are more variables that determine target area size, but somehow they didn&#039;t make it to the alien stats tables.&lt;br /&gt;
&lt;br /&gt;
:The description for Height (p. 249) does say, &amp;quot;Taller creatures are easier to hit than short ones are. An alien with a height of 40, for example, is twice as easy to hit as an alien with a height of 20.&amp;quot; (Note: The tallest [[Height]] is actually 23. And also notice, Float is never mentioned.) This &#039;&#039;might&#039;&#039; mean only height affects this, or it could be read in a general way; other dimensions (X and Y in addition to Z) might also affect it.&lt;br /&gt;
&lt;br /&gt;
:Somebody should do some firing accuracy tests while hacking these potential X &amp;amp; Y bytes! But I still don&#039;t know how the values for [22] &amp;amp; [23] compare to what X-COM considers tile width... we know the Height byte accurately reflects the full range of possible values (0 to 23), but I doubt 5 is the full (pixel?) width of a tile. This might mean it&#039;s not width, then (or maybe [22] &amp;amp; [23] are added, or they are individually multiplied by 3 or something??) If anyone who knows about tile width could say something, I&#039;d appreciate it. --[[User:MikeTheRed|MikeTheRed]] 11:24, 1 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
In any event, here&#039;s a summary of bytes [22] and [23], in the hopes we can figure it out. They&#039;re always identical for a given race, and [22] always equals [23].&lt;br /&gt;
&lt;br /&gt;
                  &#039;&#039;&#039;X-COM                            TFTD&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
          &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;        &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
            2     Sectoid         6          2     Aquatoid        6   &lt;br /&gt;
                                                   Bio-Drone       1 &lt;br /&gt;
            3     Celatid         1                Tentaculat      1   &lt;br /&gt;
                  Chryssalid      1&lt;br /&gt;
                  Civilian        2          3     Calcinite       1   &lt;br /&gt;
                  Ethereal        3                Civilian        2   &lt;br /&gt;
                  Floater         6                Deep_One        1   &lt;br /&gt;
                  Muton           3                Gill_Man        4   &lt;br /&gt;
                  Snakeman        5                Tasoth          2   &lt;br /&gt;
 &lt;br /&gt;
            4     Cyberdisc       1          4     Coelacant       1   &lt;br /&gt;
                  Hovertank       1                Displacer       1   &lt;br /&gt;
                  Reaper          1                Hallucinoid     1   &lt;br /&gt;
                  Sectopod        1                Lobster_Man     5   &lt;br /&gt;
                  Tank            1                Triscene        1   &lt;br /&gt;
                                                   Xarquid         1 &lt;br /&gt;
            5     Silacoid        1  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;24:&#039;&#039;&#039;   Standing Height - Corresponds to Unitref[049]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;25:&#039;&#039;&#039;   Kneeling Height - Corresponds to Unitref[050]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26:&#039;&#039;&#039;   Floating Height - Corresponds to Unitref[051]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;27:&#039;&#039;&#039;   [[Damage#Susceptible_to...|Damage Modifier]] Category - Corresponds to Unitref[055]&lt;br /&gt;
&lt;br /&gt;
This field is simply a look-up table, or more directly, a way to categorize the units into similar groups. The actual modifiers are listed elsewhere in the executable. A value of 1 indicates the second DM category, a value of 4 indicates the 5th, etc. The values of 2 and 3 are not seen in the alien stats as they refer to X-COM soldier armor info. I&#039;m not sure about 13 as the Zombie&#039;s stats haven&#039;t been found yet, but there is a category in the DM&#039;s for it.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Category&#039;&#039;&#039;    &#039;&#039;&#039;Unit Type(s)&#039;&#039;&#039;&lt;br /&gt;
     &#039;&#039;&#039;0&#039;&#039;&#039;      Not for units, but is used for Terrain and Items&lt;br /&gt;
     &#039;&#039;&#039;1&#039;&#039;&#039;      Civilian, Sectoid, Celatid, Floater&lt;br /&gt;
     &#039;&#039;&#039;2&#039;&#039;&#039;      Personal Armor&lt;br /&gt;
     &#039;&#039;&#039;3&#039;&#039;&#039;      Power Suit, Flying Suit&lt;br /&gt;
     &#039;&#039;&#039;4&#039;&#039;&#039;      Tanks, Hovertanks&lt;br /&gt;
     &#039;&#039;&#039;5&#039;&#039;&#039;      Snakemen&lt;br /&gt;
     &#039;&#039;&#039;6&#039;&#039;&#039;      Ethereal&lt;br /&gt;
     &#039;&#039;&#039;7&#039;&#039;&#039;      Muton&lt;br /&gt;
     &#039;&#039;&#039;8&#039;&#039;&#039;      Silacoid&lt;br /&gt;
     &#039;&#039;&#039;9&#039;&#039;&#039;      Chryssalid&lt;br /&gt;
    &#039;&#039;&#039;10&#039;&#039;&#039;      Reaper&lt;br /&gt;
    &#039;&#039;&#039;11&#039;&#039;&#039;      Sectopod&lt;br /&gt;
    &#039;&#039;&#039;12&#039;&#039;&#039;      Cyberdisc&lt;br /&gt;
    &#039;&#039;&#039;13&#039;&#039;&#039;      Zombie&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;28:&#039;&#039;&#039;   Psi Skill - Corresponds to Unitref[037]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;29:&#039;&#039;&#039;   Psi Strength - Corresponds to Unitref[057]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;30:&#039;&#039;&#039;   Bravery (encoded) - Corresponds to Unitref[059]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;31:&#039;&#039;&#039;   Motion scanner size - Corresponds to Unitref[061]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;32:&#039;&#039;&#039;   &#039;&#039;1 for Cyberdisc, 0 for all others including TFTD... isn&#039;t &amp;quot;Explodes&amp;quot;; the TFTD Bio-Drone also explodes...&#039;&#039; - Corresponds to Unitref[071]&lt;br /&gt;
&lt;br /&gt;
I edited the Cyberdisc&#039;s field to 0 and checked to see if it exploded. It still did. Obviously this field is for something else. I&#039;ll work on this some more. --[[User:Zombie|Zombie]] 20:15, 15 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;33:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;34:&#039;&#039;&#039;   Corpse type - Corresponds to Unitref[038]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;35:&#039;&#039;&#039;   Big unit (2x2)  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;36:&#039;&#039;&#039;   Victory point score - Corresponds to Unitref[039]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;37:&#039;&#039;&#039;   Aggression - Corresponds to Unitref[044]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;38:&#039;&#039;&#039;   Intelligence - Corresponds to Unitref[073]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This data was just put together working heavily with Zombie and his great SC [http://www.strategycore.co.uk/xcom/pg/ufoalienstats alien stats] page.&lt;br /&gt;
&lt;br /&gt;
= Country Labels =&lt;br /&gt;
Starting at offset 396480 (hex: 0x60CC0) are the records that contain the location of the labels for the country names on the world. In order they are X, Y, and English.dat index all signed short integers (6 bytes for each record). X should never be negative but between 0 and 2880, Y should be between -720 and 720 (See [[WORLD.DAT]]). The English.dat file, despite all other array indexes appears to start at 1 and not 0, thus a value of 611 in here represents index 610 in a zero based English.dat array. (It stands to reason that these work for the other language files as well)&lt;br /&gt;
&lt;br /&gt;
= File Templates =&lt;br /&gt;
There appears to be &#039;templates&#039; of some of the [[Saved Game Files|game files]] stored within this executable. Makes sense as initially no saved game files are present when installed. Here is a list of known positions and the corresponding file. Offsets are from DOS Version of the game patched with XComUtil&lt;br /&gt;
{| {{StdDescTable}}&lt;br /&gt;
|- {{StdDescTable_Heading}}&lt;br /&gt;
! Offset (Hex) !! Offset (Dec) !! Length (Bytes) !! File&lt;br /&gt;
|-&lt;br /&gt;
| 5AB28 || 371496 || 2112|| [[RESEARCH.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B5E0 || 374240 ||  272|| [[FACIL.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B6F0 || 374512 || 1820|| [[PURCHASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5D894 || 383124 || 576 || [[DIPLOM.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5E48C || 386188 || 1392|| [[UP.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5EB90 || 387984 ||   84|| [[ACTS.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5FAC0 || 391872 || 2336|| [[BASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5FBB8 || 392120 || 5200|| [[CRAFT.DAT]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Possibly these are in-game data structures used to hold the current in-memory state, between game saves?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Detection Ranges =&lt;br /&gt;
&lt;br /&gt;
Detection ranges are hard coded into the executable at the following locations (Win CE / Gold edition):&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Platform&lt;br /&gt;
!Address&lt;br /&gt;
!Data bytes&lt;br /&gt;
!Hex&lt;br /&gt;
!Range&lt;br /&gt;
!nm&lt;br /&gt;
|-&lt;br /&gt;
|Aircraft||591EA||C8 00||x00C8||200||600&lt;br /&gt;
|-&lt;br /&gt;
|Hyperwave||59237||20 03||x0328||800||2400&lt;br /&gt;
|-&lt;br /&gt;
|Lg Radar||5926D||EE 02||x02EE||750||2250&lt;br /&gt;
|-&lt;br /&gt;
|Sm Radar||59278||F4 01||x01F4||500||1500&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Patching &amp;quot;88 13&amp;quot; to these locations = x1388 = 5000 range units = 15,000 nm pretty much gives that platform visibility over the whole world. Of course Small Radar still only has a 10% detection chance per half hour.&lt;br /&gt;
&lt;br /&gt;
= Battlescape Terrain List =&lt;br /&gt;
&lt;br /&gt;
In the UFO CE executable, offset 476156 (743FCx) marks the beginning of the [[WORLD.DAT]] terrain to battlescape terrain conversion list. 13 double byte values.&lt;br /&gt;
&lt;br /&gt;
 02 00 01 00 01 00 01 00 01 00 07 00 02 00 06 00 06 00 08 00 00 00 02 00 08 00&lt;br /&gt;
&lt;br /&gt;
For example, a mission initiated in a GeoScape polygon of type 5 will be performed in battlescape terrain type 7 (mountains).&lt;br /&gt;
&lt;br /&gt;
Note that jungle (type 00) missions in the north will end up as forest missions, and forest (type 02) missions in the south will end up as jungle missions. See offset 10 in [[GEODATA.DAT]] for the full battlescape terrain list.&lt;br /&gt;
&lt;br /&gt;
= See Also =&lt;br /&gt;
* [[TACTICAL.EXE]] - Sister executable used for Turn based strategy (merged with geoscape.exe in WinCE edition)&lt;br /&gt;
* [[UNITREF.DAT]] - Stats on current units (both XCOM and Alien) in play&lt;br /&gt;
* [[Saved Game Files]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19551</id>
		<title>GEOSCAPE.EXE</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=GEOSCAPE.EXE&amp;diff=19551"/>
		<updated>2009-02-22T20:44:30Z</updated>

		<summary type="html">&lt;p&gt;Emphyrio: vehicle stats&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &amp;quot;Geoscape&amp;quot; program that handles base management and aircraft, a.k.a. XCOM outside of tactical combat. [[TACTICAL.EXE]] handles combat. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In the WinCE version, GEOSCAPE and TACTICAL are one executable, &amp;quot;UFO Defense.exe&amp;quot;. Due to this confusion (what wiki pages place things on, when they&#039;re practically identical), currently GEOSCAPE, TACTICAL, and UFO Defense information appear here. (Unless and until someone wants to break everything up... then again, having highly related stuff in one place is a good thing.)&lt;br /&gt;
&lt;br /&gt;
Also see [[Versions]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= X-COM Complete Packages =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;This entry is only a stub for the moment. We grognards on the wiki ask anyone who has bought one of the new packages to tell us things like:&lt;br /&gt;
#Who did you get it from - GamersGate, Steam, or elsewhere? (If it is found that they&#039;re both selling the exact same package, we&#039;ll say so here.)&lt;br /&gt;
#What version of X-COM UFO Defense is included? Probably the Win CE version (below), yes?&lt;br /&gt;
#Any trouble installing, or other considerations to keep in mind?&lt;br /&gt;
#Any problems versus what you expect from X-COM? (if you played it before, or have been reading this wiki, or whatever)&lt;br /&gt;
Et cetera. This info is intended to help those who might buy the packages in the future, and is also intended to tell us old hands what&#039;s in the package.&lt;br /&gt;
&lt;br /&gt;
Once we get 3-5 mini-reviews, we&#039;ll remove these italicized comments, and collapse reviews into a more &amp;quot;wiki-like&amp;quot; overview. (We&#039;ll include a link to the time/version when you posted individual reviews.) So, newcomers who bought the Complete Package, please make a new &amp;quot;Review #(next #)&amp;quot; section below, with a summary review. And see the new [[Talk:GEOSCAPE.EXE#New Bundles]] section for more in-depth Q&amp;amp;A and comments.&lt;br /&gt;
&lt;br /&gt;
If any of you have the ability to make comments on Steam or GamersGate that are tacked onto the new X-COM bundles, please post a comment letting people know about this wiki. &#039;&#039;&#039;www.UFOpaedia.org&#039;&#039;&#039;, loud and proud.&amp;lt;/i&amp;gt; It&#039;s 1999. We&#039;re here to save Earth.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Thanks, and welcome!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;u&amp;gt;wfames, elliotw2, or other new Complete Package folks&amp;lt;/u&amp;gt; - please put your comments under a heading like the one below - thanks!&#039;&#039;&#039; -[[User:MikeTheRed|MikeTheRed]] 03:51, 19 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
==Review #1 by wfames==&lt;br /&gt;
&lt;br /&gt;
Everything seems fine except for psionics.  Soldiers in both original X-Com and TFTD do not seem to gain any Psi Skill for either successful or unsuccessful mind control attempts.  MC also never seems to work more than once in any given battle.  Makes psionics practically useless.  It&#039;s still a great game, even with that frustration, though.&lt;br /&gt;
&lt;br /&gt;
= XCOM: UFO Defense (U.S. DOS) version 1.4 =&lt;br /&gt;
*Is 382,957 bytes long for the virgin 1.4 executable&lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 379,729. There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*If you have installed [[XcomUtil]], it may alter the length of GEOSCAPE. &#039;&#039;Does anybody have a modified version, so we can put the length here? --[[User:MikeTheRed|MikeTheRed]]&#039;&#039;&lt;br /&gt;
** My XCOM Util GEOSCAPE size is 415,271 --[[User:Pi Masta|Pi Masta]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= XCOM Windows Collector&#039;s Edition =&lt;br /&gt;
*Variously called the &#039;&#039;&#039;Win CE&#039;&#039;&#039; or &#039;&#039;&#039;Gold&#039;&#039;&#039; version on the wiki&lt;br /&gt;
*Is 495,616 bytes long &lt;br /&gt;
*Starting at byte 648, reads:&lt;br /&gt;
 XCOM: UFO Defense Gold Edition&lt;br /&gt;
 This awesome game was compiled on Sep  8 1999 at 08:57:11&lt;br /&gt;
 Copyright - 1999 Hasbro Interactive/MicroProse Software&lt;br /&gt;
 Party on dude.&lt;br /&gt;
*If you install XcomUtil, it separates your &#039;&#039;UFO Defense.exe&#039;&#039; into GEOSCAPE and TACTICAL executables. They are almost identical copies of &#039;&#039;UFO Defense.exe&#039;&#039;, however they start at the right place when run. This allows the game to closely mimick the Dos version by having its main loop run in a batch file. &lt;br /&gt;
*Has [[Alien_Stats|alien statistics]] starting at (non-offset) byte 480,145 (75391x). There are 33 records of 39 bytes each. No alien names, though.&lt;br /&gt;
*Has tank &amp;amp; inbuilt alien weapon stats at byte 447,868 (6D57Cx, see below).&lt;br /&gt;
*Has the copy protection codes written in the manual starting at byte 475,176 (74028x) (despite the fact that the game stopped asking for these prior to the Windows port!).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Vehicle Stats = &lt;br /&gt;
&lt;br /&gt;
At offset 353,020 in X-COM 1.4 (DOS - modified by XCUtil), the vehicle statistics begin.&lt;br /&gt;
&#039;&#039;Emphyrio: start at 353014?, each entry 14 records of 2 bytes, 5 Xcom craft and then 8 Alien&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Each Vessel Statistic is two bytes and is 0 through 65,535 (in UGE format), and go in the following order:&lt;br /&gt;
&lt;br /&gt;
(unknown, index?)&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown)&amp;lt;BR&amp;gt;&lt;br /&gt;
no. of weapons&amp;lt;BR&amp;gt;&lt;br /&gt;
Maximum Speed&amp;lt;BR&amp;gt;&lt;br /&gt;
Acceleration&amp;lt;BR&amp;gt;&lt;br /&gt;
Fuel&amp;lt;BR&amp;gt;&lt;br /&gt;
Damage (armor)&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown, 4 for xcom)&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown), 0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown), 0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown),0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
(unknown),0 for xcom&amp;lt;BR&amp;gt;&lt;br /&gt;
crew&amp;lt;BR&amp;gt;&lt;br /&gt;
HWP&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various X-COM vessel section in UGE format:&lt;br /&gt;
&lt;br /&gt;
Skyranger: 248 - 2 - 2 - 0 - 220 - 5 - 150 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Lightning: 28 - 12 - 8 - 0 - 30 - 0 - 32 - 3&amp;lt;BR&amp;gt;&lt;br /&gt;
Avenger: 24 - 21 - 10 - 0 - 60 - 0 - 176 - 4&amp;lt;BR&amp;gt;&lt;br /&gt;
Interceptor: 52 - 8 - 3 - 0 - 232 - 3 - 100 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Firestorm: 104 - 16 - 9 - 0 - 20 - 0 - 244 - 1&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A bit below the Firestorm statistics are the stats for various Alien Ships, I&#039;ll probably do them later.&lt;br /&gt;
&lt;br /&gt;
At offset 380,668 the Tank Statistics begin.&lt;br /&gt;
&lt;br /&gt;
= Armor Stats =&lt;br /&gt;
&lt;br /&gt;
At offset 369,898 in the DOS version; the personal armor statistics begin.&lt;br /&gt;
&lt;br /&gt;
The Statistics are in two byte format and go in the following order:&lt;br /&gt;
&lt;br /&gt;
Front Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Left Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Right Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Rear Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
Under Armor&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To help you find it in UGE, here are the various armor stats in UGE format: &lt;br /&gt;
&lt;br /&gt;
Unarmored X-COM Personnel: 12 - 0 - 8 - 0 - 8 - 0 - 5 - 0 - 2 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
Personal Armor: 50 - 0 - 40 - 0 - 40 - 0 - 30- 0 - 30 - 0&amp;lt;BR&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So on, etc.&lt;br /&gt;
&lt;br /&gt;
= Alien Stats =&lt;br /&gt;
&lt;br /&gt;
This section is for the structure of the alien stats, as found in GEOSCAPE. For actual data and additional information, see the [[Alien_Stats|alien statistics]] page. Also see Zombie&#039;s excellent alien stats page at [http://www.strategycore.co.uk/xcom/pg/ufoalienstats StrategyCore]. &#039;&#039;(Have YOU made your StratCore and [http://www.xcomufo.com XCOMUFO] accounts yet?)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Alien stats are found as 33 records of 39 bytes each, in all versions of X-COM. They are identical in all versions. This data actually represents the &amp;quot;core&amp;quot; alien stats; modifiers are used to determine the final stats relative to game difficulty level. (In most, but not all, cases, the core stats are the same as the Beginner level stats.)&lt;br /&gt;
&lt;br /&gt;
Alien stats start in each version of X-COM at the following location. This is a byte &#039;&#039;count&#039;&#039;, not an offset; with counts, the first byte in the file is byte 1:&lt;br /&gt;
 &amp;lt;u&amp;gt;Version&amp;lt;/u&amp;gt;        &amp;lt;u&amp;gt;Location&amp;lt;/u&amp;gt;&lt;br /&gt;
 DOS 1.4         379,729  (GEOSCAPE.EXE)  &lt;br /&gt;
 WinCE Gold      480,145  (UFO Defense.exe)&lt;br /&gt;
 Playstation     501,212&lt;br /&gt;
 TFTD            486,930&lt;br /&gt;
&lt;br /&gt;
Alien names are not actually found in Geoscape; it just has 33 strings of data... the alien each string applies to has been inferred by matching against aliens in the game.&lt;br /&gt;
&lt;br /&gt;
The 39 bytes correspond to the following values. For the below, statements also apply to TFTD, since it&#039;s relevant to understanding the bytes:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0:&#039;&#039;&#039;   Race - Corresponds to Unitref[000]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1:&#039;&#039;&#039;   Rank - Corresponds to Unitref[042]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[011]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3:&#039;&#039;&#039;   Can Fly - No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;4:&#039;&#039;&#039;   TUs - Corresponds to Unitref[025]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;5:&#039;&#039;&#039;   Health - Corresponds to Unitref[026]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;6:&#039;&#039;&#039;   Energy - Corresponds to Unitref[027]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;7:&#039;&#039;&#039;   Reactions - Corresponds to Unitref[028]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;8:&#039;&#039;&#039;   Strength - Corresponds to Unitref[017]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;9:&#039;&#039;&#039;   Firing Accuracy - Corresponds to Unitref[023]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;10:&#039;&#039;&#039;   Throwing Accuracy - Corresponds to Unitref[024]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;11:&#039;&#039;&#039;   Melee Accuracy - Corresponds to Unitref[056]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;12:&#039;&#039;&#039;   Front Armor - Corresponds to Unitref[029]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;13:&#039;&#039;&#039;   Left Armor - Corresponds to Unitref[030]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;14:&#039;&#039;&#039;   Right Armor - Corresponds to Unitref[031]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;15:&#039;&#039;&#039;   Rear Armor - Corresponds to Unitref[032]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;16:&#039;&#039;&#039;   Under Armor - Corresponds to Unitref[033]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;17:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[034]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;18:&#039;&#039;&#039;   Energy Recharge - Corresponds to Unitref[035]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;19:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[036]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;20:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 1&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;21:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039; - Corresponds to Unitref[046]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;22:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[048] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;23:&#039;&#039;&#039;   &#039;&#039;Unknown&#039;&#039; - Corresponds to Unitref[052] (see below)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;NOTE: For additional important info on the last two bytes, see [[Talk:UNITREF.DAT]]. My notes below do not take that info into account. For the moment though I&#039;m leaving it as is. I sure wish we could figure the bytes out, and get rid of all the conjecture! - [[User:MikeTheRed|MikeTheRed]] 08:05, 6 November 2006 (PST)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
These Unitref bytes ([48] and [52]) and now Geoscape Core values have long stumped us hardcore X-Commies. The two bytes &amp;lt;b&amp;gt;always&amp;lt;/b&amp;gt; equal the same value for a given alien, including all aliens of the same race (the N&#039;s below). And, they&#039;re the same between Geoscape and Unitref. Clearly it must be important (or a goof!), but exactly what it is, who knows. Although this page is for X-COM, I&#039;ve included TFTD in the hopes it helps folks - but it&#039;s been so long since I&#039;ve played TFTD, I can&#039;t remember those units at all.&lt;br /&gt;
&lt;br /&gt;
How&#039;s this for a thought?... &lt;br /&gt;
 &amp;lt;u&amp;gt;Dimension&amp;lt;/u&amp;gt;   &amp;lt;u&amp;gt;Byte(s)&amp;lt;/u&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
        X     22&lt;br /&gt;
 &lt;br /&gt;
        Y     23&lt;br /&gt;
 &lt;br /&gt;
        Z     24  (top when standing)&lt;br /&gt;
              25  (top when kneeling)&lt;br /&gt;
              26  (bottom)&lt;br /&gt;
&lt;br /&gt;
Maybe they represent the &amp;quot;size in profile&amp;quot; (&amp;quot;width&amp;quot;), affecting likelihood to hit. A game could be tried with a target 20 squares away, set 22 and 23 alternately to 5 or 2 (or 1 or 0?), and see if it affects the successful shots percentage. 0 or even 1 might break the game, though.&lt;br /&gt;
&lt;br /&gt;
Also, how do these values (2 to 5) correlate with the &amp;quot;pixel drawings&amp;quot; of units? I can&#039;t seem to find that info at the moment... aren&#039;t units and tiles defined as something like 16x16x[[Height|28]]? If so, then perhaps the values (2 to 5) are multiplied by 3 or something to get their final &amp;quot;width&amp;quot; for bullet interception??  --[[User:MikeTheRed|MikeTheRed]] 05:20, 17 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
:I finally got the OSG (w00t!), and noticed the following: The section on weapon accuracy says (p. 221) that target size affects the chance to hit, and &amp;quot;the &#039;size&#039; of each alien is listed along with all other alien statistics in Chapter 9&amp;quot;. But the alien stats tables (p. 250 ff.) only lists Height as a possible &#039;size&#039; stat, and the text write-ups don&#039;t otherwise address &amp;quot;target size&amp;quot; with any precision. This discrepancy - that Chapter 8 talks about &#039;&#039;&#039;size&#039;&#039;&#039;, but Chapter 9 only has &#039;&#039;&#039;height&#039;&#039;&#039; - might (might!) mean there are more variables that determine target area size, but somehow they didn&#039;t make it to the alien stats tables.&lt;br /&gt;
&lt;br /&gt;
:The description for Height (p. 249) does say, &amp;quot;Taller creatures are easier to hit than short ones are. An alien with a height of 40, for example, is twice as easy to hit as an alien with a height of 20.&amp;quot; (Note: The tallest [[Height]] is actually 23. And also notice, Float is never mentioned.) This &#039;&#039;might&#039;&#039; mean only height affects this, or it could be read in a general way; other dimensions (X and Y in addition to Z) might also affect it.&lt;br /&gt;
&lt;br /&gt;
:Somebody should do some firing accuracy tests while hacking these potential X &amp;amp; Y bytes! But I still don&#039;t know how the values for [22] &amp;amp; [23] compare to what X-COM considers tile width... we know the Height byte accurately reflects the full range of possible values (0 to 23), but I doubt 5 is the full (pixel?) width of a tile. This might mean it&#039;s not width, then (or maybe [22] &amp;amp; [23] are added, or they are individually multiplied by 3 or something??) If anyone who knows about tile width could say something, I&#039;d appreciate it. --[[User:MikeTheRed|MikeTheRed]] 11:24, 1 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
In any event, here&#039;s a summary of bytes [22] and [23], in the hopes we can figure it out. They&#039;re always identical for a given race, and [22] always equals [23].&lt;br /&gt;
&lt;br /&gt;
                  &#039;&#039;&#039;X-COM                            TFTD&#039;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
          &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;        &amp;lt;U&amp;gt;Value&amp;lt;/U&amp;gt;   &amp;lt;U&amp;gt;Alien&amp;lt;/U&amp;gt;           &amp;lt;U&amp;gt;N&amp;lt;/U&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
            2     Sectoid         6          2     Aquatoid        6   &lt;br /&gt;
                                                   Bio-Drone       1 &lt;br /&gt;
            3     Celatid         1                Tentaculat      1   &lt;br /&gt;
                  Chryssalid      1&lt;br /&gt;
                  Civilian        2          3     Calcinite       1   &lt;br /&gt;
                  Ethereal        3                Civilian        2   &lt;br /&gt;
                  Floater         6                Deep_One        1   &lt;br /&gt;
                  Muton           3                Gill_Man        4   &lt;br /&gt;
                  Snakeman        5                Tasoth          2   &lt;br /&gt;
 &lt;br /&gt;
            4     Cyberdisc       1          4     Coelacant       1   &lt;br /&gt;
                  Hovertank       1                Displacer       1   &lt;br /&gt;
                  Reaper          1                Hallucinoid     1   &lt;br /&gt;
                  Sectopod        1                Lobster_Man     5   &lt;br /&gt;
                  Tank            1                Triscene        1   &lt;br /&gt;
                                                   Xarquid         1 &lt;br /&gt;
            5     Silacoid        1  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;24:&#039;&#039;&#039;   Standing Height - Corresponds to Unitref[049]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;25:&#039;&#039;&#039;   Kneeling Height - Corresponds to Unitref[050]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;26:&#039;&#039;&#039;   Floating Height - Corresponds to Unitref[051]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;27:&#039;&#039;&#039;   [[Damage#Susceptible_to...|Damage Modifier]] Category - Corresponds to Unitref[055]&lt;br /&gt;
&lt;br /&gt;
This field is simply a look-up table, or more directly, a way to categorize the units into similar groups. The actual modifiers are listed elsewhere in the executable. A value of 1 indicates the second DM category, a value of 4 indicates the 5th, etc. The values of 2 and 3 are not seen in the alien stats as they refer to X-COM soldier armor info. I&#039;m not sure about 13 as the Zombie&#039;s stats haven&#039;t been found yet, but there is a category in the DM&#039;s for it.&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;Category&#039;&#039;&#039;    &#039;&#039;&#039;Unit Type(s)&#039;&#039;&#039;&lt;br /&gt;
     &#039;&#039;&#039;0&#039;&#039;&#039;      Not for units, but is used for Terrain and Items&lt;br /&gt;
     &#039;&#039;&#039;1&#039;&#039;&#039;      Civilian, Sectoid, Celatid, Floater&lt;br /&gt;
     &#039;&#039;&#039;2&#039;&#039;&#039;      Personal Armor&lt;br /&gt;
     &#039;&#039;&#039;3&#039;&#039;&#039;      Power Suit, Flying Suit&lt;br /&gt;
     &#039;&#039;&#039;4&#039;&#039;&#039;      Tanks, Hovertanks&lt;br /&gt;
     &#039;&#039;&#039;5&#039;&#039;&#039;      Snakemen&lt;br /&gt;
     &#039;&#039;&#039;6&#039;&#039;&#039;      Ethereal&lt;br /&gt;
     &#039;&#039;&#039;7&#039;&#039;&#039;      Muton&lt;br /&gt;
     &#039;&#039;&#039;8&#039;&#039;&#039;      Silacoid&lt;br /&gt;
     &#039;&#039;&#039;9&#039;&#039;&#039;      Chryssalid&lt;br /&gt;
    &#039;&#039;&#039;10&#039;&#039;&#039;      Reaper&lt;br /&gt;
    &#039;&#039;&#039;11&#039;&#039;&#039;      Sectopod&lt;br /&gt;
    &#039;&#039;&#039;12&#039;&#039;&#039;      Cyberdisc&lt;br /&gt;
    &#039;&#039;&#039;13&#039;&#039;&#039;      Zombie&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;28:&#039;&#039;&#039;   Psi Skill - Corresponds to Unitref[037]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;29:&#039;&#039;&#039;   Psi Strength - Corresponds to Unitref[057]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;30:&#039;&#039;&#039;   Bravery (encoded) - Corresponds to Unitref[059]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;31:&#039;&#039;&#039;   Motion scanner size - Corresponds to Unitref[061]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;32:&#039;&#039;&#039;   &#039;&#039;1 for Cyberdisc, 0 for all others including TFTD... isn&#039;t &amp;quot;Explodes&amp;quot;; the TFTD Bio-Drone also explodes...&#039;&#039; - Corresponds to Unitref[071]&lt;br /&gt;
&lt;br /&gt;
I edited the Cyberdisc&#039;s field to 0 and checked to see if it exploded. It still did. Obviously this field is for something else. I&#039;ll work on this some more. --[[User:Zombie|Zombie]] 20:15, 15 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;33:&#039;&#039;&#039;   &#039;&#039;Unknown - Always 0&#039;&#039;  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;34:&#039;&#039;&#039;   Corpse type - Corresponds to Unitref[038]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;35:&#039;&#039;&#039;   Big unit (2x2)  No Corresponding Unitref offset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;36:&#039;&#039;&#039;   Victory point score - Corresponds to Unitref[039]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;37:&#039;&#039;&#039;   Aggression - Corresponds to Unitref[044]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;38:&#039;&#039;&#039;   Intelligence - Corresponds to Unitref[073]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This data was just put together working heavily with Zombie and his great SC [http://www.strategycore.co.uk/xcom/pg/ufoalienstats alien stats] page.&lt;br /&gt;
&lt;br /&gt;
= Country Labels =&lt;br /&gt;
Starting at offset 396480 (hex: 0x60CC0) are the records that contain the location of the labels for the country names on the world. In order they are X, Y, and English.dat index all signed short integers (6 bytes for each record). X should never be negative but between 0 and 2880, Y should be between -720 and 720 (See [[WORLD.DAT]]). The English.dat file, despite all other array indexes appears to start at 1 and not 0, thus a value of 611 in here represents index 610 in a zero based English.dat array. (It stands to reason that these work for the other language files as well)&lt;br /&gt;
&lt;br /&gt;
= File Templates =&lt;br /&gt;
There appears to be &#039;templates&#039; of some of the [[Saved Game Files|game files]] stored within this executable. Makes sense as initially no saved game files are present when installed. Here is a list of known positions and the corresponding file. Offsets are from DOS Version of the game patched with XComUtil&lt;br /&gt;
{| {{StdDescTable}}&lt;br /&gt;
|- {{StdDescTable_Heading}}&lt;br /&gt;
! Offset (Hex) !! Offset (Dec) !! Length (Bytes) !! File&lt;br /&gt;
|-&lt;br /&gt;
| 5AB28 || 371496 || 2112|| [[RESEARCH.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B5E0 || 374240 ||  272|| [[FACIL.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5B6F0 || 374512 || 1820|| [[PURCHASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5D894 || 383124 || 576 || [[DIPLOM.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5E48C || 386188 || 1392|| [[UP.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5EB90 || 387984 ||   84|| [[ACTS.DAT]]&lt;br /&gt;
|-&lt;br /&gt;
| 5FAC0 || 391872 || 2336|| [[BASE.DAT]] &lt;br /&gt;
|-&lt;br /&gt;
| 5FBB8 || 392120 || 5200|| [[CRAFT.DAT]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Possibly these are in-game data structures used to hold the current in-memory state, between game saves?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Detection Ranges =&lt;br /&gt;
&lt;br /&gt;
Detection ranges are hard coded into the executable at the following locations (Win CE / Gold edition):&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Platform&lt;br /&gt;
!Address&lt;br /&gt;
!Data bytes&lt;br /&gt;
!Hex&lt;br /&gt;
!Range&lt;br /&gt;
!nm&lt;br /&gt;
|-&lt;br /&gt;
|Aircraft||591EA||C8 00||x00C8||200||600&lt;br /&gt;
|-&lt;br /&gt;
|Hyperwave||59237||20 03||x0328||800||2400&lt;br /&gt;
|-&lt;br /&gt;
|Lg Radar||5926D||EE 02||x02EE||750||2250&lt;br /&gt;
|-&lt;br /&gt;
|Sm Radar||59278||F4 01||x01F4||500||1500&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Patching &amp;quot;88 13&amp;quot; to these locations = x1388 = 5000 range units = 15,000 nm pretty much gives that platform visibility over the whole world. Of course Small Radar still only has a 10% detection chance per half hour.&lt;br /&gt;
&lt;br /&gt;
= Battlescape Terrain List =&lt;br /&gt;
&lt;br /&gt;
In the UFO CE executable, offset 476156 (743FCx) marks the beginning of the [[WORLD.DAT]] terrain to battlescape terrain conversion list. 13 double byte values.&lt;br /&gt;
&lt;br /&gt;
 02 00 01 00 01 00 01 00 01 00 07 00 02 00 06 00 06 00 08 00 00 00 02 00 08 00&lt;br /&gt;
&lt;br /&gt;
For example, a mission initiated in a GeoScape polygon of type 5 will be performed in battlescape terrain type 7 (mountains).&lt;br /&gt;
&lt;br /&gt;
Note that jungle (type 00) missions in the north will end up as forest missions, and forest (type 02) missions in the south will end up as jungle missions. See offset 10 in [[GEODATA.DAT]] for the full battlescape terrain list.&lt;br /&gt;
&lt;br /&gt;
= See Also =&lt;br /&gt;
* [[TACTICAL.EXE]] - Sister executable used for Turn based strategy (merged with geoscape.exe in WinCE edition)&lt;br /&gt;
* [[UNITREF.DAT]] - Stats on current units (both XCOM and Alien) in play&lt;br /&gt;
* [[Saved Game Files]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Game Files]]&lt;/div&gt;</summary>
		<author><name>Emphyrio</name></author>
	</entry>
</feed>