<?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=Renegrade</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=Renegrade"/>
	<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/Special:Contributions/Renegrade"/>
	<updated>2026-05-01T05:58:39Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:UNITPOS.DAT&amp;diff=30204</id>
		<title>Talk:UNITPOS.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:UNITPOS.DAT&amp;diff=30204"/>
		<updated>2010-08-22T18:42:47Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Offsets 4-7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just a note:&lt;br /&gt;
&lt;br /&gt;
Bullets fired from large units always go from the primary quarter - i.e. the very first unit in unitpos - or the top-left quarter of the unit (relatively speaking, the top most quarter on your screen). &lt;br /&gt;
&lt;br /&gt;
I think the bullet origin is higher than the unit&#039;s hit-box (to mimic firing from a turret) or is at least offset so that it doesn&#039;t strike its other quarters. &lt;br /&gt;
&lt;br /&gt;
Until more information is gathered, I don&#039;t think the bitflags that flag sometimes for tanks would determine where the bullet is fired from. Sorry, yet another bit to identify... oh well. &lt;br /&gt;
&lt;br /&gt;
[[User:NKF|NKF]] 02:04, 15 Oct 2005 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
I just compared two unitpos.dat files. One was where a Chryssalid was not spotted. The other was after the Chryssalid was spotted. The only difference between the two files was offset 10 (column 11). Unspotted: value of 34 (100010), spotted: value of 35 (100011). Not sure how that fits in the offset 10 description in the article page so I dumped this info here for now. Someone with more knowledge of bytes, hex, dec and bin please look this over and try and incorporate it into the text. -[[User:Zombie|Zombie]] 23:59, 29 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
Unexpected terminology.  XCOM units always have the bit with significance 1 (bit 0) set, so equating &amp;quot;spotted&amp;quot; with &amp;quot;visible&amp;quot; makes the article summarize this without changes. &lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 10:23, 1 Oct 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
:Agreed. The lowest bit is a flag for visible/spotted. I never noticed that that&#039;s where it was stored (and not in Unitref) until now... I&#039;ll add a little more text to the page so it stands out a little better (for slow folks like me!). Good work with FC, Z. P.S. You can delete all this after reading, if you want. --[[User:MikeTheRed|MikeTheRed]] 10:23, 1 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Comparing end-of-turn saves with the consecutive begin-of-turn saves: in patrol-mode AI with no X-COM units spotted during the turn, &#039;&#039;&#039;only&#039;&#039;&#039; position bytes are updated during patrol mode AI when no X-COM units are spotted.  The other bytes aren&#039;t changed simply by expending energy on the next turn, either.&lt;br /&gt;
&lt;br /&gt;
In particular, the visible/spotted bit (significance 1) isn&#039;t reset.  Not worth updating until whether this bit can reset is inducted properly.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 16:21, 1 Oct 2006 (CST)&lt;br /&gt;
&lt;br /&gt;
== Offset 8 ==&lt;br /&gt;
&lt;br /&gt;
Ok I did some comparing of offset 8 in saves. I seem to have confirmed what BB has said only that XCom units are set to 255 at the beginning of combat, and aliens are set to 1. As I placed in the article this seems to be a counter that increases every turn the unit goes unseen &#039;&#039;per se&#039;&#039;. Even if you &#039;sneak&#039; up on an alien facing away from you, both counters will be reset (yours and the aliens). I&#039;m not sure if an alien sneaks up on you if the counters reset or not. (I won&#039;t be shown the movement so I can&#039;t confirm) &lt;br /&gt;
&lt;br /&gt;
I&#039;m about 90% sure that even if a soldier cannot &#039;see&#039; the other alien (out of sight range), but fires and hits the alien, including with AoE that soldier&#039;s counter is reset. &lt;br /&gt;
&lt;br /&gt;
Now for my theory: &amp;lt;br/&amp;gt;&lt;br /&gt;
I think this has to do with the &#039;&#039;intellegence&#039;&#039; value in [[UNITREF.DAT]] offset 73. If this counter is greater than the value at offset 73, then they will not know where the unit is. Hence why all human soldiers have &#039;intelligence&#039; set to 0, else you would know the location of aliens after they have moved out of your sight, and why their counters are set to 255 at first otherwise the aliens would know where you were to begin with.&lt;br /&gt;
&lt;br /&gt;
Also, I think I might have noticed the AI run a bit faster once my soldiers were above their &#039;intelligence&#039; value, the turns ran much faster when some of my soldiers hit the 6-8 mark. Thus maybe the AI only processes soldiers that fit this condition.&lt;br /&gt;
&lt;br /&gt;
I remember reading somewhere about the aliens knowing where you are from the start, but I can&#039;t remember the details.&lt;br /&gt;
[[User:Pi Masta|Pi Masta]] 20:26, 14 February 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
I&#039;m pretty sure you&#039;re right; I never tested to see what this value did over time, I just noticed it reset when you spotted something. I never twigged that it&#039;d be to do with the intellegence byte as I only noticed it change when I spotted aliens (as opposed to when they spotted ME!).&lt;br /&gt;
&lt;br /&gt;
The rumor goes that if the aliens know where one of your units is, they know where ALL of them are until they &amp;quot;forget&amp;quot;. This has to be that counter byte. The only question I have is when it increments (when you have your turn, when the aliens have theirs, or both).&lt;br /&gt;
&lt;br /&gt;
I suspect the byte is somewhat redundant in the case of aliens, as a seperate &amp;quot;visibility&amp;quot; flag (see offset 10) is used so you can keep track of enemies. Still, it might be interesting to boost one of your own units intellegence somewhat and see what happens.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 03:15, 25 April 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets 4-7 ==&lt;br /&gt;
&lt;br /&gt;
Looks like it&#039;s a raw memory pointer to unitref data. For big units, the 4 parts seems to points to the same data.&lt;br /&gt;
&lt;br /&gt;
- [[User:Seb76|Seb76]]&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
O_O&lt;br /&gt;
&lt;br /&gt;
You&#039;ve gotta be right; the values increment by 124 (the UnitRef record size).&lt;br /&gt;
&lt;br /&gt;
(Could you please sign your Talk comments? Just stick in four consecutive tildes (~), the Wiki&#039;ll convert that to the time/date/username info).&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 20:01, 9 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Is this the only reference tying UNITPOS and UNITREF together, aside from the position on disk/in memory?  I&#039;m guessing after the file is reloaded, they step through UNITREF, and use something there to determine whether or not there are 1 or 4 UNITPOS records associated and update this pointer correctly.  But then how are UNITPOS records updated while the game runs?  They must either have some internal memory-only linkage that isn&#039;t saved, or are always updating/using UNITREF from the state of UNITPOS? Having to search every UNITPOS&#039;s pointer to find the UNITPOS from the UNITREF record&#039;s side would be rather expensive if it has to be repeated :S &lt;br /&gt;
&lt;br /&gt;
An additional thought occurred to me: there&#039;s 80 of these, and 80 of UNITREF, yet there could be as many as 320 UNITPOS records for a set of 80 large units in UNITREF.  Could the crashes relating to overstuffed base defense missions have something to do with there being too many UNITPOS entries for the UNITPOS array?  Perhaps in XCOM&#039;s early stages, UNITPOS and UNITREF were 1:1 and large units were added later?&lt;br /&gt;
&lt;br /&gt;
~ [[User:Renegrade|Renegrade]] 12:02, 22 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:UNITPOS.DAT&amp;diff=30202</id>
		<title>Talk:UNITPOS.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:UNITPOS.DAT&amp;diff=30202"/>
		<updated>2010-08-22T16:02:16Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Offsets 4-7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just a note:&lt;br /&gt;
&lt;br /&gt;
Bullets fired from large units always go from the primary quarter - i.e. the very first unit in unitpos - or the top-left quarter of the unit (relatively speaking, the top most quarter on your screen). &lt;br /&gt;
&lt;br /&gt;
I think the bullet origin is higher than the unit&#039;s hit-box (to mimic firing from a turret) or is at least offset so that it doesn&#039;t strike its other quarters. &lt;br /&gt;
&lt;br /&gt;
Until more information is gathered, I don&#039;t think the bitflags that flag sometimes for tanks would determine where the bullet is fired from. Sorry, yet another bit to identify... oh well. &lt;br /&gt;
&lt;br /&gt;
[[User:NKF|NKF]] 02:04, 15 Oct 2005 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
I just compared two unitpos.dat files. One was where a Chryssalid was not spotted. The other was after the Chryssalid was spotted. The only difference between the two files was offset 10 (column 11). Unspotted: value of 34 (100010), spotted: value of 35 (100011). Not sure how that fits in the offset 10 description in the article page so I dumped this info here for now. Someone with more knowledge of bytes, hex, dec and bin please look this over and try and incorporate it into the text. -[[User:Zombie|Zombie]] 23:59, 29 September 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
Unexpected terminology.  XCOM units always have the bit with significance 1 (bit 0) set, so equating &amp;quot;spotted&amp;quot; with &amp;quot;visible&amp;quot; makes the article summarize this without changes. &lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 10:23, 1 Oct 2006 (CDT)&lt;br /&gt;
&lt;br /&gt;
:Agreed. The lowest bit is a flag for visible/spotted. I never noticed that that&#039;s where it was stored (and not in Unitref) until now... I&#039;ll add a little more text to the page so it stands out a little better (for slow folks like me!). Good work with FC, Z. P.S. You can delete all this after reading, if you want. --[[User:MikeTheRed|MikeTheRed]] 10:23, 1 October 2006 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Comparing end-of-turn saves with the consecutive begin-of-turn saves: in patrol-mode AI with no X-COM units spotted during the turn, &#039;&#039;&#039;only&#039;&#039;&#039; position bytes are updated during patrol mode AI when no X-COM units are spotted.  The other bytes aren&#039;t changed simply by expending energy on the next turn, either.&lt;br /&gt;
&lt;br /&gt;
In particular, the visible/spotted bit (significance 1) isn&#039;t reset.  Not worth updating until whether this bit can reset is inducted properly.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 16:21, 1 Oct 2006 (CST)&lt;br /&gt;
&lt;br /&gt;
== Offset 8 ==&lt;br /&gt;
&lt;br /&gt;
Ok I did some comparing of offset 8 in saves. I seem to have confirmed what BB has said only that XCom units are set to 255 at the beginning of combat, and aliens are set to 1. As I placed in the article this seems to be a counter that increases every turn the unit goes unseen &#039;&#039;per se&#039;&#039;. Even if you &#039;sneak&#039; up on an alien facing away from you, both counters will be reset (yours and the aliens). I&#039;m not sure if an alien sneaks up on you if the counters reset or not. (I won&#039;t be shown the movement so I can&#039;t confirm) &lt;br /&gt;
&lt;br /&gt;
I&#039;m about 90% sure that even if a soldier cannot &#039;see&#039; the other alien (out of sight range), but fires and hits the alien, including with AoE that soldier&#039;s counter is reset. &lt;br /&gt;
&lt;br /&gt;
Now for my theory: &amp;lt;br/&amp;gt;&lt;br /&gt;
I think this has to do with the &#039;&#039;intellegence&#039;&#039; value in [[UNITREF.DAT]] offset 73. If this counter is greater than the value at offset 73, then they will not know where the unit is. Hence why all human soldiers have &#039;intelligence&#039; set to 0, else you would know the location of aliens after they have moved out of your sight, and why their counters are set to 255 at first otherwise the aliens would know where you were to begin with.&lt;br /&gt;
&lt;br /&gt;
Also, I think I might have noticed the AI run a bit faster once my soldiers were above their &#039;intelligence&#039; value, the turns ran much faster when some of my soldiers hit the 6-8 mark. Thus maybe the AI only processes soldiers that fit this condition.&lt;br /&gt;
&lt;br /&gt;
I remember reading somewhere about the aliens knowing where you are from the start, but I can&#039;t remember the details.&lt;br /&gt;
[[User:Pi Masta|Pi Masta]] 20:26, 14 February 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
-----------------------------&lt;br /&gt;
&lt;br /&gt;
I&#039;m pretty sure you&#039;re right; I never tested to see what this value did over time, I just noticed it reset when you spotted something. I never twigged that it&#039;d be to do with the intellegence byte as I only noticed it change when I spotted aliens (as opposed to when they spotted ME!).&lt;br /&gt;
&lt;br /&gt;
The rumor goes that if the aliens know where one of your units is, they know where ALL of them are until they &amp;quot;forget&amp;quot;. This has to be that counter byte. The only question I have is when it increments (when you have your turn, when the aliens have theirs, or both).&lt;br /&gt;
&lt;br /&gt;
I suspect the byte is somewhat redundant in the case of aliens, as a seperate &amp;quot;visibility&amp;quot; flag (see offset 10) is used so you can keep track of enemies. Still, it might be interesting to boost one of your own units intellegence somewhat and see what happens.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 03:15, 25 April 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offsets 4-7 ==&lt;br /&gt;
&lt;br /&gt;
Looks like it&#039;s a raw memory pointer to unitref data. For big units, the 4 parts seems to points to the same data.&lt;br /&gt;
&lt;br /&gt;
- [[User:Seb76|Seb76]]&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
O_O&lt;br /&gt;
&lt;br /&gt;
You&#039;ve gotta be right; the values increment by 124 (the UnitRef record size).&lt;br /&gt;
&lt;br /&gt;
(Could you please sign your Talk comments? Just stick in four consecutive tildes (~), the Wiki&#039;ll convert that to the time/date/username info).&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 20:01, 9 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Is this the only reference tying UNITPOS and UNITREF together, aside from the position on disk/in memory?  I&#039;m guessing after the file is reloaded, they step through UNITREF, and use something there to determine whether or not there are 1 or 4 UNITPOS records associated and update this pointer correctly.  But then how are UNITPOS records updated while the game runs?  They must either have some internal memory-only linkage that isn&#039;t saved, or are always updating/using UNITREF from the state of UNITPOS? Having to search every UNITPOS&#039;s pointer to find the UNITPOS from the UNITREF record&#039;s side would be rather expensive if it has to be repeated :S &lt;br /&gt;
&lt;br /&gt;
~ [[User:Renegrade|Renegrade]] 12:02, 22 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=29261</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=29261"/>
		<updated>2010-08-19T17:30:04Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Game option: sell only researched items */&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;
:::: Ummm, it seems the best solution (I, for one, can&#039;t think of any better), but wouldn&#039;t it assume that only the BattleShip really locates the player&#039;s base? All those scouts for nothing? [Still the best solution, though] [[User:N|n]] 15:01, 16 August 2010 (GMT+1)&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;
: This would have the added benefit that you would know if it was &#039;safe&#039; or not to sell an item research wise.  Coloring the un-researched items differently on the Sell/Sack screen would be good too ~ [[User:Renegrade|Renegrade]] 13:30, 19 August 2010 (EDT)&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;
&lt;br /&gt;
=== Keyboard shortcuts at bases ===&lt;br /&gt;
&lt;br /&gt;
I wish we had (customised, maybe?) keyboard shortcuts at the base screen. Numbers (at the &amp;quot;base information&amp;quot; screen as well) would switch bases, R for research, E for equip craft, T for transfer, M for manufacture, S for soldiers, B for build new base, P for purchase+recruit (or &amp;quot;B&amp;quot; for &amp;quot;buy&amp;quot; - let people double-bind if they need it), I for base information. The doubles (soldiers/sell+sack) could be solved by using the key under the primary one (x for sell+sack). - n (16:26, 16 Aug 2010 (GMT+1))&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;
====Crushed Buildings====&lt;br /&gt;
&lt;br /&gt;
Why don&#039;t we see any crushed or destroyed buildings? Does a UFO always fall like a rock, perpendicular to the ground? No marks on the ground? Such impact would do massive damage to the land (a small meteor can do much if it has a high speed...). (Also, at the [debatedly] &amp;quot;real&amp;quot; UFO crash zones UFO parts were scattered over miles)&lt;br /&gt;
&lt;br /&gt;
I&#039;d like to see chopped buildings, entering UFO&#039;s through a barns; entering an abductor from a immediate house&#039;s roof if I have plasma and no flying suits yet. - [[User:N|n]] 15:01, 16 August 2010 (GMT+1)&lt;br /&gt;
&lt;br /&gt;
: The Pocket PC remake of the game did this, though it seems the site it concern has vanished off the face of the net. Could probably find a copy if you&#039;re interested.&lt;br /&gt;
&lt;br /&gt;
: By the way, you can generate a time/date stamped signature by typing four tildes (&amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt;). - [[User:Bomb Bloke|Bomb Bloke]] 23:04, 16 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
:: Amazingly enough (is it Truman Show of me or just a coincidence :)?), my GF found a low-tech palmtop (with/in a case)... on the pavement. With no personal data and means to find the owner; when I laid my hands on it, I actually found and installed Ufo:EU there, but it wouldn&#039;t run :(. [And thanks! again for the 4 tildes name/timestamp trick] - [[User:N|n]] 19:18, 18 August 2010 (EDT)&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;
:Wouldn&#039;t it be nice though if it had gradients other than &amp;quot;day: 20 squares&amp;quot; &amp;quot;night: 9 squares&amp;quot; ?  Like.. &amp;quot;early morning/late evening: 10-19 squares&amp;quot; ? I find the cut off from full daylight to full night kinda disturbing.  ~ [[User:Renegrade|Renegrade]] 10:41, 19 August 2010 (EDT)&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>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=29259</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=29259"/>
		<updated>2010-08-19T14:41:31Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Night Vision */&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;
:::: Ummm, it seems the best solution (I, for one, can&#039;t think of any better), but wouldn&#039;t it assume that only the BattleShip really locates the player&#039;s base? All those scouts for nothing? [Still the best solution, though] [[User:N|n]] 15:01, 16 August 2010 (GMT+1)&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;
&lt;br /&gt;
=== Keyboard shortcuts at bases ===&lt;br /&gt;
&lt;br /&gt;
I wish we had (customised, maybe?) keyboard shortcuts at the base screen. Numbers (at the &amp;quot;base information&amp;quot; screen as well) would switch bases, R for research, E for equip craft, T for transfer, M for manufacture, S for soldiers, B for build new base, P for purchase+recruit (or &amp;quot;B&amp;quot; for &amp;quot;buy&amp;quot; - let people double-bind if they need it), I for base information. The doubles (soldiers/sell+sack) could be solved by using the key under the primary one (x for sell+sack). - n (16:26, 16 Aug 2010 (GMT+1))&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;
====Crushed Buildings====&lt;br /&gt;
&lt;br /&gt;
Why don&#039;t we see any crushed or destroyed buildings? Does a UFO always fall like a rock, perpendicular to the ground? No marks on the ground? Such impact would do massive damage to the land (a small meteor can do much if it has a high speed...). (Also, at the [debatedly] &amp;quot;real&amp;quot; UFO crash zones UFO parts were scattered over miles)&lt;br /&gt;
&lt;br /&gt;
I&#039;d like to see chopped buildings, entering UFO&#039;s through a barns; entering an abductor from a immediate house&#039;s roof if I have plasma and no flying suits yet. - [[User:N|n]] 15:01, 16 August 2010 (GMT+1)&lt;br /&gt;
&lt;br /&gt;
: The Pocket PC remake of the game did this, though it seems the site it concern has vanished off the face of the net. Could probably find a copy if you&#039;re interested.&lt;br /&gt;
&lt;br /&gt;
: By the way, you can generate a time/date stamped signature by typing four tildes (&amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt;). - [[User:Bomb Bloke|Bomb Bloke]] 23:04, 16 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
:: Amazingly enough (is it Truman Show of me or just a coincidence :)?), my GF found a low-tech palmtop (with/in a case)... on the pavement. With no personal data and means to find the owner; when I laid my hands on it, I actually found and installed Ufo:EU there, but it wouldn&#039;t run :(. [And thanks! again for the 4 tildes name/timestamp trick] - [[User:N|n]] 19:18, 18 August 2010 (EDT)&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;
:Wouldn&#039;t it be nice though if it had gradients other than &amp;quot;day: 20 squares&amp;quot; &amp;quot;night: 9 squares&amp;quot; ?  Like.. &amp;quot;early morning/late evening: 10-19 squares&amp;quot; ? I find the cut off from full daylight to full night kinda disturbing.  ~ [[User:Renegrade|Renegrade]] 10:41, 19 August 2010 (EDT)&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>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:Image_Formats&amp;diff=29258</id>
		<title>Talk:Image Formats</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:Image_Formats&amp;diff=29258"/>
		<updated>2010-08-19T14:23:57Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* BDY format algorithm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== BDY format algorithm ==&lt;br /&gt;
&lt;br /&gt;
The following line isn&#039;t quite right:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;If &amp;quot;a&amp;quot; is 129 or greater, then draw 257-a pixels of the next byte; otherwise, &#039;&#039;&#039;read &amp;quot;a&amp;quot; bytes&#039;&#039;&#039; from the file and draw those colors sequentially.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
It appears to be &amp;quot;read a+1 bytes&amp;quot; for BDY files, which makes sense.  If this were not the case, the value of &#039;0&#039; would mean &amp;quot;read 0 bytes and draw&amp;quot;, which would be wasting a whole code.&lt;br /&gt;
&lt;br /&gt;
~ [[User:Renegrade|Renegrade]] 10:23, 19 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=29257</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=29257"/>
		<updated>2010-08-19T14:23:38Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Enemy Unknown */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code.&lt;br /&gt;
* Make some art~&lt;br /&gt;
* Writing out and compressing BDYs&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs (this has been improved somewhat)&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
* Merge sub-programs&lt;br /&gt;
* Decompress BDYs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
(things to consider implementing in Z-Com)&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;br /&gt;
&lt;br /&gt;
* Show the current AND expected stock in the Buy screen; ie, including transfers &#039;in flight&#039; to that base.  Could work one of two ways:&lt;br /&gt;
# Show it as non-summed items.  Ex: Rifle Clip  14 (20) --&amp;gt; 14 rifle clips at the base, 20 en route via transfers from purchasing or other bases.&lt;br /&gt;
# Show it as summed items.  Ex: Rifle Clip 14 (34) --&amp;gt; 14 rifle clips at the base, with 20 enroute = a total of 34.  I tend to favor this approach as it eliminates the possibility of faults with mental math.&lt;br /&gt;
&lt;br /&gt;
* Fix the manufacturing bug.  I actually have a hard time imagining the code that causes it, yet still allows proper rollover of hours.  If something takes 5 engineering hours, and there&#039;s 12 engineers working on it, it should produce &#039;&#039;two&#039;&#039; on the hour, and save 2 engineer hours for the next &#039;&#039;&#039;anything&#039;&#039;&#039; (including new projects), with an ideal design.&lt;br /&gt;
&lt;br /&gt;
* Also, the manufacturing page suggests that resources are gathered too quickly and/or not returned properly when cancelling.  The best design for that would be that every time a new item in a batch is initiated, the cash and items required are extracted from the base stock, but then &#039;stored&#039; in the manufacturing data.  If that item is cancelled, then that stored cash/item list can be restored to the base&#039;s main stock.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:Image_Formats&amp;diff=29256</id>
		<title>Talk:Image Formats</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:Image_Formats&amp;diff=29256"/>
		<updated>2010-08-19T14:22:24Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: BDY format algorithm&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== BDY format algorithm ==&lt;br /&gt;
&lt;br /&gt;
The following line isn&#039;t quite right:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;If &amp;quot;a&amp;quot; is 129 or greater, then draw 257-a pixels of the next byte; otherwise, &#039;&#039;&#039;read &amp;quot;a&amp;quot; bytes&#039;&#039;&#039; from the file and draw those colors sequentially.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
It appears to be &amp;quot;read a+1 bytes&amp;quot; for BDY files, which makes sense.  If this were not the case, the value of &#039;0&#039; would mean &amp;quot;read 0 bytes and draw&amp;quot;, which would be wasting a whole code.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:ASTORE.DAT&amp;diff=29245</id>
		<title>Talk:ASTORE.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:ASTORE.DAT&amp;diff=29245"/>
		<updated>2010-08-18T13:33:44Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* TFTD astore.dat */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just two observations I had while running a test on this file. &lt;br /&gt;
&lt;br /&gt;
* While aliens are in transit, the game will stop you from removing the living quarters at the destination (assuming you&#039;re in a situation where you want to get rid of all your living quarters) even though all X-Com staff have vacated the base. &lt;br /&gt;
* A base that is dismantled (while aliens are still in transit) all the way down to the ground will not cause the aliens stored in astore.dat to be deleted. If the base is later rebuilt, the aliens will still be present. &lt;br /&gt;
**This was with deconstruction of the base. Must test again with base destruction. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
== Windows version different ==&lt;br /&gt;
&lt;br /&gt;
In the Windows version of the game, the structure of AStore.dat seems to be different.  The file is a fixed size of 3600 bytes, and at a quick inspection, the format does not appear to match what&#039;s posted on the main page.  I&#039;ll post more once I know it. --[[User:RobinHood70|RobinHood70]] 14:56, 24 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== TFTD astore.dat ==&lt;br /&gt;
&lt;br /&gt;
The TFTD version of astore.dat (this is from an older version that only makes the 600 byte file) seems to have a lot of extra data in it.&lt;br /&gt;
&lt;br /&gt;
From one of my TFTD games:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
[ 0] Alien: Aquatoid(Squad Leader)   Base: 0 Extra:  00 28 00 14 00 00 00 00 00&lt;br /&gt;
[ 1] Alien: Aquatoid(Soldier)        Base: 0 Extra:  51 53 fc 8b 5e 10 c4 7e 00&lt;br /&gt;
[ 2] Alien: Aquatoid(Medic)          Base: 0 Extra:  7e 0b c5 76 0a 8b 4e 0e 00&lt;br /&gt;
[ 3] Alien: Aquatoid(Medic)          Base: 0 Extra:  f0 5b 59 5f 5e 1f 07 c9 00&lt;br /&gt;
[ 4] Alien: Gill Man(Commander)      Base: 0 Extra:  c0 66 0f b7 db 66 0f b7 00&lt;br /&gt;
[ 5] Alien: Gill Man(Technician)     Base: 0 Extra:  d2 66 0f b7 ff 66 0f b7 00&lt;br /&gt;
[ 6] Alien: Gill Man(Soldier)        Base: 0 Extra:  00 00 66 0f b7 46 06 0b 00&lt;br /&gt;
[ 7] Alien: Gill Man(Soldier)        Base: 0 Extra:  db 66 0f 02 c0 eb 00 66 00&lt;br /&gt;
[ 8] Alien: Gill Man(Squad Leader)   Base: 0 Extra:  ea 10 c9 cb c8 00 00 00 00&lt;br /&gt;
[ 9] Alien: Aquatoid(Medic)          Base: 0 Extra:  06 0b c0 74 06 66 0f 03 00&lt;br /&gt;
[10] Alien: Deep One(Terrorist)      Base: 0 Extra:  8b d0 66 c1 ea 10 c9 cb 00&lt;br /&gt;
[11] Alien: Deep One(Terrorist)      Base: 0 Extra:  00 1e b8 88 3c 8e d8 c7 00&lt;br /&gt;
[12] Alien: Deep One(Terrorist)      Base: 0 Extra:  8b 46 0a 89 46 ea 8b 46 00&lt;br /&gt;
[13] Alien: Gill Man(Squad Leader)   Base: 0 Extra:  8a 46 06 b4 3d 89 46 fe 00&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Extra&amp;quot; field is showing the bytes past the first three (type, rank, base) known fields.  None of these aliens are, or have ever been, transferred.&lt;br /&gt;
&lt;br /&gt;
The last field is generally 0, and I understand that one turns to 0xFF during transfers.&lt;br /&gt;
&lt;br /&gt;
Could the extra data have something to do with location of capture or such?  Or date and time?  Or is it just random uninitialized garbage?&lt;br /&gt;
&lt;br /&gt;
I&#039;m almost suspecting the &amp;quot;random unitialized garbage&amp;quot; theory as the rest of the file looks like garbage:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
[ 45]: 00 fe eb 03 b8 ff ff 1f c9 ca 08 00&lt;br /&gt;
[ 46]: 00 08 00 00 1e b8 88 3c 8e d8 c4 00&lt;br /&gt;
[ 47]: 00 ff 46 06 26 8a 07 c4 5e 0a ff 00&lt;br /&gt;
[ 48]: 00 26 88 07 0a c0 75 ea 8b 46 fc 00&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save for two fields (alien type and the &#039;transferring&#039; flag), which are both 0.  The original XCOM fields are cleaner, the unused ones are largely zero, save ones where an alien was researched, which definitely clears the first byte (but not the second one indicating rank)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s one from the original game, no transfers, although some have been researched:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
[ 0] Alien: Floater(Medic)           Base: 0 Extra:  00 28 10 14 00 00 00 00 00&lt;br /&gt;
[ 1] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 2] Alien: Muton(Navigator)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
(unused)&lt;br /&gt;
[ 4] Alien: Floater(Engineer)        Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 5] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
(unused)&lt;br /&gt;
(unused)&lt;br /&gt;
[ 8] Alien: Floater(Soldier)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 9] Alien: Floater(Soldier)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[10] Alien: Floater(Engineer)        Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[11] Alien: Sectoid(Navigator)       Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[12] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[13] Alien: Floater(Navigator)       Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[14] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[15] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[16] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[17] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[18] Alien: Sectoid(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Most of those unknown fields are 0 in the original, although that 00 28 xx 14 pattern on the first record looks familiar from the first record of TFTD&#039;s file.&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
If that is garbage, is it possible that it&#039;s being pulled out of a &amp;quot;template&amp;quot; file in the executable from an incorrect address?&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
When the game runs, it assigns structs and arrays to certain positions in memory, but doesn&#039;t bother to clear the previous contents (at least, the DOS versions of the games certainly don&#039;t, though I think CE might). &amp;quot;Uninitialised bytes&amp;quot; always have a flag somewhere that indicates whether you&#039;re supposed to pay attention to them or not, but the games don&#039;t care about these flags when saving/loading - they just grab whatever&#039;s there and copy it byte for byte.&lt;br /&gt;
&lt;br /&gt;
Hence if a certain area of assigned memory space never actually gets used, then yes, you&#039;ll get garbage data. This might belong to previous save games, or even entirely different applications - for eg, running DOS UFO under Windows 9x would often result in registery extracts, web history, etc getting embedded in your saves. A common place you can find such garbage data is in the padding space of fixed length null-terminated strings (eg soldier names).&lt;br /&gt;
&lt;br /&gt;
Another point, even the CE versions of the games don&#039;t clean the previous save game files before writing to them. If you save in a slot that&#039;s been saved in before without manually deleting the previous save files first, then you WILL see data from multiple save games in the same files. A good example of this is [[MAP.DAT]]. - [[User:Bomb Bloke|Bomb Bloke]] 21:46, 17 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
That sounds like it&#039;s allocating from the heap -- given all of the fixed size structures in the game ( ASTORE[50] this, BASE[8] that, OBPOS[160] here, SOLDIER[250] there) I have been assuming up until now that these are static allocations, out of the BSS or Data areas, which are always initialized at runtime (BSS to zero, data to whatever you specified in the source).  Generally it&#039;s best practice to statically allocate static structures (as implied by the name) as it reduces the risk of pointer screw-ups and reduces memory fragmentation and malloc&#039;s overhead.&lt;br /&gt;
&lt;br /&gt;
If it&#039;s coming from the heap though, they should have been less stingy with the maximums.. &#039;specially on ASTORE, OBPOS, and such.  I mean, the whole advantage of the heap is that it&#039;s NOT static.. :S&lt;br /&gt;
&lt;br /&gt;
However, this wouldn&#039;t be the first time that I&#039;ve seen less-than-optimal coding...  &lt;br /&gt;
&lt;br /&gt;
It would also have been nice if they had cleared the old junk out before saving (I noticed soldier.dat is like that: &amp;quot;Rene Buchard\0ski\0\0\0...&amp;quot;) as it would make savegames compress better, for those with that doublespace thingy, or those of us zipping up savegames.  The overhead from calloc and memset isn&#039;t quite so bad if it&#039;s handled intelligently.  For example, they&#039;d only have to do that once on startup for the entire soldier.dat array, and then just on an individual soldier marked as deceased at the time that they&#039;re removed from the game..&lt;br /&gt;
&lt;br /&gt;
Hey, do you think they&#039;ll ever release the source on EU/TFTD?  That never hurt any of the other companies that did it on legacy products (Homeworld, Quake, etc)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:ASTORE.DAT&amp;diff=29217</id>
		<title>Talk:ASTORE.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:ASTORE.DAT&amp;diff=29217"/>
		<updated>2010-08-17T14:16:04Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: TFTD astore.dat&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just two observations I had while running a test on this file. &lt;br /&gt;
&lt;br /&gt;
* While aliens are in transit, the game will stop you from removing the living quarters at the destination (assuming you&#039;re in a situation where you want to get rid of all your living quarters) even though all X-Com staff have vacated the base. &lt;br /&gt;
* A base that is dismantled (while aliens are still in transit) all the way down to the ground will not cause the aliens stored in astore.dat to be deleted. If the base is later rebuilt, the aliens will still be present. &lt;br /&gt;
**This was with deconstruction of the base. Must test again with base destruction. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
== Windows version different ==&lt;br /&gt;
&lt;br /&gt;
In the Windows version of the game, the structure of AStore.dat seems to be different.  The file is a fixed size of 3600 bytes, and at a quick inspection, the format does not appear to match what&#039;s posted on the main page.  I&#039;ll post more once I know it. --[[User:RobinHood70|RobinHood70]] 14:56, 24 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== TFTD astore.dat ==&lt;br /&gt;
&lt;br /&gt;
The TFTD version of astore.dat (this is from an older version that only makes the 600 byte file) seems to have a lot of extra data in it.&lt;br /&gt;
&lt;br /&gt;
From one of my TFTD games:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
[ 0] Alien: Aquatoid(Squad Leader)   Base: 0 Extra:  00 28 00 14 00 00 00 00 00&lt;br /&gt;
[ 1] Alien: Aquatoid(Soldier)        Base: 0 Extra:  51 53 fc 8b 5e 10 c4 7e 00&lt;br /&gt;
[ 2] Alien: Aquatoid(Medic)          Base: 0 Extra:  7e 0b c5 76 0a 8b 4e 0e 00&lt;br /&gt;
[ 3] Alien: Aquatoid(Medic)          Base: 0 Extra:  f0 5b 59 5f 5e 1f 07 c9 00&lt;br /&gt;
[ 4] Alien: Gill Man(Commander)      Base: 0 Extra:  c0 66 0f b7 db 66 0f b7 00&lt;br /&gt;
[ 5] Alien: Gill Man(Technician)     Base: 0 Extra:  d2 66 0f b7 ff 66 0f b7 00&lt;br /&gt;
[ 6] Alien: Gill Man(Soldier)        Base: 0 Extra:  00 00 66 0f b7 46 06 0b 00&lt;br /&gt;
[ 7] Alien: Gill Man(Soldier)        Base: 0 Extra:  db 66 0f 02 c0 eb 00 66 00&lt;br /&gt;
[ 8] Alien: Gill Man(Squad Leader)   Base: 0 Extra:  ea 10 c9 cb c8 00 00 00 00&lt;br /&gt;
[ 9] Alien: Aquatoid(Medic)          Base: 0 Extra:  06 0b c0 74 06 66 0f 03 00&lt;br /&gt;
[10] Alien: Deep One(Terrorist)      Base: 0 Extra:  8b d0 66 c1 ea 10 c9 cb 00&lt;br /&gt;
[11] Alien: Deep One(Terrorist)      Base: 0 Extra:  00 1e b8 88 3c 8e d8 c7 00&lt;br /&gt;
[12] Alien: Deep One(Terrorist)      Base: 0 Extra:  8b 46 0a 89 46 ea 8b 46 00&lt;br /&gt;
[13] Alien: Gill Man(Squad Leader)   Base: 0 Extra:  8a 46 06 b4 3d 89 46 fe 00&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Extra&amp;quot; field is showing the bytes past the first three (type, rank, base) known fields.  None of these aliens are, or have ever been, transferred.&lt;br /&gt;
&lt;br /&gt;
The last field is generally 0, and I understand that one turns to 0xFF during transfers.&lt;br /&gt;
&lt;br /&gt;
Could the extra data have something to do with location of capture or such?  Or date and time?  Or is it just random uninitialized garbage?&lt;br /&gt;
&lt;br /&gt;
I&#039;m almost suspecting the &amp;quot;random unitialized garbage&amp;quot; theory as the rest of the file looks like garbage:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
[ 45]: 00 fe eb 03 b8 ff ff 1f c9 ca 08 00&lt;br /&gt;
[ 46]: 00 08 00 00 1e b8 88 3c 8e d8 c4 00&lt;br /&gt;
[ 47]: 00 ff 46 06 26 8a 07 c4 5e 0a ff 00&lt;br /&gt;
[ 48]: 00 26 88 07 0a c0 75 ea 8b 46 fc 00&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save for two fields (alien type and the &#039;transferring&#039; flag), which are both 0.  The original XCOM fields are cleaner, the unused ones are largely zero, save ones where an alien was researched, which definitely clears the first byte (but not the second one indicating rank)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s one from the original game, no transfers, although some have been researched:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
[ 0] Alien: Floater(Medic)           Base: 0 Extra:  00 28 10 14 00 00 00 00 00&lt;br /&gt;
[ 1] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 2] Alien: Muton(Navigator)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
(unused)&lt;br /&gt;
[ 4] Alien: Floater(Engineer)        Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 5] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
(unused)&lt;br /&gt;
(unused)&lt;br /&gt;
[ 8] Alien: Floater(Soldier)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[ 9] Alien: Floater(Soldier)         Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[10] Alien: Floater(Engineer)        Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[11] Alien: Sectoid(Navigator)       Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[12] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[13] Alien: Floater(Navigator)       Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[14] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[15] Alien: Floater(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[16] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[17] Alien: Sectoid(Leader)          Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
[18] Alien: Sectoid(Medic)           Base: 0 Extra:  00 00 00 00 00 00 00 00 00&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Most of those unknown fields are 0 in the original, although that 00 28 xx 14 pattern on the first record looks familiar from the first record of TFTD&#039;s file.&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
If that is garbage, is it possible that it&#039;s being pulled out of a &amp;quot;template&amp;quot; file in the executable from an incorrect address?&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:Manufacturing_Profitability&amp;diff=29188</id>
		<title>Talk:Manufacturing Profitability</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:Manufacturing_Profitability&amp;diff=29188"/>
		<updated>2010-08-16T11:52:26Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Salary / Hourly */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dumas, re: your point about Alien Alloys being plentiful - That section about LCs versus FBLs addresses a common early misperception. In actuality, both LCs and FBLs make the same amount of profit each ($18k), &#039;&#039;&#039;&#039;&#039;but&#039;&#039;&#039;&#039;&#039; you can make ~33% more LCs per month with a given number of engineers. In other words, LCs are 33% more profitable than FBLs, period.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Unless&#039;&#039; you want to make your FBLs one at a time, so that they don&#039;t need AAs. Then, they&#039;re just barely (2%) more profitable than LCs. (If you play with the spreadsheet, this is clear.)&lt;br /&gt;
&lt;br /&gt;
So it doesn&#039;t really have anything to do with AAs. LCs are a far better deal than FBLs, &#039;&#039;unless&#039;&#039; you want to hassle with making FBLs one at a time. Either way, you never needed a single AA. (And if you&#039;ve got a big surplus of AAs, then just sell&#039;em! smile)&lt;br /&gt;
&lt;br /&gt;
Let me know if I&#039;m missing something - [[User:MikeTheRed|MikeTheRed]] 18:41, 9 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I see. So that&#039;s what the AA thing means. It&#039;s not explained very clearly. I&#039;ll fix that.--[[User:Dumas|Dumas]] 04:58, 10 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
Hmm, we go straight from Workshop to Manufacturing Profitability - there really should be a Manufacturing topic around that sits between them I think, to cover all the basics and key points. Might start it myself in next few days if no-one else does.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 18:36, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Oh and of course, another note is that the values for maintenance on Living Quarters and Workshops being fed into the equations are wrong, but you cant tell what they are going to cost unless you know what row of the base they are built on. Could make the numbers a little fuzzy (not likely to make a big difference, as the average cost is just over 17, so that would probably make these two items a little cheaper than the 22.5 currently assigned to them.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 18:40, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Huh, good point. I only just learned about that maintenance glitch today. For the time being, I&#039;ll stick in a note that those numbers are probably slightly high. For that matter, the maintenance glitch page could probably use a few notes about how much the other costs of 1) facilities in general are (e.g. for likely base configs - average cost per building as per UFOpaedia vs. actual average cost as per bug), and 2) other costs of the game in general. IOW I suspect that maintenance costs are a small part of a serious X-COM operation, relative to country funding, loot, and manufacturing profit. Which, if true, would lead to a wrap-up statement re: the maintenance bug of something like, &amp;quot;as can be seen, maint. costs are only a few percent of likely revenue and expenses; all in all, this base placement bug doesn&#039;t impact much, and can easily be totally ignored, if you like&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Edit: This could also go on that page dedicated to the bug. Maybe that&#039;s a better place for a longer explanation/analysis, and the Bugs page would just have that wrap-up sentence.&lt;br /&gt;
&lt;br /&gt;
- [[User:MikeTheRed|MikeTheRed]] 19:15, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Yeah, thats along the same lines as I was thinking when I created the new page, try to avoid any bugs in that section from getting too large, if they have a lot of related detail it should be linked too, so that the bugs list is as concise as possible, most people are going to want to make sure they arent falling foul of any serious issue due to their play style and little more, if they want more information they can drill down to the dedicated topics related to it.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 21:02, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
[[Image:MTR-FirstBase.png|thumb|left|100px|MTR - first base]][[Image:MTR-SecondLine.png|thumb|right|100px|MTR - 2nd &amp;amp; 3rd base]] Works for me. It brings up an interesting question - what kinds of bases do people make? (Which would affect the average facility cost, depending on where they put facilities.) For newbies, the average cost is probably the best guess. But for vet players like us wiki folks, we probably all have our own styles. I make research at my first base in Europe, and fudge around the original Access Lift relative to base attacks. My first base has a crack squad, as do two more that look like the second inset. Then as you can see from the tiny base outlines, I have several more that are hangars up top and psi labs/LQ below, then a few more that are just LQ and hangars, for screening [[Hiring/firing#General_Information|large recruit batches]]. (Good&#039;uns are sent to the psi bases.) Manufacturing is light in 1st, heavy in 2nd, and 3rd depends how greedy I am. They all have a Stores or two, of course. And it&#039;s prior to knowing about the Maintenance Bug, naturally. (FWIW, my game date there is August 1999.)&lt;br /&gt;
&lt;br /&gt;
Just some ideas about how bases might be. I&#039;m sure the rest of you have your own styles. Heck it might be fun to make an informal area where folks show their current base layouts. - [[User:MikeTheRed|MikeTheRed]] 21:30, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
==Non integer math?==&lt;br /&gt;
:&#039;&#039;Those who know XCOM, know that it suffers from integer truncation in a number of places. This could&#039;ve hurt profitability badly if it occurred there; for example, if an item needs 100 engineer hours but you only assign 99, it might&#039;ve taken twice as long, and halved your production and profit potential. Fortunately, this is not the case with manufacturing; it does not truncate production time this way.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I would be surprised if it was storing progress as any sort of non integer value. What it likely does is treat the entire batch as one unit, creating at the end of the hour as it knocks them off - so it saves an integral number of hours of progress against the next item in the list.&lt;br /&gt;
&lt;br /&gt;
To explain with your example, but run a batch of 10 of them:&lt;br /&gt;
&lt;br /&gt;
1st hour - 99 production, not to 100, no output&lt;br /&gt;
2nd hour - 99 stored + 99 production = 198 done, take off 100 to make one unit to leave 98 stored for next hour&lt;br /&gt;
3rd hour - 98 + 99 = 197, make one store 97.&lt;br /&gt;
&lt;br /&gt;
What this essentially means is that on short projects you would want to run them in batches to minimise wastage, or with a number of engineers that divides into the unit production time with no remainder if you want to build single units at a time (whyever would you want to do that? ...)&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 13:33, 2 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Obviously it could as easily store 10 x 100 = 1000 as the hours for the entire project to complete, and produce each time it drops by 100, whichever way (I think mine is more likely because then adding/removing units in the production screen doesnt require it to recalculate the hours left for the entire project each time, but BPROD.DAT or whatever could probably easily be tested to find which it is.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 13:35, 2 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Hiya Sfn; back from some time spent on things at work -&lt;br /&gt;
&lt;br /&gt;
What you say makes plenty of sense. I too was surprised to think they might&#039;ve used floating point here; your thought didn&#039;t occur to me at that time, but a simple carry-over makes perfect sense. In support of what you say, I did not test vs. the production time of individual items; I only tested total production vs. longer amounts of time. Shouldn&#039;t take long to try 99 scientists vs. a 100 hour item. But in the long run, it doesn&#039;t matter - there&#039;s no truncation. - [[User:MikeTheRed|MikeTheRed]] 18:46, 9 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== A free market in armaments ==&lt;br /&gt;
&lt;br /&gt;
Hi I&#039;m back... Some thoughts I would like to post but I&#039;m not sure where to put them:&lt;br /&gt;
&lt;br /&gt;
I was getting VERY bored of manufacturing things just to get money and it occurred to me that there might be a wider economy in the world outside XCom with an industrial base that could do some of the grunt work for me, more efficiently. &lt;br /&gt;
&lt;br /&gt;
What I would like to do is just provide the Elirium and Alien Alloys to an industrial concern and let them handle all the dull logistics&lt;br /&gt;
&lt;br /&gt;
The effect of this is that the  &amp;quot;market clearing&amp;quot; price of Elerium should be about $15K and Alloys about $25K. Rather than producing a PsiAmp for sale to convert 1 Elirium into $15K profit (net of all costs), or building an FBL in order to convert 1 AA into net $25K... just correct the market price of AA and E115 to reflect the potential profits that can be made by some other industrial organisation.&lt;br /&gt;
&lt;br /&gt;
Let&#039;s assume as a simplification that these external industrial organisations have better economy of scale than XCom (factories are large scale, near transport hubs and not hidden beneath volcanic islands with false sliding craters over the Interceptor pads). Assume that this improved economy of scale allows the arms companies to cover their capital costs and still make a profit on PsiAmp &amp;amp; FBL production despite paying what would be (for XCom) the break-even price for the required exotic materials.&lt;br /&gt;
&lt;br /&gt;
Interestingly even at a resale price of $25K it&#039;s still not worth manufacturing AAs for profit.  &lt;br /&gt;
&lt;br /&gt;
In game terms what I do is, once I have the necessary technology, I just sell off the alloys/elirium and use a money editor to give myself the extra cash from the &amp;quot;higher&amp;quot; price. &lt;br /&gt;
&lt;br /&gt;
Possibly this could be an XComUtil mod that actually hacks the game data files to change the sale price of AA and E115 after each money-making technology is researched. &lt;br /&gt;
&lt;br /&gt;
If anyone is interested in this idea I could work up a full table of increases in the market value of AA and Elirium with each technology advance. For now I have just calculated the maximum values, based on having PsiAmp (E115) and FBL (AA) technology.&lt;br /&gt;
&lt;br /&gt;
In theory if there was a high resale value for craft, this could also push up the market price for UFO Navigation and UFO Power Source. &lt;br /&gt;
&lt;br /&gt;
Another indulgence that I might allow myself (using a game editor) is to assume that I can buy items (anything from Medkits to Avengers)from these external industrial concerns. I would have to pay the full price (from the manufacturing spreadsheet attached to this article), plus the same buy/sell spread used for conventional items. I guess the normal delivery times could be used - or maybe 2x normal. &lt;br /&gt;
&lt;br /&gt;
This would require using a base editor to simulate these purchases. Or again an XcomUtil-like 3rd party program could act as the &amp;quot;Arms Merchant&amp;quot;, selling and delivering equipment. &lt;br /&gt;
 &lt;br /&gt;
The last scenario for those like me who get bored by manufacturing logistics is: technology licencing (royalties). This means just letting some other organisation produce the Motion Sensors and Laser Cannon, under licence from XCom Holdings Inc. As there seems to be infinite and price-inelastic demand for these products it would be a great and mutually profitable partnership. :)&lt;br /&gt;
&lt;br /&gt;
As infinite income is a bit unbalancing, some kind of compromise is needed. Maybe, when the technology is researched, total monthly Funding is increased by the amount shown as the monthly net gain in the spreadsheet. This would be spread across all funding countries.&lt;br /&gt;
&lt;br /&gt;
:Interesting idea.  But in all honesty, it&#039;s not like money is particularly hard to come by if you&#039;re doing halfway decently.  By about June, almost every alien you wax is worth 142 grand, minimum; 20K for the corpse and a 122K for the extra Heavy Plasma, when you&#039;re already drowning in them.  Then you&#039;ve got spare clips, alien alloys, UFO Power Sources, UFO Navigations, grenades...even Elerium.  I can, in a regular game, easily build a fleet of 30 avengers without breaking the bank so long as I have a halfway decent Laser Cannon operation going on somewhere and enough recovery missions to bring in raw materials. [[User:Arrow Quivershaft|Arrow Quivershaft]] 17:28, 24 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
==XComUtil Manufacturing Profitability Discussion==&lt;br /&gt;
&lt;br /&gt;
For some reason the [[XcomUtil]] &amp;quot;new laser weapons&amp;quot; manufacturing option only affects beam weapons. It does not make the manufacture of Fusion explosives and projectiles any harder, so the FBL economics are unaffected. Hovertank/Launchers, Blaster Bombs &amp;amp; Launchers, and Alien Grenades are also unaffected (but were never very profitable). The Hovertank/Plasma is redesignated (in name at least) a Hovertank/LaserCannon, in effect saying that the only Plasma weapon that can be produced is the craft Plasma Beam, and that with great difficulty. &lt;br /&gt;
&lt;br /&gt;
Arguably to handicap the plasma weapons so much, but not to in any way handicap the alien launched / explosive / fusion weapons, seems to create an anomaly in the progression of X-COM firepower, rather than the presumed intent of making the game harder overall. Instead the midphase of the game is harder but the endphase is pretty much the same. &lt;br /&gt;
&lt;br /&gt;
It appears that XComUtil prohibits the production of alien plasma small arms in a rather clumsy way, by increasing the workshop requirements to an extreme level in [[PRODUCT.DAT]]. We now know the location of the flag set to indicate if an item is manufacturable, so that could be used instead by a (hypothetical) update to XComUtil.&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 15:15, 13 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Bored Industrialist ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AQ, agreed the lion&#039;s share of cash comes from wasting aliens. For me this is more about what to do in the dry periods when intercepts are scarce (a whole other topic there). &lt;br /&gt;
&lt;br /&gt;
Because I use the XcomUtil setting to make manufacturing profitability a lot harder I don&#039;t have the Laser Cannon factory option to boost my base level of funding/profit. &lt;br /&gt;
&lt;br /&gt;
I guess for me the real solution is how to increase my number of recovery missions since I prefer that part of the gameplay. &lt;br /&gt;
&lt;br /&gt;
30 Avengers though by June? That is impressive. On Superhuman? Apart from money time and parts to build them I wonder where you get the Elirium to keep them all flying. [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
:I didn&#039;t catch that you had used the modified laser weapons; my bad.  I said nothing about the rate at which I could put 30 Avengers together.  Usually it takes me about a year of game time to get the fleet well underway(I could launch Cydonia at any time, but where&#039;s the fun in THAT?! ;) )  Also, since I&#039;ve only been playing for a bit over a year myself, I don&#039;t play on Superhuman often.  The aliens still have this nasty tendency to kick me around like a soccer ball if I do.  :( [[User:Arrow Quivershaft|Arrow Quivershaft]] 05:21, 25 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
One good way to ensure frequent battles is to milk supply ships off alien bases. Even one alien base will keep you well supplied for the rest of the game. &lt;br /&gt;
&lt;br /&gt;
If you don&#039;t choose to use that strategy (some find the regularity of the supply ship unnatural - although you still have to risk life and limb in a real battle to win the loot), there should still be enough from the first couple of missions to get you off the ground if you spend your money wisely - not counting a production business. &lt;br /&gt;
&lt;br /&gt;
Also, Superhuman actually nets you more profit from loot sales. There&#039;ll be many more aliens in a battle, and the UFO activity tends to be a bit more aggressive. That&#039;s where the higher difficulty pays off - pun and all. - [[User:NKF|NKF]] 20:50, 25 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
Yes good point about Superhuman - higher risk brings higher reward which is a good thing. &lt;br /&gt;
&lt;br /&gt;
I do need to figure out how to milk supply ships, or some other method to boost my plunder rate. I guess I need to stop indiscriminately crashing all the UFOs - learn to recognise the base-building missions and let the aliens get on with it?  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(By the way sorry that I keep adding sections. The edit window in the mobile phone browser I am using isn&#039;t big enough to safely edit the whole page. Don&#039;t want to mess the page up!) [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
:Generally, base-building missions consist of 2 Battleships and a Supply Ship or two, and maybe a few others.  They&#039;ll all show up at about the same time in the same area(of course, if you&#039;re using Radar, you may not detect them all...if you&#039;re using a Hyper Wave Decoder, you should already know its a base mission.) Once the base is built, Supply Ships will be dispatched randomly to service it(Supply Ships on Supply missions are always launched at 00:30.)  Make sure the base is in Africa or Western Asia so you get to raid the aliens during the day.! [[User:Arrow Quivershaft|Arrow Quivershaft]] 14:13, 26 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
== Thanks, Article ==&lt;br /&gt;
&lt;br /&gt;
I just feel like expressing the usefulness of this article.  I&#039;m currently constructing a new Workshop (on top of a couple others); I have more than enough Living Quarters to support the 50 Engineers I plan on getting.  But the Workshop is scheduled to be completed about 10 days before the month&#039;s end.  With some quick calculations I found that 50 Engineers working for 10 days on Laser Cannons wouldn&#039;t produce as much profit as their net salaries!  So those guys will just have to wait an extra 11 or so days to get jobs, hurting the global economy (tear).  [[User:NightChime|NightChime]] 21:01, 26 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
:Hire them on the 2nd or 3rd last day of the month.  It takes 72 hours for personnel, (whether soldier, engineer, or scientist) to arrive at a base.  (They&#039;re probably doing a background check.)  Salaried staff in transit when the month changes [[ExploitsA#Free_Wages|don&#039;t get paid]].  Assuming your month has 30 days, if you hire them at 01:00 on the 28th, the 29th and 30th will tick by, and they&#039;ll arrive at 01:00 on the 1st of the next month, meaning you can put them right to work!   (While this &#039;feature&#039; is listed on exploits and I consider it to be such if you&#039;re needlessly shuffling personnel around just before the end of the month, I consider it fair game if you hire them right at the end of the month.)  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:55, 26 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Salary / Hourly ==&lt;br /&gt;
&lt;br /&gt;
Just a quick note here- &lt;br /&gt;
&lt;br /&gt;
The figure given for a salary is $35/hour.&lt;br /&gt;
&lt;br /&gt;
Doesn&#039;t that depend more on the month in question?&lt;br /&gt;
&lt;br /&gt;
Enemy Unknown treats 1999 as a standard, non-leap year, so the hourly wage of an engineer should be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
(month - hourly wage)&lt;br /&gt;
1 - 33.602/hour (744 hours)&lt;br /&gt;
2 - 37.202/hour (672 hours)&lt;br /&gt;
3 - 33.602/hour (744 hours)&lt;br /&gt;
4 - 34.722/hour (720 hours)&lt;br /&gt;
5 - 33.602/hour (744 hours)&lt;br /&gt;
6 - 34.722/hour (720 hours)&lt;br /&gt;
7 - 33.602/hour (744 hours)&lt;br /&gt;
8 - 33.602/hour (744 hours)&lt;br /&gt;
9 - 34.722/hour (720 hours)&lt;br /&gt;
10 - 33.602/hour (744 hours)&lt;br /&gt;
11 - 34.722/hour (720 hours)&lt;br /&gt;
12 - 33.602/hour (744 hours)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The average salary over the year breaks down to $34.247/hour but will vary considerably in any given month.&lt;br /&gt;
&lt;br /&gt;
Manufacturers-for-profit will have to watch out for February especially.&lt;br /&gt;
&lt;br /&gt;
[[User:Renegrade|Renegrade]] 18:23, 7 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Yeah you&#039;re right bro. As you see in the spreadsheet I made, I just used 30.5 days per month. I didn&#039;t look closer at exactly what the game is doing. Good catch! And great to hear from you.&lt;br /&gt;
:We have to use the resources of earth as wisely as possible if we are to live through this threat to our existence.&lt;br /&gt;
:: -[[User:MikeTheRed|MikeTheRed]] 23:21, 7 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
::: No problemo! BTW, Saving the Earth is rather expensive, and the governments are being kinda cheap!  Also, these Engineers are making 300K/year...where can I sign up? ~ [[User:Renegrade|Renegrade]] 07:52, 16 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:OBPOS.DAT&amp;diff=29187</id>
		<title>Talk:OBPOS.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:OBPOS.DAT&amp;diff=29187"/>
		<updated>2010-08-16T11:46:17Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Record offsets 6 and 7 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My version of TFTD (Collector&#039;s Edition) has a file size of 3360 bytes. At 16 bytes per record, that comes to 210 records. I guess the programmers increased the size of this file a bit from the DOS version which only has 200 records of 16 bytes for a total file size of 3200 bytes. --[[User:Zombie|Zombie]] 22:39, 30 December 2009 (EST)&lt;br /&gt;
:Worrying! Is it possible to check if the extra entries are used or not? It&#039;s possible they are just padding.  [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
== Record offsets 6 and 7 ==&lt;br /&gt;
&lt;br /&gt;
The record offsets at 6/7 are showing as this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;6/06&amp;lt;/b&amp;gt;: Object the current item is loaded into. -1/255 by default for no item. (Uses obpos item index - first object in obpos is 0).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;7/07&amp;lt;/b&amp;gt;: -1/255 by default, otherwise 0 if the item is loaded into something.&lt;br /&gt;
&lt;br /&gt;
It would seem likely to me, based on that, and examining the file myself, that 6 and 7 form a 16-bit value (uint16_t or int16_t), with 0xFFFF being &#039;not loaded&#039; and the full 16-bit value being what it&#039;s loaded into.  It&#039;s possible at the time that field was defined that they expected more than 255 items in the file.  Note that 170/200 is getting close to the limit, and no other field here appears to be related to offsets in this file.  I&#039;m surprised even that they skimped on these filesizes -- putting 400 records in here would only add 3200 bytes to the memory/disk load.  Note too that address 6 is word-aligned.&lt;br /&gt;
&lt;br /&gt;
Also, I don&#039;t find it that odd that they don&#039;t update the physical position of an item that&#039;s being carried.  Updating a carried item&#039;s position would increase the overhead significantly for little gain, as the position can be easily calculated when needed from the location of the unit carrying it.  (ex, if the unit drops it in any way, simply update the field there and then.  The border between carried and dropped should be fairly well defined) ~ [[User:Renegrade|Renegrade]]&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=29186</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=29186"/>
		<updated>2010-08-16T11:45:12Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Difficulty patch information wrong? */&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;
TFDT-CE(CRC32:C2F6C035): 0x0008AE00..0x0008B00F.&amp;lt;br&amp;gt;&lt;br /&gt;
use: rivers instead of country borders.&amp;lt;br&amp;gt;&lt;br /&gt;
data: lon,lat,lon,lat.. streams, Flags: lon = -1(NewLine), lon = -2(EndOfSection).&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;
TFDT-CE(CRC32:C2F6C035): 0x0008B010..0x0008B06F. ((16*2)*3:lon,lat,Nid)&lt;br /&gt;
&lt;br /&gt;
===Craft type data===&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
  craftsData &lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0 &#039;&#039;Skyranger&#039;&#039;&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 &#039;&#039;Lightning&#039;&#039;&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 &#039;&#039;Avenger&#039;&#039;&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 &#039;&#039;Interceptor&#039;&#039;&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 &#039;&#039;Firestorm&#039;&#039;&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 &#039;&#039;Small Scout (VS)&#039;&#039;&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 &#039;&#039;Medium Scout (S)&#039;&#039;&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 &#039;&#039;Large Scout (S)&#039;&#039;&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 &#039;&#039;Abductor (M)&#039;&#039;&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 &#039;&#039;Harvester (M)&#039;&#039;&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 &#039;&#039;Terror Ship (L)&#039;&#039;&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 &#039;&#039;Battleship (VL&#039;&#039;)&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 &#039;&#039;Supply Ship (L)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Craft type known fields: (14 x 2-byte dwords per record)&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 ? &#039;&#039;always 2 for UFOs. is this used for UFOs? how?&#039;&#039;&lt;br /&gt;
 00000006 maxSpeed dw ?  &#039;&#039;in knots&#039;&#039;                 ; 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;
          &#039;&#039;5 - Very Small / 4 - Small (inc. XCom) / 3 - Medium / 2 - Large / 1 - Very Large -spike&#039;&#039;&lt;br /&gt;
 00000010 ufoReload dw ? &lt;br /&gt;
          &#039;&#039;UFO only. Firing interval. Values: 56=S/MSct 48=LSct/Abd 32=Harv 24=Suppl/Terr/BS. -spike&#039;&#039;&lt;br /&gt;
 00000012 ufoUnknown dw ?  &lt;br /&gt;
          &#039;&#039;Unknown. Score related? SS=200 MS=250 LS=300 A=500 H=500 TS=2000 BS=4000 SS=3000 -spike&#039;&#039;&lt;br /&gt;
 00000014 ufoRange dw ?  &#039;&#039;alien weapon distance in km*8 -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000016 ufoPower dw ?  &#039;&#039;alien weapon damage -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000018 TroopSpace dw ? &#039;&#039;Troop capacity &#039;&#039;&lt;br /&gt;
 0000001A HWPSpace dw ? &#039;&#039;HWP capacity -spike&#039;&#039;&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
While the 9th [dword] could be UFO weapon Accuracy or even rate of fire, it seems unlikely. All the values are a multiple of 8 just like distance, so it may be related to that. That&#039;s my guess. I&#039;m sure someone like Seb would know more. --[[User:Zombie|Zombie]] 23:56, 4 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Sorry I didn&#039;t sign those theory guesses, I will do so now. Actually, evidence is building up that the byte at 0x10 within structCraftData is an inverse co-factor - i.e. a divisor - of the net total damage output of UFO attacks. In other words, it could well be a firing interval value such as is seen for XCom craft weapons. I have done 3-4 sets of ten tests so far (XCom craft survival-time tests, deducing UFO damage output). 1 set was for Medium Scout vs Interceptor, 2 sets were for Terror Ship vs Avenger. (I also did multiple attacker sets but those are harder to compare directly to this scenario). So far all 3 test sets are a &amp;lt;i&amp;gt;reasonably&amp;lt;/i&amp;gt; good fit for this formula:&lt;br /&gt;
&lt;br /&gt;
 UFO net damage output = &lt;br /&gt;
 &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt;Weapon power x 75% &#039;&#039;(avg of randomisation)&#039;&#039; x 2/3 &#039;&#039;(accuracy)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt; &lt;br /&gt;
  x &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt; time &#039;&#039;(in game seconds)&#039;&#039; / 0x10 offset &#039;&#039;(firing interval)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: What I want to do next is take one or both of those test scenarios, hack the 0x10 offset up or down, and see if the observed damage output varies inversely. If so, I think that will be pretty strong evidence. Even in my data, there is definitely still also some variation going on that is not fully accounted for in the formula above. As you say it is interesting the 0x10 values are all multiples of 8, suggesting distances. I will keep testing and see what I come up with! Cheers, [[User:Spike|Spike]] 06:39, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
I&#039;m enclined to agree with the rate of fire theory. A countdown is stored in [[CRAFT.DAT]] at offset 0x26 and when it hits 0, the UFO fires. It is reset for the next shot with this formula:&lt;br /&gt;
 tmp = offset10-2*difficultyLevel&lt;br /&gt;
 nextShot = RAND(0,tmp)+tmp&lt;br /&gt;
&lt;br /&gt;
Edit: Although the attack type does not appear here, I suspect that while a missile is &amp;quot;traveling&amp;quot;, the countdown is not changed. As a result, closer ranges means higher rates of fire. [[User:Seb76|Seb76]] 07:36, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Excellent timing Seb! I was just about to start my tests. I could&#039;ve coped with the random element, since I&#039;m only measuring averages over time, but the presence of a 2nd factor (difficultyLevel), I was not expecting. It would have completely thrown my numbers. Also I might&#039;ve crashed the game since I&#039;d set offset10 to 0x08 on difficulty level Superhuman (=5?), creating a negative rate of fire! For simplicity I might do my tests on Beginner from now on, and repeat the earlier tests on Beginner. &lt;br /&gt;
&lt;br /&gt;
:It&#039;s interesting that you don&#039;t see any reference to Attack Mode. So the changing rate of fire could indeed be a &amp;quot;Space Invaders Effect&amp;quot; as you say. Perhaps the reason this is not seen for cannon fire is that cannon fire is resolved instantly, whereas missiles are plotted as objects on the map? Is there any indication that missiles and cannon are handled differently by these routines? &lt;br /&gt;
&lt;br /&gt;
:My test scenarios are probably too simplistic at the moment. But, I am sure I am seeing different rates of fire for missiles at the same range, dependent on whether they are in Standard or Cautious attack mode. I will recheck this. [[User:Spike|Spike]] 08:07, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Seb, I realise your formula above for variable firing intervals, from 100%-200% of the base value, explains the 2/3 factor I found which I thought might be UFO Accuracy. The average of a 100-200% range is 1.5, and the inverse of this is 2/3. So perhaps there is no accuracy factor in UFO weapon damage at all. Possibly you just have a base damage and a base firing interval, plus a 50%-100% variation on the base damage and a 100%-200% variation on the firing interval. This would certainly match the data I have so far. &lt;br /&gt;
&lt;br /&gt;
:I have done a couple of tests of varying this offset 0x10 value and they show the right &amp;quot;sign&amp;quot;: increasing this value decreases UFO damage output over time, and decreasing this value increases UFO damage output. The effect is strong, and approximately linear, i.e. halving the value roughly doubles the damage, etc (testing on Superhuman). To quantify it more exactly I need to go back and control for Difficulty Level which I did not expect to be a variable. I&#039;m also going to control for the time taken for the UFO to close into firing range - by increasing the UFO weapon range in the tests to 70 or 75km. &lt;br /&gt;
&lt;br /&gt;
:One thing that is worrying me though is that the firing interval is random. Since I&#039;m using the firing interval of a cannon as my &amp;quot;timer&amp;quot; to measure the duration of all other events, it means I&#039;m measuring with a yardstick that randomly changes size. I have to hope that my sample sizes are large enough that the averages will dominate over the fluctuations.&lt;br /&gt;
&lt;br /&gt;
:More worrying is the idea that rate of fire varies with range (as opposed to with Attack Mode). That would be an elastic yardstick, worse than a random one. I thought I had disproved this but I need to go back and do it again, more carefully. I need to test the same weapon at the same range with different attack modes, again. I may well be guilty of building my hypothesis into my test scenario as an assumption! I will also double check the assumption that hacking the firing interval values for XCom weapons has no effect. I&#039;m pretty sure that, even if the absolute firing interval changes with range, the relative ratios of firing interval when comparing different weapons, does not change. But I&#039;ll double check. &lt;br /&gt;
&lt;br /&gt;
:In the code, do you see any evidence of cannon-type weapons being treated differenly from missile weapons? For example, do cannon rounds not &amp;quot;travel&amp;quot;? Also, do you see the same &#039;&#039;&#039;rnd (0,tmp) + tmp&#039;&#039;&#039; function being applied to the firing interval of XCom air attacks? Regards, [[User:Spike|Spike]] 14:30, 5 July 2009 (EDT)&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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 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===&lt;br /&gt;
 (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;
=== 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;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
In the WinCE version (unpatched) the craft weapon stats start at offset 0x6fb18. Or search for this signature:&lt;br /&gt;
&lt;br /&gt;
 40 02 1e 00 46 00 46 00 01 00 0f 00 06 00 01 00 06 00 &lt;br /&gt;
&lt;br /&gt;
Fields are:&lt;br /&gt;
 Index - Range (km) - Hit% - Damage - ?X? - reload time - ammo cap - ?Y? - ammo type&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Y&lt;br /&gt;
 Stingray  1  1&lt;br /&gt;
 Avalanche 3  1&lt;br /&gt;
 Cannon    8  100&lt;br /&gt;
 FBL       5  1&lt;br /&gt;
 Laser C   10 50&lt;br /&gt;
 Plasma C  12 50 &lt;br /&gt;
 &lt;br /&gt;
I would speculate that value &amp;quot;Y&amp;quot; is the re-arming rate on the ground. I think this data differs slighly from what is stated at [[Rearming]] so it might be worth double checking that. &lt;br /&gt;
&lt;br /&gt;
Value &amp;quot;X&amp;quot; could be a bitmask, an index to a sound effect, or just about anything. It&#039;s possible the lowest bit is a flag that is set for a missile weapon, unset for a cannon-type weapon.&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 19:43, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;reload time&amp;quot; value (as it is called in the in-game UFOPaedia) does not seem to be used by the executable. Instead, hard coded values are used. See [[UFO Interception#Observed Rates of Fire|Observed Rates of Fire]]. [[User:Spike|Spike]] 20:31, 13 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
I checked and the rearming rates in the wiki article are correct, i.e. 100 rds per hour for all Cannon types. Maybe this &amp;quot;Y&amp;quot; data was intended as the rearming rate but is unused? The next step would be to hack the &amp;quot;Y&amp;quot; values and look for any effect. It would also be interesting to hack the low bit of the &amp;quot;X&amp;quot; value and see if that has any effect, such as controlling the missile weapon firing interval behaviour (RoF changes based on attack mode), or sound effect. &lt;br /&gt;
&lt;br /&gt;
Here is X as a bitmask&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Bitmask&lt;br /&gt;
 Stingray  1  00000001&lt;br /&gt;
 Avalanche 3  00000011&lt;br /&gt;
 FBL       5  00000101&lt;br /&gt;
 Cannon    8  00001000&lt;br /&gt;
 Laser C   10 00001010&lt;br /&gt;
 Plasma C  12 00001100 &lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 18:18, 16 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
Actually it looks like the low order 3 bits are just a sequence/ID number (ascending damage?). The next higher bit is launched (0) vs cannon (1).&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Bitmask  Seq Cannon?&lt;br /&gt;
 Cannon    8  00001000 0   1&lt;br /&gt;
 Stingray  1  00000001 1   0&lt;br /&gt;
 Laser C   10 00001010 2   1&lt;br /&gt;
 Avalanche 3  00000011 3   0&lt;br /&gt;
 Plasma C  12 00001100 4   1&lt;br /&gt;
 FBL       5  00000101 5   0&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 19:49, 14 March 2010 (EDT)&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;
&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;
== Difficulty patch information wrong? ==&lt;br /&gt;
&lt;br /&gt;
It appears that the information for patching the difficulty is wrong on this page.&lt;br /&gt;
&lt;br /&gt;
I have what I believe is the US version of XCOM 1.4, and I patched the file as per the data given for 1.4, and yet it still created a 60-byte IGLOB.DAT file.  Further, DOSBOX complained of illegal memory accesses after the patch (which it did not do before).&lt;br /&gt;
&lt;br /&gt;
33ea0819e6888f0450f9a1e5e19dc98b *GEOSCAPE.EXE (binary MD5SUM -- file is 382,957 bytes, created 1995-02-28 @ 10:24 PM)&lt;br /&gt;
&lt;br /&gt;
There actually was a 60 byte (0x3c) at the location given, but I have a feeling it was something other than the size_t in question.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:If you search for: &lt;br /&gt;
&amp;lt;pre&amp;gt;3C 00 00 00 57 2B C9 49&amp;lt;/pre&amp;gt; &lt;br /&gt;
:you will fined the iglob.dat length for all versions of UFO. --[[User:BladeFireLight|BladeFireLight]] 19:45, 16 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Yeah, that was my fault, I just put the same value as was in 1.0.  It&#039;s corrected now.&lt;br /&gt;
[[User:Hatfarm|Hatfarm]] 18:45, 5 June 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I tried that out, it seems to work perfectly.  Thank you both!  FYI; the above is the XCOM package available from &amp;lt;s&amp;gt;GOG.com&amp;lt;/s&amp;gt; Direct2Drive.   [[User:Renegrade|Renegrade]] 20:23, 17 July 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT&amp;diff=29185</id>
		<title>Talk:SOLDIER.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT&amp;diff=29185"/>
		<updated>2010-08-16T11:40:25Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* the NAME field */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Why would Missions and Kills be signed? You&#039;re never going to have negative values. Shouldn&#039;t they be unsigned??&lt;br /&gt;
&lt;br /&gt;
- Danial&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
You would think that, wouldn&#039;t you? At least that&#039;s what I would&#039;ve done in their place. You can&#039;t owe a few kills or missions!  &lt;br /&gt;
&lt;br /&gt;
But if you enter values of 0xFFFF into each, the base screen shows -1. Hence why they&#039;re signed. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Zombie, I&#039;ve changed back your recent change to offset 63, as you&#039;ve been mislead a bit by corrupt data...&lt;br /&gt;
&lt;br /&gt;
The files MAN_A.SPK through to MAN_N.SPK do not exist in a normal install of UFO, I&#039;m afraid, and it was never intended for Soldier.Dat to point to them. They are simply the file names I chose when I coded my [http://www.strategycore.co.uk/files/index.php?dlid=428 custom uniform mod], so that aliens wouldn&#039;t display as troopers in the inventory screens anymore. I later added the same effect to my [http://www.strategycore.co.uk/files/index.php?dlid=470 map editer] as well. This affected the inventory screens and nothing else, by tweaking [[UNITREF.DAT|UnitRef[1]]] - The installation of either of my programs obviously adds the required MAN files to your game (as referring to any MAN file that does not exist causes a crash).&lt;br /&gt;
&lt;br /&gt;
On the other hand, modifying Soldier[63] apparently changes the way the unit appears in the battlescape display, as well as what it turns into when it dies! This means that it is not only used to determine UnitRef[1] when battle begins, but UnitRef[0]/[38] as well, and most likely others...&lt;br /&gt;
&lt;br /&gt;
That is to say, this byte gets set when you give a trooper armor. Armor dictates how a unit appears. However, it also indicates a units defensive values, and what item it will turn into when it dies. You didn&#039;t mention defense in your edit, but I would assume it also gets set to garbage when you fiddle with this offset.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll check this with a byte comparer when I get the time. With any luck, this&#039;ll also show me any remaining UnitRef offsets that are affected by this one. I&#039;ll update the article when I get some results.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 05:41, 6 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
My fault, but problems like these could easily be avoided with a readme file indicating what modifications are made to the game files. Never thought that an editor had modding chunks tossed in. That&#039;ll teach me a lesson.&lt;br /&gt;
&lt;br /&gt;
Changing the armor field in soldier.dat ([63] or [062] or whatever the darn offset is), changes the image sprite in the battlescape without too many problems, but running through your unit list in the equip screen will crash the game if the number here is greater than 3 as there aren&#039;t any MAN.spk images to refer back to. Like you mention, the actual armor attributes are garbage (albeit &#039;&#039;&#039;&#039;&#039;consistent&#039;&#039;&#039;&#039;&#039; garbage as the numbers do not change). Just for giggles I did a couple dry runs with varying values to see what would happen to the death item and armor attributes. This may or may not be useful.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table {{StdCenterTable}}&amp;gt;&lt;br /&gt;
&amp;lt;tr {{StdDescTable_Heading}}&amp;gt;&amp;lt;th&amp;gt;Value&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Unit&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Death Item&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Fr&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Le&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Ri&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Re&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Un&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;4&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectoid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;HP Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;127&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;115&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;116&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;117&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Snakeman&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Plasma Rifle&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;118&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;119&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;120&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;121&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;122&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Ethereal&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;PR Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;124&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;125&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;126&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Muton&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Plasma Pistol&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;16&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Floater&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;PP Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;14&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;9&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Celatid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Blaster Launcher&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;25&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;35&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Silacoid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Blaster Bomb&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;24&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;11&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Chryssalid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Small Launcher&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;12&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Stun Bomb&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;9&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;13&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectopod&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Alien Grenade&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;21&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;14&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Cyberdisc&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Elerium-115?&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Male Civilian&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Variable&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;3&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;16&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Female Civilian&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Psi-Amp&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;52&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;17&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Zombie&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Unknown&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Mind Probe&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;19&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectoid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Snakeman Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;21&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Ethereal Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;22&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Muton Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;23&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Crashes (FLT?)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;24&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Celatid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;25&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Silacoid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;26&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Chryssalid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;27&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper1 Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;28&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper2 Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
I couldn&#039;t find out what item the Cyberdisc &amp;quot;unit&amp;quot; gives up when it dies, as the explosion happens even with Stun Bombs. I assume it&#039;s Elerium-115 as it follows the normal item list. The male civilian is a tough nut to crack also. I saw a death item of a Laser Rifle and a Small Rocket a few times - it&#039;s probably random or semi-random. Still, you can&#039;t stand over the &amp;quot;corpse&amp;quot; and pick up the item as it is invisible in the equip soldier screen. The Zombie is also strange as it cannot be killed by incendiary, most likely a hacked armor value will make the game assume you are wearing a suit of armor greater than Personal and apply the 0% modifier. A value of 23 will crash the game if you try and kill the unit so it&#039;s just an assumption that the death item is a Floater corpse. &lt;br /&gt;
&lt;br /&gt;
I should also mention that some of the invisible units higher up on the list are probably tanks as the sound usually correlates to image. This doesn&#039;t hold for units lower in the list as I heard a movement noise of a Pistol or Rifle shooting rapidly for one of them! Strange stuff, but it can probably all be tied together once we know where the pointers are going.&lt;br /&gt;
&lt;br /&gt;
- Zombie&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
That&#039;s an easy one at least. As you mentioned, they follow the normal [[OBDATA.DAT|item list]] when turning into death items. Simply put, a unit will turn into object X, where X is 31 + Soldier[63]. That is to say, by default, a unit with no armor (value 0) will turn into a normal corpse (31). But if you crank the value up to, say, 19 (an illegal value), you get a sectoid corpse (31 + 19 = object 50). Pointers to items in the list that were never implemented in the game create weird results.&lt;br /&gt;
&lt;br /&gt;
As for why the floater crashes when dying, perhaps it uses an illegal death scream or something. The corpse value seems legal enough.&lt;br /&gt;
&lt;br /&gt;
The units which sound like tanks, aren&#039;t. The reason they makes those noises is because each unit has it&#039;s own movement [[SOUND|sound set]], which is determined by some value in [[UNITREF.DAT|UnitRef]]. It&#039;s one of the values I&#039;ve been meaning to hunt down but never got around to...&lt;br /&gt;
&lt;br /&gt;
Furthermore, some units slide, and some units walk. This is another value I&#039;ve yet to hunt down, but it&#039;s important, because sliding units (snakemen, tanks) sound the same regardless of the terrain they&#039;re moving over. They also incur different TU costs as per [[MCD|MCD[39]-[41]]].&lt;br /&gt;
&lt;br /&gt;
So obviously one or both of those values are also being determined by Soldier[63]. That&#039;ll make them easier to find in UnitRef.&lt;br /&gt;
&lt;br /&gt;
Remember that a soldier is a soldier whether he&#039;s in armor or out of it. His armor does change the way he appears, and a few other things, but he&#039;s still a soldier at the end of the day. That said, a mod could easily be made that turns units wearing certain (hacked) armor types into aliens when combat begins, hence allowing you to easily deploy them at will. But there&#039;s no way it can be done just by tweaking values in save files, I&#039;m afraid.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 14:45, 6 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Base Reference ==&lt;br /&gt;
&lt;br /&gt;
As I was tinkering around with some files, namely for my Python XCOM &#039;editor&#039; I noticed that on some of my soldiers the base reference was set to a crash site in loc.dat. So I&#039;m thinking it got mislabled as a base referense when it should be a current location reference. &lt;br /&gt;
&lt;br /&gt;
I haven&#039;t completely verified this yet, but just wanted to throw it out there.&lt;br /&gt;
-[[User:Pi Masta|Pi Masta]] 20:13, 6 February 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== Book of the Dead ==&lt;br /&gt;
&lt;br /&gt;
So after reading [http://www.quartertothree.com/game-talk/showthread.php?t=32835&amp;amp;page=4 this excellent XCOM thread] I was reminded I&#039;d like to have some way of logging the names of who actually died in a mission. You forget the rookies so quickly...and there&#039;s all those letters to write. After a while you even forget your heroes, custom names or no. This would keep track of the names for the memorial.&lt;br /&gt;
&lt;br /&gt;
I can see one way of doing this would be to just compare SOLDIER.DAT (or UNITREF.DAT) in two different saved games, pull out the names of the dead soldiers (along with rank, missions, kills info), and append it to a text file. Is a record in SOLDIER.DAT changed when the soldier dies, or what&#039;s the best way to determine who has died? Any advice from the experts? I see a bit in UNITREF.DAT but that&#039;s only for Battlescape saves, right?&lt;br /&gt;
&lt;br /&gt;
Maybe later this could be linked to the DOS game&#039;s batch file, so every transition between Battlescape and Geoscape updates the Book of the Dead.  --[[User:JellyfishGreen|JellyfishGreen]] 08:47, 7 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I&#039;m sure that with a little bit of tweaking, Bomb Blokes logger could be programmed to do this. It might be a bit of work, but it&#039;s certainly possible. --[[User:Zombie|Zombie]] 09:07, 7 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Yes. SOLDIER.DAT is updated without destroying most of the information (not quite sure what is lost as I don&#039;t have a savegame with dead soldiers on hand), think rank is lost (first two bytes reset to FF FF) but soldier value and missions are not lost so that can be recalculated for non-hacked games).  The kill count won&#039;t include any kills on the mission before being killed.&lt;br /&gt;
&lt;br /&gt;
Hiring a new soldier will overwrite all of this.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 13:39, 7 May 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
In a technical sense it&#039;s easy enough, the main problem is when the logging should be done...&lt;br /&gt;
&lt;br /&gt;
My first thought would be to do it at the end of combat (by checking [[UNIREF2.DAT]] and [[UNITPOS.DAT (MISSDAT)]]), but the problem with doing that is that if the players save then quit mid-mission (with the intention of resuming later), most of their squad would mistakenly be listed as MIA. It gets even messier should the game crash.&lt;br /&gt;
&lt;br /&gt;
On the other hand, doing the check when the player quits the game entirely is even harder to swing, because how does is know which save games to check?&lt;br /&gt;
&lt;br /&gt;
Perhaps prompting the user whenever combat ends as to whether they wish to log or not? This isn&#039;t exactly transparent, but it&#039;s the best I can think up. Any thoughts?&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 02:27, 8 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offset 6 ==&lt;br /&gt;
&lt;br /&gt;
To test Seb76&#039;s theory I wounded 4 soldiers on a mission (close range pistol shots in the Skyranger) and flew straight back to base. From a save file taken as soon as they were back at base, all 4 soldiers showed positive wound recovery time, offset 4 = FF FF, offset 6 = FF FF. So apparently no record of what craft they were in unfortunately. [[User:Spike|Spike]] 14:19, 12 November 2008 (CST)&lt;br /&gt;
:This is quite unfortunate indeed because the code is crytal clear: offset 4 is copied into offset 6 before being cleared (offset 0xc is set inbetween but it is a detail) :( Maybe there is a bug in the game and the craft is already cleared elsewhere? What happens when the soldiers recover, do they get back to their original craft? [[User:Seb76|Seb76]] 14:37, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Maybe something changes between tactical.exe and geoscape.exe, I&#039;ll go back and check. By the time they get back to base, the wounded soldiers are indistinguishable from other unassigned soldiers, apart from Offset 0xC (wound recovery time). - No, in the tactical save, the offset 4, 6 and 12 values are unchanged from what they were pre-mission. So the update to these fields is done at the end of combat - as you have probably found out. I will check if I&#039;m using XcomUtil, that might be interfering with the files somehow. Also, I checked and recovered soldiers don&#039;t get reassigned to a craft, they are assigned to NONE. This does sound like you have discovered the intended behaviour, but it&#039;s failing due to a bug. There would be a logical difficulty - if the craft is already full when you try to re-assign a recovered soldier to that craft, how would the game handle that situation? (I made sure I had enough free slots on my craft but still no re-assignment). [[User:Spike|Spike]] 15:07, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Hmm. Even if I hack the craft value (copied from the unwounded soldiers) into offset 6 of the wounded soldiers, they still don&#039;t re-assign back to the craft once they are recovered from their wounds. [[User:Spike|Spike]] 15:23, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Oops! It was XcomUtil that was interfering with the behaviour you deduced. Probably Scott Jones did not understand this behaviour? When I remove XcomUtil (actually I used a virgin re-install), I can see the changes you are reporting in Soldier.Dat - offset 6 is set to the craft number, offset 4 is FFFF. I&#039;ve used different craft to confirm it is the craft number that gets written to offset 6. However, when the soldier recovers from wounds, they are still assigned to NONE - they don&#039;t get reassigned to the previous craft. Even with the correct values in offset 4, placed there by the game, there doesn&#039;t seem to be any behaviour that uses that data. So it seems like this is a half-implemented feature? [[User:Spike|Spike]] 16:18, 12 November 2008 (CST)&lt;br /&gt;
:They probably removed it because it is too error prone: as you mentionned, if the craft is full when the soldier comes back, it must not be reassigned to the ship. Also the ship may no longer exist (the entry could even be reassigned to another craft, which could be fighter only or worst: a UFO). That must be why the feature was not kept. [[User:Seb76|Seb76]] 16:45, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
== Offset 64/0x41 Promotion flag ==&lt;br /&gt;
&lt;br /&gt;
This generally flags as 1 if the soldier was last promoted in the last combat. &lt;br /&gt;
&lt;br /&gt;
I was just checking a soldier listing and had a rookie with this field flagged. Does this field get flagged if the soldier was eligible for promotion even though there was no room? -[[User:NKF|NKF]] 08:46, 19 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
== the NAME field ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve just been testing with TFTD, and ran the same tests here.&lt;br /&gt;
&lt;br /&gt;
The NAME field is a cstring, or &amp;quot;ASCIIZ&amp;quot; field.  Care must be taken not to overwrite the last character of the name with anything but a 0 (NUL) character, otherwise the game will happily continue loading and rendering bytes past that point.  Fortunately, the transfer fields (which follow name) are usually 0 as the soldiers are not usually transferring, so those &#039;&#039;usually&#039;&#039; act as a terminating null.&lt;br /&gt;
&lt;br /&gt;
Thus, although one can get away with using that last byte, it&#039;s definitely not &#039;best practice&#039; in any way.&lt;br /&gt;
&lt;br /&gt;
Meh..forgot to sign. ~ [[User:Renegrade|Renegrade]] 07:40, 16 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT&amp;diff=28962</id>
		<title>Talk:SOLDIER.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT&amp;diff=28962"/>
		<updated>2010-08-12T12:35:24Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: the NAME field&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Why would Missions and Kills be signed? You&#039;re never going to have negative values. Shouldn&#039;t they be unsigned??&lt;br /&gt;
&lt;br /&gt;
- Danial&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
You would think that, wouldn&#039;t you? At least that&#039;s what I would&#039;ve done in their place. You can&#039;t owe a few kills or missions!  &lt;br /&gt;
&lt;br /&gt;
But if you enter values of 0xFFFF into each, the base screen shows -1. Hence why they&#039;re signed. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Zombie, I&#039;ve changed back your recent change to offset 63, as you&#039;ve been mislead a bit by corrupt data...&lt;br /&gt;
&lt;br /&gt;
The files MAN_A.SPK through to MAN_N.SPK do not exist in a normal install of UFO, I&#039;m afraid, and it was never intended for Soldier.Dat to point to them. They are simply the file names I chose when I coded my [http://www.strategycore.co.uk/files/index.php?dlid=428 custom uniform mod], so that aliens wouldn&#039;t display as troopers in the inventory screens anymore. I later added the same effect to my [http://www.strategycore.co.uk/files/index.php?dlid=470 map editer] as well. This affected the inventory screens and nothing else, by tweaking [[UNITREF.DAT|UnitRef[1]]] - The installation of either of my programs obviously adds the required MAN files to your game (as referring to any MAN file that does not exist causes a crash).&lt;br /&gt;
&lt;br /&gt;
On the other hand, modifying Soldier[63] apparently changes the way the unit appears in the battlescape display, as well as what it turns into when it dies! This means that it is not only used to determine UnitRef[1] when battle begins, but UnitRef[0]/[38] as well, and most likely others...&lt;br /&gt;
&lt;br /&gt;
That is to say, this byte gets set when you give a trooper armor. Armor dictates how a unit appears. However, it also indicates a units defensive values, and what item it will turn into when it dies. You didn&#039;t mention defense in your edit, but I would assume it also gets set to garbage when you fiddle with this offset.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll check this with a byte comparer when I get the time. With any luck, this&#039;ll also show me any remaining UnitRef offsets that are affected by this one. I&#039;ll update the article when I get some results.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 05:41, 6 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
My fault, but problems like these could easily be avoided with a readme file indicating what modifications are made to the game files. Never thought that an editor had modding chunks tossed in. That&#039;ll teach me a lesson.&lt;br /&gt;
&lt;br /&gt;
Changing the armor field in soldier.dat ([63] or [062] or whatever the darn offset is), changes the image sprite in the battlescape without too many problems, but running through your unit list in the equip screen will crash the game if the number here is greater than 3 as there aren&#039;t any MAN.spk images to refer back to. Like you mention, the actual armor attributes are garbage (albeit &#039;&#039;&#039;&#039;&#039;consistent&#039;&#039;&#039;&#039;&#039; garbage as the numbers do not change). Just for giggles I did a couple dry runs with varying values to see what would happen to the death item and armor attributes. This may or may not be useful.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table {{StdCenterTable}}&amp;gt;&lt;br /&gt;
&amp;lt;tr {{StdDescTable_Heading}}&amp;gt;&amp;lt;th&amp;gt;Value&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Unit&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Death Item&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Fr&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Le&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Ri&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Re&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Un&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;4&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectoid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;HP Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;127&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;115&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;116&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;117&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Snakeman&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Plasma Rifle&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;118&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;119&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;120&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;121&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;122&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Ethereal&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;PR Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;124&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;125&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;126&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Muton&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Plasma Pistol&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;4&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;16&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Floater&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;PP Clip&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;14&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;9&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Celatid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Blaster Launcher&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;25&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;35&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Silacoid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Blaster Bomb&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;24&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;11&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Chryssalid&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Small Launcher&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;6&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;12&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Stun Bomb&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;7&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;9&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;13&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectopod&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Alien Grenade&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;10&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;21&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;14&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Cyberdisc&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Elerium-115?&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;8&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;15&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Male Civilian&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Variable&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;1&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;3&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;5&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;16&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Female Civilian&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Psi-Amp&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;52&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;17&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Zombie&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Unknown&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;18&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Mind Probe&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;19&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Sectoid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;20&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Snakeman Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;21&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Ethereal Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;22&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Muton Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;23&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Crashes (FLT?)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;80&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;24&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Celatid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;25&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Silacoid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;26&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Chryssalid Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;27&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper1 Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;28&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Invisible&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Reaper2 Corpse&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;104&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;0&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;160&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
I couldn&#039;t find out what item the Cyberdisc &amp;quot;unit&amp;quot; gives up when it dies, as the explosion happens even with Stun Bombs. I assume it&#039;s Elerium-115 as it follows the normal item list. The male civilian is a tough nut to crack also. I saw a death item of a Laser Rifle and a Small Rocket a few times - it&#039;s probably random or semi-random. Still, you can&#039;t stand over the &amp;quot;corpse&amp;quot; and pick up the item as it is invisible in the equip soldier screen. The Zombie is also strange as it cannot be killed by incendiary, most likely a hacked armor value will make the game assume you are wearing a suit of armor greater than Personal and apply the 0% modifier. A value of 23 will crash the game if you try and kill the unit so it&#039;s just an assumption that the death item is a Floater corpse. &lt;br /&gt;
&lt;br /&gt;
I should also mention that some of the invisible units higher up on the list are probably tanks as the sound usually correlates to image. This doesn&#039;t hold for units lower in the list as I heard a movement noise of a Pistol or Rifle shooting rapidly for one of them! Strange stuff, but it can probably all be tied together once we know where the pointers are going.&lt;br /&gt;
&lt;br /&gt;
- Zombie&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
That&#039;s an easy one at least. As you mentioned, they follow the normal [[OBDATA.DAT|item list]] when turning into death items. Simply put, a unit will turn into object X, where X is 31 + Soldier[63]. That is to say, by default, a unit with no armor (value 0) will turn into a normal corpse (31). But if you crank the value up to, say, 19 (an illegal value), you get a sectoid corpse (31 + 19 = object 50). Pointers to items in the list that were never implemented in the game create weird results.&lt;br /&gt;
&lt;br /&gt;
As for why the floater crashes when dying, perhaps it uses an illegal death scream or something. The corpse value seems legal enough.&lt;br /&gt;
&lt;br /&gt;
The units which sound like tanks, aren&#039;t. The reason they makes those noises is because each unit has it&#039;s own movement [[SOUND|sound set]], which is determined by some value in [[UNITREF.DAT|UnitRef]]. It&#039;s one of the values I&#039;ve been meaning to hunt down but never got around to...&lt;br /&gt;
&lt;br /&gt;
Furthermore, some units slide, and some units walk. This is another value I&#039;ve yet to hunt down, but it&#039;s important, because sliding units (snakemen, tanks) sound the same regardless of the terrain they&#039;re moving over. They also incur different TU costs as per [[MCD|MCD[39]-[41]]].&lt;br /&gt;
&lt;br /&gt;
So obviously one or both of those values are also being determined by Soldier[63]. That&#039;ll make them easier to find in UnitRef.&lt;br /&gt;
&lt;br /&gt;
Remember that a soldier is a soldier whether he&#039;s in armor or out of it. His armor does change the way he appears, and a few other things, but he&#039;s still a soldier at the end of the day. That said, a mod could easily be made that turns units wearing certain (hacked) armor types into aliens when combat begins, hence allowing you to easily deploy them at will. But there&#039;s no way it can be done just by tweaking values in save files, I&#039;m afraid.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 14:45, 6 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Base Reference ==&lt;br /&gt;
&lt;br /&gt;
As I was tinkering around with some files, namely for my Python XCOM &#039;editor&#039; I noticed that on some of my soldiers the base reference was set to a crash site in loc.dat. So I&#039;m thinking it got mislabled as a base referense when it should be a current location reference. &lt;br /&gt;
&lt;br /&gt;
I haven&#039;t completely verified this yet, but just wanted to throw it out there.&lt;br /&gt;
-[[User:Pi Masta|Pi Masta]] 20:13, 6 February 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== Book of the Dead ==&lt;br /&gt;
&lt;br /&gt;
So after reading [http://www.quartertothree.com/game-talk/showthread.php?t=32835&amp;amp;page=4 this excellent XCOM thread] I was reminded I&#039;d like to have some way of logging the names of who actually died in a mission. You forget the rookies so quickly...and there&#039;s all those letters to write. After a while you even forget your heroes, custom names or no. This would keep track of the names for the memorial.&lt;br /&gt;
&lt;br /&gt;
I can see one way of doing this would be to just compare SOLDIER.DAT (or UNITREF.DAT) in two different saved games, pull out the names of the dead soldiers (along with rank, missions, kills info), and append it to a text file. Is a record in SOLDIER.DAT changed when the soldier dies, or what&#039;s the best way to determine who has died? Any advice from the experts? I see a bit in UNITREF.DAT but that&#039;s only for Battlescape saves, right?&lt;br /&gt;
&lt;br /&gt;
Maybe later this could be linked to the DOS game&#039;s batch file, so every transition between Battlescape and Geoscape updates the Book of the Dead.  --[[User:JellyfishGreen|JellyfishGreen]] 08:47, 7 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I&#039;m sure that with a little bit of tweaking, Bomb Blokes logger could be programmed to do this. It might be a bit of work, but it&#039;s certainly possible. --[[User:Zombie|Zombie]] 09:07, 7 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Yes. SOLDIER.DAT is updated without destroying most of the information (not quite sure what is lost as I don&#039;t have a savegame with dead soldiers on hand), think rank is lost (first two bytes reset to FF FF) but soldier value and missions are not lost so that can be recalculated for non-hacked games).  The kill count won&#039;t include any kills on the mission before being killed.&lt;br /&gt;
&lt;br /&gt;
Hiring a new soldier will overwrite all of this.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zaimoni|Zaimoni]] 13:39, 7 May 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
In a technical sense it&#039;s easy enough, the main problem is when the logging should be done...&lt;br /&gt;
&lt;br /&gt;
My first thought would be to do it at the end of combat (by checking [[UNIREF2.DAT]] and [[UNITPOS.DAT (MISSDAT)]]), but the problem with doing that is that if the players save then quit mid-mission (with the intention of resuming later), most of their squad would mistakenly be listed as MIA. It gets even messier should the game crash.&lt;br /&gt;
&lt;br /&gt;
On the other hand, doing the check when the player quits the game entirely is even harder to swing, because how does is know which save games to check?&lt;br /&gt;
&lt;br /&gt;
Perhaps prompting the user whenever combat ends as to whether they wish to log or not? This isn&#039;t exactly transparent, but it&#039;s the best I can think up. Any thoughts?&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 02:27, 8 May 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Offset 6 ==&lt;br /&gt;
&lt;br /&gt;
To test Seb76&#039;s theory I wounded 4 soldiers on a mission (close range pistol shots in the Skyranger) and flew straight back to base. From a save file taken as soon as they were back at base, all 4 soldiers showed positive wound recovery time, offset 4 = FF FF, offset 6 = FF FF. So apparently no record of what craft they were in unfortunately. [[User:Spike|Spike]] 14:19, 12 November 2008 (CST)&lt;br /&gt;
:This is quite unfortunate indeed because the code is crytal clear: offset 4 is copied into offset 6 before being cleared (offset 0xc is set inbetween but it is a detail) :( Maybe there is a bug in the game and the craft is already cleared elsewhere? What happens when the soldiers recover, do they get back to their original craft? [[User:Seb76|Seb76]] 14:37, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Maybe something changes between tactical.exe and geoscape.exe, I&#039;ll go back and check. By the time they get back to base, the wounded soldiers are indistinguishable from other unassigned soldiers, apart from Offset 0xC (wound recovery time). - No, in the tactical save, the offset 4, 6 and 12 values are unchanged from what they were pre-mission. So the update to these fields is done at the end of combat - as you have probably found out. I will check if I&#039;m using XcomUtil, that might be interfering with the files somehow. Also, I checked and recovered soldiers don&#039;t get reassigned to a craft, they are assigned to NONE. This does sound like you have discovered the intended behaviour, but it&#039;s failing due to a bug. There would be a logical difficulty - if the craft is already full when you try to re-assign a recovered soldier to that craft, how would the game handle that situation? (I made sure I had enough free slots on my craft but still no re-assignment). [[User:Spike|Spike]] 15:07, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Hmm. Even if I hack the craft value (copied from the unwounded soldiers) into offset 6 of the wounded soldiers, they still don&#039;t re-assign back to the craft once they are recovered from their wounds. [[User:Spike|Spike]] 15:23, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Oops! It was XcomUtil that was interfering with the behaviour you deduced. Probably Scott Jones did not understand this behaviour? When I remove XcomUtil (actually I used a virgin re-install), I can see the changes you are reporting in Soldier.Dat - offset 6 is set to the craft number, offset 4 is FFFF. I&#039;ve used different craft to confirm it is the craft number that gets written to offset 6. However, when the soldier recovers from wounds, they are still assigned to NONE - they don&#039;t get reassigned to the previous craft. Even with the correct values in offset 4, placed there by the game, there doesn&#039;t seem to be any behaviour that uses that data. So it seems like this is a half-implemented feature? [[User:Spike|Spike]] 16:18, 12 November 2008 (CST)&lt;br /&gt;
:They probably removed it because it is too error prone: as you mentionned, if the craft is full when the soldier comes back, it must not be reassigned to the ship. Also the ship may no longer exist (the entry could even be reassigned to another craft, which could be fighter only or worst: a UFO). That must be why the feature was not kept. [[User:Seb76|Seb76]] 16:45, 12 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
== Offset 64/0x41 Promotion flag ==&lt;br /&gt;
&lt;br /&gt;
This generally flags as 1 if the soldier was last promoted in the last combat. &lt;br /&gt;
&lt;br /&gt;
I was just checking a soldier listing and had a rookie with this field flagged. Does this field get flagged if the soldier was eligible for promotion even though there was no room? -[[User:NKF|NKF]] 08:46, 19 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
== the NAME field ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve just been testing with TFTD, and ran the same tests here.&lt;br /&gt;
&lt;br /&gt;
The NAME field is a cstring, or &amp;quot;ASCIIZ&amp;quot; field.  Care must be taken not to overwrite the last character of the name with anything but a 0 (NUL) character, otherwise the game will happily continue loading and rendering bytes past that point.  Fortunately, the transfer fields (which follow name) are usually 0 as the soldiers are not usually transferring, so those &#039;&#039;usually&#039;&#039; act as a terminating null.&lt;br /&gt;
&lt;br /&gt;
Thus, although one can get away with using that last byte, it&#039;s definitely not &#039;best practice&#039; in any way.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT_(TFTD)&amp;diff=28960</id>
		<title>Talk:SOLDIER.DAT (TFTD)</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:SOLDIER.DAT_(TFTD)&amp;diff=28960"/>
		<updated>2010-08-12T12:18:31Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi Zombie. I&#039;ve just checked and the maximum length of an Aquanaut name that can be entered in-game is 19 characters. 20 bytes including a null-terminating byte? It would also be good to hack the name and see if it&#039;s possible to display more than 19 characters, I&#039;ll try that next. [[User:Spike|Spike]] 14:49, 10 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
:Actually you can enter 21 characters within the game. There is room to hex edit the name up to 27 characters (doesn&#039;t need to be null terminated, the final 27th character shows up just fine). The name is the reason why EU&#039;s and TFTD&#039;s file sizes differ (68 vs. 70 bytes). The programmers gave TFTD 2 more characters to play around with. I&#039;m using the Collector&#039;s Edition by the way. --[[User:Zombie|Zombie]] 15:46, 10 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interesting. I&#039;m using the Steam version which is also CE I think. Looks like the character name input in-game is limited to some maximum pixel width, or 21 bytes, whichever is less. E.g. use all capital Ws for the name and you only get to enter 14 bytes. Use digit 1 (narrowest character?) or lower case a and you can enter 21 bytes.&lt;br /&gt;
&lt;br /&gt;
I could hex edit 26 + null and it displayed, but overwrote the next column in the Aquanaut display - probably why there is a pixel width limit. I didn&#039;t try non null terminated. That&#039;s also interesting as it suggests they may be storing the string length somewhere, which could be one of the Unknown records. [[User:Spike|Spike]] 04:15, 11 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
:Ah, I was using lowercase letters to fill the string - that&#039;s why I had 21 characters. Apparently the game uses the [[BIGLETS.DAT]] character set for editing soldier names. Each character block is 16x16 pixels, but the game doesn&#039;t use whitespace. This limits the max height to something like 13 pixels. For the capital letter W, you can have 14 characters total in the display, and that breaks down to 13 pixels wide for a total string length of 182 pixels. For the capital letter I you can put 21 of them in the display. Each letter is 4 pixels wide for a total width of 84 pixels. The max display width possible without wraparound is 21 large characters (such as W or M) which works out to 273 pixels.&lt;br /&gt;
&lt;br /&gt;
:For the Aquanaut listing screen, it uses the [[SMALLSET.DAT]] character set so things are a little different there. To prevent the name from running into the rank field, the max length is 19 large letters such as W or M. Effective length is around 115 pixels. Surprisingly, the biggest characters in the smallset list is the number sign or the asterisk. Those fill the entire field, and the game actually overwrites part of one character on to the next one so instead of 8 pixels, it breaks down to a little over 6. The programmers should have changed those characters to include a 1-pixel whitespace buffer to prevent overwriting, but maybe that would have made the character look strange. Eh, whatever. --[[User:Zombie|Zombie]] 21:44, 11 November 2008 (CST)&lt;br /&gt;
&lt;br /&gt;
Just a little note here on null terminated strings (c-strings or &amp;quot;ASCIIZ&amp;quot;) -- while you can handle fixed width strings in C with custom functions or some of the more exotic uses of v/s/printf, it&#039;s generally not used.  I&#039;d like to warn people that name[27] is followed by bravery_improvement, which is likely zero on most soldiers.   &lt;br /&gt;
&lt;br /&gt;
As a test, I filled in a soldier&#039;s name with lowercase &#039;i&#039;, as it&#039;s nice and narrow, and then &#039;b&#039; after the 27th byte (it was originally &#039;a&#039; and &#039;b&#039; but it was hard to see the results due to font size).  My soldier ended up with  720 bravery, but the name continued.  I then continued on, filling in any zero bytes, and the soldier became even more screwy, with an ever increasing name length.  &lt;br /&gt;
&lt;br /&gt;
I&#039;d STRONGLY recommend limiting string usage to a proper char string[27] length -- that is, null terminate the string at the 27th character, ie, string[26]=0.  Assuming that the byte(s) at the end ARE part of the string, and not some stat which is doing something strange.  Like, an unknown &#039;luck&#039; stat or something.  ~ [[User:Renegrade|Renegrade]] 08:18, 12 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28758</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28758"/>
		<updated>2010-08-10T11:19:36Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Random Z-Com thoughts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code.&lt;br /&gt;
* Make some art~&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs (this has been improved somewhat)&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
* Merge sub-programs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
(things to consider implementing in Z-Com)&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;br /&gt;
&lt;br /&gt;
* Show the current AND expected stock in the Buy screen; ie, including transfers &#039;in flight&#039; to that base.  Could work one of two ways:&lt;br /&gt;
# Show it as non-summed items.  Ex: Rifle Clip  14 (20) --&amp;gt; 14 rifle clips at the base, 20 en route via transfers from purchasing or other bases.&lt;br /&gt;
# Show it as summed items.  Ex: Rifle Clip 14 (34) --&amp;gt; 14 rifle clips at the base, with 20 enroute = a total of 34.  I tend to favor this approach as it eliminates the possibility of faults with mental math.&lt;br /&gt;
&lt;br /&gt;
* Fix the manufacturing bug.  I actually have a hard time imagining the code that causes it, yet still allows proper rollover of hours.  If something takes 5 engineering hours, and there&#039;s 12 engineers working on it, it should produce &#039;&#039;two&#039;&#039; on the hour, and save 2 engineer hours for the next &#039;&#039;&#039;anything&#039;&#039;&#039; (including new projects), with an ideal design.&lt;br /&gt;
&lt;br /&gt;
* Also, the manufacturing page suggests that resources are gathered too quickly and/or not returned properly when cancelling.  The best design for that would be that every time a new item in a batch is initiated, the cash and items required are extracted from the base stock, but then &#039;stored&#039; in the manufacturing data.  If that item is cancelled, then that stored cash/item list can be restored to the base&#039;s main stock.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28755</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28755"/>
		<updated>2010-08-10T11:13:44Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Random Z-Com thoughts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code.&lt;br /&gt;
* Make some art~&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs (this has been improved somewhat)&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
* Merge sub-programs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
(things to consider implementing in Z-Com)&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;br /&gt;
&lt;br /&gt;
* Show the current AND expected stock in the Buy screen; ie, including transfers &#039;in flight&#039; to that base.  Could work one of two ways:&lt;br /&gt;
# Show it as non-summed items.  Ex: Rifle Clip  14 (20) --&amp;gt; 14 rifle clips at the base, 20 en route via transfers from purchasing or other bases.&lt;br /&gt;
# Show it as summed items.  Ex: Rifle Clip 14 (34) --&amp;gt; 14 rifle clips at the base, with 20 enroute = a total of 34.  I tend to favor this approach as it eliminates the possibility of faults with mental math.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:OBPOS.DAT&amp;diff=28591</id>
		<title>Talk:OBPOS.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:OBPOS.DAT&amp;diff=28591"/>
		<updated>2010-08-08T02:15:10Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: Record offsets 6 and 7&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;My version of TFTD (Collector&#039;s Edition) has a file size of 3360 bytes. At 16 bytes per record, that comes to 210 records. I guess the programmers increased the size of this file a bit from the DOS version which only has 200 records of 16 bytes for a total file size of 3200 bytes. --[[User:Zombie|Zombie]] 22:39, 30 December 2009 (EST)&lt;br /&gt;
:Worrying! Is it possible to check if the extra entries are used or not? It&#039;s possible they are just padding.  [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
== Record offsets 6 and 7 ==&lt;br /&gt;
&lt;br /&gt;
The record offsets at 6/7 are showing as this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;6/06&amp;lt;/b&amp;gt;: Object the current item is loaded into. -1/255 by default for no item. (Uses obpos item index - first object in obpos is 0).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;7/07&amp;lt;/b&amp;gt;: -1/255 by default, otherwise 0 if the item is loaded into something.&lt;br /&gt;
&lt;br /&gt;
It would seem likely to me, based on that, and examining the file myself, that 6 and 7 form a 16-bit value (uint16_t or int16_t), with 0xFFFF being &#039;not loaded&#039; and the full 16-bit value being what it&#039;s loaded into.  It&#039;s possible at the time that field was defined that they expected more than 255 items in the file.  Note that 170/200 is getting close to the limit, and no other field here appears to be related to offsets in this file.  I&#039;m surprised even that they skimped on these filesizes -- putting 400 records in here would only add 3200 bytes to the memory/disk load.  Note too that address 6 is word-aligned.&lt;br /&gt;
&lt;br /&gt;
Also, I don&#039;t find it that odd that they don&#039;t update the physical position of an item that&#039;s being carried.  Updating a carried item&#039;s position would increase the overhead significantly for little gain, as the position can be easily calculated when needed from the location of the unit carrying it.  (ex, if the unit drops it in any way, simply update the field there and then.  The border between carried and dropped should be fairly well defined)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:Manufacturing_Profitability&amp;diff=28589</id>
		<title>Talk:Manufacturing Profitability</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:Manufacturing_Profitability&amp;diff=28589"/>
		<updated>2010-08-07T22:23:50Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: Salary / Hourly&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dumas, re: your point about Alien Alloys being plentiful - That section about LCs versus FBLs addresses a common early misperception. In actuality, both LCs and FBLs make the same amount of profit each ($18k), &#039;&#039;&#039;&#039;&#039;but&#039;&#039;&#039;&#039;&#039; you can make ~33% more LCs per month with a given number of engineers. In other words, LCs are 33% more profitable than FBLs, period.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Unless&#039;&#039; you want to make your FBLs one at a time, so that they don&#039;t need AAs. Then, they&#039;re just barely (2%) more profitable than LCs. (If you play with the spreadsheet, this is clear.)&lt;br /&gt;
&lt;br /&gt;
So it doesn&#039;t really have anything to do with AAs. LCs are a far better deal than FBLs, &#039;&#039;unless&#039;&#039; you want to hassle with making FBLs one at a time. Either way, you never needed a single AA. (And if you&#039;ve got a big surplus of AAs, then just sell&#039;em! smile)&lt;br /&gt;
&lt;br /&gt;
Let me know if I&#039;m missing something - [[User:MikeTheRed|MikeTheRed]] 18:41, 9 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I see. So that&#039;s what the AA thing means. It&#039;s not explained very clearly. I&#039;ll fix that.--[[User:Dumas|Dumas]] 04:58, 10 November 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
Hmm, we go straight from Workshop to Manufacturing Profitability - there really should be a Manufacturing topic around that sits between them I think, to cover all the basics and key points. Might start it myself in next few days if no-one else does.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 18:36, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Oh and of course, another note is that the values for maintenance on Living Quarters and Workshops being fed into the equations are wrong, but you cant tell what they are going to cost unless you know what row of the base they are built on. Could make the numbers a little fuzzy (not likely to make a big difference, as the average cost is just over 17, so that would probably make these two items a little cheaper than the 22.5 currently assigned to them.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 18:40, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Huh, good point. I only just learned about that maintenance glitch today. For the time being, I&#039;ll stick in a note that those numbers are probably slightly high. For that matter, the maintenance glitch page could probably use a few notes about how much the other costs of 1) facilities in general are (e.g. for likely base configs - average cost per building as per UFOpaedia vs. actual average cost as per bug), and 2) other costs of the game in general. IOW I suspect that maintenance costs are a small part of a serious X-COM operation, relative to country funding, loot, and manufacturing profit. Which, if true, would lead to a wrap-up statement re: the maintenance bug of something like, &amp;quot;as can be seen, maint. costs are only a few percent of likely revenue and expenses; all in all, this base placement bug doesn&#039;t impact much, and can easily be totally ignored, if you like&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Edit: This could also go on that page dedicated to the bug. Maybe that&#039;s a better place for a longer explanation/analysis, and the Bugs page would just have that wrap-up sentence.&lt;br /&gt;
&lt;br /&gt;
- [[User:MikeTheRed|MikeTheRed]] 19:15, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Yeah, thats along the same lines as I was thinking when I created the new page, try to avoid any bugs in that section from getting too large, if they have a lot of related detail it should be linked too, so that the bugs list is as concise as possible, most people are going to want to make sure they arent falling foul of any serious issue due to their play style and little more, if they want more information they can drill down to the dedicated topics related to it.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 21:02, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
[[Image:MTR-FirstBase.png|thumb|left|100px|MTR - first base]][[Image:MTR-SecondLine.png|thumb|right|100px|MTR - 2nd &amp;amp; 3rd base]] Works for me. It brings up an interesting question - what kinds of bases do people make? (Which would affect the average facility cost, depending on where they put facilities.) For newbies, the average cost is probably the best guess. But for vet players like us wiki folks, we probably all have our own styles. I make research at my first base in Europe, and fudge around the original Access Lift relative to base attacks. My first base has a crack squad, as do two more that look like the second inset. Then as you can see from the tiny base outlines, I have several more that are hangars up top and psi labs/LQ below, then a few more that are just LQ and hangars, for screening [[Hiring/firing#General_Information|large recruit batches]]. (Good&#039;uns are sent to the psi bases.) Manufacturing is light in 1st, heavy in 2nd, and 3rd depends how greedy I am. They all have a Stores or two, of course. And it&#039;s prior to knowing about the Maintenance Bug, naturally. (FWIW, my game date there is August 1999.)&lt;br /&gt;
&lt;br /&gt;
Just some ideas about how bases might be. I&#039;m sure the rest of you have your own styles. Heck it might be fun to make an informal area where folks show their current base layouts. - [[User:MikeTheRed|MikeTheRed]] 21:30, 1 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
==Non integer math?==&lt;br /&gt;
:&#039;&#039;Those who know XCOM, know that it suffers from integer truncation in a number of places. This could&#039;ve hurt profitability badly if it occurred there; for example, if an item needs 100 engineer hours but you only assign 99, it might&#039;ve taken twice as long, and halved your production and profit potential. Fortunately, this is not the case with manufacturing; it does not truncate production time this way.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
I would be surprised if it was storing progress as any sort of non integer value. What it likely does is treat the entire batch as one unit, creating at the end of the hour as it knocks them off - so it saves an integral number of hours of progress against the next item in the list.&lt;br /&gt;
&lt;br /&gt;
To explain with your example, but run a batch of 10 of them:&lt;br /&gt;
&lt;br /&gt;
1st hour - 99 production, not to 100, no output&lt;br /&gt;
2nd hour - 99 stored + 99 production = 198 done, take off 100 to make one unit to leave 98 stored for next hour&lt;br /&gt;
3rd hour - 98 + 99 = 197, make one store 97.&lt;br /&gt;
&lt;br /&gt;
What this essentially means is that on short projects you would want to run them in batches to minimise wastage, or with a number of engineers that divides into the unit production time with no remainder if you want to build single units at a time (whyever would you want to do that? ...)&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 13:33, 2 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Obviously it could as easily store 10 x 100 = 1000 as the hours for the entire project to complete, and produce each time it drops by 100, whichever way (I think mine is more likely because then adding/removing units in the production screen doesnt require it to recalculate the hours left for the entire project each time, but BPROD.DAT or whatever could probably easily be tested to find which it is.&lt;br /&gt;
&lt;br /&gt;
--[[User:Sfnhltb|Sfnhltb]] 13:35, 2 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
Hiya Sfn; back from some time spent on things at work -&lt;br /&gt;
&lt;br /&gt;
What you say makes plenty of sense. I too was surprised to think they might&#039;ve used floating point here; your thought didn&#039;t occur to me at that time, but a simple carry-over makes perfect sense. In support of what you say, I did not test vs. the production time of individual items; I only tested total production vs. longer amounts of time. Shouldn&#039;t take long to try 99 scientists vs. a 100 hour item. But in the long run, it doesn&#039;t matter - there&#039;s no truncation. - [[User:MikeTheRed|MikeTheRed]] 18:46, 9 March 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
== A free market in armaments ==&lt;br /&gt;
&lt;br /&gt;
Hi I&#039;m back... Some thoughts I would like to post but I&#039;m not sure where to put them:&lt;br /&gt;
&lt;br /&gt;
I was getting VERY bored of manufacturing things just to get money and it occurred to me that there might be a wider economy in the world outside XCom with an industrial base that could do some of the grunt work for me, more efficiently. &lt;br /&gt;
&lt;br /&gt;
What I would like to do is just provide the Elirium and Alien Alloys to an industrial concern and let them handle all the dull logistics&lt;br /&gt;
&lt;br /&gt;
The effect of this is that the  &amp;quot;market clearing&amp;quot; price of Elerium should be about $15K and Alloys about $25K. Rather than producing a PsiAmp for sale to convert 1 Elirium into $15K profit (net of all costs), or building an FBL in order to convert 1 AA into net $25K... just correct the market price of AA and E115 to reflect the potential profits that can be made by some other industrial organisation.&lt;br /&gt;
&lt;br /&gt;
Let&#039;s assume as a simplification that these external industrial organisations have better economy of scale than XCom (factories are large scale, near transport hubs and not hidden beneath volcanic islands with false sliding craters over the Interceptor pads). Assume that this improved economy of scale allows the arms companies to cover their capital costs and still make a profit on PsiAmp &amp;amp; FBL production despite paying what would be (for XCom) the break-even price for the required exotic materials.&lt;br /&gt;
&lt;br /&gt;
Interestingly even at a resale price of $25K it&#039;s still not worth manufacturing AAs for profit.  &lt;br /&gt;
&lt;br /&gt;
In game terms what I do is, once I have the necessary technology, I just sell off the alloys/elirium and use a money editor to give myself the extra cash from the &amp;quot;higher&amp;quot; price. &lt;br /&gt;
&lt;br /&gt;
Possibly this could be an XComUtil mod that actually hacks the game data files to change the sale price of AA and E115 after each money-making technology is researched. &lt;br /&gt;
&lt;br /&gt;
If anyone is interested in this idea I could work up a full table of increases in the market value of AA and Elirium with each technology advance. For now I have just calculated the maximum values, based on having PsiAmp (E115) and FBL (AA) technology.&lt;br /&gt;
&lt;br /&gt;
In theory if there was a high resale value for craft, this could also push up the market price for UFO Navigation and UFO Power Source. &lt;br /&gt;
&lt;br /&gt;
Another indulgence that I might allow myself (using a game editor) is to assume that I can buy items (anything from Medkits to Avengers)from these external industrial concerns. I would have to pay the full price (from the manufacturing spreadsheet attached to this article), plus the same buy/sell spread used for conventional items. I guess the normal delivery times could be used - or maybe 2x normal. &lt;br /&gt;
&lt;br /&gt;
This would require using a base editor to simulate these purchases. Or again an XcomUtil-like 3rd party program could act as the &amp;quot;Arms Merchant&amp;quot;, selling and delivering equipment. &lt;br /&gt;
 &lt;br /&gt;
The last scenario for those like me who get bored by manufacturing logistics is: technology licencing (royalties). This means just letting some other organisation produce the Motion Sensors and Laser Cannon, under licence from XCom Holdings Inc. As there seems to be infinite and price-inelastic demand for these products it would be a great and mutually profitable partnership. :)&lt;br /&gt;
&lt;br /&gt;
As infinite income is a bit unbalancing, some kind of compromise is needed. Maybe, when the technology is researched, total monthly Funding is increased by the amount shown as the monthly net gain in the spreadsheet. This would be spread across all funding countries.&lt;br /&gt;
&lt;br /&gt;
:Interesting idea.  But in all honesty, it&#039;s not like money is particularly hard to come by if you&#039;re doing halfway decently.  By about June, almost every alien you wax is worth 142 grand, minimum; 20K for the corpse and a 122K for the extra Heavy Plasma, when you&#039;re already drowning in them.  Then you&#039;ve got spare clips, alien alloys, UFO Power Sources, UFO Navigations, grenades...even Elerium.  I can, in a regular game, easily build a fleet of 30 avengers without breaking the bank so long as I have a halfway decent Laser Cannon operation going on somewhere and enough recovery missions to bring in raw materials. [[User:Arrow Quivershaft|Arrow Quivershaft]] 17:28, 24 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
==XComUtil Manufacturing Profitability Discussion==&lt;br /&gt;
&lt;br /&gt;
For some reason the [[XcomUtil]] &amp;quot;new laser weapons&amp;quot; manufacturing option only affects beam weapons. It does not make the manufacture of Fusion explosives and projectiles any harder, so the FBL economics are unaffected. Hovertank/Launchers, Blaster Bombs &amp;amp; Launchers, and Alien Grenades are also unaffected (but were never very profitable). The Hovertank/Plasma is redesignated (in name at least) a Hovertank/LaserCannon, in effect saying that the only Plasma weapon that can be produced is the craft Plasma Beam, and that with great difficulty. &lt;br /&gt;
&lt;br /&gt;
Arguably to handicap the plasma weapons so much, but not to in any way handicap the alien launched / explosive / fusion weapons, seems to create an anomaly in the progression of X-COM firepower, rather than the presumed intent of making the game harder overall. Instead the midphase of the game is harder but the endphase is pretty much the same. &lt;br /&gt;
&lt;br /&gt;
It appears that XComUtil prohibits the production of alien plasma small arms in a rather clumsy way, by increasing the workshop requirements to an extreme level in [[PRODUCT.DAT]]. We now know the location of the flag set to indicate if an item is manufacturable, so that could be used instead by a (hypothetical) update to XComUtil.&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 15:15, 13 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Bored Industrialist ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AQ, agreed the lion&#039;s share of cash comes from wasting aliens. For me this is more about what to do in the dry periods when intercepts are scarce (a whole other topic there). &lt;br /&gt;
&lt;br /&gt;
Because I use the XcomUtil setting to make manufacturing profitability a lot harder I don&#039;t have the Laser Cannon factory option to boost my base level of funding/profit. &lt;br /&gt;
&lt;br /&gt;
I guess for me the real solution is how to increase my number of recovery missions since I prefer that part of the gameplay. &lt;br /&gt;
&lt;br /&gt;
30 Avengers though by June? That is impressive. On Superhuman? Apart from money time and parts to build them I wonder where you get the Elirium to keep them all flying. [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
:I didn&#039;t catch that you had used the modified laser weapons; my bad.  I said nothing about the rate at which I could put 30 Avengers together.  Usually it takes me about a year of game time to get the fleet well underway(I could launch Cydonia at any time, but where&#039;s the fun in THAT?! ;) )  Also, since I&#039;ve only been playing for a bit over a year myself, I don&#039;t play on Superhuman often.  The aliens still have this nasty tendency to kick me around like a soccer ball if I do.  :( [[User:Arrow Quivershaft|Arrow Quivershaft]] 05:21, 25 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
One good way to ensure frequent battles is to milk supply ships off alien bases. Even one alien base will keep you well supplied for the rest of the game. &lt;br /&gt;
&lt;br /&gt;
If you don&#039;t choose to use that strategy (some find the regularity of the supply ship unnatural - although you still have to risk life and limb in a real battle to win the loot), there should still be enough from the first couple of missions to get you off the ground if you spend your money wisely - not counting a production business. &lt;br /&gt;
&lt;br /&gt;
Also, Superhuman actually nets you more profit from loot sales. There&#039;ll be many more aliens in a battle, and the UFO activity tends to be a bit more aggressive. That&#039;s where the higher difficulty pays off - pun and all. - [[User:NKF|NKF]] 20:50, 25 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
Yes good point about Superhuman - higher risk brings higher reward which is a good thing. &lt;br /&gt;
&lt;br /&gt;
I do need to figure out how to milk supply ships, or some other method to boost my plunder rate. I guess I need to stop indiscriminately crashing all the UFOs - learn to recognise the base-building missions and let the aliens get on with it?  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(By the way sorry that I keep adding sections. The edit window in the mobile phone browser I am using isn&#039;t big enough to safely edit the whole page. Don&#039;t want to mess the page up!) [[User:Spike|Spike]]&lt;br /&gt;
&lt;br /&gt;
:Generally, base-building missions consist of 2 Battleships and a Supply Ship or two, and maybe a few others.  They&#039;ll all show up at about the same time in the same area(of course, if you&#039;re using Radar, you may not detect them all...if you&#039;re using a Hyper Wave Decoder, you should already know its a base mission.) Once the base is built, Supply Ships will be dispatched randomly to service it(Supply Ships on Supply missions are always launched at 00:30.)  Make sure the base is in Africa or Western Asia so you get to raid the aliens during the day.! [[User:Arrow Quivershaft|Arrow Quivershaft]] 14:13, 26 February 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
== Thanks, Article ==&lt;br /&gt;
&lt;br /&gt;
I just feel like expressing the usefulness of this article.  I&#039;m currently constructing a new Workshop (on top of a couple others); I have more than enough Living Quarters to support the 50 Engineers I plan on getting.  But the Workshop is scheduled to be completed about 10 days before the month&#039;s end.  With some quick calculations I found that 50 Engineers working for 10 days on Laser Cannons wouldn&#039;t produce as much profit as their net salaries!  So those guys will just have to wait an extra 11 or so days to get jobs, hurting the global economy (tear).  [[User:NightChime|NightChime]] 21:01, 26 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
:Hire them on the 2nd or 3rd last day of the month.  It takes 72 hours for personnel, (whether soldier, engineer, or scientist) to arrive at a base.  (They&#039;re probably doing a background check.)  Salaried staff in transit when the month changes [[ExploitsA#Free_Wages|don&#039;t get paid]].  Assuming your month has 30 days, if you hire them at 01:00 on the 28th, the 29th and 30th will tick by, and they&#039;ll arrive at 01:00 on the 1st of the next month, meaning you can put them right to work!   (While this &#039;feature&#039; is listed on exploits and I consider it to be such if you&#039;re needlessly shuffling personnel around just before the end of the month, I consider it fair game if you hire them right at the end of the month.)  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:55, 26 January 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
== Salary / Hourly ==&lt;br /&gt;
&lt;br /&gt;
Just a quick note here- &lt;br /&gt;
&lt;br /&gt;
The figure given for a salary is $35/hour.&lt;br /&gt;
&lt;br /&gt;
Doesn&#039;t that depend more on the month in question?&lt;br /&gt;
&lt;br /&gt;
Enemy Unknown treats 1999 as a standard, non-leap year, so the hourly wage of an engineer should be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
(month - hourly wage)&lt;br /&gt;
1 - 33.602/hour (744 hours)&lt;br /&gt;
2 - 37.202/hour (672 hours)&lt;br /&gt;
3 - 33.602/hour (744 hours)&lt;br /&gt;
4 - 34.722/hour (720 hours)&lt;br /&gt;
5 - 33.602/hour (744 hours)&lt;br /&gt;
6 - 34.722/hour (720 hours)&lt;br /&gt;
7 - 33.602/hour (744 hours)&lt;br /&gt;
8 - 33.602/hour (744 hours)&lt;br /&gt;
9 - 34.722/hour (720 hours)&lt;br /&gt;
10 - 33.602/hour (744 hours)&lt;br /&gt;
11 - 34.722/hour (720 hours)&lt;br /&gt;
12 - 33.602/hour (744 hours)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The average salary over the year breaks down to $34.247/hour but will vary considerably in any given month.&lt;br /&gt;
&lt;br /&gt;
Manufacturers-for-profit will have to watch out for February especially.&lt;br /&gt;
&lt;br /&gt;
[[User:Renegrade|Renegrade]] 18:23, 7 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User_talk:Renegrade&amp;diff=28586</id>
		<title>User talk:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User_talk:Renegrade&amp;diff=28586"/>
		<updated>2010-08-07T15:43:23Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hiya, a few notes you might find of interest:&lt;br /&gt;
&lt;br /&gt;
* Notes on how the game image compression formats work can be found [[Image Formats|here]]. Note that just because a file has a certain extension, doesn&#039;t &#039;&#039;always&#039;&#039; mean it uses the associated format: though TFTD inventories do use BDY.&lt;br /&gt;
* TFTD&#039;s battlescape [[PALETTES.DAT|palettes]] are embedded into the game executable somewhere. You can find pre-dumped versions of them in my [http://www.strategycore.co.uk/files/index.php?dlid=686 toolkit], in the file &amp;quot;Pal.java&amp;quot;. There&#039;s lots of other bits of sample code in the kit you might find interesting, though I&#039;d consider it messy even by the standards of those who like high-level languages.  ;) &lt;br /&gt;
* New attempts to &amp;quot;remake&amp;quot; UFO are forever popping up. If you wish to try one, I&#039;d recommend joining a project already under way. Two of the more recent ones: [http://ufotts.ninex.info/ UFO: The Two Sides] is a closed-source example (dunno if there&#039;s any openings for recruits), it cleans up many of the graphics nicely. There&#039;s also [http://openxcom.ninex.info OpenXcom], which as the name implies, is open-source. The most &#039;&#039;advanced&#039;&#039; project, by far, would be [http://ufo2000.sourceforge.net/ UFO2000] - though that&#039;s aimed squarely at the tactical aspects of the original and little else.&lt;br /&gt;
* Regarding alien/HWP inventories, HWPs require code editing to access, and aliens can&#039;t be accessed at all in TFTD. Alien inventory screens for UFO are included in my toolkit (based on their UFOpedia images).&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 22:35, 6 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hi, Bomb Bloke!  Thanks for your input!   I&#039;ll reply point by point below:&lt;br /&gt;
&lt;br /&gt;
* I&#039;ve already been all over [[Image Formats]].  It is indeed very helpful.  Regarding extensions being wrong - I can understand that.  I can&#039;t begin to count the times my own tools have warned me &amp;quot;This is not a BMP&amp;quot; when I save something from MSPAINT and forget to change the dropdown from whatever the source file was.  (mspaint isn&#039;t quite smart enough to realize that &#039;image.bmp&#039; shouldn&#039;t be a PNG image anymore)&lt;br /&gt;
&lt;br /&gt;
* I&#039;m going through your toolkit right now, and I like what I see, it&#039;s very cool.  You probably have enough data format handling routines to handle something like Z-COM stage one right now. (Java-Com?)&lt;br /&gt;
&lt;br /&gt;
* About those other projects - most of them are not being done in my favorite platform - OpenGL / C99.  The Two Sides is a single man coding project from what I read (I haven&#039;t seen it before though); OpenXCom is more in line with what you suggested, but it&#039;s SDL/C++... Also, I tend to program as a personal challenge, with useful utilities, games, or such resulting as a happy side effect rather than being the main goal.  X-COM: Ufo Defense/Enemy Unknown is by far my favorite tile-based, isometric game, and having never written anything like that, it would be something of a learning experience.&lt;br /&gt;
&lt;br /&gt;
* I&#039;m also looking through the UFOGRAPH folder with the images you mentioned (a quick three line one-off shell script turned &#039;em all into BMPs so windows won&#039;t &#039;durr&#039; at them) -- they&#039;re very nice, using the UFOpedia entry images for the paperdolls is very clever, and looks pretty good.  I&#039;d like to know how you managed to get X-COM to load those, though.  XComUtil, I guess?   Anyhow, my own plans regarding inventories had to do with Z-Com rather than X-Com directly.  x86 assembly makes my skin itch, I come from a 68K background (I never played the PC version of X-Com prior to it showing up on gog.com -- my original X-Com experience is Amiga-based), so I&#039;d never be able to mod the original PC X-Com without a serious amount of allergy medication.&lt;br /&gt;
&lt;br /&gt;
FYI though - I&#039;ve already completed a rough draft version of my SPK conversion suite.  It works against 24-bit BMPs, although some of the sub-tools can extract palettes from .PNG files that DOSBOX makes.  It can import any image from any source (so long as it&#039;s 320x200, I didn&#039;t bother making it directly scalable, although it wouldn&#039;t be hard to fix that up)&lt;br /&gt;
&lt;br /&gt;
~ [[User:Renegrade|Renegrade]] 11:43, 7 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28578</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28578"/>
		<updated>2010-08-06T09:25:21Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Enemy Unknown */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code.&lt;br /&gt;
* Make some art~&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs (this has been improved somewhat)&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
* Merge sub-programs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28522</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28522"/>
		<updated>2010-08-05T07:54:47Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Enemy Unknown */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code, merge sub-programs&lt;br /&gt;
* Make some art~&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs (this has been improved somewhat)&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28491</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28491"/>
		<updated>2010-08-04T09:15:11Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Various Utilities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It fixes the &#039;paying for dirt&#039; bug, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.&lt;br /&gt;
&lt;br /&gt;
To do:&lt;br /&gt;
* Improve Color Indexing algorithm.&lt;br /&gt;
* Clean up code, merge sub-programs&lt;br /&gt;
* Make some art~&lt;br /&gt;
&lt;br /&gt;
Done:&lt;br /&gt;
* Reading BMPs&lt;br /&gt;
* Color Indexing (may need improvement)&lt;br /&gt;
* Writing out Uncompressed SPK&lt;br /&gt;
* Compressing SPKs&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
=== NameStat ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s a little program like the StatString one.  This one ranks the agents based on a scaling grade in terms of reaction and aiming, and optionally gives psi ability data.  Agents are ranked from 0-9 (with a special &#039;E&#039; symbol for ones who Exceed the caps), with 0 meaning someone with the lowest possible recruit score, and 9/E being a maximum-skill agent.  &lt;br /&gt;
&lt;br /&gt;
=== UnitScan ===&lt;br /&gt;
&lt;br /&gt;
A little cheat program to scan a battlescape save to show what&#039;s going on.  I use it to find that last alien or two who&#039;s hiding in some obscure corner of the map.  Especially useful for TFTD and it&#039;s complicated maps.&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28484</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28484"/>
		<updated>2010-08-04T05:26:48Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Z-Com */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It does the same thing, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.  (Current progress: reading BMPs, color indexing, and writing out an SPK format file is done.  Todo: compress the SPK with RLE)&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;br /&gt;
&lt;br /&gt;
==== Random Z-Com thoughts ====&lt;br /&gt;
&lt;br /&gt;
* The bug that lets one access a bad inventory (aliens/HWPs) could be fixed in one of two ways, user selectable in config menu:&lt;br /&gt;
# prohibit access to the inventory entirely. Skip over it when toggling through troops.&lt;br /&gt;
# allow access to the inventory, but with proper item storing(ie aliens don&#039;t stick things in that one slot at their feet), a proper paper doll (ie NOT MAN_0M0), etc&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28483</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=28483"/>
		<updated>2010-08-04T05:23:24Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer from Canada who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Various Utilities ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve made some quick and dirty utilities that I&#039;ll be posting up on my homepage soon, after I make them less &amp;quot;dirty&amp;quot;.  That is, properly documented and with proper checks and neatly formatted code.&lt;br /&gt;
&lt;br /&gt;
=== dirt.exe ===&lt;br /&gt;
&lt;br /&gt;
dirt.exe is an executable (w/included C source) based on Spike&#039;s BaseFixer Python script.  It does the same thing, only it doesn&#039;t require a python environment to be installed.   The C runtime is needed (rants about Microsoft and their poor understanding of ABIs needs it&#039;s own dedicated &#039;&#039;wiki&#039;&#039;), but it&#039;s usually present anyways.  I might see about compiling it statically, so that the CRT isn&#039;t needed at all.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;insert additional rant about the good old days and how Amigas could actually run C programs &#039;&#039;without&#039;&#039; the runtime environment by directly calling the necessary system functions which were actually usable unlike those found in other modern systems blahblahblah&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paperdoll Improvement Project ===&lt;br /&gt;
&lt;br /&gt;
==== Enemy Unknown ====&lt;br /&gt;
&lt;br /&gt;
I consider the built-in paper doll artwork in XCOM to be &amp;quot;acceptable&amp;quot;, but I&#039;m drafting up utilities that could take a 24-bit BMP file create a replacement MAN_XXX.SPK file, by color-matching the BMP, compressing with the RLE encoding that SPKs use, and then writing out a .SPK formatted file.  (Current progress: reading BMPs, color indexing, and writing out an SPK format file is done.  Todo: compress the SPK with RLE)&lt;br /&gt;
&lt;br /&gt;
I&#039;d love to commission Niklas Jansson  ([http://www.itchstudios.com/psg/rebelsquad/rebelsquad.htm#art Examples]) to this end.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll be providing the executables, with source, under BSD-style licensing, so that people can create their own backgrounds from whatever BMPs they can create (hint: MSPaint can create BMPs from any cut-paste operation).&lt;br /&gt;
&lt;br /&gt;
The current version supports OS/2 V1 and Win V3 BMPs only, but most things use Win V3 anyways (including MSPaint for XP, and Paint for Vista/7).&lt;br /&gt;
&lt;br /&gt;
==== TFTD ====&lt;br /&gt;
&lt;br /&gt;
I think the TFTD paperdolls are ebil-looking, so they&#039;re next.  My preliminary research here indicates that it&#039;s a different file format, with a different palette, so a new utility will be needed.  This should be fairly straightforward to do, though.   The only downside might be that my distaste of the TFTD paperdolls might be a palette issue rather than an art issue, and any image so converted might befall the same curse.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mission Item Recovery Enhancement ===&lt;br /&gt;
&lt;br /&gt;
The MIRE system - a simple DOS program that is inserted between the tactical and geoscape executables which does more intelligent recovery of ammo.  It&#039;s still in progress, but once it&#039;s done, it will sum up all the various ammo types left in the game after a tactical mission, and &amp;quot;pack&amp;quot; them into the right number of clips.&lt;br /&gt;
&lt;br /&gt;
Example 1:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 8 of them fire 1 shot  (8 bullets)&lt;br /&gt;
** 4 of them fire 2 shots (8 more bullets)&lt;br /&gt;
&lt;br /&gt;
That makes 8 clips with 19 shots left, and 4 clips with 18 shots, for a total of 152+72 = 224/240 rifle bullets.  While only 16 bullets have been spent, the game would delete all 12 clips.  Instead, I propose to fill up 11 of the clips to full bullet value, and then deleting the one partially filled clip.&lt;br /&gt;
&lt;br /&gt;
Ideally the extra 4 bullets lost would be stored somewhere, but even if they can&#039;t be, 4 bullets lost is a lot better than 240 bullets lost, especially if we&#039;re talking Elerium based bullets.  Also, the production cost could be refunded for any &#039;surplus&#039; bullets, possibly.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example 2:&lt;br /&gt;
* 12 soldiers with rifles, with only the one loaded clip. (20 rounds/clip)&lt;br /&gt;
** 5 of them fire 2 shots (10 bullets)&lt;br /&gt;
** 3 of them fire 5 shots (15 more)&lt;br /&gt;
** 2 of them fire 12 shots (24 more)&lt;br /&gt;
** 1 of them empties an entire clip (20 more)&lt;br /&gt;
&lt;br /&gt;
Sum: 69 shot of 240.   171/240 bullets left.  After compacting, there would be 3 entirely empty clips (discarded), plus one clip with 9 shots left (also discarded), leaving 8 clips of 12.&lt;br /&gt;
&lt;br /&gt;
A possible alteration of this design would be to save the last clip if it was half full or better, discard otherwise.  Over time, that should average out to being the right number of bullets saved, roughly.&lt;br /&gt;
&lt;br /&gt;
The other possibility, refunding, would give back some cash value for each bullet, depending on it&#039;s type.  A rifle bullet, for instance, is $10 to buy, or $7.50 to sell. (200/20 or 150/20 respectively).  This isn&#039;t quite as good as getting a fractional elerium unit back, but better than nothing.&lt;br /&gt;
&lt;br /&gt;
=== Z-Com ===&lt;br /&gt;
&lt;br /&gt;
One day, time permitting, I&#039;d like to write an X-Com emulator (I&#039;ve code-named this &#039;Z-Com&#039; after Sluggy Freelance&#039;s Z-Com: UFO Defensiveness gag), which would re-create as much of the original X-COM feeling, but with the following enhancements:&lt;br /&gt;
&lt;br /&gt;
* 3D accelerated engine (no more lag on the upper levels of Battleships!)&lt;br /&gt;
* Enhanced art, but with the same &#039;&#039;style&#039;&#039; as the original&lt;br /&gt;
* Higher resolution graphics (less jaggies!)&lt;br /&gt;
* Better stores/soldiers/ammo management capabilities&lt;br /&gt;
* Better compatibility (I&#039;d like to point out that one of my oldest DirectX games, written for Pentium MMX/DirectX 3-5, runs just fine on my Windows 7/64 system. I don&#039;t see how these professional developers can mess things up like DirectX surface stride)&lt;br /&gt;
&lt;br /&gt;
Unfortunately it would involve a lot of work, and I may never have enough free time to do it.&lt;br /&gt;
&lt;br /&gt;
If it did happen though, it would likely happen in stages:&lt;br /&gt;
&lt;br /&gt;
# A drop-in executable that would load/save using existing XCOM files/savegames/etc, using the original graphics.&lt;br /&gt;
# Enhancements to above (MIRE, XCU* style soldier kits, except maybe more permanent)&lt;br /&gt;
# Specification for user-created advanced graphics files (3D models instead of sprites, 24-bit backgrounds, etc)&lt;br /&gt;
# Implementation of user-created graphics sets&lt;br /&gt;
&lt;br /&gt;
The final version would run entirely on it&#039;s own without any original XCOM data.&lt;br /&gt;
&lt;br /&gt;
Asterisk = disclaimer - I&#039;ve never used XCU, I don&#039;t know how those kits work, but I imagine it would be very handy if implemented properly.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Spike&amp;diff=28482</id>
		<title>User:Spike</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Spike&amp;diff=28482"/>
		<updated>2010-08-04T05:14:41Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Base Fixer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi, my name is Spike. I live in London. My mates all played XCom when it came out, when they were feckless students, but I had a job so I didn&#039;t get to play. I&#039;m making up for lost time now. I love retro tactical SF games. I like to play Laser Squad, MegaTraveller, any old rubbish. &lt;br /&gt;
&lt;br /&gt;
I think one of the reasons is these TU-based tactical games are all variants of the old miniatures rules by GDW - Snapshot, Mayday, Azanti High Lighting etc. In the day, how we wished for a computer program to help us with the tedium of playing those games by hand. Even Laser Squad would have blown us away. &lt;br /&gt;
&lt;br /&gt;
Having said that I don&#039;t play any head-to-head stuff, like X-Com 2000. I imagine I would get my arse kicked. &lt;br /&gt;
&lt;br /&gt;
This site is fantastic to use, so it&#039;s nice to be able to make some small contributions to the site, and the game.&lt;br /&gt;
&lt;br /&gt;
= Musings =&lt;br /&gt;
&lt;br /&gt;
To avoid spamming the site Discussion pages, and spamming people with &#039;watch&#039; enabled on those pages, I&#039;m going to start doing the decent thing and composing my musings here on my own page. If I get my thoughts edited and reasonably coherent I will then transfer them to Discussion pages and then onto actual articles. &lt;br /&gt;
&lt;br /&gt;
Here are some of the topics I am interested in at the moment...&lt;br /&gt;
&lt;br /&gt;
== Economics ==&lt;br /&gt;
&lt;br /&gt;
The Geoscape game is a classic resource game and delivers lots of great game play in its own right, even when not intercepting or doing tactical missions. Economics is key. Looking at the the economic articles on the site at the moment, they focus on making money. What I am interesting in is &#039;fixing&#039; the economics so it all makes more sense. &lt;br /&gt;
&lt;br /&gt;
=== Efficient market ===&lt;br /&gt;
&lt;br /&gt;
At the moment it is possible to sell lots of things for either profit or loss that does not make sense. I would like to fix the buy and sell prices so that they balance out and there are no egregious opportunities for arbitrage, or the reverse. For example I&#039;ve calculated that based on the maximum profit you can make out of Elerium and Alloys (the raw materials in the economy of XCom), the price of Alloys and Elerium should both be quite a lot higher. Or alternatively some of the prices of manufactured products should be lower. &lt;br /&gt;
&lt;br /&gt;
I would like to just true up all the prices of everything to reflect the economic costs of production, and to allow them to be sold at a modest profit. (And bought at a modest premium, see below). It&#039;s not good that there are so many &#039;black hole&#039; items that are hideously unprofitable to produce, and a few &#039;optimum&#039; items that everyone manufactures all the time. &lt;br /&gt;
&lt;br /&gt;
==== See Also ====&lt;br /&gt;
&lt;br /&gt;
Until I incorporate them here, see also my sections in [[Talk:Manufacturing_Profitability]]&lt;br /&gt;
&lt;br /&gt;
==== Capital costs and interest ====&lt;br /&gt;
&lt;br /&gt;
Correct pricing needs to take account not only of raw materials, labour and maintenance inputs, but also capital costs (initial hiring, facility building). For this an interest rate (cost of capital) needs to be posited for XCom. Given XCom&#039;s status as a covert internationally funded organisation, reasonable access to money markets could be assumed. For game purposes a capital cost of 5% - 10% is probably fine. Even 1% per month would probably work fine given the game&#039;s short time horizons. &lt;br /&gt;
&lt;br /&gt;
Actually the return to capital can probably be calculated quite easily (based on production costs vs profits on the most profitable items). If X-COM were actually to be allowed to borrow, it should be charged at least near to this much interest or otherwise a free money machine is created. Because of X-COM&#039;s short-term, high stakes objectives and potentially massive future cash flow, it would probably borrow very heavily if it could to build up a strong position. But then, who would lend to an entity that not only doesn&#039;t exist, but is fighting a life or death struggle against powerful forces beyond our comprehension? &lt;br /&gt;
&lt;br /&gt;
A tricky question though with capital costs is how to amortise them over the production of multiple items.  Obviously the worst case is to charge the entire capital cost to the first unit produced (a possibility worth considering under &#039;External Markets - Buying&#039;, below). We could make some educated guesses about the order of magnitude, based on the likely market size. Again, see below under &#039;Inelastic Demand&#039; for some guesstimates - thousands for small arms, hundreds for aircraft weapons, dozens for aircraft. Unfortunately this is a better &#039;efficiency of scale&#039; than X-COM gets in the standard game, so it would make the game easier. For purposes of game balance over realism, we need to amortise over numbers that make sense in the time frame of a single X-COM campaign. For balance, that might be more like ten for small arms, 2-4 for craft weapons and 1 for aircraft. This comes in to play more with the &#039;External Markets&#039; angle.&lt;br /&gt;
&lt;br /&gt;
=== External market ===&lt;br /&gt;
&lt;br /&gt;
At the moment you can buy and sell conventional equipment but only sell some advanced equipment (and not all of that), and not buy any of it. &lt;br /&gt;
&lt;br /&gt;
==== Selling ====&lt;br /&gt;
&lt;br /&gt;
As long as egregious profits are not being made (see preceding section), I think you should be able to sell all manufactured products eg aircraft. After all, the funding nations (and others) would no doubt like to get their hands on aircraft with such advanced characteristics. The problem of course is setting a fair sale price. Probably the game designers didn&#039;t have the time to do the exhaustive manufacturing analysis that has since been done on this site and other fan sites. With the benefit of this data, we can set fair prices for all manufactured components and allow them to be sold (by editing [[PURCHASE.DAT]]). Standard (or higher?) fixed profit ratios would apply for buy vs. sell pricing of manufactured goods. &lt;br /&gt;
&lt;br /&gt;
===== Inelastic demand =====&lt;br /&gt;
&lt;br /&gt;
Demand for advanced, alien  and conventional items is totally inelastic in the standard game: the price does not drop no matter how many units you sell. On reflection, I don&#039;t think this is that unrealistic. For conventional items, XCom purchases and sales are a microscopic part of the whole traded economy in such items - outfitting a maximum of 250-odd soldiers will not make a dent. For advanced and alien items, demand is never really going to drop. Once the US special forces have been outfitted with Heavy Plasmas, the Israeli, Russian, and French special forces will want to catch up. (And the British SAS might get around to buying some Laser Rifles, ha ha). &lt;br /&gt;
&lt;br /&gt;
Much less would the nations of the world say no to purchasing high performance hybrid aircraft. They would pay millions (and perhaps this is why the game designers did not permit the sale of aircraft). &lt;br /&gt;
&lt;br /&gt;
I can see buyer fatigue setting in if hundreds or thousands of laser cannon are produced for sale, as these are limited to combat aircraft and there are only a few thousand front line combat aircraft in service at any given time. Another reason to diversify the options away from a handful of &#039;optimum&#039; manufacturing items. &lt;br /&gt;
&lt;br /&gt;
If you wanted a cap you could probably specify about $1 billion of inelastic demand for advanced items of each type. 7000 Heavy plasmas - about enough to equip 12 special forces battalions. A hundred or so of each aircraft type. After that the market might start to get a bit soft. And maybe the market for e.g. Mind Probes would be more limited.&lt;br /&gt;
&lt;br /&gt;
I think there&#039;s a case that the very first few examples of each item would have a much higher price. But perhaps we can posit that as part of its funding agreement, XCom has agreed to sell recovered weapons etc back to the Funding Council nation at reasonable and stable prices. Possibly the sales are allocated to funding nations by rota in the early stages - that would make sense. The funding nations get allocated artefacts &amp;quot;by lots&amp;quot; and are then free to resell them to each other or, eventually, on the open market.&lt;br /&gt;
&lt;br /&gt;
==== Buying ====&lt;br /&gt;
&lt;br /&gt;
Slightly more interesting is allowing the &#039;External Market&#039;, in the form of military-industrial firms with links to the funding nations, to produce advanced items. This would then allow XCom to simply buy, rather than manufacture, items such as Avengers. &lt;br /&gt;
&lt;br /&gt;
The pricing would simply be the total economic cost, as determined by the &#039;Efficient Market&#039; process above, plus some profit margin - probably the standard buy/sell profit margin which is about 33%.&lt;br /&gt;
&lt;br /&gt;
Now obviously you don&#039;t want to make advanced items available from the start, that would defeat a lot of the challenge of the game. From a game play point of view what you want to do is give the player a reasonable alternative of buying vs manufacturing the item, once they have done the necessary research. &lt;br /&gt;
&lt;br /&gt;
Options for doing this... say that an item can be bought on the open market:&lt;br /&gt;
&lt;br /&gt;
:1. Once the item has been captured.&lt;br /&gt;
:2. Once one (or more?) examples of the item have been &amp;lt;u&amp;gt;sold&amp;lt;/u&amp;gt; onto the market.&lt;br /&gt;
:3. Once the item has been researched by XCom.&lt;br /&gt;
:4. Once one example has been manufactured by XCom (this could be hard to check for though).&lt;br /&gt;
:5. Any of the above, plus a time delay. For 1-2 this would be related to the Research time.&lt;br /&gt;
&lt;br /&gt;
In cases 1-2 the Research is being done outside of XCom which really changes the game. In this case there should be a big premium payable to the external arms company that owns the patents etc. This can be done in PURCHASE.DAT as the buy and sell prices can be set independently of each other, so set the Buy price at 200% of Sell price (vs the more normal 133% of sell price). Or at the very least we could put the price of the item up by say 50-100%. Keep in mind that as part of &#039;Efficient Pricing&#039; we have (in theory!) already factored in the cost of the research effort (scientists, labs, capital etc).&lt;br /&gt;
&lt;br /&gt;
In general though I don&#039;t favour bypassing the Research tree so that favours options 3-5. 3 is easy to check for in the game files. 4 is tricky, at least for alien items, because while you can see items under construction, you might miss the moment they are constructed. For non-alien items, the mere existence of the item in the game proves it has been manufactured. &lt;br /&gt;
&lt;br /&gt;
As an extra variant you might say that only hybrid items, not pure alien items, can be manufactured by the external firms. So while laser rifles, a power suit or an Avenger can be built, and indeed mass produced, by a high tech arms company, only X-COMs &amp;quot;Deep Black&amp;quot; science labs can painstakingly assemble small numbers of genuine alien items like Mind Probes, Blaster Launchers, etc. &lt;br /&gt;
&lt;br /&gt;
I&#039;d be quite comfortable with this variant (hybrid only) and it makes it easier to police option 4 which is the most challenging and probably the best for gameplay. Or you could mix 3 and 4, charging a 50%-100% premium on purchases until such time as X-COM has produced their own example of an item. &lt;br /&gt;
&lt;br /&gt;
There is also the question of delivery times. Delivery times for the Avenger are very long and compressing that to 72 hrs would seriously affect the game balance. I think that PURCHASE.DAT can be hacked to lengthen the delivery times for specific items. Probably the delivery time should be based on a reasonable setup such as a 100-space workshop with as many engineers will fit. We don&#039;t really want to provide advantages to buying the Avenger, we just want it to be a not unreasonable option. &lt;br /&gt;
&lt;br /&gt;
One final question is availability of resources, especially Elerium which is the only thing that can&#039;t be manufactured. The price of Alloys can be computed with a floor equal to the labour &amp;amp; capital costs of production, and a ceiling based on the most profitable item you can produce with Alloys (Mind Probes I think from memory). The price of Elerium should be &amp;lt;u&amp;gt;at least&amp;lt;/u&amp;gt; the value derived from the most profitable item you can build with Elerium. Potentially it is much higher, since Elerium is scarce and has other very valuable irreplaceable functions (hybrid aircraft fuel, winning tactical missions, saving the world...).&lt;br /&gt;
&lt;br /&gt;
A strict interpretation would be track the amount of Elerium sold (and anything else that can&#039;t yet be manufactured by the external market at that time, eg Alloys / UFO Power Sources / UFO Navigations). You would then not be allowed to buy more manufactured items than could be built using the total resources sold up to date to the &#039;external market&#039;. But apart from patching the game I can&#039;t think of any way to do this kind of double accounting. Actually I can, in XComUtil you could record all UFO recoverables after each mission, and then subtract from that all XCom stores and the inputs to all existing manufactured items (ignoring anything destroyed - presume comprehensive recycling of such valuable scrap). But that would be a hassle to code up. &lt;br /&gt;
&lt;br /&gt;
There is an argument for a &amp;lt;u&amp;gt;highly&amp;lt;/u&amp;gt; elastic price for Elerium, based on the total supply. Of course, as players we &#039;know&#039; that (apart from variant self-imposed rules like 1-Mission or No Detection etc) there is ample Elerium just around the corner. That&#039;s the reality of the standard game, so in a standard game a fixed price for Elerium is probably justified.&lt;br /&gt;
&lt;br /&gt;
=== The Elerium Standard ===&lt;br /&gt;
&lt;br /&gt;
This brings me back to the beginning in a logical circle. Prices are all relative, so what is the reference point? You can do this one of two ways. Either take the most profitable item in the game, and work back from that to deduce the correct price for Elerium (pricing all other components along the way, eg Alloys, Power, Navigation). Or, you can take the price of Elerium as it is, and work your way &#039;up&#039; the chain, correcting the prices for everything built from Elerium. I like the first method because it has the least impact on existing revenue-generating options from manufacturing. The revenue a player can create should stay exactly the same (proportionate to the inputs of labour, capital, raw materials); they just have many more ways of generating that revenue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Realistic External Demand ===&lt;br /&gt;
&lt;br /&gt;
Realism is often the enemy of game balance when it comes to selling. The things that governments (and others) would pay highly for, are also the things that are useful to XCom. And the prices that governments would pay would distort the cash balance of XCom. The best explanation is that prices to XCom are merely commissions or honoraria, and the prices of these are &amp;quot;fixed&amp;quot; by the Council of Funding Nations (CFN). Still it&#039;s interesting to speculate what governments would actually pay for advanced equipment. &lt;br /&gt;
&lt;br /&gt;
In general governments would pay most for items that affect the strategic balance, and less for items that are of merely tactical value. In the tactical realm, they would pay most for items that create &amp;quot;step change&amp;quot; improvements, rather than just incremental increase in effectiveness. &lt;br /&gt;
&lt;br /&gt;
Potentially the biggest strategic impact comes from the psionic technology, the Psi Lab and Psi Amp as well as the Mind Probe. These offer massive advantages to intelligence agencies, diplomats, security agencies, and repressive or paranoid regimes. It is reasonable to assume these technologies will &#039;&#039;&#039;not&#039;&#039;&#039; be for sale outside the CFN. The offensive capabilities are too great - mind control of Presidents, mind reading of negotiators and senior officials. Even the very existence of these capabilities would need to be kept totally secret. It&#039;s not clear how much non-tactical information can be gleaned from a Mind Probe. If we assume that Mind Probes could detect a mind-controlled individual - &amp;quot;which &#039;&#039;side&#039;&#039; is he on?&amp;quot; - then for defensive measures versus aliens (or other CFN nations), that require no special abilities to use, these items would be in high demand. &lt;br /&gt;
&lt;br /&gt;
The other major strategic impact is air superiority. Creating or denying air superiority can have a major effect on the strategic balance of power. An aircraft that could enter an attack another country&#039;s airspace with near impunity - perhaps carrying nuclear weapons - would be a major power shift. So aircraft, and aircraft weapons, are the next major group. Whether it is the weapons or the aircraft that make the difference depend on the specifics. However I would suspect it is the aircraft. Advanced XCom aircraft have aerodynamic performance characteristics far in advance of the most advanced terrestrial aircraft (the Interceptor). Regardless of combat performance, the aerodynamic performance means that advanced aircraft can avoid any combat that is not on favourable terms. This means that as a strike aircraft they would defeat air superiority and in fact be nearly unstoppable - except by other aircraft with the same performance characteristics. Therefore I believe the advanced aircraft would be the most expensive selling item, after the the psionic technologies. &lt;br /&gt;
&lt;br /&gt;
If we look at the combat capabilities of advanced hybrid aircraft and advanced craft weapons, as opposed to their flight capabilities, there is not such a &amp;quot;step change&amp;quot; in these capabilities. The improvement on the defensive side is more significant than the offensive side, which again suggests that the aircraft platform is more important than the weapons. A Firestorm, Lightning, or Avenger has 5x, 8x, or 12x the damage capacity of an Interceptor. A Plasma Beam has less than twice the firepower (damage per unit of time) of Avalanche missiles. &lt;br /&gt;
&lt;br /&gt;
Defensively, it takes an average of 20 Avalanche launches (10 dual volleys) to bring down an Avenger, versus an average of 1.66 launches (0.83 dual volleys) to bring down an Interceptor. A single Avenger armed only with Avalanches, fighting 4 Interceptors armed with dual Avalanches, would likely kill 3 opponents, sustaining 8 x 60 + 6 x 60 + 4 x 60 = 1080/1200 damage. An Avenger can&#039;t carry enough Avalanche ammunition to kill a 4th opponent, but if it did, or if it mounted a single Plasma beam, the odds are about even to wipe out the whole enemy flight. (An interesting thought - max ammo capacity should really be based on the aircraft size not just the weapon type.)&lt;br /&gt;
&lt;br /&gt;
On the offensive side, vs Interceptors the weapons don&#039;t make much difference. A dual Plasma beam will bring down an Interceptor on the first volley, on average. So will the first volley from dual Avalanches - albeit the Avalanches (even on Aggressive) take twice as long to reload for the next volley, compared to the Plasma Beam. So not a great deal is gained against conventional opponents by having advanced weapons. In fact, an Interceptor armed with Avalanches will most likely kill an Interceptor armed with Plasma Beams before it enters weapon range. So better weapons are only really needed if you are concerned about fighting UFOs, or advanced hybrid aircraft. &lt;br /&gt;
&lt;br /&gt;
None of the infantry offensive or defensive equipment really gives a decisive advantage. The top items are probably the Power Suit / Flying Suit and the Blaster Launcher / Stun Launcher. The Power Suit gives a soldier the defensive power of a light tank. meaning that accurate or repeated or concentrated fire from squad support weapons is required to stop him. The Flying Suit is slightly stronger and the novelty of flight would attract special forces use. While these are all &amp;quot;force multipliers&amp;quot;, as is Personal Armour to a lesser extent, there are no real &amp;quot;step changes&amp;quot; in the infantry area. The Blaster Launcher is the closest thing to a step change, probably, with extremly high destructive power and incredible guided capability. This would again make it a desirable item for special forces, especially those contemplating going up against aliens. But it is expensive to operate, not an essential item, and not a true step change. The Stun Launcher is just a specialised item that would attract special forces because of the ability to more easily capture hostile targets (human or alien). &lt;br /&gt;
&lt;br /&gt;
In all these issues there is an obvious &amp;quot;arms race&amp;quot; effect. Once one government knows other governments have psionics, or Mind Probes, it will want them urgently for itself. Once advanced aircraft are in the enemy fleet, advanced fighters &#039;&#039;and&#039;&#039; advanced aircraft weapons become imperative. At the tactical level, advanced infantry armour becomes a strong driver for procuring advanced infantry weapons, and (less crucially) the same kind of armour.&lt;br /&gt;
&lt;br /&gt;
In summary, the demand price ranking of technologies, in order of most expensive first, should be:&lt;br /&gt;
&lt;br /&gt;
Psionics - Primarily Offensive&lt;br /&gt;
&lt;br /&gt;
*Psionic Laboratory&lt;br /&gt;
*Psionic Amplifier&lt;br /&gt;
&lt;br /&gt;
Psionics - Primarily (not entirely) Defensive&lt;br /&gt;
&lt;br /&gt;
*Mind Probe&lt;br /&gt;
&lt;br /&gt;
Air Superiority&lt;br /&gt;
&lt;br /&gt;
*Avenger&lt;br /&gt;
*Firestorm&lt;br /&gt;
*Lightning&lt;br /&gt;
*Elerium - required to operate these craft&lt;br /&gt;
&lt;br /&gt;
Air Combat Weapons&lt;br /&gt;
&lt;br /&gt;
*Fusion Ball Launcher (very limited market as it requires Elerium-based ammo)&lt;br /&gt;
*Plasma Beam&lt;br /&gt;
*Laser Cannon (if fixed to be useful - might even be the most popular since requires no Elerium)&lt;br /&gt;
&lt;br /&gt;
Battlefield Equipment&lt;br /&gt;
&lt;br /&gt;
*Blaster Launcher (specialised market as it requires Elerium-based ammo)&lt;br /&gt;
*Power Suit (biggest market)&lt;br /&gt;
*Flying Suit (specialised market)&lt;br /&gt;
*Stun Launcher (specialised market)&lt;br /&gt;
*Hovertank chassis, though none of the weapons are interesting compared to their man carried versions&lt;br /&gt;
*Plasma Weapons (specialised due to ammo requirements)&lt;br /&gt;
*Personal Armour (mass market)&lt;br /&gt;
*Laser Weapons and tanks - non-hybrid tech, serious nations can research this themselves?&lt;br /&gt;
&lt;br /&gt;
== Detection ==&lt;br /&gt;
&lt;br /&gt;
=== Detection by Aircraft ===&lt;br /&gt;
&lt;br /&gt;
See my sections in [[Talk:UFO_Detection#Detection]]&lt;br /&gt;
&lt;br /&gt;
=== Fixing Multiple Radar ===&lt;br /&gt;
&lt;br /&gt;
See my section in [[Talk:UFO_Detection#Multiple_Radar_Effectiveness_Algorithm_and_Hack]]&lt;br /&gt;
&lt;br /&gt;
[[User:Seb76|Seb76]] now has a brilliant fix for this bug in his UFO Extender. Also see the Tools section below for the Base Fixer.&lt;br /&gt;
&lt;br /&gt;
The algorithm I used for the Base Fixer was:&lt;br /&gt;
&lt;br /&gt;
:        smallf =  (0.9) ** nsmallradar&lt;br /&gt;
:        largef =  (0.8) ** nlargeradar&lt;br /&gt;
:        xdetshort = int (round ((1 - smallf * largef ) * 100))&lt;br /&gt;
:        xdetlong = int (round ((1 - largef ) * 100))&lt;br /&gt;
:        #special case backward compatible&lt;br /&gt;
:        if nsmallradar == 1 and nlargeradar == 1 :&lt;br /&gt;
::            xdetshort = 30&lt;br /&gt;
::            xdetlong = 20&lt;br /&gt;
&lt;br /&gt;
I&#039;ve confirmed TFTD also sufffers from a &amp;quot;Sonar Stacking&amp;quot; bug and is in fact identical to UFO:EU, the only difference being a different offset in [[BASE.DAT]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Phantom Radar Bug (Talk) ===&lt;br /&gt;
&lt;br /&gt;
Is listed at [[ExploitsA#Phantom_Radar_Trick]].  Thanks for adding, though.  Also, I&#039;m under the impression that building a new structure, even starting one, eliminated Phantom Radar; so upgrading-in-place cannot be done.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 21:52, 17 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:OK thanks for that. i will test but you are probably right! removed this text: &lt;br /&gt;
This bug allows you to &amp;quot;upgrade in place&amp;quot;, for example building a new Hyper-Wave Decoder over the top of an existing Large Radar, and retaining the detection capability of the Large Radar until the Hyper-Wave Decoder completes building. (Unless something else completes building first).&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 02:10, 18 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: For XCOM CE (since I stare at this in a hex editor a lot):&lt;br /&gt;
: * Completing any new structure causes the radar stats to be recalculated at the base the structure completes at.&lt;br /&gt;
: * Starting new structures is perfectly safe.&lt;br /&gt;
: -- [[User:Zaimoni|Zaimoni]] 7:49 18 March 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
OK I&#039;ve done some tests and confirmed what Zaimoni said is right. Upgrade in place is possible. If you dismantle a small radar and build a large radar over it, the SR detection value applies until the large radar (or any other facility) completes building in that base. I see the detection values in base.dat and I also get detections/intercepts from the base that has &amp;quot;no radar&amp;quot;. The Base Information screen detection strength shows zero but base.dat shows 10%. &lt;br /&gt;
&lt;br /&gt;
Reinstating the &amp;quot;upgrade in place&amp;quot; comments in the Known Bugs entry!&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 17:47, 19 March 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Balancing Infantry Weapons ==&lt;br /&gt;
&lt;br /&gt;
=== Starting Weapons ===&lt;br /&gt;
&lt;br /&gt;
[[Talk:Rifle#Rifle Rebalancing|Rifle]] (and the Pistol too, really)&lt;br /&gt;
&lt;br /&gt;
The Heavy Cannon and Autocannon are so finely balanced that it&#039;s too close to call, so no work to do there. &lt;br /&gt;
&lt;br /&gt;
High Explosive is already useful as a mega-grenade thrown by Schwarzenegger types, so there is no need to boost it to tear open UFO hulls, in my opinion.&lt;br /&gt;
&lt;br /&gt;
Grenades and Proximity Grenades work fine. Nothing to do. &lt;br /&gt;
&lt;br /&gt;
=== Rockets ===&lt;br /&gt;
&lt;br /&gt;
Might be nice to replace the Small Rocket with something more useful, as really this is a wasted weapon. Illumination or smoke rocket? Flechette round - how could that be implemented? A bit like Seb76&#039;s Heavy Laser, with say 20 rds of AP autofire into a limited arc? Or how about a proper anti-armour round, something that might punch a hole in a Cyberdisc or a UFO hull. A shaped charge would require hefty coding though, not just fiddling with OBDATA.DAT. All the explosions in XCom are omni-directional (well, planar). Even crimping an explosion down to one hex would be tricky I think? And not terribly realistic. What you actually need is a high-yield HE (190+) that drops off much faster than the standard 10 pts of HE per tile. Say 50 per tile. Is that doable as a UFO Extender mod? &amp;quot;If weapon == HEAT Rocket, explosion_reduction := 50&amp;quot;? A wackier way of doing a shaped charge would be to use a regular HE round but mod the tiles on the near side of the blast to have massive HE block. Then restore normal HE block after the explosion. Again sounds very tricksy.&lt;br /&gt;
&lt;br /&gt;
=== Laser Weapons ===&lt;br /&gt;
&lt;br /&gt;
Practically perfect. A curmudgeon might be tempted to toy with the Laser Pistol, suggesting it is overpowered. I dont care. Dumb but effective, it is XCom&#039;s first great equaliser in the fight against the aliens. Cant give up that great feeling. &lt;br /&gt;
&lt;br /&gt;
The Laser Rifle of course is immaculate, a masterpiece of human engineering. Cydonia must fall to the Laser Rifle! Plasma is for wimps!&lt;br /&gt;
&lt;br /&gt;
There are various Heavy Laser buffs, including XComUtil and UFO Extender. Any of these is fine. &lt;br /&gt;
&lt;br /&gt;
=== Plasma Weapons ===&lt;br /&gt;
&lt;br /&gt;
The Plasma weapons might need to be toned down a bit as there is no incentive to ever use anything else (bar some special situations, e.g. those that have Laser Rifle written all over them). Ultra light, almost no TU penalty for auto fire. Snap shots kind of pointless, especially given the high ammo capacity. In a lot of ways the basic mechanics of them defy explanation. It seems you just kind of wave these guns at the target and kill it. But then, they are &amp;quot;ray guns from outer space&amp;quot;. One of the best nerfs is the XComUtil option where you can no longer manufacture them, only use them (and make ammo). But then it&#039;s not as if they are in short supply. &lt;br /&gt;
&lt;br /&gt;
It would be good if the Heavy Plasma was not quite so optimum. Making it actually heavy (a UFO Extender option) is a small but good idea. Reduced ammo capacity, more like the Sonic Cannon, would be better. I think the designers of TFTD realised the Sonic Cannon was going to fall into enemy hands, and nerfed the ammo accordingly. Let&#039;s face it, aliens don&#039;t usually get the chance to run out of ammo. So high ammo capacity favours XCom. &lt;br /&gt;
&lt;br /&gt;
To be honest I have not thought much about Plasma Weapons and I don&#039;t have a strong opinion, or barely an opinion at all. But the Plasma Rifle seems odd. More accurate than Heavy Plasma in Snap and Auto, but less accurate in Aimed? How do we make sense of that? A more distinctive role for the Plasma Rifle would be good. Some people hoard them as allegedly great sniper weapons. I don&#039;t see that, really. It just seems to be a mostly inferior Heavy Plasma to be tossed aside when its big brother is available. In alien hands, it is just the Heavy Plasma Lite. It is just a &amp;quot;Medium Plasma&amp;quot;. It&#039;s not a &amp;quot;Rifle&amp;quot; in any sense, is it? You might just want to rename all these weapons, devices, whatever-they-are, &amp;quot;Small Plasma Unit&amp;quot;, &amp;quot;Medium Plasma Unit&amp;quot;, &amp;quot;Large Plasma Unit&amp;quot;. Maybe you aim them with mind waves, like UFO Navigation. Maybe accuracy should be based on Psi Skill. I am rambling now. &lt;br /&gt;
&lt;br /&gt;
What kind of weapon is a Heavy Plasma, anyway? It comes across as a kind of Cosmic Kalashnikov, for when you &amp;quot;absolutely, positively gotta kill every cloner-cloning alien in the room&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
You could do some interesting things to restrict the ammunition. You could make it not manufacturable. But there is a lot of ammo laying around. You could make the weapons &#039;&#039;not reloadable&#039;&#039;. Now that would be interesting. We can&#039;t make them and we can&#039;t reload them. We can only fire them. They recharge by being hooked up to a UFO reactor in a way we cannot reproduce. Or hey, they are alien weapons, maybe they just don&#039;t recharge them, they are disposable weapons. Certainly explains why there are none left by the time of TFTD.&lt;br /&gt;
&lt;br /&gt;
=== Tank Weapons ===&lt;br /&gt;
&lt;br /&gt;
It has often been observed that HWP weapons are often less powerful than their man-carried equivalents. Seems odd on something at least 4 times bigger than a man, which is designed to carry weapons. &lt;br /&gt;
&lt;br /&gt;
But presumably this was a conscious game balance decision by the designers, and not just an accident? &lt;br /&gt;
&lt;br /&gt;
Would it hurt much to uprate the HWP weapons to the same damage level as the man carried equivalent (where that is a higher value)? Not really. Accuracy and RoF would still be HWP levels of accuracy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Balancing Aircraft Weapons ==&lt;br /&gt;
&lt;br /&gt;
=== General Principles ===&lt;br /&gt;
&lt;br /&gt;
*All weapons should at least have some niche role in which they are most effective or at least most cost-effective. &lt;br /&gt;
*Historical realism should be observed if possible but not at the expense of game balance.&lt;br /&gt;
*Trade off between offence (firepower, payload) and defence (range, especially stand-off range)&lt;br /&gt;
*Trade off between range and firepower&lt;br /&gt;
*Trade off between firepower and payload&lt;br /&gt;
*Trade off between all factors vs cost (purchase cost and operate cost)&lt;br /&gt;
*Cost factors need to be significant within the context of the game, i.e. relative to XCom budget, income, and yield from Crash Recovery missions. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Roles ===&lt;br /&gt;
&lt;br /&gt;
*Cannon-type weapons should be for close-in, aggressive actions, where defence of the XCom aircraft is neglected. Since the XCom aircraft will take damage while closing the range, the firepower (not just the payload) should be better than the longer ranged weapons.&lt;br /&gt;
*Missiles therefore, if they have standoff advantage, should have lower total overall reliability for killing UFOs than cannon-type weapons.&lt;br /&gt;
*Another role for Cannon is finishing the job after missiles have only partly damaged the target. That rarely happens at the moment. Missiles would need to be less powerful for that to happen. Even then, it would never make sense to mount one less missile launcher and replace it with a Cannon. &lt;br /&gt;
*In real life a cannon is often a built in weapon so there is no choice between having missiles and a cannon. A built in cannon is an auxilliary weapon, a freebie, that is not the primary air to air weapon but can be used in certain situations. An aircraft with a pod-carried cannon that used up missile slots would be unlikely to mount that weapon in an air superiority configuration. &lt;br /&gt;
*It is odd that XCom is even bothering to mount Cannon on its aircraft, given how difficult the problem of air superiority vs UFOs is known to be, even before the creation of XCom. We almost need to &#039;&#039;invent&#039;&#039; a reason why XCom craft carry Cannon. Apart from just shooting down Small Scouts. It&#039;s debatable whether Cannon really are effective even in that role. They are more likely to bring the Small Scout down in one piece IF they get in to firing range. It is so much easier to get into range with Stingrays that despite the high rate of total destruction (57%) you would still generate more Crash Recovery missions per intercept by using Stingrays instead of Cannon. &lt;br /&gt;
*Similarly Stingrays need some justification for their existence. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Common Elements ===&lt;br /&gt;
&lt;br /&gt;
These elements are needed, regardless of which approach to rebalancing is adopted. &lt;br /&gt;
&lt;br /&gt;
==== Fusion Ball Launcher ====&lt;br /&gt;
&lt;br /&gt;
As Cesium suggests in [[Talk:Craft_Armaments#Fusion_Balls_better_than_Plasma_Beams.3F|this discussion]], the FBL needs to be buffed to be useful and the main thing is to increase the ammo capacity to 3. 2 rounds is such a weird number though, makes me think maybe it was reduced in playtesting. Well if they thought a 3-rd FBL was too powerful in playtesting, the playtesters had too much money. FBLs are very expensive to operate so they ought to have a tactical niche in which they excel. The analysis I did suggests they are tactically superior to Plasma Beams, in terms of &#039;force protection&#039;. It&#039;s a very expensive way of protecting your fleet but it is cost-effective. It is still debatable whether the hassle of switching weapons is justified, because FBLs are only really appropriate for the Big Battleship Defence missions. &lt;br /&gt;
&lt;br /&gt;
I don&#039;t think its necessary to increase the FBL damage as well. Particularly since in my Tougher UFOs rebalance I want to reserve 255 damage for the Battleship weapon. &lt;br /&gt;
&lt;br /&gt;
However the 3 rd FBL is the only other mod required to make the Cost Based Solution work. In fact it fits in nicely with the Cost Based Solution because it is yet another bloody ridiculously expensive (but effective) launched weapon.&lt;br /&gt;
&lt;br /&gt;
==== Extra Initial Cannon Ammo ====&lt;br /&gt;
&lt;br /&gt;
Normally Commanders immediately throw away most or all of the initial 4 Cannon and ammo provided. If, instead, the Cannon is rebalanced and becomes a useable weapon, the initial Cannon logistics are revealed as being unhelpful (maybe the playtesters never used the Cannon either). Perhaps the XCOM Quartermaster astutely realises that the (unmodified) Cannon is not much use, and conserves store space. Unlike all the other starting aircraft weapons, you don&#039;t have enough ammo even to load all the weapons you are given. In fact you barely have enough spare ammo (only 50 rds) to operate the Cannon as a weapon and still be able to keep your initially mounted weapons fully loaded. This is despite the fact that Cannon ammo is far and away the cheapest. &lt;br /&gt;
&lt;br /&gt;
Unfortunately extra Cannon rounds, like all aircraft ammunition types, take 4 days (96hrs) to arrive. This will seriously cramp the style of anyone wanting to use a Cannon strategy, especially if they want to mount dual Cannons on 1 or more aircraft. This is not possible with the initial ammo stocks (because in the rearming sequence, the left weapon must be fully loaded before the right weapon begins to load). Even taking down a single Medium Scout will take about 48 Cannon rounds, nearly the entire initial &amp;quot;reserve&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Therefore as part of Cannon rebalancing, the initial Cannon ammo stocks should be increased by at least 10 units / 500 rds - a $12,400 cost-price value, hardly destabilising. Those that don&#039;t want to use the Cannon can still sell everything to clear space and raise a little cash. Their choice of strategy is not cramped in anyway.&lt;br /&gt;
&lt;br /&gt;
(Interestingly it&#039;s possible sometimes at least to shoot down a Medium Scout, which is armed, without sustaining &#039;&#039;any&#039;&#039; damage to the dual-Cannon-armed aircraft, which maybe suggests the first UFO return fire only occurs after 1 random firing interval of the UFO weapon has elapsed?)&lt;br /&gt;
&lt;br /&gt;
=== Cost Based Rebalancing ===&lt;br /&gt;
&lt;br /&gt;
Rather than tuning the stats of the weapons you could just increase the costs. For example  [[Talk:Realistic_Equivalents#Aircraft_Weapons|realistic prices for missiles]] (Avalanche $386,000, Stingray $125,000) would give a reason to use Cannon and Stingrays, and make Commanders strongly consider arming only a single missile launcher on each aircraft, rather than always dual mounting. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*A simple solution to bring Cannon and Stingrays back to life would be to increase the costs of an Avalanche. The Avalanche is clearly a very advanced weapon. Probably the AIM-120 AMRAAM which was in service by the mid 1990s. Nominal range 30nm, around 65km. This weapon cost $386K per missile in 1999. Although you could probably not lease an aircraft to fly it in a high-risk environment for $600K a month. That might cover the fuel...&lt;br /&gt;
*On the other hand the Stingray is probably the AIM-7 Sparrow with max range 30km. Cost $125K in 1999.&lt;br /&gt;
*Cannon ammo costs are basically correct in UFO. So this is more balanced and more realistic.&lt;br /&gt;
*Realistic pricing would also fix the Laser Cannon. It would be suddenly incredibly useful, as it has similar capability to Stingrays but is free to operate.&lt;br /&gt;
&lt;br /&gt;
What about the Launcher prices (Avalanche Launcher etc). Are we just talking about a pair of rails here? Even they probably cost more than $17,000. The full radar and avionics to control a missile launch is going to cost a fair chunk of the purchase price of an advanced fighter aircraft. But then we are not realistically leasing those either. &lt;br /&gt;
&lt;br /&gt;
Realistically, the Funding Nations are providing the aircraft and their launchers for free. The $600,000 is a kickback to cover the costs of maintenance and jet fuel. The $17,000 for the launcher is the cost of &#039;&#039;delivering&#039;&#039; it to XCom&#039;s base. And $3,000 / $9,000, that was just the cost of &#039;&#039;delivering&#039;&#039; the missiles.&lt;br /&gt;
&lt;br /&gt;
If we did charge realistic prices for the Launcher, you would not want to be able to sell them, as it would give a huge amount of extra startup cash. Similarly with the missiles. The sell price should be next to nothing, just like aircraft sell price. The Funding Nations say &amp;quot;ok if you want us to take them off your hands, fine, we wont charge for taking them back&amp;quot;. Buying and selling launchers for accurate prices is impossible, the realistic launcher costs would be in the millions, off the charts. Basically all these aircraft, rented or built, must be considered to be already Stingray- and Avalanche- capable.&lt;br /&gt;
&lt;br /&gt;
The game-balance-neutral solution is to leave the Sell Price of Avalanche and Stingray the same as in the unmodified game. This is a derisory sum, but it makes sure the missile stocks at the start of the game don&#039;t turn into a massive cash cow.&lt;br /&gt;
&lt;br /&gt;
Nonetheless this means the starting missile stock of 37 Stingrays and 10 Avalanche is worth $8,485,000. I would expect that, under this option, new missiles are purchased very sparingly, if at all, and there is a strong emphasis on developing Laser Cannon and Plasma Cannon.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Stat Based Rebalancing ===&lt;br /&gt;
&lt;br /&gt;
This seems hard to do now that I came up with the easier Cost Based option. :)&lt;br /&gt;
&lt;br /&gt;
But basically you need to: &lt;br /&gt;
&lt;br /&gt;
*Increase Cannon firepower x3 (15 dmg, 50% hit) to exceed missile firepower (but at very short range)&lt;br /&gt;
*Increase Laser Cannon firepower x2 (100 dmg, 50% hit) to be a more powerful, longer range Cannon&lt;br /&gt;
*Ensure the Cannon rearming rates (back at base) match or exceed other weapons&lt;br /&gt;
*Improve Stingray relative to Avalanche. &lt;br /&gt;
**Raise Stingray accuracy to 80% and lower Avalanche to 60%, giving the Stingray greater firepower at shorter range. &lt;br /&gt;
**Also increase the rearming rate from 3 to 6, so a full ship rearms as fast as a full ship of Avalanches. (It&#039;s not clear where the rearming rate is set, however)&lt;br /&gt;
*Increase Fusion Ball Launcher ammo capacity from 2 to 3&lt;br /&gt;
&lt;br /&gt;
=== Remaining Issues ===&lt;br /&gt;
&lt;br /&gt;
To avoid advanced XCom aircraft exploiting the extra firepower of the Cannon weapons and disregarding the return fire from UFOs, this is best used alongside the Tougher UFOs option.&lt;br /&gt;
&lt;br /&gt;
Something also needs to be done about the Plasma Beam, as it is still just too optimal, even with a buffed FBL. You could use the XComUtil alternate manufacturing. NKF&#039;s suggestion to reduce ammo capacity to 10 is a good idea. Or you could give it cannon-like range, i.e. much less than 52km, so it is a close-in weapon like the other cannons. Or you could make the ammo cost money. Or require Elerium to reload, just like advanced craft need Elerium to refuel.&lt;br /&gt;
&lt;br /&gt;
== Tank mods  ==&lt;br /&gt;
&lt;br /&gt;
I think it would be cool to mod the HWP / SWSs to have additional functions. This would add tactical variety and thus add play value. Of course it would give even more advantage to XCom, which is a concern. &lt;br /&gt;
&lt;br /&gt;
I see this as having a few levels:&lt;br /&gt;
&lt;br /&gt;
At the simplest level, the tank is available during the Equip screen, and you could put an item into its second &amp;quot;hand&amp;quot; slot. This could be a scanner or a medkit.&lt;br /&gt;
&lt;br /&gt;
A step up from this would be an explosive pack, smoke charge, or other grenade, that could be armed and/or dropped, but not thrown.&lt;br /&gt;
&lt;br /&gt;
There would still be no access to the Inventory screen in battle, so no reloading or switching items.&lt;br /&gt;
&lt;br /&gt;
If Inventory access (only) is allowed, this gives the possibility of a Logistics/Recovery Tank that can collect casualties or equipment, friendly or not, and move them to safety. Actions with the second slot could be disabled or restricted.&lt;br /&gt;
&lt;br /&gt;
If Arm/Throw actions are allowed, this can become a much improved Minelayer / Mine Thrower / Smokelayer / Demolition tank. &lt;br /&gt;
&lt;br /&gt;
A Stun Rod -armed Taser Tank is an interesting idea.&lt;br /&gt;
&lt;br /&gt;
Actually arming tanks with man carried weapons, even if they can&#039;t reload them, makes the tanks full cyborgs and is probably going too far. Save that for the next war plus one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:A few suggestions: a) Make the tanks have multiple weapons b) Make some weapons on a tank capable of autofire c) Possibly make the tanks have two sets of TU, one for firing and one for moving (NO idea how this could be implemented, maybe make Energy into move-TU and TU into fire-TU) d) Balance this with the same modifications to alien HWP equivalents (ie Cyberdisks, Sectopods, Bio-Drones, Triscenes, Xarquids) [[User:Magic9mushroom|Magic9mushroom]] 08:38, 17 August 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:: Well personally I&#039;m not too keen on adding more direct fire weapon options to tanks, that wasn&#039;t my intention, as I think it would be unbalancing without being really much different in terms of game play. I just thought it would be interesting to have different kinds of &amp;quot;Support Vehicles&amp;quot;. But you are right, dual weapons on a tank could be interesting. &lt;br /&gt;
&lt;br /&gt;
::I don&#039;t think creating 2 pools of TUs is necessary (or feasible) for tanks. You can just reduce the TU cost of firing the weapon until it&#039;s negligible relative to the movement costs. And for real armoured vehicles, rate of (effective) fire and movement speed have an inverse relationship, so it&#039;s not unrealistic for the same pool of TUs to be used for both tasks. As for alien terror units, some of them already have multiple attacks (in TFTD anyway). I&#039;m not sure what would be gained. Aliens would need new AI to figure out which weapon to use in which situation. The AI can&#039;t really handle additional flexibility. But it might be able to handle weapons that are more powerful. Having two of them would hardly matter, except in cases of launcher weapons with very limited ammo. What might work, is to just give alien terrorists tougher weapons - Sectopods with dual Blaster Launchers, anyone? [[User:Spike|Spike]] 11:04, 17 August 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== How to Mod Tanks ===&lt;br /&gt;
&lt;br /&gt;
First of all you need a hex editor as I found out, the BB Toolkit unfortunately does some strange things trying to edit these fields for tanks. :)&lt;br /&gt;
&lt;br /&gt;
To get to the inventory of a tank in the Battlescape you need to set UNITREF.DAT 0x71 from 01 back to 00. This enables inventory access but also makes the tank affected by stun. As the turret weapon overrides anything in the left or right hand, you cant use any functions like Arm, Throw or firing weapons, or attack with a Stun Rod. You could use the tank as a recovery tank, picking stuff up and moving it around. If someone else armed an HE pack, the tank could carry it into position and drop it. In fact it could be multiple HE packs. Or the tank could suicide with one or more armed HE packs on board. I kind of like the idea actually that tanks would not be able to self-arm explosives, that a soldier would have to do it. It is a good field safety procedure. &lt;br /&gt;
&lt;br /&gt;
To actually get the tank to use other equipment, you need to disable the turret weapon by setting UNITREF.DAT 0x75 to 255 (0xff). If pre-battle Equip Screen and in-battle Inventory access is also enabled, this then makes the tank a &amp;quot;full cyborg&amp;quot; - it can do anything a soldier can do, carry and use any weapon or item. This is probably overpowered, even if the tank has lost its turret weapon. Man carried weapons are often as good, or better, especially given the tank can reload, change ammo types, etc. A tank with an HE Autocannon and a Rocket Launcher is pretty fearsome. &lt;br /&gt;
&lt;br /&gt;
Using this method I have got a HE Pack-throwing, HE Autocannon-firing tank. (Tanks seem to have 0% Throwing Accuracy, which is good as I would not expect them to be as good as soldiers, and they have higher Strength than initial soldiers. The results aren&#039;t terrible, but lack the precision of a skilled soldier).&lt;br /&gt;
&lt;br /&gt;
The techniques above could be used for any of the tank scenarios as long as the player exercises self restraint, and is willing to live with the tank being stunnable. I dont think I have a problem with that actually. It simulates the common situation where an armoured vehicle is disabled, rather than destroyed, by some mechanical or systems failure. &lt;br /&gt;
&lt;br /&gt;
Things to investigate:&lt;br /&gt;
&lt;br /&gt;
*Creating a correct paperdoll image and layout file for the tank in the inventory screen using combinations of UNITREF.DAT offsets 0x01, 0x117. E.g. set 0x01 to 4, then get/create MAN_4.SPK and .xsp.&lt;br /&gt;
*Possible create new SPK files for the paperdoll images for the tanks. Or use the SPK files from BBs Toolkit actually. &lt;br /&gt;
*How to enable access to the pre-battle Equip screen as well or instead as the Inventory screen. Without crashing due to mismatches of the paperdoll image and layout file. Or just ask Bomb Bloke how he did it. ;-)&lt;br /&gt;
*If the logic for the turret weapon overriding the held weapons or items can be found and NO-OPd. Thus allowing use of a 2nd item or weapon &#039;&#039;&#039;in addition to&#039;&#039;&#039; the turret weapon. &lt;br /&gt;
*If it is possible to make an item undroppable, so it is &amp;quot;fixed&amp;quot; in a slot. Thus allowing Inventory access for logistics and reloading but not for changing of weapons/items.&lt;br /&gt;
*If the turret is disabled but Inventory is not enabled, then the tank should be able to use only the items placed in its &amp;quot;hand&amp;quot; slots. Not clear how to place them though - either during the Equip phase or by using a game file editor (or UFO Extender!). The tank would also be immune to stun again. This would be a good way to make variant tank types that were not too unbalanced, since then the tank can&#039;t reload.&lt;br /&gt;
*Might be able to trick XComUtil EQP into giving equipment to tanks, IF you could hack the name of the tank to contain a /Class suffix?&lt;br /&gt;
*See [[UNITREF.DAT]] offset 0x2E for mention of an alternate tank layout. Also for ability to have blank turret graphics (e.g. if turret weapon is disabled). &lt;br /&gt;
&lt;br /&gt;
:Not 100% sure, but putting offset 0x71 to 0 may also render your tank susceptible to fatal wounds. [[User:Seb76|Seb76]] 13:37, 30 August 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== UFO Extender Tanks ===&lt;br /&gt;
&lt;br /&gt;
For a mod under Seb76s UFOExtender, you could maybe add a configuration section that says something like - replace turret for tank type X with objects Y and Z (with ammo A and B if they are ammo using weapons). So you could say: replace all Cannon tanks with tanks that have a AP auto cannon plus a Medkit, or plus an HE Pack, or plus a Stun Rod. This would be pretty balanced as the main weapon is weaker. An HE Auto Cannon might be slightly overpowered, though in a way it is a mid point between a Cannon tank and a Rocket tank. It would be nice for the mod to sanity check that the relevant tech is available, or even that the relevant equipment is available (on the transport), and to deduct it from existing stocks.&lt;br /&gt;
&lt;br /&gt;
Basically this would be an extension of the Equipment Screen code of UFOExtender. But probably dealt with under its own configuration section. However there are interdependencies - such as the same pool of equipment - so it needs to be dealt with in the same code. &lt;br /&gt;
&lt;br /&gt;
Here&#039;s a mock-up. It&#039;s a bit over-complicated, a simpler version would be pretty cool too.&lt;br /&gt;
&lt;br /&gt;
 [Tracked Tank Armour]&lt;br /&gt;
 Apply=0&lt;br /&gt;
 Health=90&lt;br /&gt;
 ArmourF=90&lt;br /&gt;
 ArmourS=75&lt;br /&gt;
 ArmourR=60&lt;br /&gt;
 ArmourB=60&lt;br /&gt;
&lt;br /&gt;
 [Hover Tank Armour]&lt;br /&gt;
 Apply=0&lt;br /&gt;
 Health=90&lt;br /&gt;
 ArmourF=130&lt;br /&gt;
 ArmourS=130&lt;br /&gt;
 ArmourR=130&lt;br /&gt;
 ArmourB=100&lt;br /&gt;
&lt;br /&gt;
 [Tank Equipment]&lt;br /&gt;
 Apply=1&lt;br /&gt;
 &lt;br /&gt;
 ;apply to first Tank/Cannon in Battlescape (if present)&lt;br /&gt;
 [Tank/Cannon 1]&lt;br /&gt;
 DisableTurret=1&lt;br /&gt;
 EnableEquip=0&lt;br /&gt;
 EnableInventory=0&lt;br /&gt;
 ItemRight=High Explosive&lt;br /&gt;
 ItemLeft=High Explosive&lt;br /&gt;
 ;Mine-Thrower Tank with only 2 charges&lt;br /&gt;
&lt;br /&gt;
 ;apply to second Tank/Cannon in Battlescape (if present)&lt;br /&gt;
 [Tank/Cannon 2]&lt;br /&gt;
 DisableTurret=1&lt;br /&gt;
 EnableEquip=1&lt;br /&gt;
 EnableInventory=1&lt;br /&gt;
 ItemRight=Heavy Cannon&lt;br /&gt;
 ItemRightAmmo=Cannon HE-Ammo&lt;br /&gt;
 ItemLeft=High Explosive&lt;br /&gt;
 ;Demolition Tank that can carry additional charges (or change weapons/reload)&lt;br /&gt;
&lt;br /&gt;
 ;apply to third Tank/Cannon in Battlescape (if present)&lt;br /&gt;
 [Tank/Cannon 3]&lt;br /&gt;
 DisableTurret=1&lt;br /&gt;
 EnableEquip=1&lt;br /&gt;
 EnableInventory=0&lt;br /&gt;
 ItemRight=0&lt;br /&gt;
 ItemLeft=0&lt;br /&gt;
 ;Tank that can be Equipped with any 2 items, but not change them (or reload) during battle&lt;br /&gt;
&lt;br /&gt;
 ;apply to any/all other Tank/Cannons in Battlescape&lt;br /&gt;
 [Tank/Cannon *]&lt;br /&gt;
 ;normal Tank setup&lt;br /&gt;
 DisableTurret=0&lt;br /&gt;
 EnableEquip=0&lt;br /&gt;
 EnableInventory=0&lt;br /&gt;
 ItemRight=0&lt;br /&gt;
 ItemLeft=0&lt;br /&gt;
&lt;br /&gt;
 ;apply to all Tank/Rockets in Battlescape&lt;br /&gt;
 [Tank/Rocket *]&lt;br /&gt;
 ;retain turret Rockets but also use as a Logistics tank&lt;br /&gt;
 DisableTurret=0&lt;br /&gt;
 EnableEquip=1&lt;br /&gt;
 EnableInventory=1&lt;br /&gt;
 ItemRight=0&lt;br /&gt;
 ItemLeft=0&lt;br /&gt;
&lt;br /&gt;
 ;apply to first Hovertank/Plasma in Battlescape&lt;br /&gt;
 [Hovertank/Plasma 1]&lt;br /&gt;
 ;Very expensive air ambulance!&lt;br /&gt;
 DisableTurret=1&lt;br /&gt;
 EnableEquip=0&lt;br /&gt;
 EnableInventory=1&lt;br /&gt;
 ItemRight=Medi-Kit&lt;br /&gt;
 ItemLeft=Medi-Kit&lt;br /&gt;
 ;Inventory access allows loading and recovery of casualties.&lt;br /&gt;
 ;(As we have enabled Inventory access, the ambulance &#039;&#039;could&#039;&#039; be re-fitted with weapons/items once in the field)&lt;br /&gt;
&lt;br /&gt;
 ;apply to second Hovertank/Plasma in Battlescape&lt;br /&gt;
 [Hovertank/Plasma 2]&lt;br /&gt;
 ;Very expensive alien capturing and retrieval vehicle!&lt;br /&gt;
 DisableTurret=1&lt;br /&gt;
 EnableEquip=1&lt;br /&gt;
 EnableInventory=1&lt;br /&gt;
 ItemRight=Small Launcher&lt;br /&gt;
 ItemRightAmmo=Stun Missile&lt;br /&gt;
 ItemLeft=Stun Rod&lt;br /&gt;
 ;Inventory access allows reloading the Launcher and loading/recovery of stunned Aliens. &lt;br /&gt;
 ;As we have enabled Inventory access, the tank &#039;&#039;could&#039;&#039; be re-fitted with other weapons/items once in the field&lt;br /&gt;
 ;Equip access allows spare Stun Missiles to be equipped at the start&lt;br /&gt;
 ;As we have enabled Equip access, the tank could be reconfigured in a variety of other ways pre-battle.&lt;br /&gt;
 ;Or perhaps we can pre-equip it using a syntax along the lines of:&lt;br /&gt;
 ;Item[9]=Stun Missile&lt;br /&gt;
 ;Item[10]=Stun Missile&lt;br /&gt;
 ;Item[11]=Stun Missile&lt;br /&gt;
 ;Item[12]=Stun Missile&lt;br /&gt;
&lt;br /&gt;
=Tools=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Data Tables and Spreadsheets==&lt;br /&gt;
&lt;br /&gt;
=== Tactical Firepower ===&lt;br /&gt;
&lt;br /&gt;
*[[Media:Firepower.xls|X-COM (EU and TFTD) Battlescape Firepower]] - Spreadsheet comparing  &amp;quot;close range/shock firepower&amp;quot;  and &amp;quot;long range/skirmish firepower&amp;quot;  of Battlescape weapons - it covers XCom and Alien hand-held weapons, XCom HWP weapons, and Alien Terrorist built-in attacks. Includes XComUtil variant weapons. The results are specific to a Target Type (Muton, X-COM Power Suit, etc) and you can set the attacker&#039;s combat skill levels. Also includes &amp;quot;lethality&amp;quot; calculations such as the probability of a first-shot-kill, the average number of hits to get a kill, and the average amount of TUs to get a kill. &lt;br /&gt;
*Includes some info for TFTD weapons, not yet including SWS weapons or Alien built-in attacks. The necessary information on TFTD Alien attacks is hard to find. I still need to merge in the TFTD Alien stats from the draft TFTD version of my Firepower spreadsheet. &lt;br /&gt;
&lt;br /&gt;
==== Tactical Firepower Model ====&lt;br /&gt;
&lt;br /&gt;
*Formula for Weapon Rankings&lt;br /&gt;
&lt;br /&gt;
In a nutshell, I figure out the average armour-adjusted damage per direct hit (average of min + max, adjusted for % of range that is zero), then multiply that by the average # of direct hits per 100% TUs (assuming Firing Accuracy = 50). I then divide the target Health by the resulting value, to obtain the &amp;quot;%TUs per kill&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
The &amp;quot;Weapon Ranking&#039; number given is for whichever firing mode (auto, snap or aimed) gives the best value. I should probably list what the best mode is!&lt;br /&gt;
&lt;br /&gt;
If your soldiers have a better average FA, it all scales linearly. So if you have FA=100 just cut (improve) the values by half. I picked FA=50 as its a typical starting value, and it was particularly the starting weapons I was interested in.&lt;br /&gt;
&lt;br /&gt;
I tried lots of different &amp;quot;figures of merit&amp;quot; for weapons but I like this one best. &lt;br /&gt;
&lt;br /&gt;
All HE is considered a direct hit on the Alien. For 4-square targets I add the reduced, armour-adjusted damage on the other 3 squares. &lt;br /&gt;
&lt;br /&gt;
I did not bother with Incendiary as the damage model for incendiary is almost totally independent of the weapon used (the only weapon based factor is whether you get the target inside the area of effect or not, and how many times). &lt;br /&gt;
&lt;br /&gt;
The very low (good) average values, such as for Heavy Plasma, will be very volatile around the average. The high (bad) numbers will be more consistent. &lt;br /&gt;
&lt;br /&gt;
This Figure of Merit probably works best when the number is in the range 25% - 75%. Below that level, there is high volatilty and also I may not have accounted for overkill (minimum penetrating damage &amp;gt; Health) properly. Above that level, I have not accounted for reload time, nor &amp;quot;turn rounding errors&amp;quot; - such as: you can&#039;t burst-fire an AC 2.5 times a turn, you can only burst-fire it twice. &lt;br /&gt;
&lt;br /&gt;
Another thing to note about this metric is that it is accuracy-weighted, so it assumes a non-trivial &amp;quot;firing problem&amp;quot;. For situations such as point-blank where accuracy is not an issue, the rankings will be very different. I&#039;ll work on a different metric for point-blank. &lt;br /&gt;
My Firepower spreadsheet, which generated these rankings, allows you to toggle the &amp;quot;turn rounding&amp;quot; on or off. With &amp;quot;turn rounding&amp;quot; off, the calculations are &amp;quot;instantaneous&amp;quot; measures of lethality, which make sense for intra-turn decisions, or when a mix of fire and movement is important (as it usually is). With &amp;quot;turn rounding&amp;quot; on, you get a better assessment of &amp;quot;continuous&amp;quot; firepower - e.g. when firing continuously over multiple turns. &lt;br /&gt;
&lt;br /&gt;
It would also be good to have others check my assumptions in the spreadsheet! &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 22:22, 27 February 2009 (CST)&lt;br /&gt;
&lt;br /&gt;
=====Near Miss Modelling=====&lt;br /&gt;
&lt;br /&gt;
One thing I don&#039;t calculate is the effects of any area effect/HE near misses. So the figures I give should be taken as a minimum. In practice, HE effectiveness will be somewhat higher due to the extra damage from near misses - but by how much? It depends on a lot of factors, some I don&#039;t know and some that are highly variable (density of terrain / map objects etc). &lt;br /&gt;
&lt;br /&gt;
Calculating the range and average damage done by any given near miss is complex but not impossible. There are a large number of calculations, one for every possible &#039;near miss&#039; square with different GZ+X distance, different armour facings, etc. &lt;br /&gt;
&lt;br /&gt;
What is truly difficult is estimating the absolute and relative frequency of rounds landing in all these possible &#039;near miss&#039; squares. With sound knowledge of the error angles (vertical as well as lateral) generated by the game engine, it might be possible to estimate a probability distribution, for each possible range from launcher to target - but only for a flat, featureless plain. It&#039;s the terrain features - fixed and mobile - that introduce the biggest uncertainty about where a stray round will detonate. This is almost possible to model. Without modelling for collisions with map objects, the &#039;flat plain&#039; model of near-misses will predict a worst case (minimal) damage level from near-misses. (Assuming that in the typical case, the accurate path from firer to target is relatively unobstructed. When this is not the case, the &#039;flat plain&#039; scenario might actually predict better results than obtain in reality.)&lt;br /&gt;
&lt;br /&gt;
One more problem with modelling Near Misses: the benefit of lucky near misses - whatever its value - is inversely proportional to overall accuracy. A perfect shooter gets exactly &#039;&#039;&#039;zero&#039;&#039;&#039; benefit from near misses. Which raises an interesting possibility. Maybe the &amp;quot;near miss benefit&amp;quot; could be estimated using a repeated experiments with a logger and a shooter with Firing Accuracy=0. Any damage done to the target would be due to a lucky near miss. This would be the other limiting case - the opposite of the perfect shooter. Then extrapolate between those two extremes to find a &amp;quot;near miss benefit&amp;quot; for that weapon as some function of {TA, range].&lt;br /&gt;
&lt;br /&gt;
: A lot of people have noticed this factor when playing, lol... A fresh low accuracy can&#039;t hit an alien at 30 feet... UNLESS you give him a rocket launcer or AC-HE, and then he suddenly turns into this deadly killing machine. It&#039;s... quite ridiculous.  [[User:Jasonred|Jasonred]] 07:12, 22 March 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
=== Other Tables ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Data table comparing the &amp;quot;firepower&amp;quot;, &amp;quot;payload&amp;quot; and  other obscure characteristics of aircraft weapons:&lt;br /&gt;
[[Aircraft Firepower Table]]&lt;br /&gt;
&lt;br /&gt;
Also I have uploaded some spreadsheets concerning [[Media:XCOMUtil Profits.xls|XcomUtil manufacturing profitability]]; [[Media:Detection chart.xls|efficiency of aircraft as radar detection platforms]]; [[Media:Multiple radar.xls|effect of my proposed multiple radar fix on detection probability]].&lt;br /&gt;
&lt;br /&gt;
I have a version of the Manufacturing Profitability spreadsheet for TFTD, which I will put on the main pages when I can figure out how to wikify it.&lt;br /&gt;
Also, this version calculates full Technician/Engineer costs, including fixed as well as variable costs, and calculates the payback/breakeven period. &lt;br /&gt;
&lt;br /&gt;
== Base Fixer ==&lt;br /&gt;
&lt;br /&gt;
I&#039;ve written a Python script that &lt;br /&gt;
&lt;br /&gt;
* fixes the [[Known Bugs#Paying for Dirt|Paying for Dirt]] bug&lt;br /&gt;
* fixes the [[Known Bugs#Phantom Radar|Phantom Radar]] bug&lt;br /&gt;
* fixes the [[Known Bugs#Radar Stacking|Radar Stacking]] bug and implements my algorithm for improved effectiveness of multiple radars&lt;br /&gt;
&lt;br /&gt;
It&#039;s working reasonably well now so I&#039;ve uploaded the [[Media:BaseFixer.zip|BaseFixer]] utility and documentation to this site. You will also need to install Python for it to work. I have also used XcomUtil&#039;s hook facility to integrate BaseFixer into XcomUtil, so it runs automatically as you play (updates whenever you switch from tactical battlescape to the geoscape view). [[User:Spike|Spike]] 12:00, 24 March 2008 (PDT)&lt;br /&gt;
:I haven&#039;t given this much of a whirl, but I did have one problem: it searches for &#039;base.dat&#039; in lowercase, and my BASE.DAT files were in uppercase (UFO is run in dosbox under Linux, and dosbos puts every created file in uppercase). Changing the script to use BASE.DAT in uppercase fixed that, but may break some other case-sensitive system where base.dat is in lowercase (Maybe UFO/Amiga?). Probably best to check for both styles? Also, it returned a somewhat funky result with a TFTD save, but I guess it wasn&#039;t meant for TFTD... [[User:Cesium|Cesium]] 20:28, 30 December 2009 (EST)&lt;br /&gt;
:: Yeah pretty sure it won&#039;t work on TFTD as I think the base.dat format is different. All these fixes are now included in Seb76&#039;s UFOExtender loader, so I would recommend using that instead. [[User:Spike|Spike]] 19:33, 31 December 2009 (EST)&lt;br /&gt;
:: I don&#039;t recall if base.dat was lowercase or not on the Amiga, but it doesn&#039;t matter, as although Amigas remember case, they use case-insensitive compare when accessing files.  &amp;quot;BASE.DAT&amp;quot; == &amp;quot;base.dat&amp;quot; to an Amiga running on the native filesystems (OFS/FFS). [[User:Renegrade|Renegrade]] 01:14, 4 August 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
==TU Efficiency==&lt;br /&gt;
&lt;br /&gt;
Analysis and fixes (game file patches) relating to the fact that Aimed fire is less efficient than Snap fire. See [[Accuracy vs TU Efficiency]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Work in Progress=&lt;br /&gt;
&lt;br /&gt;
==Underway==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*[[User:Spike#Balancing_Aircraft_Weapons|Craft Weapon Rebalancing]]&lt;br /&gt;
*[[Wish_List_(EU)#Tougher_UFOs|Tougher UFOs]]&lt;br /&gt;
*Specific Proposals for XCU for craft weapon rebalancing and for tougher UFOs&lt;br /&gt;
*[[Air Combat Mechanics]] research&lt;br /&gt;
**Confirm whether XCom RoF randomises in the same way UFO RoF does&lt;br /&gt;
***Crucially, determine if the &amp;quot;Cannon timer&amp;quot; is &#039;&#039;itself a variable length of time&#039;&#039;&lt;br /&gt;
:Experimental model - do timer tests of XCom weapon RoF vs UFO weapon RoF. UFO weapon RoF is known to be variable, by Seb 76&#039;s code decompilation. &lt;br /&gt;
:Try to give UFOs limited ammunition. Try to force UFO damage to a fixed value (e.g. 1) so that XCom damage becomes a &amp;quot;hit counter&amp;quot;. Basically need to use small samples, small N, instead of large N. Instead of getting convergence on an average, you need to do the opposite, which is to look at the range of variation. Use the highest possible ratio of XCom RoF to UFO RoF (eg 2::96 reload rates) in order to expose the variation more easily? You need a histogram that shows the minimum and maximum divergence from the average. This will show whether a. more linear, more moderate variation := XCom RoF is fixed and UFO RoF is variable or b. more gaussian, more extreme variation := both RoFs are variable. Eg if both are variable, min variation would be 4:96, max would be 2:192. If XCom is not variable, min variation will be 2:96, max will be 2:192. So you need to do a large number of runs and find the minimum variation. But it needs to be a very large number of runs because the cannon RoF will tend strongly to the median value when firing 16 to 96 rounds per UFO attack. It&#039;s difficult to do without a logger. It would be nice to be able to peek the INTER.DAT-equivalent in-memory structure. Actually maybe it&#039;s easier to do if the XCom RoF and UFO RoF are matched at a high reload value, eg both at 96? Need to think this through more. If matched, min variation for static XCom RoF is 96:96, max variation is 96:192. OK, there&#039;s the strategy. Match the weapon reload rates, at 96 to make it easier to observe, and if the UFO ever fires faster than XCom, that proves XCom is (also) variable. That should be fairly easy to test. Maybe just use extreme slowdown in DOSBox to be able to manually count the &amp;quot;Interceptor Hit&amp;quot; messages.  &lt;br /&gt;
***If the &amp;quot;cannon timer&amp;quot; is variable, what implications does this have? For overall firepower I don&#039;t think it has any, it&#039;s more or less my current (implicit) assumption. If the cannon timer is &#039;&#039;not&#039;&#039; variable, that has a bigger impact, because if XCom does not have variable RoF, XCom firepower just went up by 50%, unless there is some other compensating factor. &lt;br /&gt;
**Write up the results that are reasonably certain, and do high level updates to the relevant articles.&lt;br /&gt;
**Deciphering [[INTER.DAT]]&lt;br /&gt;
*[[User:Spike#Balancing_Infantry_Weapons|Rebalancing Infantry Weapons]]&lt;br /&gt;
*General game improvement suggestions for UFO Extender and/or XComUtil and/or [[Enemy_Unknown_Extended|&amp;quot;Standard XCom&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
=== Older Stuff ===&lt;br /&gt;
*Craft Firepower table for TFTD - haven&#039;t I finished this? need to upload it. probably need to rewrite it based on new RoF first.&lt;br /&gt;
&lt;br /&gt;
==To Do List==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*[[Enemy_Unknown_Extended|&amp;quot;Standard XCom&amp;quot;]] definitions&lt;br /&gt;
*Continue TFTD game in TFTD Blog&lt;br /&gt;
*[[Air_Combat_Mechanics#Effect_of_Attack_Mode_on_UFO_RoF]]&lt;br /&gt;
&lt;br /&gt;
=== Older Stuff ===&lt;br /&gt;
*Incendiary Research&lt;br /&gt;
*Firing Accuracy Research - with Bomb Bloke&#039;s data, maybe using special terrain as a 3D scatter mask&lt;br /&gt;
*Seb76 UFOExtender&lt;br /&gt;
**Use &amp;quot;View All Locations&amp;quot; to empirically check the effect of (fixed) multiple radars - does having greater %detection at the same range really increase UFO detections, or will the same UFO get deteced eventually anyway?&lt;br /&gt;
*Gameplay&lt;br /&gt;
**Play an &amp;quot;Aliens Own Earth&amp;quot; game&lt;br /&gt;
**Play a &amp;quot;Funding Only&amp;quot; game&lt;br /&gt;
**Do a Cydonia mission - I&#039;ve never stuck it out that far. Then do the mission again, but with conventional weapons and no Psi.&lt;br /&gt;
*Firepower Tables&lt;br /&gt;
**Add all missing TFTD target and weapons data, in line with EU targets and weapons - mostly vehicles&lt;br /&gt;
*Economics &lt;br /&gt;
**It would be interesting (and easy) to calculate the cost incurred when damage is sustained by aircraft. It would then be possible to put an economic value on the stand-off capability of weapons. - done as part of FBL discussion&lt;br /&gt;
**Efficient Market - Rational Costs&lt;br /&gt;
***Understand impact of Research costs (capital and expense) on Manufacturing Profitability, and thus on &amp;quot;rational costs&amp;quot;&lt;br /&gt;
****Necessary first step: Create a tree structure with the fully inclusive research costs to reach each node in the tree. If everything were profitable, it might make sense to attribute only the current nodes costs to any given item. Maybe it makes sense to amortise all research costs incurred since the last profitable item on the current branch? Or to share out the total costs along all paths, weighted by the profitability of each of the profitable nodes? - tree structure done and published on this site but with some errors where I thought there were prerequisites, but there are none. It would be great if there was an actual research tree on the site for both games.&lt;br /&gt;
***Adjusted buy &amp;amp; sell prices that better reflect the actual economic costs of manufactured items (assuming there would be demand for them outside X-COM). Then put this in a modified PURCHASE.DAT. The purpose of this would be to better harmonise manufacturing profitability of various item types.&lt;br /&gt;
***Also  make it possible to buy (rather than build) the manufacture-only item types. Calculate appropriate prices based on fully inclusive costs, normal buy-sell spread, and some estimation of capital costs including Research costs. (See discussion in Economics - External Market, above.)&lt;br /&gt;
***Re-calculate manufacturing profitability, and manufacturing costs, based on Opportunity cost of diverting manufacturing away from profitable Laser Cannon.&lt;br /&gt;
&lt;br /&gt;
=Apocalypse Blog=&lt;br /&gt;
&lt;br /&gt;
==Apocalypse: The Verdict==&lt;br /&gt;
&lt;br /&gt;
I got bored of this game very quickly. The real time combat is interesting to mess around with but ultimately a bit frustrating. I don&#039;t particularly like RTS&#039;s anyway, and this is not a great one. But it&#039;s the strategic game play that really falls flat. There is no story arc as in X-COM 1, I just didn&#039;t care about this artifical city and the weird alien invasion. Maybe it would&#039;ve been better if the game was just about warring megacorporations without the alien &amp;quot;sub-plot&amp;quot;. Then they could&#039;ve built in some more plot. &lt;br /&gt;
&lt;br /&gt;
If you took out the aliens and added in some more structured scenarios, it would work as a good remake of Laser Squad - the weapon mix, tactical focus and time frame seem to be similar.&lt;br /&gt;
&lt;br /&gt;
==Snags and Hassles==&lt;br /&gt;
&lt;br /&gt;
Like everyone I found it impossible to figure out how to load soldiers into a vehicle for a mission. Eventually I had to download and RTFM. I still don&#039;t know how to persuade the soldiers to take a vehicle home from a mission, so they walk home. Maybe I need to click on the building, or vehicle assignment screen, right away before they walk out of it, and reassign them to the vehicle before they start walking? Anyway, for now the walk will do them good. Good exercise and they can walk off all that aggression. &lt;br /&gt;
&lt;br /&gt;
It seems like you automatically strip equipment off dead enemies, but you don&#039;t automatically strip the equipment off your own casualties, even if you win the battlefield. I am sure this is true because I am not only loosing armour, I am loosing Mind Benders. That&#039;s a hassle, if I have to manually take equipment off my dead guys, and make sure I do it before the mission ends. Maybe the equipment is just being blown up by HE? I noticed that the enemy seemed to be surprisingly vigorous in attacking the dead bodies of some of my guys, so maybe that&#039;s it. &lt;br /&gt;
&lt;br /&gt;
It was totally non-obvious to me that you should raid neutral organisations for profit and plunder. I could&#039;ve played for years without doing that, had I not read about it in strategy guides etc. It seems very cynical, not the vibe I would expect. &lt;br /&gt;
&lt;br /&gt;
I don&#039;t like the Dual Wield stuff. Lots of games have dual wield, and I think it&#039;s always nonsense. Twin cannons, twin rifles? Give me a break. It is catering to the Arnie / Ninja crowd. If you use a 2 hand weapon in each hand you should get a big penalty on the primary and an even bigger penalty on the secondary. It would only ever be viable if you had no need for speed or accuracy and just wanted pure volume of fire. I can just about buy it with handguns, but not with anything else. Even handguns are supposed to be used with two hands, except for snap fire. If you think dual wield is accurate, ask yourself why no military, police or special forces unit anywhere, ever, uses this technique. It&#039;s only from dumb movies. I am annoyed that the mechanics of Apoc make dual wield advantageous. Apart from being stupid, it&#039;s an unfair advantage over the enemy since they don&#039;t use it (or do they?). I suppose I could just be self disciplined and just not use any weapons in dual wield. Stick to my principles!&lt;br /&gt;
&lt;br /&gt;
I guess dual wield makes it harder to use grenades. Although apparently there is no TU penalty in Real Time mode for shouldering your rifle to grab a grenade? I find it too fiddly though. I need to learn, as grenades are powerful and they give an edge to the enemy if I can&#039;t use them. &lt;br /&gt;
&lt;br /&gt;
==Weapon Mixes==&lt;br /&gt;
&lt;br /&gt;
At the start it looks like the priorities are:&lt;br /&gt;
&lt;br /&gt;
*Improve Agents&#039; experience&lt;br /&gt;
*Conserve money&lt;br /&gt;
*Conserve ammunition&lt;br /&gt;
&lt;br /&gt;
It looks to me like the Sniper rifle and M4000 have about the same firepower (accuracy x fire rate x damage), but the M4000 has much higher ammo consumption (both per unit of time and per hit). So the top choice would be the Sniper rifle. As there are not that many around at start, I would give the Sniper rifles to the people with the lowest Accuracy score (contrary to the USG advice), and then M4000s to the rest. As I capture more Rifles I would put the M4000s into stores (for the next batch of recruits). &lt;br /&gt;
&lt;br /&gt;
Of course the Plasma gun has greater firepower but it&#039;s so rare and the ammo so limited and expensive at the beginning that I would only issue it to the Agents with the highest accuracy, and then only during a UFO recovery or alien capture, not during a regular raid. Train up combat skills using cheaper and more plentiful weapons, and save the Plasma gun ammo for the critical missions. &lt;br /&gt;
&lt;br /&gt;
The Autocannon I would only issue to a minimum number of agents with the highest accuracy and strength, and use it as a support weapon. Probably to your starting Androids. One or two Agents with autocannon is fine. Also I would not bother with the AP rounds. Because of the low accuracy and low rate of fire, the AP firepower is lower than the other starting weapons. I would stick to using the area munitions (HE/IN), employing the autocannon as a support weapon. The one exception for AP would be against armoured targets - a very specialised mission in the early game. &lt;br /&gt;
&lt;br /&gt;
Actually, according to my theoretical calculations, in Dual Wield the highest firepower (apart from the rare and expensive Plasma gun) is actually a pair of Lawpistols. This is because the lack of one-handed penalty pushes their firepower ahead of the M4000 and Laser rifle. Of course the ammo capacity is the worst, and the range is not good, and at close range maybe accuracy is less important. &lt;br /&gt;
&lt;br /&gt;
Anyway, if we have the Marsec M4000, where&#039;s the Marsec Auto-Gun? That was always superior to the M4000, in Laser Squad anyway. &lt;br /&gt;
&lt;br /&gt;
As I don&#039;t really understand the mechanics, the above may be totally wrong. Maybe some kind of TU factor gives a disadvantage to the Laser Rifle. For example, in Real Time, maybe a fast moving target won&#039;t be acquired in time by a slow weapon like a sniper rifle, even in snap fire mode. I think the Sniper rifle is the best for experience gain but I could be wrong about that too. The USG says experience gain is per &#039;&#039;shot&#039;&#039;. This is almost certainly wrong - surely it&#039;s per &#039;&#039;hit&#039;&#039; - but if it&#039;s right, the M4000 would be the experience-meister, since it spews out (inaccurate) rounds. &lt;br /&gt;
&lt;br /&gt;
In terms of purchases, I found I pretty much buy all the personal arms on the market (apart from some of the armour and AP grenades). I&#039;ll probably find a use for all of it. Definitely buy all the Mind Benders and Laser Rifles as these are relatively rare - especially the Mind Benders. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Psionics and Psi Raids==&lt;br /&gt;
&lt;br /&gt;
There is not a lot of info out there on the net that I can find about the Psi mechanics and Psi training mechanics. The USG has an illegible formula that I can&#039;t decipher, and it&#039;s not clear if it applies to field/combat experience or just to Psi-Lab training. &lt;br /&gt;
&lt;br /&gt;
I&#039;m trying to figure out the Psionics by experiment, and in pursuit of this I&#039;ve invented a variant of the Stun Raid, the Psi Raid. &lt;br /&gt;
&lt;br /&gt;
As with a Stun Raid you can go on a Psi Raid and keep all weapons locked, and just use Psi, and you don&#039;t get shot at. Even if you come off the borders of the map and walk in and around the building. You get 0 mission points but you don&#039;t trigger any Organisational hostility from the organisation you are raiding. I was doing successful Stuns (well I got the hammer on the head icon, but no one actually fell over). I was doing successful Scans. None of it provoked any gang guards to attack with weapons. I did get one Psi attack on me. I don&#039;t have anyone who can attempt Mind Control, but I should also do some Panics to see if that provokes hostility. Maybe if I actually knocked someone out with Psi, that would provoke hostility. I have 4 Agents capable of Stun and one capable of Scan only, but even piling up on one target I could not actually make them pass out from a Stun attack. Still they are all only Rookies. &lt;br /&gt;
&lt;br /&gt;
My intention was to train up the Psi skills from combat experience, but I did not see any noticeable improvements after combat. Certainly any improvements were less than 1.0 stats. Maybe you need to make Kills to gain experience. Maybe it can only be trained in the Base, not in combat. (In X-Com 1 and 2, raising Psi stats in combat creates a runaway feedback loop that is unbalancing, and also makes Psi Labs pointless apart from for screening, so maybe they fixed that in X-Com 3)&lt;br /&gt;
&lt;br /&gt;
What would a successful stun look like? Does it decrease Health with a white bar like X-Com 1 and 2 (apparently not), or decrease Psi Strength until you go unconscious? Maybe use will use Scan in conjunction with Stun Gas to see how Stun Gas works.&lt;br /&gt;
&lt;br /&gt;
It seems like not only can you not do a psi attack if you are not in Line of Sight (fair enough), but also not unless you are on the same map level as the target. So even if you are one square in front of a target and up one level, you can&#039;t use Psi on them. Maybe something else was happening. Two of my Agents seemed to start getting 0% all the time, even if they were on the same level, in LoS, without having moved, full TUs and full Psi Strength. Is there a maximum number of attacks you can make in one mission, or a maximum amount of Psi strength you can expend? Do the Mind Benders actually need to recharge back at base at some point? &lt;br /&gt;
&lt;br /&gt;
- OK I think this was just due to targeting stronger opponents (higher Psi defence) and the probability, particularly of Stun, dropped to 0%. You definitely &#039;&#039;&#039;can&#039;&#039;&#039; do a Psi attack from a different level. And I don&#039;t think you ever run out of Psi attacks during a mission, having done a lot more attacks now. Also, Panic attacks also don&#039;t trigger hostility. But then, I still haven&#039;t managed to do a Stun or Panic attack that actually seemed to affect the target at all. The attacks are &amp;quot;successful&amp;quot; but don&#039;t seem to do anything to the target, or reduce any of its stats (as viewed via Probe). Hmm.&lt;br /&gt;
&lt;br /&gt;
Also (not a Psi note but a general one), switching weapons to and from any area takes no TUs. The only thing that takes TUs is picking up. Dropping is free. So the backpack is no different from a holster. Swapping your autocannon into your backpack and pulling a grenade takes 0 TUs. Presumably the effect is similar in Real Time mode.  Not sure I really like that, it seems sloppy on the part of the programmers.&lt;br /&gt;
&lt;br /&gt;
= TFTD Blog =&lt;br /&gt;
&lt;br /&gt;
After a few goes of mucking about with TFTD over the last year, I started a proper campaign. It has been very &lt;br /&gt;
interesting so far. &lt;br /&gt;
&lt;br /&gt;
I have much more favourable impression of TFTD now than I did before. Yes, it is more buggy than UFO. But luckily we &lt;br /&gt;
have the guidance from the [[TRTBAG]] and from this Ufopaedia wiki to guide us. I have to say, I didn&#039;t feel &lt;br /&gt;
comfortable starting on TFTD until I was familiar with the &amp;quot;gotchas&amp;quot; which (fortunately) are documented here. And &lt;br /&gt;
it&#039;s also true that Ufopaedia is patchier on TFTD than it is on UFO. Some of the gaps are hard to find - I&#039;ve been &lt;br /&gt;
trying to fill some of them in as I go along. &lt;br /&gt;
&lt;br /&gt;
TFTD is definitely a more challenging game. But it also unexpectedly better balanced than UFO in some ways. It&#039;s not &lt;br /&gt;
just a case of buffing the bad guys (though that happens of course). I have been finding that in TFTD every decision &lt;br /&gt;
is  much more finely balanced. The trade-offs between different technologies, different weapons, and different &lt;br /&gt;
tactics and strategies are giving me much more of a headache. In UFO, there is often a well known &amp;quot;optimum &lt;br /&gt;
strategy&amp;quot;. Things aren&#039;t so cut and dried in TFTD. I found the technology decisions really hard. There&#039;s not a lot &lt;br /&gt;
of stuff that you don&#039;t need (unlike in UFO where you can skip a lot of it, or where research is so easy you just &lt;br /&gt;
get everything). I&#039;ve been struggling for months over whether to prioritise craft weapons (Sonic Oscillator), &lt;br /&gt;
tactical weapons (eg Thermal Shok Launcher), or Transmission Resolver. Mind Control, Subs, and Armour I am not even &lt;br /&gt;
thinking about. But even these three categories are very tough decide. &lt;br /&gt;
&lt;br /&gt;
Luckily the game forced my hand, due to another increased challenge - shooting down USOs. In UFO this is not a big &lt;br /&gt;
deal. In the first few months you can shoot any small-medium craft down easily with dual Avalanches, maybe 2 &lt;br /&gt;
aircraft, and you have this capability from the first week. Anything you can&#039;t shoot down, you can often just tail, &lt;br /&gt;
and it will conveniently land. Not so in TFTD. In many cases you can&#039;t even reach the USO to intercept it, let alone &lt;br /&gt;
win the battle. They either out run you or go too deep - much harder than in UFO. There is no pain-free stand off &lt;br /&gt;
combat, either. And the USO return fire is &#039;&#039;harsh&#039;&#039;. By month 2 it was quickly becoming apparent that my subs were &lt;br /&gt;
outclassed and I was going to fail most engagements - and lose my ships in the bargain. I realised this was the &lt;br /&gt;
strategic imperative. Winning the battlefield with inferior weapons would be a challenge, but without success in sub &lt;br /&gt;
battle, there just weren&#039;t going to be enough battlefields. I needed something to even the odds on the Geoscape, or &lt;br /&gt;
I was doomed. Going for improved Sub technology just takes too long, I would be dead by the time I got it, so &lt;br /&gt;
instead I am going for improved sub weapons - in other words, the Sonic Oscillator. &lt;br /&gt;
&lt;br /&gt;
Of course, they make Craft Gauss Cannon look like a waste of effort for purely weapon purposes. I thought long and &lt;br /&gt;
hard whether I would go down the &amp;quot;Gauss Cannon Factory&amp;quot; route, but decided not to. The Particle Disturbance Sensor &lt;br /&gt;
is 50% as cash-generating as the Gauss Cannon, and you can be up and running in days. I didn&#039;t research it until I &lt;br /&gt;
had that realisation in the teeth of the &amp;quot;what do I research&amp;quot; dilemma. In hindsight I would&#039;ve researched PDS first, &lt;br /&gt;
since it was nearly 2 months before my Technicians had anything much do. &lt;br /&gt;
&lt;br /&gt;
So anyway, I went with Sonic Oscillator, and of course this has the benefit of picking up the battlefield sonic &lt;br /&gt;
weapons along the way, conferring (battlefield) tactical advantage. Now it&#039;s early March, and I&#039;ve just got &lt;br /&gt;
capability to use Sonic Cannon, and this had made me realise something else. When you use Sonic Weapons (or Plasma &lt;br /&gt;
in UFO), it really costs you money! Some people think these weapons are free when you pick them up off the &lt;br /&gt;
battlefield but, not at all. You pay full cash value for these weapons in foregone revenue. That means other things &lt;br /&gt;
are starved of investment. For the price of a single Sonic Cannon and clip, you can build seriously useful buildings &lt;br /&gt;
on your base! To put it another way, if you had to pay $200,000 cash for a Sonic Cannon, I wonder who would bother? &lt;br /&gt;
Gas Cannon are about 30 times cheaper, and not much less effective (not at the stage I am at now anyway). &lt;br /&gt;
&lt;br /&gt;
Yes I definitely fell in love with Gas Cannon. My standard loadout now in early March is Sonic Pistol (just &lt;br /&gt;
acquiring Sonic Cannon), GC loaded with HE in the backpack for those strong enough to carry it (about half or two &lt;br /&gt;
thirds of the troops), and/or a Gauss Pistol for close-up &#039;n personal work on soft targets. And, of course, one to three Sonic &lt;br /&gt;
Pulsers. It&#039;s a great combination. Just Gas Cannon and Sonic Pulsers worked superbly in January. As most people do, &lt;br /&gt;
I ditched the Dart Guns and Dye Grenades immediately, and ditched the JetHarpoons as soon as extra Gas Cannon &lt;br /&gt;
arrived. I researched Sonic Pulsers literally as soon as I got one, and they were in field use by the 2nd week. I &lt;br /&gt;
tried mixing in the Hydro-Jet Cannon but it just wasn&#039;t working for me. And then (despite my posts on the &lt;br /&gt;
Ufopaedia), I fell foul of the HJC pitfall - I turned up at a land mission and I&#039;d forgotten to swap out the HJCs &lt;br /&gt;
for spare GCs. Doh! &lt;br /&gt;
&lt;br /&gt;
(In my first Port Assault, I made the same mistake by bringing my Coelecanth/AquaJet along. Still, it was a useful &lt;br /&gt;
&#039;&#039;unarmed&#039;&#039; reconnaissance vehicle!)&lt;br /&gt;
&lt;br /&gt;
The HJC snafu convinced me to no longer put HJCs on the boat, apart from a single phosphor-sprayer for night missions. Sometimes &lt;br /&gt;
I gave the guy carrying that an AP clip, but I&#039;m not sure if there was much point. I had nagging doubts that HJC-AP &lt;br /&gt;
might be useful in close quarters, frontal assault missions, so I kept them in Stores, at least until the Gauss &lt;br /&gt;
Pistol came along and fully displaced that close range assault role. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Of course, the initial joy of watching a crack (ok, rookie) Gas Cannon squad dispatch Aquatoids with GC-AP quickly &lt;br /&gt;
wore off. Superhuman Gill-men have a habit of shrugging off a GC-AP round. Nonetheless, I just thanked my lucky stars I wasn&#039;t &lt;br /&gt;
using anything weaker. &lt;br /&gt;
&lt;br /&gt;
I researched Gauss just to fill in time and because it&#039;s so quick. The Gauss Pistol is a big improvement and an &lt;br /&gt;
equaliser that it&#039;s hard to forgo. So very briefly in late Jan / early Feb I had a Gauss Pistol / Gas Cannon mix. &lt;br /&gt;
However, as soon as I captured the first Sonic Pistol I had stopped all research to focus on that, so there was only &lt;br /&gt;
about a week between Gauss Pistol adoption, and it&#039;s semi-obsolence, as Sonic Pistols were issued to all combatants (I&#039;d built up a stock - one advantage the alien tech has over the human, you can really hit the ground running once it&#039;s researched). &lt;br /&gt;
&lt;br /&gt;
(At this stage I was running one ten-man combat team and I had just added a second). Then the primary mix became as &lt;br /&gt;
above: Sonic Pistol as main combat weapon, GC-HE as the heavy/support weapon, Gauss Pistol for close quarters work, &lt;br /&gt;
and plenty of Sonic Pulsers for anything tactically tricky or scary. &lt;br /&gt;
&lt;br /&gt;
I gave up on the Gauss sequence after the Pistol, after making the decision I would not go down the Gauss Cannon &lt;br /&gt;
Factory route. There seemed to be plenty of more important things to research, urgent things that couldn&#039;t possibly &lt;br /&gt;
be avoided. I didn&#039;t feel like I had any luxury of choice. In fact, it felt like I couldn&#039;t possibly get it right, &lt;br /&gt;
that whatever trade offs I made my skipping technology A in favour of technology B would come back to bite me. I &lt;br /&gt;
really do like that in TFTD, I think the research decisions are much more challenging.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The tactics are different in TFTD and also pleasingly challenging. I have to be much more careful than in UFO, and I &lt;br /&gt;
like that. Bunching up is definitely out of the question - the aliens are noticeably more aggressive with grenades. &lt;br /&gt;
There is much more thought behind the maps. Many of them are really painful. Sometimes it seems a bit contrived, but &lt;br /&gt;
it&#039;s only fair since the aliens have such a dumb AI - they need an equaliser in their favour. &lt;br /&gt;
&lt;br /&gt;
One thing it made me wish for, aside from a smarter AI, was that aliens would pick up weapons. Because the game &lt;br /&gt;
advertises when they panic, and visually shows when they are disarmed, you then pretty much know they are no threat &lt;br /&gt;
(within reason: they may have psionics, or grenades). So you can just wander up to these shell shocked aliens and &lt;br /&gt;
stun them with impunity. &lt;br /&gt;
&lt;br /&gt;
Good grief, capturing Calcinites is hard! I was prepared to trade a rookie for each captive, but it was much worse &lt;br /&gt;
than that. I had to reload after I sent 4 guys into a room to get one Calcinite, and they all died. (Turns out there &lt;br /&gt;
were TWO Calcinites in the room!). But I actually like the way it works. It&#039;s different enough from &amp;quot;eeny meeny &lt;br /&gt;
meiny mo, catch a Navigator by his toe&amp;quot; in UFO. It feels quite a lot like what Scott Jones does in his XcomUtil &lt;br /&gt;
option &amp;quot;research help from captured aliens&amp;quot;. Ok it&#039;s really only a few of the aliens, but capturing them is so &lt;br /&gt;
crucial, and also so hard to do, that it really adds to the excitement. Maybe if I&#039;d caught a Deep One on my first &lt;br /&gt;
Terror mission I would be more blase about it. Unfortunately I kept shooting the Deep Ones, thinking there would be &lt;br /&gt;
another one along later, when things would be just a &#039;&#039;little&#039;&#039; calmer and I could take the time to stun one. Sadly &lt;br /&gt;
the game ended and I got no Deep One prisoner. So I had to go after a Calcinite instead. What fun they are! I think &lt;br /&gt;
they are the only monster in the game that can shred the front armour of (XcomUtil improved) tanks. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mind Control, of course, absolutely kills you. This was my biggest dilemma. In the end I figured it&#039;s better to get &lt;br /&gt;
the missions, and get crucified each time by alien MC, than to not have any missions. No missions means no tech, no &lt;br /&gt;
experience, no points, no money. It&#039;s a declining spiral. It&#039;s possible to manage without MC or even MC Labs. You &lt;br /&gt;
just have to note anyone who is influenced, disarm them or stun them immediately, and drop them from the roster when &lt;br /&gt;
you get back. Everyone carries a Stun Rod, everyone watches everyone else. In this way, I will just have to tough it &lt;br /&gt;
out for now, and get MC Labs later. Of course, I don&#039;t doubt that if I don&#039;t at least have MC Labs by April, I will &lt;br /&gt;
be finished. I played a short campaign before and that&#039;s what happened. Plan sailing until April when the Tasoths &lt;br /&gt;
showed up - curtains in May. So I need to avoid that. But to get MC technology, and research it, and pay for it, I &lt;br /&gt;
need to be able to fight missions. So it&#039;s a very high priority but it has to come second. If I have to, I will &lt;br /&gt;
fight this war with nothing but Gas Cannons, so long as I get my Sonic Oscillators and then my MC Labs. Transmission &lt;br /&gt;
Resolvers, Armour, that&#039;s all by-the-by. One day I&#039;ll need Subs, I know, but I can&#039;t see that far ahead from where &lt;br /&gt;
I&#039;m sitting now! &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== January ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Setup:&#039;&#039;&#039; I&#039;m using the Steam release of TFTD, with XComUtil installed but with most of the defaults turned off (apart from &lt;br /&gt;
Improved Tanks). Mainly so I can use the command line &#039;&#039;&#039;xcomutil dis&#039;&#039;&#039; to see if the mission is something I&#039;ve played before. &lt;br /&gt;
If I&#039;ve played the scenario, alien type, and map type before, I just tend to do xcomutil &amp;quot;win&amp;quot;. This gives me &lt;br /&gt;
maximum loot and no casualties, but it also gives me zero experience, so I think it&#039;s a fair trade off when I can&#039;t &lt;br /&gt;
be bothered to do the exact same mission again. If they are small ones I usually do them through even if they are &lt;br /&gt;
the same. But anytime there is a new race, new scenario, or new map, I do it all through manually. Very satisfying!&lt;br /&gt;
For laughs I&#039;m running the Steam release under DosBox on Ubuntu Linux. This is quite easy, you just copy the steam &lt;br /&gt;
files (under &amp;quot;steamapps&amp;quot;, &amp;quot;common&amp;quot;) to a Linux directory and execute the existing dosbox.conf script. Even easier if &lt;br /&gt;
you are using Wubi which sits on the same filesystem as your Windows installation. You can also do groovy things &lt;br /&gt;
like add XcomUtil and possibly other third party things, as long as they are pure DOS. I think I put more &lt;br /&gt;
instructions in the &amp;quot;Steam Releases&amp;quot; section of this Ufopaedia. For me the main benefit is not having to do that Steam login and update check &lt;br /&gt;
each time. &lt;br /&gt;
&lt;br /&gt;
I started on Superhuman with a base in the Straits of Hercules, called &amp;quot;Atlas&amp;quot;. Everything went swimmingly. Plenty &lt;br /&gt;
of missions, though noticeably more difficult to intercept and shoot down than in UFO. The Gas Cannon-AP reigns &lt;br /&gt;
supreme. How I love the satisfying &amp;quot;chumf&amp;quot; of the cannon as it takes big hunks out of the bad guys. And crazily &lt;br /&gt;
accurate as a sniper weapon. &lt;br /&gt;
&lt;br /&gt;
Got Sonic Pulsers researched as absolute top priority and they are almost too powerful, you don&#039;t need them really &lt;br /&gt;
except to rearrange the landscape. Or get yourself out of a tight situation - about ten times at last count. :) It &lt;br /&gt;
was nice not to really have to learn how to chuck Magna-Packs around. &lt;br /&gt;
 &lt;br /&gt;
Developed a second strike base, Shiva, in the Indian Ocean, as that was the red hot activity area this month. I &lt;br /&gt;
never know if it&#039;s worth building a base in the hot spot, it seems you are always chasing your tail as the activity &lt;br /&gt;
moves on by the time the base is built. Still, I suppose, you&#039;ve got to build &#039;em somewhere. As long as the &lt;br /&gt;
locations make reasonable sense, why not?&lt;br /&gt;
&lt;br /&gt;
At the end of January, an Island attack on the Seychelles. This was a lot of good clean killing fun. As noted above, &lt;br /&gt;
my guys were enthusiastically dropping the Deep Ones and nobody stopped to think we should perhaps stun one. Why did &lt;br /&gt;
we built that Alien Containment thing anyway? (Actually I hadn&#039;t read the TRTBAG properly at this point so I didn&#039;t &lt;br /&gt;
realise how crucial it is to capture a live Deep One. The Research section for TFTD could probably use some tidying &lt;br /&gt;
up, as it assumes you have a research tree to hand such as from the USG, but actually, we don&#039;t have that on here).&lt;br /&gt;
&lt;br /&gt;
== February ==&lt;br /&gt;
&lt;br /&gt;
First time through, February was a disaster. A lost month that cost humanity its future. But literally, nothing &lt;br /&gt;
happened the whole month. I just thought it was one of those &amp;quot;drought&amp;quot; months that teach you not to over-commit on &lt;br /&gt;
your base buildup and costs. I watched the graphs (or so I thought) and there was nothing for me to intercept, even &lt;br /&gt;
though I had Barracudas out as much as possible as sonar pickets. Then at the end of the month, funding cuts all &lt;br /&gt;
round, huge loss of score, alien Colony in Antarctica, and an immediate port attack in the US - way out of reach of &lt;br /&gt;
my only Triton as it limped back from an abortive Colony raid. How are you supposed to raid a Colony in February for &lt;br /&gt;
heavens&#039; sake? Well I thought it was pretty clear that the Committee were going to hand me my behind if I didn&#039;t go &lt;br /&gt;
and take of the problem. &lt;br /&gt;
&lt;br /&gt;
I only fought the upper Colony level, thinking I could maybe bag some useful corpses and items and then abort, learn &lt;br /&gt;
some lessons, and come back stronger. I got absolutely crucified. We made them pay though. Gas Cannon HE really &lt;br /&gt;
stuffs a Hallucinoid. And Sonic Pistols are fine for taking down Tasoths. But the MC, and the Tentaculats - it was &lt;br /&gt;
too much. I think the guy who wrote the Colony Assault article is probably right, don&#039;t attempt it without DPLs, &lt;br /&gt;
armour, and good MC. All I had vaguely in that league was one Thermal Shok Launcher and 3 rounds, plus Sonic Pistols &lt;br /&gt;
and Gas Cannon. Here, the Sonic Pulsers really came in to their own, but I was using so many, and taking so many &lt;br /&gt;
casualties, that I ran out. But it was the MC that was the killer. In the end only the tank survived, along with one &lt;br /&gt;
Aquanaut who wigged out early enough in the battle to be stunned and safely stashed in the Triton. I actually waited &lt;br /&gt;
out 30 nail-biting turns with my tank gun pointing out the door of the Triton until she woke up to fly that boat &lt;br /&gt;
home. But I realised I&#039;d had enough. &lt;br /&gt;
&lt;br /&gt;
Anyway I replayed from the start of Feb, developed 2 Tritons and 2 combat teams, 2nd and 3rd bases, and played &lt;br /&gt;
&#039;&#039;much&#039;&#039; closer attention to the graphs. This time, when Brazil and Antarctica and the US picked up on the graphs, I &lt;br /&gt;
sent long range Triton pickets and sat them there. I still didn&#039;t intercept anything, not a single mission or even a &lt;br /&gt;
detection in the affected areas. But I guess somehow my presence scared them off, because this time around I got a &lt;br /&gt;
massive score in February instead of a massive slapping. Quite odd, as literally all I did was park Tritons over the &lt;br /&gt;
affected area, I never fired a shot. &lt;br /&gt;
&lt;br /&gt;
I managed to down a Battle Ship somwhere around the GIUK gap, (and I realise a TFTD Battle Ship is one down from a &lt;br /&gt;
UFO Battleship) by using everything I had, which was just 2 Barracudas and DUPs. I got lucky (I know I got lucky &lt;br /&gt;
because I replayed it 3 times, so I got 3rd time lucky.) Even so, one Barracuda was over 90% damaged and out for &lt;br /&gt;
most of the rest of the month. But it was worth it, as there was a famine of missions and I needed the loot. Luckily &lt;br /&gt;
it was just Aquatoids with Hallucinoids, and the MC wasn&#039;t too harsh - just enough to teach me who was weak, and &lt;br /&gt;
rotate them out. And the Hallucinoids make a superb &amp;quot;popping&amp;quot; sound when you hit them with the last GC-HE. :)&lt;br /&gt;
&lt;br /&gt;
Started a 3rd base in Antarctica since the bad guys were hitting that really hard - according to the graphs, but I &lt;br /&gt;
never saw a single craft. I only got my sonar up about the 25th of the month though. Normally in a new base I build a standard sonar&lt;br /&gt;
as well as large one, so I get the traffic picture 15 days earlier. This time I economised. I guess we will never &lt;br /&gt;
know what those green skinned blighters were up to down there. :)&lt;br /&gt;
&lt;br /&gt;
And this time at the end of the month was a surprise and luckily not a disaster. I was doing one of those tricky &lt;br /&gt;
&amp;quot;order it 72 hrs before the end of the month&amp;quot; moves. And it turns out February 2040 is, indeed, a leap year - ending &lt;br /&gt;
on the 29th and not the 28th. And I thought for a moment it might be a bug. Just a little Easter Egg for us from the &lt;br /&gt;
good Brothers. :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== March ==&lt;br /&gt;
&lt;br /&gt;
First week. &lt;br /&gt;
&lt;br /&gt;
First Port Terror Mission. I love the map. It feels like fighting urban warfare. It&#039;s clever without being &lt;br /&gt;
contrived. I didn&#039;t get the chance to explore the water feature. If there were any aliens in there, they came out, &lt;br /&gt;
since I won without exploring it. Extremely tricksy to get a tank in there. There is only one ramp for the tank, and &lt;br /&gt;
it has debris you need to clear, but if you use a Sonic Pulser that destroys the ramp. I could&#039;ve tried a GC-HE &lt;br /&gt;
instead maybe. Maybe next time. Apart from anything else I wanted to get my tank in the water because I stupidly &lt;br /&gt;
brought a Coelecanth/AquaJet to a land mission. It was brand new, it&#039;s first outing as well. (Remember that quote in &lt;br /&gt;
the Untouchables: &amp;quot;Just like a Mick to bring a knife to gun fight&amp;quot; - I felt like that.) I tried quite a few times to &lt;br /&gt;
get the tank to reaction fire its rockets, leaving it with nearly full TUs and my guys all cleared back behind the &lt;br /&gt;
firing arc, but no dice. Maybe that only applies to human-carried underwater weapons?&lt;br /&gt;
&lt;br /&gt;
Got Sonic Cannon. Working through the other Sonic techs to get Sonic Oscillator which is the real prize. Using Sonic &lt;br /&gt;
Cannon tactically is a curse in disguise, it robs too much cash. I may have to consider if it&#039;s really needed. &lt;br /&gt;
&lt;br /&gt;
I am, as usual, dirt poor, building and selling Particle Sensors to keep the lights on. Selling 8 or so Sonic Cannon &lt;br /&gt;
instead of giving them as toys to the boys in the boat might&#039;ve made a difference - like about a $1million or so!&lt;br /&gt;
&lt;br /&gt;
And, I&#039;ve just realised... I fought the Port mission from my new rookie base in Antarctica. I have to hand it to those guys, they did an amazing job, all absolute first timers and only 2 out of 10 dead, for 18 aliens zeroed. But... I didn&#039;t have Alien Containment in the new base! Aargh! What a rookie mistake. And if I&#039;d realised that, no one would&#039;ve died, we would&#039;nt&#039;ve been running around trying to stun Calcinites like John Cleese from the Ministry of Silly Walks. We&#039;d&#039;ve just nuked the blighters. Oh well, live and learn!&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;To Be Continued&#039;&#039; (Famous last words!)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:PALETTES.DAT&amp;diff=28470</id>
		<title>Talk:PALETTES.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:PALETTES.DAT&amp;diff=28470"/>
		<updated>2010-08-04T03:23:27Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: Tactical Palette - last 16 colors.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just for a bit of general --[[User:Darkfred|Darkfred]] 07:29, 13 June 2007 (PDT)information, it might be worth mentioning that some of the palette entries are used for colour cycling. For example the radar pings on the intercept console. That&#039;s achieved by shifting a whole block of palette entries to give the effect of movement. (Think KITT&#039;s chasing lights) The image doesn&#039;t change, but the colour that you see does. It results in a wave movement. If anyone remembers the shifting colours on ye olde Windows startup screens, this was achieved in the same way. &lt;br /&gt;
&lt;br /&gt;
Other palette swaps include the greyscale background bitmaps that are used in the Geoscape screens. They keep the same palette entry, and the game only needs to shift these entries to different shades to change the shades of the backgrounds. &lt;br /&gt;
&lt;br /&gt;
Come to think of it, anyone know what conditions change the normal backgrounds from red to purple? It seems to vary. &lt;br /&gt;
&lt;br /&gt;
Also another random technical tidbit, the game uses mode 13h for its display. In other words 320x200x256clr VGA mode. It used to come standard on all SVGA cards as a safe mode to revert to. The first fifteen colours after the transparency were probably left behind for use by the console. They appear to match the old text mode 16 colour palette. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
In the case of the background images, the palette swaps are pulled from [[BACKPALS.DAT]], but I never realised the intercept radar was a palette cycle, though it does make sense - I assume that&#039;s handled entirely by the executable.&lt;br /&gt;
&lt;br /&gt;
Oooh, I didn&#039;t know mode 13 was a *real* display mode! I thought it was just a &amp;quot;prebuilt&amp;quot; mode that QBasic provided to &amp;quot;script kiddies&amp;quot;. XD&lt;br /&gt;
&lt;br /&gt;
Not sure what you mean about those fifteen colors and how &amp;quot;They appear to match the old text mode 16 colour palette&amp;quot;. I checked QBasic&#039;s idea of what the default mode 7 palette should look like (mode 7 being a sixteen color only version of mode 13, but with multiple &amp;quot;screens&amp;quot; you could flip in and out of the display buffer - guess you could call it EGA?) and it doesn&#039;t match the colors in any of UFO&#039;s palettes. But, I dunno if the palettes QBasic used followed any real standard, or if I even know what I&#039;m talking about. :)&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 04:56, 12 June 2007 (PDT)&lt;br /&gt;
: Xcom was built for mode 13h with a 6 bit ramdac, (hence the 0-64 color values). This was one of the few modes which was widely available and worked the same on all early pc&#039;s. It was started via interrupt 13h also called MCGA and the bios did all the setup work. I don&#039;t think there was a default mcga palette, but it could be the default EGA palette.&lt;br /&gt;
: The palette animation could be done either way, I will check on this, but it might just be easier to switch the pal to grayscale, and take a screenshot during the animation. Then look at the color values. In the windows version the palettes are entirely faked anyway so doing it via code wouldn&#039;t be any slower.--[[User:Darkfred|Darkfred]] 07:58, 12 June 2007 (PDT)&lt;br /&gt;
:: It&#039;s actually interrupt 0x10, with AH=0, AL=0x13.  The 6/18 bit entries in the palette table was, and still is standard for 8-bit palette modes in VGA.  [http://en.wikipedia.org/wiki/MCGA MCGA] was also an actual card, between EGA and true VGA.  Mode 13 has an additional benefit for 16-bit DOS mode programmers in that the entire memory map for the card (320x200x1 byte/pixel = 64,000 bytes) is available within a single segment, meaning no bank swapping is necessary (much faster).  The Amiga version(s) of XCOM would have used a 4/12 or 8/24 bit color resolution though, depending on whether it was OCS/ECS or AGA. I can&#039;t remember which Amiga version I had though, or whether or not it looked &amp;quot;ECS-y&amp;quot; or not. -- [[User:Renegrade|Renegrade]] 09:47, 2 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
-------&lt;br /&gt;
&lt;br /&gt;
Not sure what you mean by &amp;quot;palette faking&amp;quot;... I know that if you take a screenshot in the CE version of the game (F12), the resulting image will be a 256 color job using whatever palette the game was supposed to be using at the time.&lt;br /&gt;
&lt;br /&gt;
Hence my thought was to just take multiple screenshots of the animation, and check to see what the palette looked like. Sure enough, colors 112 through to 127 (16 in all) cycle through shades of green, whereas the image itself doesn&#039;t actually change.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 17:53, 12 June 2007 (PDT)&lt;br /&gt;
: Good work! Very cool. &lt;br /&gt;
: This may be boring but I will explain what I meant by palette faking. Its interesting but not terribly useful unless you wanna mod the exe.&lt;br /&gt;
: Palette Faking: The CE version of UFO is actually rendered in 32bit color at 640x400. You can take a screenshot of this version using the PrnScn key on your keyboard. The image you get when you press F12 is from UFO&#039;s fake internal MCGA buffer. &lt;br /&gt;
: When UFO was converted to a windows application the developers cheated, they made a copy of the mode13h memory in the executable, which they use as if it was the actual screen. They also make a fake copy of the palette. Then after each frame is drawn they copy this into the 32bit DirectDraw surface. They convert from the MCGA format into 32bit and run an upsampling filter (2x to 640x400). This is why the edges of letters look smoother in-game then in screenshots. &lt;br /&gt;
: The upshot is that the CE game is the exact same game code, only wrapped with a mode13 emulator. Cool huh. This is what allows the Exe Splitter and filter changing mods to work, 90% of the work is already done. --[[User:Darkfred|Darkfred]] 22:03, 12 June 2007 (PDT)&lt;br /&gt;
:: It also implies that those who did the Windows conversion were not the same programs who made the game. The original programmers would have done it seemlessly rendering into the DirectX buffer. The CE programmers may not have even had the sourcecode, the hack could be done without it. (although audio might not be so easy I donno). --[[User:Darkfred|Darkfred]] 22:07, 12 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::I believe the programmers that did the Win32 port may have had access to the source of the original executables. Lots of constants and other tables for both the executables seem to be lumped together at the end, which is why you can&#039;t always get a rough match for some variable offsets in the dos version and the executable version. They aren&#039;t just both of the original executables mushed together with a bit tacked on the end(or front) to get it to work with Direct X, as I originally thought.  &lt;br /&gt;
&lt;br /&gt;
:::Come to think of it, pressing print screen in the CE does take screenshots, but the palette information isn&#039;t carried over, so the bitmap that ends up on the clipboard is ruined. - [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
::::My UFO version is calling DirectDraw and requesting a 640x400x32bit display mode. It also makes nice 32bit screenshots when i press printscreen, I just verified this. It may be that there is some difference between our versions?  --[[User:Darkfred|Darkfred]] 23:34, 12 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::::It&#039;s not the game. I think it might just be the way some implementations of Windows handles screen captures. For lots of players, the screenshots palette will not be captured, and because the individual pixel index colours aren&#039;t saved, the image on the clipboard is ruined and cannot be recovered. I guess your clipboard works a lot better than most of us! (Or I suppose it could be your display mode). Using Printscreen with the dos version of the game works fine though, and the palette information isn&#039;t destroyed. My old copy of Windows 95 used to doubled the dos screen&#039;s pixels as well. Oh well. For now, the Collectors Edition&#039;s special F12 screen capture key for UFO/TFTD is still the most reliable method to capture screenshots. No matter how the game is displayed, the screenshot is stored as a 320x200x8 TGA file in the game directory- [[User:NKF|NKF]] 00:36, 13 June 2007 (PDT)&lt;br /&gt;
:::::: I don&#039;t see how the palette could be the problem though, my version of the game simply has NO palette. It is all converted to 32bit being put on the screen. And the screen doubling is using the SuperSai algorithm, which only works on 32bit buffers. The only thing I can think of is that perhaps it is receiving a 8bit buffer instead of the 32bit one it requests, but this doesn&#039;t make any sense. The most likely explanation is that the color problem is either a difference in our versions or a bug in your video drivers. --[[User:Darkfred|Darkfred]] 07:29, 13 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
::::::: I doubt it -- it&#039;s almost certainly a matter of exact environment.  UFO/CE/W2K with the graphics fixup loader against NVidia drivers is palette-corrupted (just tested), so any chance of PrintScreen working normally on this platform is from using PrintScreen against an emulator. --[[User:Zaimoni|Zaimoni]] 16:28, 13 June 2007 (CDT)&lt;br /&gt;
&lt;br /&gt;
::::::::I am beginning to think that my highres 32bit version is the result of one of the mods I installed, i just don&#039;t know which. This would explain why the code is done in this way, stubbed into the beginning of the executable. Come to think of it I don&#039;t have any flashing screen problems like I did before either. hmmm. Well it works and I really don&#039;t care at this point. --[[User:Darkfred|Darkfred]] 16:40, 13 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
Under CE, a printscreen will give you an image with a corrupt palette. F12 gives you a proper image.&lt;br /&gt;
&lt;br /&gt;
The only way (that I know of) to get a 2xSaI effect is to run [http://www.strategycore.co.uk/files/index.php?dlid=474 Mok&#039;s executable]. Best I could make out, most of his extra code is tacked onto the end of the file... Printscreen will work &amp;quot;correctly&amp;quot; with this version, though F12 will still give unscaled images. This version of the game also has a variety of other differences to the usual engine (never checked the full list, but I gather there&#039;s some timing tweaks as well as a different way of handling sound).&lt;br /&gt;
&lt;br /&gt;
The game uses DirectDraw regardless. Without f0dder/Mok&#039;s patches, the graphics (usually) won&#039;t render correctly. f0dder blames the DirectDraw implementation in his patch documentation, which&#039;ll be why disabling hardware acceleration is another way of fixing things up.&lt;br /&gt;
&lt;br /&gt;
The CE game is remarkably similar to the Dos version, but there&#039;s a handful of differences. Although the game handles most errors by either ignoring them or crashing, it actually responds to some of them with intellegent messages. For example, if you pass it an over-filled [[MCD|MCD array]] (easy to do when running my damage testing tileset, just visit anything larger then a scout ship in the desert), you&#039;ll get a pop up box complaining about there being &amp;quot;too many map codes&amp;quot;. You also get missing file messages if the game can&#039;t find inventory screen images.&lt;br /&gt;
&lt;br /&gt;
The most famous difference is the vertical waypoint bug (where a blaster bomb missile told to go directly up or down will instead fly off on an angle - The aliens often kill themselves with this one). Though it&#039;s still my guess that the coders who ported the game just changed as much code as they felt was needed to make the game compile as a windows executable, and left it at that.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 02:06, 14 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
== TFTD&#039;s Depths ==&lt;br /&gt;
&lt;br /&gt;
Just recalling what I deduced ages ago while playing the game using X-Comutil and the map and depth picker, I agree that the palettes are adjusted on the fly. Having a sea bed map appear grey on land but appearing blue in water was quite strange - it wouldn&#039;t make sense to duplicate all the images for the various depths. The simplest way to achieve this effect would be to tint the palette with blue, and just darkening the images to simulate depth would be quite easy. Also I recalled that in UFO that the background images in the various screens were all grey, but on-the-fly changes to the palette allow them to change between colours like red, olive and purple. They have their designated set of colours in the palette too if I&#039;m not mistaken. &lt;br /&gt;
&lt;br /&gt;
One good way to find out would probably be to replace an entire row of colours with the same colour, then observe what happens in the various depths. I was going to suggest pure white, but then you couldn&#039;t go up any further which would be needed for the tint. Perhaps a middling value like 128, 128, 128 for a flat grey. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I started looking into the palettes in more detail so I could convert UFO graphics to TFTD&#039;s colors, and vice versa. I took a screenshot of TFTD CE and ripped the palette from that (as the colors for the battlescape didn&#039;t seem to be in Palettes.Dat).&lt;br /&gt;
&lt;br /&gt;
After the first conversion, most of the colors seemed &amp;quot;ok&amp;quot; but some (eg. rocks) came out blue when Daishiva&#039;s PCK viewer declared them to be grey - and surface terrain (eg. grass and trees) looked decidedly off...&lt;br /&gt;
&lt;br /&gt;
I then took a ton of screengrabs and eventually decided on a total of four palettes. I&#039;d completely forgotten that TFTD used depth settings as well as time of day so it took me a little while to work out why the things kept changing.&lt;br /&gt;
&lt;br /&gt;
It wasn&#039;t until I loaded up XcomUtil to force certain map types that I finally saw the light. Four palettes, four depth settings. One good example of the effect is the &amp;quot;atlantis&amp;quot; terrain (which makes heavy use of grey stone).&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 20:16, 1 January 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
I&#039;ve been doing some stuff with the color-swapping SCR files and noticed that they index E0-EF, the second-to-final 16 palette entries. Currently the page says the BACKPALS.DAT palettes replace the 16 final entries. Is the page wrong or is there something I&#039;m missing?&lt;br /&gt;
&lt;br /&gt;
- [[User:Majorlag|Majorlag]]&lt;br /&gt;
&lt;br /&gt;
== Tactical Palette - last 16 colors. ==&lt;br /&gt;
&lt;br /&gt;
The last 16 colors of the Tactical Palette are more exactly this, I believe:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
240: 39,40,40&lt;br /&gt;
241: 35,37,37&lt;br /&gt;
242: 32,34,35&lt;br /&gt;
243: 29,31,32&lt;br /&gt;
244: 26,29,30&lt;br /&gt;
245: 23,26,27&lt;br /&gt;
246: 21,23,25&lt;br /&gt;
247: 18,20,22&lt;br /&gt;
248: 15,17,20&lt;br /&gt;
249: 13,14,17&lt;br /&gt;
250: 11,12,15&lt;br /&gt;
251: 9,9,12&lt;br /&gt;
252: 6,7,10&lt;br /&gt;
253: 5,5,7&lt;br /&gt;
254: 3,3,5&lt;br /&gt;
255: 0,0,0&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(these are out of 63, rather than out of 255, as per VGA hardware registers)&lt;br /&gt;
&lt;br /&gt;
I did a dosbox screencap from XCOM-DOS v1.4 and extracted the exact palette from the resulting PNG and got values that were evenly divisible by four, suggesting that dosbox merely multiplies the value of the register by 4 (left shift by 2) to make 24-bit graphics.&lt;br /&gt;
&lt;br /&gt;
These values make more sense to me than the values I was extracting from the PNG.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[User:Renegrade|Renegrade]] 23:23, 3 August 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=28437</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=28437"/>
		<updated>2010-07-18T00:23:42Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: /* Difficulty patch information wrong? */&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;
TFDT-CE(CRC32:C2F6C035): 0x0008AE00..0x0008B00F.&amp;lt;br&amp;gt;&lt;br /&gt;
use: rivers instead of country borders.&amp;lt;br&amp;gt;&lt;br /&gt;
data: lon,lat,lon,lat.. streams, Flags: lon = -1(NewLine), lon = -2(EndOfSection).&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;
TFDT-CE(CRC32:C2F6C035): 0x0008B010..0x0008B06F. ((16*2)*3:lon,lat,Nid)&lt;br /&gt;
&lt;br /&gt;
===Craft type data===&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
  craftsData &lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0 &#039;&#039;Skyranger&#039;&#039;&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 &#039;&#039;Lightning&#039;&#039;&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 &#039;&#039;Avenger&#039;&#039;&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 &#039;&#039;Interceptor&#039;&#039;&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 &#039;&#039;Firestorm&#039;&#039;&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 &#039;&#039;Small Scout (VS)&#039;&#039;&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 &#039;&#039;Medium Scout (S)&#039;&#039;&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 &#039;&#039;Large Scout (S)&#039;&#039;&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 &#039;&#039;Abductor (M)&#039;&#039;&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 &#039;&#039;Harvester (M)&#039;&#039;&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 &#039;&#039;Terror Ship (L)&#039;&#039;&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 &#039;&#039;Battleship (VL&#039;&#039;)&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 &#039;&#039;Supply Ship (L)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Craft type known fields: (14 x 2-byte dwords per record)&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 ? &#039;&#039;always 2 for UFOs. is this used for UFOs? how?&#039;&#039;&lt;br /&gt;
 00000006 maxSpeed dw ?  &#039;&#039;in knots&#039;&#039;                 ; 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;
          &#039;&#039;5 - Very Small / 4 - Small (inc. XCom) / 3 - Medium / 2 - Large / 1 - Very Large -spike&#039;&#039;&lt;br /&gt;
 00000010 ufoReload dw ? &lt;br /&gt;
          &#039;&#039;UFO only. Firing interval. Values: 56=S/MSct 48=LSct/Abd 32=Harv 24=Suppl/Terr/BS. -spike&#039;&#039;&lt;br /&gt;
 00000012 ufoUnknown dw ?  &lt;br /&gt;
          &#039;&#039;Unknown. Score related? SS=200 MS=250 LS=300 A=500 H=500 TS=2000 BS=4000 SS=3000 -spike&#039;&#039;&lt;br /&gt;
 00000014 ufoRange dw ?  &#039;&#039;alien weapon distance in km*8 -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000016 ufoPower dw ?  &#039;&#039;alien weapon damage -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000018 TroopSpace dw ? &#039;&#039;Troop capacity &#039;&#039;&lt;br /&gt;
 0000001A HWPSpace dw ? &#039;&#039;HWP capacity -spike&#039;&#039;&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
While the 9th [dword] could be UFO weapon Accuracy or even rate of fire, it seems unlikely. All the values are a multiple of 8 just like distance, so it may be related to that. That&#039;s my guess. I&#039;m sure someone like Seb would know more. --[[User:Zombie|Zombie]] 23:56, 4 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Sorry I didn&#039;t sign those theory guesses, I will do so now. Actually, evidence is building up that the byte at 0x10 within structCraftData is an inverse co-factor - i.e. a divisor - of the net total damage output of UFO attacks. In other words, it could well be a firing interval value such as is seen for XCom craft weapons. I have done 3-4 sets of ten tests so far (XCom craft survival-time tests, deducing UFO damage output). 1 set was for Medium Scout vs Interceptor, 2 sets were for Terror Ship vs Avenger. (I also did multiple attacker sets but those are harder to compare directly to this scenario). So far all 3 test sets are a &amp;lt;i&amp;gt;reasonably&amp;lt;/i&amp;gt; good fit for this formula:&lt;br /&gt;
&lt;br /&gt;
 UFO net damage output = &lt;br /&gt;
 &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt;Weapon power x 75% &#039;&#039;(avg of randomisation)&#039;&#039; x 2/3 &#039;&#039;(accuracy)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt; &lt;br /&gt;
  x &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt; time &#039;&#039;(in game seconds)&#039;&#039; / 0x10 offset &#039;&#039;(firing interval)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: What I want to do next is take one or both of those test scenarios, hack the 0x10 offset up or down, and see if the observed damage output varies inversely. If so, I think that will be pretty strong evidence. Even in my data, there is definitely still also some variation going on that is not fully accounted for in the formula above. As you say it is interesting the 0x10 values are all multiples of 8, suggesting distances. I will keep testing and see what I come up with! Cheers, [[User:Spike|Spike]] 06:39, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
I&#039;m enclined to agree with the rate of fire theory. A countdown is stored in [[CRAFT.DAT]] at offset 0x26 and when it hits 0, the UFO fires. It is reset for the next shot with this formula:&lt;br /&gt;
 tmp = offset10-2*difficultyLevel&lt;br /&gt;
 nextShot = RAND(0,tmp)+tmp&lt;br /&gt;
&lt;br /&gt;
Edit: Although the attack type does not appear here, I suspect that while a missile is &amp;quot;traveling&amp;quot;, the countdown is not changed. As a result, closer ranges means higher rates of fire. [[User:Seb76|Seb76]] 07:36, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Excellent timing Seb! I was just about to start my tests. I could&#039;ve coped with the random element, since I&#039;m only measuring averages over time, but the presence of a 2nd factor (difficultyLevel), I was not expecting. It would have completely thrown my numbers. Also I might&#039;ve crashed the game since I&#039;d set offset10 to 0x08 on difficulty level Superhuman (=5?), creating a negative rate of fire! For simplicity I might do my tests on Beginner from now on, and repeat the earlier tests on Beginner. &lt;br /&gt;
&lt;br /&gt;
:It&#039;s interesting that you don&#039;t see any reference to Attack Mode. So the changing rate of fire could indeed be a &amp;quot;Space Invaders Effect&amp;quot; as you say. Perhaps the reason this is not seen for cannon fire is that cannon fire is resolved instantly, whereas missiles are plotted as objects on the map? Is there any indication that missiles and cannon are handled differently by these routines? &lt;br /&gt;
&lt;br /&gt;
:My test scenarios are probably too simplistic at the moment. But, I am sure I am seeing different rates of fire for missiles at the same range, dependent on whether they are in Standard or Cautious attack mode. I will recheck this. [[User:Spike|Spike]] 08:07, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Seb, I realise your formula above for variable firing intervals, from 100%-200% of the base value, explains the 2/3 factor I found which I thought might be UFO Accuracy. The average of a 100-200% range is 1.5, and the inverse of this is 2/3. So perhaps there is no accuracy factor in UFO weapon damage at all. Possibly you just have a base damage and a base firing interval, plus a 50%-100% variation on the base damage and a 100%-200% variation on the firing interval. This would certainly match the data I have so far. &lt;br /&gt;
&lt;br /&gt;
:I have done a couple of tests of varying this offset 0x10 value and they show the right &amp;quot;sign&amp;quot;: increasing this value decreases UFO damage output over time, and decreasing this value increases UFO damage output. The effect is strong, and approximately linear, i.e. halving the value roughly doubles the damage, etc (testing on Superhuman). To quantify it more exactly I need to go back and control for Difficulty Level which I did not expect to be a variable. I&#039;m also going to control for the time taken for the UFO to close into firing range - by increasing the UFO weapon range in the tests to 70 or 75km. &lt;br /&gt;
&lt;br /&gt;
:One thing that is worrying me though is that the firing interval is random. Since I&#039;m using the firing interval of a cannon as my &amp;quot;timer&amp;quot; to measure the duration of all other events, it means I&#039;m measuring with a yardstick that randomly changes size. I have to hope that my sample sizes are large enough that the averages will dominate over the fluctuations.&lt;br /&gt;
&lt;br /&gt;
:More worrying is the idea that rate of fire varies with range (as opposed to with Attack Mode). That would be an elastic yardstick, worse than a random one. I thought I had disproved this but I need to go back and do it again, more carefully. I need to test the same weapon at the same range with different attack modes, again. I may well be guilty of building my hypothesis into my test scenario as an assumption! I will also double check the assumption that hacking the firing interval values for XCom weapons has no effect. I&#039;m pretty sure that, even if the absolute firing interval changes with range, the relative ratios of firing interval when comparing different weapons, does not change. But I&#039;ll double check. &lt;br /&gt;
&lt;br /&gt;
:In the code, do you see any evidence of cannon-type weapons being treated differenly from missile weapons? For example, do cannon rounds not &amp;quot;travel&amp;quot;? Also, do you see the same &#039;&#039;&#039;rnd (0,tmp) + tmp&#039;&#039;&#039; function being applied to the firing interval of XCom air attacks? Regards, [[User:Spike|Spike]] 14:30, 5 July 2009 (EDT)&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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 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===&lt;br /&gt;
 (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;
=== 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;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
In the WinCE version (unpatched) the craft weapon stats start at offset 0x6fb18. Or search for this signature:&lt;br /&gt;
&lt;br /&gt;
 40 02 1e 00 46 00 46 00 01 00 0f 00 06 00 01 00 06 00 &lt;br /&gt;
&lt;br /&gt;
Fields are:&lt;br /&gt;
 Index - Range (km) - Hit% - Damage - ?X? - reload time - ammo cap - ?Y? - ammo type&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Y&lt;br /&gt;
 Stingray  1  1&lt;br /&gt;
 Avalanche 3  1&lt;br /&gt;
 Cannon    8  100&lt;br /&gt;
 FBL       5  1&lt;br /&gt;
 Laser C   10 50&lt;br /&gt;
 Plasma C  12 50 &lt;br /&gt;
 &lt;br /&gt;
I would speculate that value &amp;quot;Y&amp;quot; is the re-arming rate on the ground. I think this data differs slighly from what is stated at [[Rearming]] so it might be worth double checking that. &lt;br /&gt;
&lt;br /&gt;
Value &amp;quot;X&amp;quot; could be a bitmask, an index to a sound effect, or just about anything. It&#039;s possible the lowest bit is a flag that is set for a missile weapon, unset for a cannon-type weapon.&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 19:43, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;reload time&amp;quot; value (as it is called in the in-game UFOPaedia) does not seem to be used by the executable. Instead, hard coded values are used. See [[UFO Interception#Observed Rates of Fire|Observed Rates of Fire]]. [[User:Spike|Spike]] 20:31, 13 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
I checked and the rearming rates in the wiki article are correct, i.e. 100 rds per hour for all Cannon types. Maybe this &amp;quot;Y&amp;quot; data was intended as the rearming rate but is unused? The next step would be to hack the &amp;quot;Y&amp;quot; values and look for any effect. It would also be interesting to hack the low bit of the &amp;quot;X&amp;quot; value and see if that has any effect, such as controlling the missile weapon firing interval behaviour (RoF changes based on attack mode), or sound effect. &lt;br /&gt;
&lt;br /&gt;
Here is X as a bitmask&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Bitmask&lt;br /&gt;
 Stingray  1  00000001&lt;br /&gt;
 Avalanche 3  00000011&lt;br /&gt;
 FBL       5  00000101&lt;br /&gt;
 Cannon    8  00001000&lt;br /&gt;
 Laser C   10 00001010&lt;br /&gt;
 Plasma C  12 00001100 &lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 18:18, 16 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
Actually it looks like the low order 3 bits are just a sequence/ID number (ascending damage?). The next higher bit is launched (0) vs cannon (1).&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Bitmask  Seq Cannon?&lt;br /&gt;
 Cannon    8  00001000 0   1&lt;br /&gt;
 Stingray  1  00000001 1   0&lt;br /&gt;
 Laser C   10 00001010 2   1&lt;br /&gt;
 Avalanche 3  00000011 3   0&lt;br /&gt;
 Plasma C  12 00001100 4   1&lt;br /&gt;
 FBL       5  00000101 5   0&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 19:49, 14 March 2010 (EDT)&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;
&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;
== Difficulty patch information wrong? ==&lt;br /&gt;
&lt;br /&gt;
It appears that the information for patching the difficulty is wrong on this page.&lt;br /&gt;
&lt;br /&gt;
I have what I believe is the US version of XCOM 1.4, and I patched the file as per the data given for 1.4, and yet it still created a 60-byte IGLOB.DAT file.  Further, DOSBOX complained of illegal memory accesses after the patch (which it did not do before).&lt;br /&gt;
&lt;br /&gt;
33ea0819e6888f0450f9a1e5e19dc98b *GEOSCAPE.EXE (binary MD5SUM -- file is 382,957 bytes, created 1995-02-28 @ 10:24 PM)&lt;br /&gt;
&lt;br /&gt;
There actually was a 60 byte (0x3c) at the location given, but I have a feeling it was something other than the size_t in question.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:If you search for: &lt;br /&gt;
&amp;lt;pre&amp;gt;3C 00 00 00 57 2B C9 49&amp;lt;/pre&amp;gt; &lt;br /&gt;
:you will fined the iglob.dat length for all versions of UFO. --[[User:BladeFireLight|BladeFireLight]] 19:45, 16 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Yeah, that was my fault, I just put the same value as was in 1.0.  It&#039;s corrected now.&lt;br /&gt;
[[User:Hatfarm|Hatfarm]] 18:45, 5 June 2010 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I tried that out, it seems to work perfectly.  Thank you both!  FYI; the above is the XCOM package available from GOG.com.    [[User:Renegrade|Renegrade]] 20:23, 17 July 2010 (EDT)&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=27258</id>
		<title>User:Renegrade</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User:Renegrade&amp;diff=27258"/>
		<updated>2010-02-02T14:50:40Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New page: Just an old DOS/Amiga programmer who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A00...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just an old DOS/Amiga programmer who thinks these new-fangled, managed-object-oriented-byte-interpreted nonsense is a load of hogwash who misses the good old days of splatting bytes at A000:0000 directly... and some of the games that arose during that era.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:PALETTES.DAT&amp;diff=27257</id>
		<title>Talk:PALETTES.DAT</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=Talk:PALETTES.DAT&amp;diff=27257"/>
		<updated>2010-02-02T14:47:17Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: Regarding mode 13h&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Just for a bit of general --[[User:Darkfred|Darkfred]] 07:29, 13 June 2007 (PDT)information, it might be worth mentioning that some of the palette entries are used for colour cycling. For example the radar pings on the intercept console. That&#039;s achieved by shifting a whole block of palette entries to give the effect of movement. (Think KITT&#039;s chasing lights) The image doesn&#039;t change, but the colour that you see does. It results in a wave movement. If anyone remembers the shifting colours on ye olde Windows startup screens, this was achieved in the same way. &lt;br /&gt;
&lt;br /&gt;
Other palette swaps include the greyscale background bitmaps that are used in the Geoscape screens. They keep the same palette entry, and the game only needs to shift these entries to different shades to change the shades of the backgrounds. &lt;br /&gt;
&lt;br /&gt;
Come to think of it, anyone know what conditions change the normal backgrounds from red to purple? It seems to vary. &lt;br /&gt;
&lt;br /&gt;
Also another random technical tidbit, the game uses mode 13h for its display. In other words 320x200x256clr VGA mode. It used to come standard on all SVGA cards as a safe mode to revert to. The first fifteen colours after the transparency were probably left behind for use by the console. They appear to match the old text mode 16 colour palette. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
In the case of the background images, the palette swaps are pulled from [[BACKPALS.DAT]], but I never realised the intercept radar was a palette cycle, though it does make sense - I assume that&#039;s handled entirely by the executable.&lt;br /&gt;
&lt;br /&gt;
Oooh, I didn&#039;t know mode 13 was a *real* display mode! I thought it was just a &amp;quot;prebuilt&amp;quot; mode that QBasic provided to &amp;quot;script kiddies&amp;quot;. XD&lt;br /&gt;
&lt;br /&gt;
Not sure what you mean about those fifteen colors and how &amp;quot;They appear to match the old text mode 16 colour palette&amp;quot;. I checked QBasic&#039;s idea of what the default mode 7 palette should look like (mode 7 being a sixteen color only version of mode 13, but with multiple &amp;quot;screens&amp;quot; you could flip in and out of the display buffer - guess you could call it EGA?) and it doesn&#039;t match the colors in any of UFO&#039;s palettes. But, I dunno if the palettes QBasic used followed any real standard, or if I even know what I&#039;m talking about. :)&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 04:56, 12 June 2007 (PDT)&lt;br /&gt;
: Xcom was built for mode 13h with a 6 bit ramdac, (hence the 0-64 color values). This was one of the few modes which was widely available and worked the same on all early pc&#039;s. It was started via interrupt 13h also called MCGA and the bios did all the setup work. I don&#039;t think there was a default mcga palette, but it could be the default EGA palette.&lt;br /&gt;
: The palette animation could be done either way, I will check on this, but it might just be easier to switch the pal to grayscale, and take a screenshot during the animation. Then look at the color values. In the windows version the palettes are entirely faked anyway so doing it via code wouldn&#039;t be any slower.--[[User:Darkfred|Darkfred]] 07:58, 12 June 2007 (PDT)&lt;br /&gt;
:: It&#039;s actually interrupt 0x10, with AH=0, AL=0x13.  The 6/18 bit entries in the palette table was, and still is standard for 8-bit palette modes in VGA.  [http://en.wikipedia.org/wiki/MCGA MCGA] was also an actual card, between EGA and true VGA.  Mode 13 has an additional benefit for 16-bit DOS mode programmers in that the entire memory map for the card (320x200x1 byte/pixel = 64,000 bytes) is available within a single segment, meaning no bank swapping is necessary (much faster).  The Amiga version(s) of XCOM would have used a 4/12 or 8/24 bit color resolution though, depending on whether it was OCS/ECS or AGA. I can&#039;t remember which Amiga version I had though, or whether or not it looked &amp;quot;ECS-y&amp;quot; or not. -- [[User:Renegrade|Renegrade]] 09:47, 2 February 2010 (EST)&lt;br /&gt;
&lt;br /&gt;
-------&lt;br /&gt;
&lt;br /&gt;
Not sure what you mean by &amp;quot;palette faking&amp;quot;... I know that if you take a screenshot in the CE version of the game (F12), the resulting image will be a 256 color job using whatever palette the game was supposed to be using at the time.&lt;br /&gt;
&lt;br /&gt;
Hence my thought was to just take multiple screenshots of the animation, and check to see what the palette looked like. Sure enough, colors 112 through to 127 (16 in all) cycle through shades of green, whereas the image itself doesn&#039;t actually change.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 17:53, 12 June 2007 (PDT)&lt;br /&gt;
: Good work! Very cool. &lt;br /&gt;
: This may be boring but I will explain what I meant by palette faking. Its interesting but not terribly useful unless you wanna mod the exe.&lt;br /&gt;
: Palette Faking: The CE version of UFO is actually rendered in 32bit color at 640x400. You can take a screenshot of this version using the PrnScn key on your keyboard. The image you get when you press F12 is from UFO&#039;s fake internal MCGA buffer. &lt;br /&gt;
: When UFO was converted to a windows application the developers cheated, they made a copy of the mode13h memory in the executable, which they use as if it was the actual screen. They also make a fake copy of the palette. Then after each frame is drawn they copy this into the 32bit DirectDraw surface. They convert from the MCGA format into 32bit and run an upsampling filter (2x to 640x400). This is why the edges of letters look smoother in-game then in screenshots. &lt;br /&gt;
: The upshot is that the CE game is the exact same game code, only wrapped with a mode13 emulator. Cool huh. This is what allows the Exe Splitter and filter changing mods to work, 90% of the work is already done. --[[User:Darkfred|Darkfred]] 22:03, 12 June 2007 (PDT)&lt;br /&gt;
:: It also implies that those who did the Windows conversion were not the same programs who made the game. The original programmers would have done it seemlessly rendering into the DirectX buffer. The CE programmers may not have even had the sourcecode, the hack could be done without it. (although audio might not be so easy I donno). --[[User:Darkfred|Darkfred]] 22:07, 12 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::I believe the programmers that did the Win32 port may have had access to the source of the original executables. Lots of constants and other tables for both the executables seem to be lumped together at the end, which is why you can&#039;t always get a rough match for some variable offsets in the dos version and the executable version. They aren&#039;t just both of the original executables mushed together with a bit tacked on the end(or front) to get it to work with Direct X, as I originally thought.  &lt;br /&gt;
&lt;br /&gt;
:::Come to think of it, pressing print screen in the CE does take screenshots, but the palette information isn&#039;t carried over, so the bitmap that ends up on the clipboard is ruined. - [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
::::My UFO version is calling DirectDraw and requesting a 640x400x32bit display mode. It also makes nice 32bit screenshots when i press printscreen, I just verified this. It may be that there is some difference between our versions?  --[[User:Darkfred|Darkfred]] 23:34, 12 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::::It&#039;s not the game. I think it might just be the way some implementations of Windows handles screen captures. For lots of players, the screenshots palette will not be captured, and because the individual pixel index colours aren&#039;t saved, the image on the clipboard is ruined and cannot be recovered. I guess your clipboard works a lot better than most of us! (Or I suppose it could be your display mode). Using Printscreen with the dos version of the game works fine though, and the palette information isn&#039;t destroyed. My old copy of Windows 95 used to doubled the dos screen&#039;s pixels as well. Oh well. For now, the Collectors Edition&#039;s special F12 screen capture key for UFO/TFTD is still the most reliable method to capture screenshots. No matter how the game is displayed, the screenshot is stored as a 320x200x8 TGA file in the game directory- [[User:NKF|NKF]] 00:36, 13 June 2007 (PDT)&lt;br /&gt;
:::::: I don&#039;t see how the palette could be the problem though, my version of the game simply has NO palette. It is all converted to 32bit being put on the screen. And the screen doubling is using the SuperSai algorithm, which only works on 32bit buffers. The only thing I can think of is that perhaps it is receiving a 8bit buffer instead of the 32bit one it requests, but this doesn&#039;t make any sense. The most likely explanation is that the color problem is either a difference in our versions or a bug in your video drivers. --[[User:Darkfred|Darkfred]] 07:29, 13 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
::::::: I doubt it -- it&#039;s almost certainly a matter of exact environment.  UFO/CE/W2K with the graphics fixup loader against NVidia drivers is palette-corrupted (just tested), so any chance of PrintScreen working normally on this platform is from using PrintScreen against an emulator. --[[User:Zaimoni|Zaimoni]] 16:28, 13 June 2007 (CDT)&lt;br /&gt;
&lt;br /&gt;
::::::::I am beginning to think that my highres 32bit version is the result of one of the mods I installed, i just don&#039;t know which. This would explain why the code is done in this way, stubbed into the beginning of the executable. Come to think of it I don&#039;t have any flashing screen problems like I did before either. hmmm. Well it works and I really don&#039;t care at this point. --[[User:Darkfred|Darkfred]] 16:40, 13 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&lt;br /&gt;
Under CE, a printscreen will give you an image with a corrupt palette. F12 gives you a proper image.&lt;br /&gt;
&lt;br /&gt;
The only way (that I know of) to get a 2xSaI effect is to run [http://www.strategycore.co.uk/files/index.php?dlid=474 Mok&#039;s executable]. Best I could make out, most of his extra code is tacked onto the end of the file... Printscreen will work &amp;quot;correctly&amp;quot; with this version, though F12 will still give unscaled images. This version of the game also has a variety of other differences to the usual engine (never checked the full list, but I gather there&#039;s some timing tweaks as well as a different way of handling sound).&lt;br /&gt;
&lt;br /&gt;
The game uses DirectDraw regardless. Without f0dder/Mok&#039;s patches, the graphics (usually) won&#039;t render correctly. f0dder blames the DirectDraw implementation in his patch documentation, which&#039;ll be why disabling hardware acceleration is another way of fixing things up.&lt;br /&gt;
&lt;br /&gt;
The CE game is remarkably similar to the Dos version, but there&#039;s a handful of differences. Although the game handles most errors by either ignoring them or crashing, it actually responds to some of them with intellegent messages. For example, if you pass it an over-filled [[TERRAIN|MCD array]] (easy to do when running my damage testing tileset, just visit anything larger then a scout ship in the desert), you&#039;ll get a pop up box complaining about there being &amp;quot;too many map codes&amp;quot;. You also get missing file messages if the game can&#039;t find inventory screen images.&lt;br /&gt;
&lt;br /&gt;
The most famous difference is the vertical waypoint bug (where a blaster bomb missile told to go directly up or down will instead fly off on an angle - The aliens often kill themselves with this one). Though it&#039;s still my guess that the coders who ported the game just changed as much code as they felt was needed to make the game compile as a windows executable, and left it at that.&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 02:06, 14 June 2007 (PDT)&lt;br /&gt;
&lt;br /&gt;
== TFTD&#039;s Depths ==&lt;br /&gt;
&lt;br /&gt;
Just recalling what I deduced ages ago while playing the game using X-Comutil and the map and depth picker, I agree that the palettes are adjusted on the fly. Having a sea bed map appear grey on land but appearing blue in water was quite strange - it wouldn&#039;t make sense to duplicate all the images for the various depths. The simplest way to achieve this effect would be to tint the palette with blue, and just darkening the images to simulate depth would be quite easy. Also I recalled that in UFO that the background images in the various screens were all grey, but on-the-fly changes to the palette allow them to change between colours like red, olive and purple. They have their designated set of colours in the palette too if I&#039;m not mistaken. &lt;br /&gt;
&lt;br /&gt;
One good way to find out would probably be to replace an entire row of colours with the same colour, then observe what happens in the various depths. I was going to suggest pure white, but then you couldn&#039;t go up any further which would be needed for the tint. Perhaps a middling value like 128, 128, 128 for a flat grey. &lt;br /&gt;
&lt;br /&gt;
- [[User:NKF|NKF]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
I started looking into the palettes in more detail so I could convert UFO graphics to TFTD&#039;s colors, and vice versa. I took a screenshot of TFTD CE and ripped the palette from that (as the colors for the battlescape didn&#039;t seem to be in Palettes.Dat).&lt;br /&gt;
&lt;br /&gt;
After the first conversion, most of the colors seemed &amp;quot;ok&amp;quot; but some (eg. rocks) came out blue when Daishiva&#039;s PCK viewer declared them to be grey - and surface terrain (eg. grass and trees) looked decidedly off...&lt;br /&gt;
&lt;br /&gt;
I then took a ton of screengrabs and eventually decided on a total of four palettes. I&#039;d completely forgotten that TFTD used depth settings as well as time of day so it took me a little while to work out why the things kept changing.&lt;br /&gt;
&lt;br /&gt;
It wasn&#039;t until I loaded up XcomUtil to force certain map types that I finally saw the light. Four palettes, four depth settings. One good example of the effect is the &amp;quot;atlantis&amp;quot; terrain (which makes heavy use of grey stone).&lt;br /&gt;
&lt;br /&gt;
- [[User:Bomb Bloke|Bomb Bloke]] 20:16, 1 January 2008 (PST)&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
I&#039;ve been doing some stuff with the color-swapping SCR files and noticed that they index E0-EF, the second-to-final 16 palette entries. Currently the page says the BACKPALS.DAT palettes replace the 16 final entries. Is the page wrong or is there something I&#039;m missing?&lt;br /&gt;
&lt;br /&gt;
- [[User:Majorlag|Majorlag]]&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Talk:GEOSCAPE.EXE&amp;diff=27240</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=27240"/>
		<updated>2010-01-31T08:20:28Z</updated>

		<summary type="html">&lt;p&gt;Renegrade: New section: Difficulty patch information wrong?&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;
TFDT-CE(CRC32:C2F6C035): 0x0008AE00..0x0008B00F.&amp;lt;br&amp;gt;&lt;br /&gt;
use: rivers instead of country borders.&amp;lt;br&amp;gt;&lt;br /&gt;
data: lon,lat,lon,lat.. streams, Flags: lon = -1(NewLine), lon = -2(EndOfSection).&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;
TFDT-CE(CRC32:C2F6C035): 0x0008B010..0x0008B06F. ((16*2)*3:lon,lat,Nid)&lt;br /&gt;
&lt;br /&gt;
===Craft type data===&lt;br /&gt;
 .data:0046F9A8                                         ; DATA XREF: sub_432B90+1C�r&lt;br /&gt;
 .data:0046F9A8                                         ; sub_436970+59�r ...&lt;br /&gt;
  craftsData &lt;br /&gt;
 .data:0046F9A8 structCraftData &amp;lt;23Ah, 65336, 0, 760, 2, 1500, 150, 4, 0, 0, 0, 0Eh, 0,\&lt;br /&gt;
 .data:0046F9A8                  3, 0&amp;gt;                  ; 0 &#039;&#039;Skyranger&#039;&#039;&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 &#039;&#039;Lightning&#039;&#039;&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 &#039;&#039;Avenger&#039;&#039;&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 &#039;&#039;Interceptor&#039;&#039;&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 &#039;&#039;Firestorm&#039;&#039;&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 &#039;&#039;Small Scout (VS)&#039;&#039;&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 &#039;&#039;Medium Scout (S)&#039;&#039;&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 &#039;&#039;Large Scout (S)&#039;&#039;&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 &#039;&#039;Abductor (M)&#039;&#039;&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 &#039;&#039;Harvester (M)&#039;&#039;&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 &#039;&#039;Terror Ship (L)&#039;&#039;&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 &#039;&#039;Battleship (VL&#039;&#039;)&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 &#039;&#039;Supply Ship (L)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Craft type known fields: (14 x 2-byte dwords per record)&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 ? &#039;&#039;always 2 for UFOs. is this used for UFOs? how?&#039;&#039;&lt;br /&gt;
 00000006 maxSpeed dw ?  &#039;&#039;in knots&#039;&#039;                 ; 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;
          &#039;&#039;5 - Very Small / 4 - Small (inc. XCom) / 3 - Medium / 2 - Large / 1 - Very Large -spike&#039;&#039;&lt;br /&gt;
 00000010 ufoReload dw ? &lt;br /&gt;
          &#039;&#039;UFO only. Firing interval. Values: 56=S/MSct 48=LSct/Abd 32=Harv 24=Suppl/Terr/BS. -spike&#039;&#039;&lt;br /&gt;
 00000012 ufoUnknown dw ?  &lt;br /&gt;
          &#039;&#039;Unknown. Score related? SS=200 MS=250 LS=300 A=500 H=500 TS=2000 BS=4000 SS=3000 -spike&#039;&#039;&lt;br /&gt;
 00000014 ufoRange dw ?  &#039;&#039;alien weapon distance in km*8 -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000016 ufoPower dw ?  &#039;&#039;alien weapon damage -kyrub/spike&#039;&#039;&lt;br /&gt;
 00000018 TroopSpace dw ? &#039;&#039;Troop capacity &#039;&#039;&lt;br /&gt;
 0000001A HWPSpace dw ? &#039;&#039;HWP capacity -spike&#039;&#039;&lt;br /&gt;
 0000001C structCraftData ends&lt;br /&gt;
&lt;br /&gt;
While the 9th [dword] could be UFO weapon Accuracy or even rate of fire, it seems unlikely. All the values are a multiple of 8 just like distance, so it may be related to that. That&#039;s my guess. I&#039;m sure someone like Seb would know more. --[[User:Zombie|Zombie]] 23:56, 4 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Sorry I didn&#039;t sign those theory guesses, I will do so now. Actually, evidence is building up that the byte at 0x10 within structCraftData is an inverse co-factor - i.e. a divisor - of the net total damage output of UFO attacks. In other words, it could well be a firing interval value such as is seen for XCom craft weapons. I have done 3-4 sets of ten tests so far (XCom craft survival-time tests, deducing UFO damage output). 1 set was for Medium Scout vs Interceptor, 2 sets were for Terror Ship vs Avenger. (I also did multiple attacker sets but those are harder to compare directly to this scenario). So far all 3 test sets are a &amp;lt;i&amp;gt;reasonably&amp;lt;/i&amp;gt; good fit for this formula:&lt;br /&gt;
&lt;br /&gt;
 UFO net damage output = &lt;br /&gt;
 &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt;Weapon power x 75% &#039;&#039;(avg of randomisation)&#039;&#039; x 2/3 &#039;&#039;(accuracy)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt; &lt;br /&gt;
  x &amp;lt;big&amp;gt;(&amp;lt;/big&amp;gt; time &#039;&#039;(in game seconds)&#039;&#039; / 0x10 offset &#039;&#039;(firing interval)&#039;&#039; &amp;lt;big&amp;gt;)&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: What I want to do next is take one or both of those test scenarios, hack the 0x10 offset up or down, and see if the observed damage output varies inversely. If so, I think that will be pretty strong evidence. Even in my data, there is definitely still also some variation going on that is not fully accounted for in the formula above. As you say it is interesting the 0x10 values are all multiples of 8, suggesting distances. I will keep testing and see what I come up with! Cheers, [[User:Spike|Spike]] 06:39, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
I&#039;m enclined to agree with the rate of fire theory. A countdown is stored in [[CRAFT.DAT]] at offset 0x26 and when it hits 0, the UFO fires. It is reset for the next shot with this formula:&lt;br /&gt;
 tmp = offset10-2*difficultyLevel&lt;br /&gt;
 nextShot = RAND(0,tmp)+tmp&lt;br /&gt;
&lt;br /&gt;
Edit: Although the attack type does not appear here, I suspect that while a missile is &amp;quot;traveling&amp;quot;, the countdown is not changed. As a result, closer ranges means higher rates of fire. [[User:Seb76|Seb76]] 07:36, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Excellent timing Seb! I was just about to start my tests. I could&#039;ve coped with the random element, since I&#039;m only measuring averages over time, but the presence of a 2nd factor (difficultyLevel), I was not expecting. It would have completely thrown my numbers. Also I might&#039;ve crashed the game since I&#039;d set offset10 to 0x08 on difficulty level Superhuman (=5?), creating a negative rate of fire! For simplicity I might do my tests on Beginner from now on, and repeat the earlier tests on Beginner. &lt;br /&gt;
&lt;br /&gt;
:It&#039;s interesting that you don&#039;t see any reference to Attack Mode. So the changing rate of fire could indeed be a &amp;quot;Space Invaders Effect&amp;quot; as you say. Perhaps the reason this is not seen for cannon fire is that cannon fire is resolved instantly, whereas missiles are plotted as objects on the map? Is there any indication that missiles and cannon are handled differently by these routines? &lt;br /&gt;
&lt;br /&gt;
:My test scenarios are probably too simplistic at the moment. But, I am sure I am seeing different rates of fire for missiles at the same range, dependent on whether they are in Standard or Cautious attack mode. I will recheck this. [[User:Spike|Spike]] 08:07, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
:Seb, I realise your formula above for variable firing intervals, from 100%-200% of the base value, explains the 2/3 factor I found which I thought might be UFO Accuracy. The average of a 100-200% range is 1.5, and the inverse of this is 2/3. So perhaps there is no accuracy factor in UFO weapon damage at all. Possibly you just have a base damage and a base firing interval, plus a 50%-100% variation on the base damage and a 100%-200% variation on the firing interval. This would certainly match the data I have so far. &lt;br /&gt;
&lt;br /&gt;
:I have done a couple of tests of varying this offset 0x10 value and they show the right &amp;quot;sign&amp;quot;: increasing this value decreases UFO damage output over time, and decreasing this value increases UFO damage output. The effect is strong, and approximately linear, i.e. halving the value roughly doubles the damage, etc (testing on Superhuman). To quantify it more exactly I need to go back and control for Difficulty Level which I did not expect to be a variable. I&#039;m also going to control for the time taken for the UFO to close into firing range - by increasing the UFO weapon range in the tests to 70 or 75km. &lt;br /&gt;
&lt;br /&gt;
:One thing that is worrying me though is that the firing interval is random. Since I&#039;m using the firing interval of a cannon as my &amp;quot;timer&amp;quot; to measure the duration of all other events, it means I&#039;m measuring with a yardstick that randomly changes size. I have to hope that my sample sizes are large enough that the averages will dominate over the fluctuations.&lt;br /&gt;
&lt;br /&gt;
:More worrying is the idea that rate of fire varies with range (as opposed to with Attack Mode). That would be an elastic yardstick, worse than a random one. I thought I had disproved this but I need to go back and do it again, more carefully. I need to test the same weapon at the same range with different attack modes, again. I may well be guilty of building my hypothesis into my test scenario as an assumption! I will also double check the assumption that hacking the firing interval values for XCom weapons has no effect. I&#039;m pretty sure that, even if the absolute firing interval changes with range, the relative ratios of firing interval when comparing different weapons, does not change. But I&#039;ll double check. &lt;br /&gt;
&lt;br /&gt;
:In the code, do you see any evidence of cannon-type weapons being treated differenly from missile weapons? For example, do cannon rounds not &amp;quot;travel&amp;quot;? Also, do you see the same &#039;&#039;&#039;rnd (0,tmp) + tmp&#039;&#039;&#039; function being applied to the firing interval of XCom air attacks? Regards, [[User:Spike|Spike]] 14:30, 5 July 2009 (EDT)&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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 (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===&lt;br /&gt;
 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===&lt;br /&gt;
 (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;
=== 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;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
In the WinCE version (unpatched) the craft weapon stats start at offset 0x6fb18. Or search for this signature:&lt;br /&gt;
&lt;br /&gt;
 40 02 1e 00 46 00 46 00 01 00 0f 00 06 00 01 00 06 00 &lt;br /&gt;
&lt;br /&gt;
Fields are:&lt;br /&gt;
 Index - Range (km) - Hit% - Damage - ?X? - reload time - ammo cap - ?Y? - ammo type&lt;br /&gt;
&lt;br /&gt;
 Weapon    X  Y&lt;br /&gt;
 Stingray  1  1&lt;br /&gt;
 Avalanche 3  1&lt;br /&gt;
 Cannon    8  100&lt;br /&gt;
 FBL       5  1&lt;br /&gt;
 Laser C   10 50&lt;br /&gt;
 Plasma C  12 50 &lt;br /&gt;
 &lt;br /&gt;
I would speculate that value &amp;quot;Y&amp;quot; is the re-arming rate on the ground. I think this data differs slighly from what is stated at [[Rearming]] so it might be worth double checking that. &lt;br /&gt;
&lt;br /&gt;
Value &amp;quot;X&amp;quot; could be a bitmask, an index to a sound effect, or just about anything. It&#039;s possible the lowest bit is a flag that is set for a missile weapon, unset for a cannon-type weapon.&lt;br /&gt;
&lt;br /&gt;
[[User:Spike|Spike]] 19:43, 5 July 2009 (EDT)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;reload time&amp;quot; value (as it is called in the in-game UFOPaedia) does not seem to be used by the executable. Instead, hard coded values are used. See [[UFO Interception#Observed Rates of Fire|Observed Rates of Fire]]. [[User:Spike|Spike]] 20:31, 13 July 2009 (EDT)&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;
&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;
== Difficulty patch information wrong? ==&lt;br /&gt;
&lt;br /&gt;
It appears that the information for patching the difficulty is wrong on this page.&lt;br /&gt;
&lt;br /&gt;
I have what I believe is the US version of XCOM 1.4, and I patched the file as per the data given for 1.4, and yet it still created a 60-byte IGLOB.DAT file.  Further, DOSBOX complained of illegal memory accesses after the patch (which it did not do before).&lt;br /&gt;
&lt;br /&gt;
33ea0819e6888f0450f9a1e5e19dc98b *GEOSCAPE.EXE (binary MD5SUM -- file is 382,957 bytes, created 1995-02-28 @ 10:24 PM)&lt;br /&gt;
&lt;br /&gt;
There actually was a 60 byte (0x3c) at the location given, but I have a feeling it was something other than the size_t in question.&lt;/div&gt;</summary>
		<author><name>Renegrade</name></author>
	</entry>
</feed>