<?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=Mal310</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=Mal310"/>
	<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/Special:Contributions/Mal310"/>
	<updated>2026-05-03T13:07:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=17034</id>
		<title>User talk:Seb76</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=17034"/>
		<updated>2008-09-22T16:23:30Z</updated>

		<summary type="html">&lt;p&gt;Mal310: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hey, sorry to pester you again. :) I&#039;ve gotten access to IDA, as you suggested, and with it I&#039;m making some slow progress toward my mod. I wanted to ask, though, do you know of any sort of tutorial or useful intro for it? The user interface is pretty obtuse, the built-in help has nothing useful, and I&#039;ve been struggling just to make comments go where I want them to.&lt;br /&gt;
&lt;br /&gt;
(I mean, I understand that it&#039;s meant for very advanced users, but Jesus, who writes an enterprise-grade utility and doesn&#039;t bother to implement an Undo function?!?)&lt;br /&gt;
&lt;br /&gt;
Thanks again for your help! [[User:Phasma Felis|Phasma Felis]] 23:15, 16 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Okay, a little more progress since I discovered anterior comments. Couple of more specific questions: what&#039;s the difference between a &amp;quot;comment&amp;quot; and a &amp;quot;repeatable comment&amp;quot;? Or any of the several other types of comments, for that matter.&lt;br /&gt;
&lt;br /&gt;
What exactly does &amp;quot;mov cs:word_102F9, ax&amp;quot; do? At first I thought it was just copying the accumulator into the data word at 02F9, but the &amp;quot;cs:&amp;quot; part is confusing. word_102F9 is 0, I think (&amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot;). Does that mean it&#039;s copying AX into the current code segment, offset 0, modifying the code in progress? That seems odd.&lt;br /&gt;
&lt;br /&gt;
Okay, one more and then I&#039;ll go to bed: what does &amp;quot;jmp short $+2&amp;quot; do? It looks like it just means &amp;quot;jump to next instruction&amp;quot;, which is kinda redundant, but it could be &amp;quot;jump &#039;&#039;over&#039;&#039; next instruction&amp;quot;, which...still seems unnecessarily verbose. I dunno. [[User:Phasma Felis|Phasma Felis]] 00:51, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: The last two questions are actually general Intel 16-bit assembly ;)&lt;br /&gt;
&lt;br /&gt;
: The cs in &amp;quot;mov cs:word_102F9, ax&amp;quot; is the 16-bit code segment base, yes.  It *might* be self-modifying code, but more likely there is a C global or static variable that was implemented there and being updated.  The &amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot; is probably from C default initialization, but could be from an explicit initialization to 0.&lt;br /&gt;
::Back in the 16bit days, there were several memory models. My knowledge on this is quite rusty, but IIRC COM executables were using the &amp;quot;tiny&amp;quot; one which means that the code and data use the same segment (I assume you&#039;re working on the music TSR?). Modification of data via the CS segment is not necessarily self-modifying code. Also TSRs were usually signaled using software interruptions so the code most likely sets up an interrupt vector and bails out. e.g.:&lt;br /&gt;
 seg000:0140 mov     dx, 157h&lt;br /&gt;
 seg000:0143 push    ds&lt;br /&gt;
 seg000:0144 push    cs&lt;br /&gt;
 seg000:0145 pop     ds&lt;br /&gt;
 seg000:0146 mov     ax, 2566h&lt;br /&gt;
 seg000:0149 int     21h                             ; DOS - SET INTERRUPT VECTOR&lt;br /&gt;
 seg000:0149                                         ; AL = interrupt number&lt;br /&gt;
 seg000:0149                                         ; DS:DX = new vector to be used for specified interrupt&lt;br /&gt;
 seg000:014B pop     ds&lt;br /&gt;
 seg000:014C call    sub_1067A&lt;br /&gt;
 seg000:014F mov     dx, ax&lt;br /&gt;
 seg000:0151 mov     ax, 3100h&lt;br /&gt;
 seg000:0154 int     21h                             ; DOS - DOS 2+ - TERMINATE BUT STAY RESIDENT&lt;br /&gt;
 seg000:0154 start endp                              ; AL = exit code, DX = program size, in paragraphs&lt;br /&gt;
&lt;br /&gt;
::In this example (from music.com), there is code at 157h but IDA does not detect it. You can get there, type &#039;C&#039; and create a new function. The code there is the most important. HTH [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::: There were at least six common memory models.  *.COM not only assumed a single code and single data segment, it assumed their base addresses were the same.  You get four more (with one segment of static data) by 1 or more than 1 of each of code and data segments [near and far pointer distinctions].  The last allowed more than 64K of static data.&lt;br /&gt;
&lt;br /&gt;
::: XCOM most likely used one of the double-far memory models.  -- [[User:Zaimoni|Zaimoni]], 9:31 Jun 19 2008 CDT&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;jmp short $+2&amp;quot; is jump over the next instruction, if the next instruction is 2 bytes.  This probably came from an if-then-else in C (it&#039;s a common idiom in translating C to assembly).  -- [[User:Zaimoni|Zaimoni]], 12:36 Jun 17 2008 CDT&lt;br /&gt;
&lt;br /&gt;
:: I can see several instances of this in music.com for simple &amp;quot;return value&amp;quot; functions. Most likely a &amp;quot;feature&amp;quot; of the compiler. If used for padding, it is equivalent to 2 nop instructions, but takes only one cycle to execute. This was before deeply pipelined processors though ;-) [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Yeah, I sidelined off IDA onto general assembly there :) Probably a good thing, means I&#039;m getting used to it. Sort of.&lt;br /&gt;
&lt;br /&gt;
(Holy crap. I just discovered that hitting &amp;quot;P&amp;quot; (Create Function) in the right place is all it takes to enable graph display mode and give me a vast, improbably pretty flowchart of, well, a lot of stuff. I&#039;d been wondering how to make that work.)&lt;br /&gt;
&lt;br /&gt;
Anyway! Seb, you&#039;re correct, I&#039;m working on the music TSR. I&#039;ve pretty much figured out how the entry code works, setting up an interrupt vector and terminating, which I think is decent progress for three days&#039; experience with x86 assembler. I did find a web reference to &amp;quot;jmp short $+2&amp;quot; [http://www.programmersheaven.com/mb/x86_asm/484/484/ReadMessage.aspx here], which suggests that it&#039;s &amp;quot;used to clear the cache, before going in or out of protected mode&amp;quot;. Not entirely sure what clearing the cache does, but it&#039;s good to know.&lt;br /&gt;
&lt;br /&gt;
Thanks to the both of you for your help. Seb, do you mind if I continue to ask questions here? I don&#039;t know where else it should go. Maybe we need a &amp;quot;ridiculous hacking ideas&amp;quot; section of the wiki... ;) [[User:Phasma Felis|Phasma Felis]] 01:10, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Hehe, sounds like fun. When I can find time to write a dll injector, I may add some stuff to it ;-) I&#039;d start with increasing the max number of smoke entries. (Not possible right off the bat because it&#039;s using a static array instead of malloc-ed data :( ). Other ideas: fix the proxmine bugs, or maybe the disjoint base bug. I found the piece of code and it is not a simple &amp;quot;off by one&amp;quot; issue so it cannot just be patched in place... [[User:Seb76|Seb76]] 12:22, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::Yeah, there&#039;s a lot of bugs and odd behaviors that could be fixed by just using larger arrays somehow. The 80-item limit causes all sorts of problems, the smoke limit, the 20-armed-proxmine limit...I wouldn&#039;t mind having more than 8 bases in the late game...stuff like that. [[User:Phasma Felis|Phasma Felis]] 12:42, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hmm. The loader thing looks wonderful, but as I&#039;m using a dos version in dosbox I&#039;m guessing I&#039;m out of luck for now? Or are you a dos wizard as well? :)&lt;br /&gt;
[[User:Knan|Knan]] 12:35, 9 July 2008 (PDT)&lt;br /&gt;
:Using a loader coupled with dll injection, there is no limit to the size of what you want to patch. You can also use higher level languages instead of plain assembler. However it is windows specific (won&#039;t work on anything pre-XP because of CreateRemoteThread usage BTW). For CD music in DOS, [[User:Phasma Felis|Phasma Felis]] may be your ticket. I&#039;m willing to help but as I said before, my knowledge of DOS is quite rusty. [[User:Seb76|Seb76]] 12:49, 9 July 2008 (PDT)&lt;br /&gt;
::It&#039;s really the equipment screen hack that looks compelling. Figure it might be unreasonably hard to do that in dos. But I can&#039;t seem to get the windows version to run at a reasonable speed these days, always far too fast. That&#039;s why I&#039;m using dosbox. Ah well, have fun modding :) [[User:Knan|Knan]] 14:14, 9 July 2008 (PDT)&lt;br /&gt;
:Well, actually I have the speed issue too. It&#039;s just that setting the laptop to max battery and scroll speed to one is enough to work around the problem ^^. The geoscape has a sleep routine to prevent too fast updates. The mecanism is not present in the tactical part. [[User:Seb76|Seb76]] 14:45, 9 July 2008 (PDT)&lt;br /&gt;
:Edit: might be your lucky day. I made a modification, it should slow down the scroll now. Can you check? [[User:Seb76|Seb76]] 15:42, 9 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Seb76, since you appear to be on a roll with the findings lately, I thought I&#039;d mention this as something to look out for if you haven&#039;t already found it. Can you track down the tables that determine a few other object properties that aren&#039;t stored in obdata.dat? I mean for properties like if it can cast light, what bullet image to use if the object is fired, whether its melee attack/mind probe/psi attacks are available for that item, etc. This would certainly allow for much more robust equipment modding. I&#039;m guessing it&#039;ll be a part of the tactical.exe portion of the game. - [[User:NKF|NKF]] 19:56, 11 July 2008 (PDT)&lt;br /&gt;
:Only flares can cast light currently. It is not a property in obdata, but a hardcoded &amp;quot;objectType=0x1B&amp;quot; check. I can hack in a piece of code to enable light for some other object types, but we&#039;ll need a way to say which ones do (can be done in the ini file but it would not be clean. Maybe we can find an unused bit in obdata.dat and arrange that...). [[User:Seb76|Seb76]] 14:12, 12 July 2008 (PDT)&lt;br /&gt;
:Edit: the routine that populates the item menu has everything almost hardcoded too: stun, mind probe, psi-amp actions, scanner and medkit are all hardcoded by object type. The rest uses known flags from obdata. [[User:Seb76|Seb76]] 15:18, 12 July 2008 (PDT)&lt;br /&gt;
:Edit2: playing with the heavy laser mod, I found the data for bullet image/sound. It is located at offset 0x6D1F8. Each entry is organized like that:&lt;br /&gt;
 struct {&lt;br /&gt;
 	short bulletVisual;&lt;br /&gt;
 	short shootSound;&lt;br /&gt;
 	short impactSound; &lt;br /&gt;
 	short impactAnimation;&lt;br /&gt;
 }&lt;br /&gt;
Entries are sorted per [[OBDATA.DAT]] ID (i.e. the first entry is for pistol, the 0x12th for heavy laser, etc.) [[User:Seb76|Seb76]] 15:31, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Ah, that&#039;ll help with some modding. Although I just remembered something that I was going to ask at the time - but completely forgot about. What controls how the weapon is displayed while in the soldier&#039;s hands? I mean, the pistols are displayed with the weapon extended in the firing position while most other weapons are held across in both hands (mimicking one/two handed items). Would this be hard coded as well in addition to the unique item actions? -[[User:NKF|NKF]] 17:43, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Error running UFOExtender ==&lt;br /&gt;
&lt;br /&gt;
Hi Seb76.  I&#039;ve tried running your UFOExtender as I want to slow down the scrolling in the tactical view.  However I get the following error message:&lt;br /&gt;
&lt;br /&gt;
 C:\Games\X-com\UFO Defense\UFOLoader.exe&lt;br /&gt;
 This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.&lt;br /&gt;
&lt;br /&gt;
Any ideas what&#039;s going wrong?  I&#039;m on Win XP running Collector&#039;s Edition of UFO. --[[User:Col w|col_w]] 05:34, 12 July 2008 (PDT)&lt;br /&gt;
:Hum, looks like the error you get when there is a missing DLL. I compiled using Visual Studio 9.0 Express Edition, maybe you don&#039;t have the runtime installed? You can get it [http://www.microsoft.com/downloads/details.aspx?FamilyID=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&amp;amp;displaylang=en here]. Tools like [http://www.dependencywalker.com/ dependency walker] can help identify missing DLLs. Also what OS are you using (service pack number)? I don&#039;t have Vista here to test so it may only be running in XP SP2. Anybody can report it running on Vista? For sure it won&#039;t work on Win9x. [[User:Seb76|Seb76]] 09:02, 12 July 2008 (PDT)&lt;br /&gt;
::Yeah, visual xyz runtime dlls need to be included with things you compile with visual xyz. A common complaint when running small hacks under Wine on Linux as well, since you usually install just a very few programs on each virtual windows install, so it&#039;s unlikely some other program installs the dlls for you. [[User:Knan|Knan]] 17:08, 12 July 2008 (PDT)&lt;br /&gt;
:Especially since they made up that manifest stuff. Supposed to solved DLL hell... Well, so far it caused me more trouble than it solved issues. The funny part is when you install a new VS service pack on your build servers and have half the development team freak out because their target system won&#039;t boot the latest piece of code... [[User:Seb76|Seb76]] 18:04, 12 July 2008 (PDT)&lt;br /&gt;
Awesome, that fixed it! Now I can enjoy this classic game once again.  Love the language screen joke too :)  Many thanks --[[User:Col w|col_w]] 11:08, 12 July 2008 (PDT)&lt;br /&gt;
:My pleasure man. Glad you enjoyed it ;-) [[User:Seb76|Seb76]] 12:07, 12 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== UFOloader and Xcomutil ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb76 awesome work with this patch! Just wondering though if it would be possible to run this together with XcomUtil somehow. Thanks!&lt;br /&gt;
Oh and btw when&#039;s the TFTD version coming out? ;-)&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 14:09, 24 July 2008 (PDT)&lt;br /&gt;
:You can try this version: [[Image:UFOExtender-dev.zip ]]. I did not really have time to test it. Use the modified batch and keep me posted ;-) You&#039;ll get a crash if you activate the patch to disable the introduction movie. I checked the equipment screen patches, they were OK. TFTD will wait till I&#039;m satisfied with the XCOM version. Anyway, I&#039;m not in a disassembling frenzy right now :p [[User:Seb76|Seb76]] 15:29, 24 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Hey fast response, thanks! I tried the new version but unless I&#039;m missing something I&#039;ve been unable to get it to include f0dder&#039;s bugfix loaders. I edited the ini file&#039;s Executable= to &#039;xcloader.exe&#039;, xcomutil&#039;s included bugfix loader, and when I run UFOloader.exe directly it works fine, but when using your modified runxcomW.bat it seems to be disregarded. This was not the case with your previous version. (I actually thought of modifying runxcomW.bat like that :-) ) Can&#039;t seem to find any reason for it in runxcomW.bat.&lt;br /&gt;
:The only modification I did to this version is forward the parameters passed to the loader to the XCOM executable (geoscape is passed an argument which tells it if it needs to start from scratch, or use the data from the missdat folder). Also it cannot work with f0dder&#039;s patch the way you tried: doing so, you are patching the xcloader binary itself, which obviously is not what you want.&lt;br /&gt;
:Edit: I added a &amp;quot;Video Pitch&amp;quot; bug fix to compensate for the incompatibility of the 2 loaders ;)&lt;br /&gt;
:: also a minor note, but on a fresh xcom install the console echoes a read error on MISSDAT\saveinfo.dat (I assume this is the work of xcomutil) and minimizes Xcom to the tray. It still works fine though.&lt;br /&gt;
:: while on the subject of minor notes the &#039;Rank In Inventory=&#039; in your ini file actually has the letter O instead of the number 0 by default ;-)&lt;br /&gt;
:Hm, I guess that&#039;s what you get when experimenting stuff at 1:00 am ;-) (GMT+2 here)&lt;br /&gt;
:: edit: I decided to do some testing first by manually disabling directdraw to circumvent the bugfix loader problem. Unfortunately the game crashes as soon as I enter tactical combat (when it should go to the equipment screen) even when all features are disabled. But unless I delete the MISSDAT folder&#039;s contents the next time I run runxcomW.bat I can hear the battlescape music playing. Unfortunately the batch file seems to get stuck in an infinite loop or something as it just keeps starting xcom over and over until it finally kills my system! :-) (all my base really belong to you ;-) )&lt;br /&gt;
:I start the runxcomw.bat batch from a shell and I have to do a &amp;quot;ctrl-C&amp;quot; between phases . Maybe it is because I replied yes to &amp;quot;Do you want to see XcomUtil messages after combat?&amp;quot; &lt;br /&gt;
:: using the previous version I can enter battles just fine, but none of the UFOloader features work.&lt;br /&gt;
:Did you try disabling every XComUtil features? I don&#039;t know how extensively it modifies the main executable. Here it works with the following config: replied &amp;quot;no&amp;quot; to everything while installing XComUtil (so that only executable splitting is done), enabling only equipment screen patches with my loader, and starting via the attached batch file. I can start a new game, down a UFO, go into tactical mode and go back to the geoscape view after taking down all the aliens. Did you try renaming UFOLoader.exe into xcloader.exe? It might work [[User:Seb76|Seb76]] 12:21, 25 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Thanks for your efforts, but still no luck. I downloaded the new version and did a fresh install of xcom. Running the UFOloader without xcomutil works fine (with your directdraw patch I get a ~3sec pause everytime the game zooms in/out on an interception though, which does not occur with f0dder&#039;s patch). Running xcomutil without the UFOLoader also works fine (using ctrl+C). I then did another fresh install and put the both of &#039;em together. I enabled the equipment screen patch and the directdraw fix on UFOLoader and told xcomutil to use f0dder&#039;s loader, answering no to all other questions. Renamed UFOLoader.exe to xcloader.exe and started runxcomW.bat. The game crashed when it should go to the equipment screen. (no ctrl+C possible) Disabling the equipment screen patch and/or enabling xcomutil&#039;s messages after combat yielded the same result. :(&lt;br /&gt;
:About the 3sec pause, it may be related to the musicfix that f0dder&#039;s patch does: it runs the MCI commands in a separate thread to remove the pause due to synchronous calls (with the unpatched version, there is a &amp;quot;slight&amp;quot; pause (~0.5sec on my computer) each time the music changes). Do you have the same pause in the main menu? Also if you activate the PSX music patch (even with no CD in the tray), it should remove the pause (if it is indeed the same problem). For your crash, I haven&#039;t got a clue. Maybe it&#039;s time I release the source code so people with different configurations can try more stuff. I know there are imaginative people out there ;-) [[User:Seb76|Seb76]] 07:02, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Ah that fixed the delays, thanks! Strangely the battlescape now works fine (using ctrl+C) as long as I don&#039;t enable the equipment patch with xcomutil... Don&#039;t know about the other fixes&amp;amp;flags. I&#039;ll do some more testing. [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:31, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: edit: quick testing reveals that it actually crashes exactly 1 times in 2, apparently regardless of what fixes are on. (though I did not yet test any xcomutil features) I guess it&#039;s probably related to one of the MISSDAT files? [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:37, 27 July 2008 (PDT)&lt;br /&gt;
:: edit2: OK here&#039;s what I have so far: It crashes if the previous mission worked. It works if it crashed on the previous mission. If I delete the contents of the MISSDAT folder it always crashes until I do a mission without xcomutil and/or without the loader. After that the normal rules apply. (i.e. next mission I play with both xcomutil&amp;amp;the loader it&#039;ll crash, as the previous mission worked, but the next one will work again) very strange :s Note that I did not yet try to play out a full mission, I always aborted on the first turn. Hope you can narrow the problem down a bit this way :-) [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:50, 27 July 2008 (PDT)&lt;br /&gt;
:Can you give me the address of the error when it crashes? (accessible in the crash window dialog)[[User:Seb76|Seb76]] 11:29, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: There is nothing when it crashes, not even the console remains. Unless you&#039;re talking about a log file?&lt;br /&gt;
:I was talking about the &amp;quot;a program has cause xxx to close unexpectedly&amp;quot; (or whatever it is in the US version) dialog box. This looks more like a silent crash (the worth case). I modified the loader and it looks better. I still have the &amp;quot;ctrl-C&amp;quot; issue however. [[User:Seb76|Seb76]] 12:38, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: &amp;lt;3 don&#039;t know what you did but the latest version works perfect! Just did 3 missions in a row, restarted xcom and did another 2 (only actually completed one of &#039;em tho :) ) without any crashes at all! *crosses fingers* I enabled all the settings I wanted in both xcomutil and the UFOLoader without problems. Thanks Seb, excellent work! ;-)&lt;br /&gt;
:: oh and the ctrl+C thing is a problem in the xcomutil batch file, it&#039;s not your program&#039;s fault. The Xcopy commands in the runxcomW.bat file are missing a /Y parameter. Here&#039;s a link to the xcomufo.com forum thread discussing it for anyone interested: [http://www.xcomufo.com/forums/index.php?showtopic=242025489]&lt;br /&gt;
:: Whew, was quite a ride... Now, where&#039;s my ammo clip fix? ^^&lt;br /&gt;
:Thanks for the feedback, it is good to know that it is possible to have this work with xcomutil. BTW, the fix I did in the test version is also in the latest package with the ammo clip hack ;-) [[User:Seb76|Seb76]] 16:16, 27 July 2008 (PDT)&lt;br /&gt;
:::After spending an hour with reading through this double discussion and trying to find the right batch file in the old archives and make the game work, I decided to put your &#039;&#039;&#039;Xcomutil + UFOloader solution&#039;&#039;&#039; here: [[Image:RunXcomW.zip]] with a simple explanation. Hope you don&#039;t mind.--[[User:Kyrub|Kyrub]] 15:43, 8 September 2008 (PDT)&lt;br /&gt;
::::Actually you don&#039;t need the modified runxcomw.bat file, the way I do it is I tell xcomutil to use f0dder&#039;s loaders and then I simply replace xcloader.exe (xcomutil&#039;s included f0dder patch) with UFOLoader.exe! [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:01, 9 September 2008 (PDT)&lt;br /&gt;
: Hey there, I&#039;ve read about this project and I&#039;m wondering if I can ran it with XComUtil but I play with the DOS versions (through DosBox) and thus use RunXCom. [[User:Hobbes|Hobbes]] 16:27, 13 September 2008 (PDT)&lt;br /&gt;
::Sorry there, this project uses modifications of the binary so it&#039;ll work only on the windows version. Why do you have to stick to the DOS version BTW? [[User:Seb76|Seb76]] 04:29, 14 September 2008 (PDT)&lt;br /&gt;
:::DOS version was the first I played and I prefer its sounds (specially the alien death cries). I also prefer the DOS bugs (some on CE are too annoying). Thanks anyway :) [[User:Hobbes|Hobbes]] 11:26, 14 September 2008 (PDT)&lt;br /&gt;
:::Hmm, something I remembered: IIRC, XComUtil splits the binary of CE into Tactical and Geoscape, in order for it to run with CE. I think I&#039;ll download your program and give it a try [[User:Hobbes|Hobbes]] 11:34, 14 September 2008 (PDT)&lt;br /&gt;
::::No success, doesn&#039;t surprise since I have the barest clue of what I should be doing. [[User:Hobbes|Hobbes]] 11:44, 14 September 2008 (PDT)&lt;br /&gt;
::There&#039;s no way it could work like that, windows binaries cannot run in DOS environment; split binaries or not. If you&#039;re pissed about a particular bug, just tell. I may be able to fix it ;-) Concerning the sounds, I don&#039;t know exactly what is the problem about CE version. If someone can give some details, I may have a look at that too. [[User:Seb76|Seb76]] 12:09, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Heavy Laser Mod ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb, I&#039;ve been trying the new heavy laser. It&#039;s a cool idea, adds some new options during battle :) But I think currently the full auto option is overpowered. I hardly use the burst mode at all. I&#039;d suggest lowering the accuracy and/or (if possible) reducing the amount of shots fired? Currently when I see a single alien I use full auto (can&#039;t miss with 10 shots), when I see a terror unit I use full auto (2x2 + 10 shots = dead terror unit :) ), and when I see a group of aliens I also use full auto (10 shots &amp;gt; 5 shots). A few units still standing? Bring on the next heavy laser.&lt;br /&gt;
Also because these new fire modes don&#039;t mind line of fire restrictions cover won&#039;t help aliens at all (unless the cover is strong enough to withstand HL power). Just use full auto to blast through any house that&#039;s in the way and in most cases it&#039;ll still kill the alien as well. (do need to make sure no agents/civilians are standing in the line of fire though) &lt;br /&gt;
Should note that ATM I&#039;m still only dealing with sectoids and the occasional floater. Will let you know how it fares against the later races.&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:44, 31 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
OK, it&#039;s cool but it really is overpowered. Accuracy must be lower in Auto modes than in Snap, that&#039;s basic in the game. If you assume the Heavy Laser is somehow better optimised for autofire than the Laser Rifle, and set the TUs for normal Auto at say 30% (vs 34% with Laser Rifle) that would let you get off 3 bursts, which would be better. (I could live with the idea that you can also only fire 3 snap shots). Then your &amp;quot;Full Auto&amp;quot; mode would be 100% TUs for 10 rounds and your &amp;quot;Burst Mode&amp;quot; could be 50% TUs for 5 rounds, and that would be consistent with the &#039;standard&#039; Auto mode. But the accuracy per shot needs to be much lower. I would suggest the base Accuracy per shot is reduced to 33% (one third less than Snap, similar to a Laser Rifle). You are still making the weapon MUCH more effective this way. [[User:Spike|Spike]] 12:47, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: On further analysis, even this is too powerful. The stats I just cited would give firepower only a fraction less than a Heavy Plasma - with much lower cost, unlimited ammo and easier-to-reach technology. That&#039;s not balanced. Unfortunately, you can&#039;t really go above 6 shots per turn without unbalancing the game, as none of the 2 handed weapons fire more than 6 shots/turn. So the TUs for Auto need to be 34%-40%, and you can&#039;t really have it fire more than 6 shots per turn even in the Full Auto mode. I would suggest Auto = 35%, Burst = 75%, Full Auto = 80%. Burst and Full Auto only fire 6 shots. Burst Mode fires 2 shots each at 2 waypoints, and a further 2 rounds spread in between the 2 waypoints. Full Auto fires one each at 2 waypoints and 4 shots spread between the waypoints. And maybe the Burst Mode should be the more expensive one as it is more &#039;concentrated&#039; fire. The reason you can&#039;t really exceed 6 shots per turn, even if you reduce the accuracy drastically, is because otherwise you create a super-effective shock weapon at point blank range (and a super effective terrain-clearing weapon). Somehow the &#039;shock power&#039; in particular seems inappropriate for something as clumsy as a Heavy Laser. To rationalise it, think of it this way - it&#039;s not a machinegun, it&#039;s an energy weapon. The &#039;cyclic rate of fire&#039; is limited by the energy circuitry as much as anything else. So squeezing six shots per turn out rather than 3 (the limit with Snap fire) is a pretty good improvement. With the Auto Mode I&#039;ve suggested here, you have still double the &#039;shock&#039; firepower of the Heavy Laser at short range, and increased its firepower by two thirds at longer ranges. Not a bad way to put some life back into a weapon that otherwise has very limited uses. Probably in the &#039;Area&#039; modes (Burst / Full Auto) the Accuracy should drop, say to 25% (vs 33% in standard Auto). [[User:Spike|Spike]] 13:48, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Ok I finally shut down my NeXCom Workstation and turned out the lights in the Bean Counter&#039;s Department at X-Com HQ - and headed down to the Armoury. I checked out one of the new, experimental Super Heavy Auto Lasers and ducked onto an Avenger heading into a hot LZ. &lt;br /&gt;
&lt;br /&gt;
Seb, let me tell, you, it was SPECTACULAR! You are the Ayatollah of Rock-and-Rolla! I was like Jesse Ventura in Predator, carving up the jungle with his minigun. I love your gun. It is too cool. It must not be nerfed. So I have another suggestion for your coding skillz: &lt;br /&gt;
&lt;br /&gt;
See if you can get the &amp;quot;hidden item&amp;quot;, Gatling Laser, working. Add your Super Heavy Auto Laser as a new item, using the Gatling Laser image and OBDATA entry. I don&#039;t know if you can add a new Research option or a new Manufacturing option. If you can&#039;t, maybe you can offer it to Purchase (once Heavy Laser is researched, or perhaps Laser Cannon). Given the power of the weapon (as spec&#039;d above), the cost to buy or manufacture should be similar to a Heavy Plasma: around a total cost of $164K to manufacture (including &#039;&#039;all&#039;&#039; costs) or around $225K to buy. As a quick hack, for the time being, if you are still using the Heavy Laser object for the Super Heavy Auto Laser (with 10 shot Full Auto), increase the manufacturing costs and buy/sell prices to roughly the same as the Heavy Plasma. [[User:Spike|Spike]] 13:29, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Thanks for the nice feedback! The initial idea for this mod came when watching a Laser Squad speedrun (never played the game myself) and seeing the guy waste several baddies with one auto-shot sweep (in this game you can also select the number of shots when auto-firing). I chose to try a modification of the heavy laser for 2 reasons: everybody agrees to say that the default one sucks and second, since it uses no ammunition there is no need to handle out-of-ammo conditions. I personally see this weapon more as a recipe for new doors than a direct way to kill aliens. Several things could nerf it a bit but I didn&#039;t try them yet:&lt;br /&gt;
:*make accuracy lower and lower during a burst (to account for the laser lens deformation caused by overheating). This would restore the advantage of cover and make people thing twice before firing when a friendly unit stands in front&lt;br /&gt;
:*reduce accuracy even further when shooting out of sight (this was mentionned in another post)&lt;br /&gt;
:*change the damage model and reduce the probability that terrain is destroyed when shot&lt;br /&gt;
:*have a cooldown period where the weapon is not useable (not sure if it&#039;s feasible though)&lt;br /&gt;
&lt;br /&gt;
::Yeah cooldown periods! Then restore functionality of the melee HIT command. Hey it worked for incubation: time is running out. ^^ [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 16:27, 7 September 2008 (PDT)&lt;br /&gt;
:::Hm, I already cannibalized the unused &amp;quot;open&amp;quot; and &amp;quot;close&amp;quot; actions for the heavy laser mod, there is no more room for a new &amp;quot;hit&amp;quot; command. Unless... ;-) [[User:Seb76|Seb76]] 11:28, 8 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Wish List please please please ==&lt;br /&gt;
&lt;br /&gt;
Seb: Wow! I can&#039;t believe what you&#039;ve done with UFO Extender! I wish I could try it but I can&#039;t get XCom working on my current PC. &lt;br /&gt;
&lt;br /&gt;
Can I ask what algorithm you used for Multiple Radar? The algorithm in my BaseFixer.py Python script is actually much better than the fairly lame one described on my User page.&lt;br /&gt;
:As I said, I used about the same as in you BaseFixer script:&lt;br /&gt;
 float shortDetection=pow(0.9f,smallRadars);&lt;br /&gt;
 float largeDetection=pow(0.8f,largeRadars);&lt;br /&gt;
 &lt;br /&gt;
 *(short *)(&amp;amp;base[0x10])=(short)((1.0-shortDetection*largeDetection)*100.0);&lt;br /&gt;
 *(short *)(&amp;amp;base[0x12])=(short)((1.0-largeDetection)*100.0);&lt;br /&gt;
:However I keep the computed value even for the one small/one big radar combo ;-) [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Now then, requests - could we please have:&lt;br /&gt;
&lt;br /&gt;
* Add 1-2 UFO Navigation to the haul after a successful Alien Base Assault. &lt;br /&gt;
:The game actually has specific code to remove these from the recovered items, it&#039;s just a matter of bypassing it. Next version will have an option to do so. [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
* Random chance (1-2%, and only for Scouts) per mission that a UFO accidentally crashes - like the &amp;quot;Roswell Incident&amp;quot;. Crash site would be automatically detected &amp;amp; UFO would have random damage. &lt;br /&gt;
:Sounds like a nice idea. I&#039;m working on it but I still have some crashes, and the routine to check if a ship is over water does not seem to work properly :( [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
:Update: feature almost complete, time to bake a new version ;-)&lt;br /&gt;
&lt;br /&gt;
:[[Image:Roswell.png]]&lt;br /&gt;
&lt;br /&gt;
:There are probably some bugs lurking (the most likely problem would be unfreed CRAFT.DAT entries), but I don&#039;t think I&#039;ll change the code much now. [[User:Seb76|Seb76]] 07:47, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Both of the above are totally pointless, apart from helping with my silly &amp;quot;No Detection&amp;quot; variant game, and actually making it possible to win. &lt;br /&gt;
&lt;br /&gt;
* Allow human side soldiers to reaction fire in their currently saved Reserved Fire mode - eg to take Autofire or Aimed reaction shots. That would be very, very cool. It would also be a balanced trade-off, if these Reacting soldiers were not allowed to &#039;switch&#039; to Snap fire after they no longer have the TUs left to use their Reserved mode. &lt;br /&gt;
&lt;br /&gt;
* Implement your &#039;Area Fire&#039; (as per Heavy Laser) for &#039;&#039;&#039;all&#039;&#039;&#039; large automatic weapons (AutoCannon, Heavy Plasma) or maybe just for all automatic weapons, period. It would be very handy for Autocannon bursts to cover a wider area, firing a narrow burst is often not what you want at all in many tactical situations. There might be a problem implementing this for Plasma weapons, if you couldn&#039;t persuade the Aliens&#039; AI to use the Area modes - it wouldn&#039;t be fair. &lt;br /&gt;
&lt;br /&gt;
I can&#039;t think of much else, as you&#039;ve already fixed everything!&lt;br /&gt;
&lt;br /&gt;
On the Heavy Laser Mod, my initial thoughts are that it is fun and cool but too powerful. The overall shots per turn should not be more than normal auto mode. The accuracy should be lower than normal auto. Having the &#039;sweep&#039; effect is advantage enough. I&#039;ll have a think and suggest some numbers. [[User:Spike|Spike]] 11:41, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Got an idea while I was at work today that I thought I&#039;d throw onto the wish list. Some means to completely fast-forward the base defense screen. Either by making all the firing sequences happen in an instant, or completely skip the screen altogether. I always advise against making impenetrable bases if only to preserve your sanity. I mean you eventually get sick of being interrupted to watch the defense module firing screen for the umpteenth time. If you never got the interruptions then an impenetrable base would be quite satisfactory. You shouldn&#039;t be getting any points for a failed base attack so you won&#039;t be gaining from it. About the only problem would be when an undefended base gets destroyed, unless you can make a dialog box pop up to announce it. -[[User:NKF|NKF]] 03:10, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Warm Grenades ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to have a Mod where grenades / HE  explode a set number of half-turns after you drop/place them. &lt;br /&gt;
&lt;br /&gt;
This could be implemented by an extra bit of logic that increments the &amp;quot;Turn When I Will Explode&amp;quot; field by +2 if the grenade is being held/worn when the Explode check happens. &lt;br /&gt;
&lt;br /&gt;
For me this is a more natural way for grenades to work: set the fuse, then the fuse only starts when you release the spring or set the HE pack in position. Certainly hand grenades should behave this way. I guess people could argue that HE packs should behave in the standard way. In which case, you could check the weapon type and use different logic for HE.  &lt;br /&gt;
&lt;br /&gt;
Hopefully the Alien AI would not be confused by any of these changes. I suspect the AI cheats anyway? Or always sets to 0 and throws right away? [[User:Spike|Spike]] 02:00, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Facility maintenance cost bug ==&lt;br /&gt;
&lt;br /&gt;
Could you fix that? [[User:Spike|Spike]] 16:15, 3 September 2008 (PDT)&lt;br /&gt;
:I&#039;m a bit confused about this one. Some says that the fund graph is OK but not the amount of money taken. I had a look at the code and found that what is shown on the graphs is exactly the same amount as removed (the graph data is updated at the same place and the computation is done once for both). I think I remember also someone saying that the bug does not exist at all... Can someone clarify? [[User:Seb76|Seb76]] 02:31, 15 September 2008 (PDT)&lt;br /&gt;
::The graph is ok and the amount of money taken is ok (tested). What is wrong is the maintenance displayed in the &#039;Base overview&#039; screen (in every respective base you go to &#039;overview&#039; and something like &#039;maintenance&#039;). The wrong way is very well described here [[Base_Facilities#Displayed_Base_Maintenance_Cost_Bug]], I think you will guess what exactly is wrong in the code. --[[User:Kyrub|Kyrub]] 15:34, 17 September 2008 (PDT)&lt;br /&gt;
:Thanks, I found the code and it is indeed completely f*cked up. I&#039;ll try a fix tomorrow. [[User:Seb76|Seb76]] 16:53, 17 September 2008 (PDT)&lt;br /&gt;
:Edit: Done. What&#039;s next? ;-) [[User:Seb76|Seb76]] 01:15, 18 September 2008 (PDT)&lt;br /&gt;
Just how bad was the mess up? Curios minds demand to know! By the way, my mind was wandering while at the office and one thing came to mind to add to your already useful inventory display: Armed grenade status. Ever drop one you&#039;ve just armed and lose it in a pile of other unarmed grenades on the ground? &lt;br /&gt;
:Well, from the look of it, I think they were trying to compute the maintenance cost using an array. Obviously something was wrong.&lt;br /&gt;
:*they first try to clear an array of 0x11 entries at the begining of the function (there are 0x11 base elements types, hangar count as 1). Note that there is already a bug here and the array is not cleared as expected, only the first entry is cleared 0x11 times...&lt;br /&gt;
 mov     esi, 11h&lt;br /&gt;
 ...&lt;br /&gt;
 loc_44004C:&lt;br /&gt;
 dec     esi&lt;br /&gt;
 mov     word ptr [esp+3Ch+elementsArray], 0&lt;br /&gt;
 jnz     short loc_44004C&lt;br /&gt;
:*ecx is initialized to point to the maintenance cost data (nothing wrong here)&lt;br /&gt;
 mov     ecx, offset baseElements.maintenance&lt;br /&gt;
:*then they loop on each base element, but the inner loop is nonsense (at this point ax contains the base element type. edi is the total maintenance cost):&lt;br /&gt;
 movsx   eax, ax&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     edi, [edi+eax*8]                        ;totalMaintenaceCost+=elementMaintenanceCost*1000&lt;br /&gt;
:we see that they increment the array element, but the content of the array is discarded and the maintenance cost (edi) is computed simply from [ecx].&lt;br /&gt;
:*then after each row, we have this:&lt;br /&gt;
 add     ecx, 10h&lt;br /&gt;
:which explains why the cost changes for each row.&lt;br /&gt;
:I don&#039;t see what kind of C code could produce such disassembly; maybe there is a bug in the compiler,at least the address calculation should have been removed (optimized out).&lt;br /&gt;
:The fix required two patches:&lt;br /&gt;
:*remove the incrementing of ecx for each row&lt;br /&gt;
 char nop[]={0x90,0x90,0x90};&lt;br /&gt;
 PatchInPlace(0x44066E,nop,3);&lt;br /&gt;
:*make a working inner loop:&lt;br /&gt;
 char patch[]={&lt;br /&gt;
   0x03, 0xc0,                  // add eax,eax&lt;br /&gt;
   0x8a, 0x04, 0xc1,            // mov al, BYTE PTR [ecx+eax*8] ;get the maintenance cost for the *specific* base element&lt;br /&gt;
   0x0f, 0xb6, 0xc0,            // movzx eax, al&lt;br /&gt;
   0x90, 0x90, 0x90, 0x90, 0x90 // nop the remaining&lt;br /&gt;
 };&lt;br /&gt;
 PatchInPlace(0x440651,patch,13);&lt;br /&gt;
:this takes care of the nonsense code&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
&lt;br /&gt;
Very interesting stuff! By the way I&#039;m playing a &amp;quot;Roswell&amp;quot; game at the moment and loving it - thanks Seb! [[User:Spike|Spike]] 10:31, 20 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
==Grenade Status Indicator==&lt;br /&gt;
&lt;br /&gt;
Is it possible to include an indicator on the end of the grenade&#039;s name string to show whether the grenade has been armed? Or perhaps even show how many grenade ticks are left to go? &lt;br /&gt;
:Hmm, I&#039;ll see if I can find something&lt;br /&gt;
&lt;br /&gt;
== Keyboard Support ==&lt;br /&gt;
&lt;br /&gt;
Would it be possible to introduce some keyboard shortcuts for simple tasks? -[[User:NKF|NKF]] 00:48, 19 September 2008 (PDT)&lt;br /&gt;
:such as? [[User:Seb76|Seb76]] 02:52, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Hmm, perhaps a few keys like they had in Apocalypse for ending the turn and raising/lowering the elevation with the page up and down keys would be a good start, or jumping to the inventory screen. Perhaps keys in the Geoscape for setting the time compression settings. I can already see a bit of an obstacle with adding a key capture function in the Geoscape, you&#039;d have to know when you&#039;re entering strings or every other time when you&#039;re just toggling the Geoscape overlay. I&#039;ve always admired this game for relying on a two button mouse for pretty much everything except when entering strings, but if it&#039;s within the realm of possibility I think it would be great to have some keyboard shortcuts. -[[User:NKF|NKF]] 12:39, 19 September 2008 (PDT) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
First off have to say that this is outstanding work Seb, sincere thanks for what you have done here. I have started playing this again after years thanks to your hard work. I was going to suggest the old smoke limit problem but before I could you fixed it!! I have some other ideas, I know there are a lot but I thought I would throw them in anyway. Don’t mind if you think there all rubbish, you’ve done loads already. &lt;br /&gt;
:Thanks. Don&#039;t hesitate to suggest stuff, if it is not too difficult I&#039;ll try to make something :)&lt;br /&gt;
BTW is there a separate loader with your new Laser weapon? Can’t see it listed in the extender file (not researched it in my current game yet).&lt;br /&gt;
:There is a special [[Image:UFOExtender-dev.zip|dev version]] for the HL mod. It is not in the normal package since it is still too experimental. &lt;br /&gt;
A suggestion for a mod would be the following; I understand that if you defeat an alien assault on your base with base defense measures, then the aliens will continue to attack that base with more battleships until defeated inside the base (they then have to ‘find’ your base again before launching another attack). Can this be altered so that if their battleship is destroyed then they have to find your base again before dispatching anther battleship? Or a chance that they have to find it again. &lt;br /&gt;
:I&#039;d gladly work on that, but I need a savegame to reproduce the problem. I have one but when the battleship is destroyed, no other comes back later so there must be something wrong with it.&lt;br /&gt;
Another suggestion is that I also understand that 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;
:At one time I had the idea of having aliens target only visible units, but then I thought that the scout units would be doomed. Maybe targeting any unit randomly would be better. I&#039;ll give it a try.&lt;br /&gt;
If you psi control a human 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;
&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;
:These two are on my secret todo list ;-)&lt;br /&gt;
::I was doing a Terror mission and getting creamed by Sectoids and Cyberdisks. Had a couple of guys left and got them back into the Skyranger only to find a civilian cowering at the back (must of walked in at some point). When I took off the civilian was counted as being killed by the aliens. Would it be possible to count any civilians in x-com craft at end of Terror as recued if you have to blast off? I think this would work interestingly with the civilians psi control issue above if they no longer became enemies after you control them. :-)--[[User:Mal310|Mal310]] 09:23, 22 September 2008 (PDT)&lt;br /&gt;
80 item bug on base defense mission&lt;br /&gt;
:May be hard to pull off. IIRC there is a 170 objects limit in the battlescape, and we must leave some room for the aliens...&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;
:I think this is a known issue with LOS, not sure though&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;
:I don&#039;t think this is done already. It may be possible to modify the number of units according to the damage done to the attacking ship, I&#039;ll have to take a look&lt;br /&gt;
This one is way out there. Alien v Alien battles outwith main game, just ramdom battlescape maps. Sectoid and their terrorists against Floters and theirs etc. One side human controlled the other computer . Choice of ships involved etc. &lt;br /&gt;
:Hmm, you do know I don&#039;t have the original source code available, don&#039;t you? :p&lt;br /&gt;
Any plans to work on Terror from the deep? &lt;br /&gt;
:I had a look and reidentifying the specific patch locations is quite tedious, and I&#039;m quite lazy... The loader source is available however, if anyone feels like giving it a shot ;-) [[User:Seb76|Seb76]] 16:38, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Thanks for the reply. If I get a suitable saved game re the base attack I’ll let you know. Great to hear that a couple of the ideas are on your list already. I have been playing around with the smoke bombs since your fix. I have not noticed any problems, seems to be working fine. --[[User:Mal310|Mal310]] 12:10, 21 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Inventory screen ammo weight bug ==&lt;br /&gt;
&lt;br /&gt;
I think there is a small bug. The weight of loaded weapons is not initially calculated. The base weight of the weapon is used but the weight of the ammunition is ignored. However if you reload the weapon in the inventory screen, the correct weight is then calculated. I have seen this repeatedly with AutoCannons. I am using XcomUtil to &#039;remember&#039; the equipment loads - maybe this might be part of the problem? [[User:Spike|Spike]] 09:24, 21 September 2008 (PDT)&lt;br /&gt;
:Yeah, I noticed this one already but flagged it as minor :) I&#039;m using a function that I found in the executable to calculate the weight (the one that&#039;s actually used by the game to see if a soldier is overburdened) so it is an original bug. Anyway, this calls for a fix ;-) [[User:Seb76|Seb76]] 09:47, 21 September 2008 (PDT)&lt;/div&gt;</summary>
		<author><name>Mal310</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=17018</id>
		<title>User talk:Seb76</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=17018"/>
		<updated>2008-09-21T19:10:26Z</updated>

		<summary type="html">&lt;p&gt;Mal310: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hey, sorry to pester you again. :) I&#039;ve gotten access to IDA, as you suggested, and with it I&#039;m making some slow progress toward my mod. I wanted to ask, though, do you know of any sort of tutorial or useful intro for it? The user interface is pretty obtuse, the built-in help has nothing useful, and I&#039;ve been struggling just to make comments go where I want them to.&lt;br /&gt;
&lt;br /&gt;
(I mean, I understand that it&#039;s meant for very advanced users, but Jesus, who writes an enterprise-grade utility and doesn&#039;t bother to implement an Undo function?!?)&lt;br /&gt;
&lt;br /&gt;
Thanks again for your help! [[User:Phasma Felis|Phasma Felis]] 23:15, 16 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Okay, a little more progress since I discovered anterior comments. Couple of more specific questions: what&#039;s the difference between a &amp;quot;comment&amp;quot; and a &amp;quot;repeatable comment&amp;quot;? Or any of the several other types of comments, for that matter.&lt;br /&gt;
&lt;br /&gt;
What exactly does &amp;quot;mov cs:word_102F9, ax&amp;quot; do? At first I thought it was just copying the accumulator into the data word at 02F9, but the &amp;quot;cs:&amp;quot; part is confusing. word_102F9 is 0, I think (&amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot;). Does that mean it&#039;s copying AX into the current code segment, offset 0, modifying the code in progress? That seems odd.&lt;br /&gt;
&lt;br /&gt;
Okay, one more and then I&#039;ll go to bed: what does &amp;quot;jmp short $+2&amp;quot; do? It looks like it just means &amp;quot;jump to next instruction&amp;quot;, which is kinda redundant, but it could be &amp;quot;jump &#039;&#039;over&#039;&#039; next instruction&amp;quot;, which...still seems unnecessarily verbose. I dunno. [[User:Phasma Felis|Phasma Felis]] 00:51, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: The last two questions are actually general Intel 16-bit assembly ;)&lt;br /&gt;
&lt;br /&gt;
: The cs in &amp;quot;mov cs:word_102F9, ax&amp;quot; is the 16-bit code segment base, yes.  It *might* be self-modifying code, but more likely there is a C global or static variable that was implemented there and being updated.  The &amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot; is probably from C default initialization, but could be from an explicit initialization to 0.&lt;br /&gt;
::Back in the 16bit days, there were several memory models. My knowledge on this is quite rusty, but IIRC COM executables were using the &amp;quot;tiny&amp;quot; one which means that the code and data use the same segment (I assume you&#039;re working on the music TSR?). Modification of data via the CS segment is not necessarily self-modifying code. Also TSRs were usually signaled using software interruptions so the code most likely sets up an interrupt vector and bails out. e.g.:&lt;br /&gt;
 seg000:0140 mov     dx, 157h&lt;br /&gt;
 seg000:0143 push    ds&lt;br /&gt;
 seg000:0144 push    cs&lt;br /&gt;
 seg000:0145 pop     ds&lt;br /&gt;
 seg000:0146 mov     ax, 2566h&lt;br /&gt;
 seg000:0149 int     21h                             ; DOS - SET INTERRUPT VECTOR&lt;br /&gt;
 seg000:0149                                         ; AL = interrupt number&lt;br /&gt;
 seg000:0149                                         ; DS:DX = new vector to be used for specified interrupt&lt;br /&gt;
 seg000:014B pop     ds&lt;br /&gt;
 seg000:014C call    sub_1067A&lt;br /&gt;
 seg000:014F mov     dx, ax&lt;br /&gt;
 seg000:0151 mov     ax, 3100h&lt;br /&gt;
 seg000:0154 int     21h                             ; DOS - DOS 2+ - TERMINATE BUT STAY RESIDENT&lt;br /&gt;
 seg000:0154 start endp                              ; AL = exit code, DX = program size, in paragraphs&lt;br /&gt;
&lt;br /&gt;
::In this example (from music.com), there is code at 157h but IDA does not detect it. You can get there, type &#039;C&#039; and create a new function. The code there is the most important. HTH [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::: There were at least six common memory models.  *.COM not only assumed a single code and single data segment, it assumed their base addresses were the same.  You get four more (with one segment of static data) by 1 or more than 1 of each of code and data segments [near and far pointer distinctions].  The last allowed more than 64K of static data.&lt;br /&gt;
&lt;br /&gt;
::: XCOM most likely used one of the double-far memory models.  -- [[User:Zaimoni|Zaimoni]], 9:31 Jun 19 2008 CDT&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;jmp short $+2&amp;quot; is jump over the next instruction, if the next instruction is 2 bytes.  This probably came from an if-then-else in C (it&#039;s a common idiom in translating C to assembly).  -- [[User:Zaimoni|Zaimoni]], 12:36 Jun 17 2008 CDT&lt;br /&gt;
&lt;br /&gt;
:: I can see several instances of this in music.com for simple &amp;quot;return value&amp;quot; functions. Most likely a &amp;quot;feature&amp;quot; of the compiler. If used for padding, it is equivalent to 2 nop instructions, but takes only one cycle to execute. This was before deeply pipelined processors though ;-) [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Yeah, I sidelined off IDA onto general assembly there :) Probably a good thing, means I&#039;m getting used to it. Sort of.&lt;br /&gt;
&lt;br /&gt;
(Holy crap. I just discovered that hitting &amp;quot;P&amp;quot; (Create Function) in the right place is all it takes to enable graph display mode and give me a vast, improbably pretty flowchart of, well, a lot of stuff. I&#039;d been wondering how to make that work.)&lt;br /&gt;
&lt;br /&gt;
Anyway! Seb, you&#039;re correct, I&#039;m working on the music TSR. I&#039;ve pretty much figured out how the entry code works, setting up an interrupt vector and terminating, which I think is decent progress for three days&#039; experience with x86 assembler. I did find a web reference to &amp;quot;jmp short $+2&amp;quot; [http://www.programmersheaven.com/mb/x86_asm/484/484/ReadMessage.aspx here], which suggests that it&#039;s &amp;quot;used to clear the cache, before going in or out of protected mode&amp;quot;. Not entirely sure what clearing the cache does, but it&#039;s good to know.&lt;br /&gt;
&lt;br /&gt;
Thanks to the both of you for your help. Seb, do you mind if I continue to ask questions here? I don&#039;t know where else it should go. Maybe we need a &amp;quot;ridiculous hacking ideas&amp;quot; section of the wiki... ;) [[User:Phasma Felis|Phasma Felis]] 01:10, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Hehe, sounds like fun. When I can find time to write a dll injector, I may add some stuff to it ;-) I&#039;d start with increasing the max number of smoke entries. (Not possible right off the bat because it&#039;s using a static array instead of malloc-ed data :( ). Other ideas: fix the proxmine bugs, or maybe the disjoint base bug. I found the piece of code and it is not a simple &amp;quot;off by one&amp;quot; issue so it cannot just be patched in place... [[User:Seb76|Seb76]] 12:22, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::Yeah, there&#039;s a lot of bugs and odd behaviors that could be fixed by just using larger arrays somehow. The 80-item limit causes all sorts of problems, the smoke limit, the 20-armed-proxmine limit...I wouldn&#039;t mind having more than 8 bases in the late game...stuff like that. [[User:Phasma Felis|Phasma Felis]] 12:42, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hmm. The loader thing looks wonderful, but as I&#039;m using a dos version in dosbox I&#039;m guessing I&#039;m out of luck for now? Or are you a dos wizard as well? :)&lt;br /&gt;
[[User:Knan|Knan]] 12:35, 9 July 2008 (PDT)&lt;br /&gt;
:Using a loader coupled with dll injection, there is no limit to the size of what you want to patch. You can also use higher level languages instead of plain assembler. However it is windows specific (won&#039;t work on anything pre-XP because of CreateRemoteThread usage BTW). For CD music in DOS, [[User:Phasma Felis|Phasma Felis]] may be your ticket. I&#039;m willing to help but as I said before, my knowledge of DOS is quite rusty. [[User:Seb76|Seb76]] 12:49, 9 July 2008 (PDT)&lt;br /&gt;
::It&#039;s really the equipment screen hack that looks compelling. Figure it might be unreasonably hard to do that in dos. But I can&#039;t seem to get the windows version to run at a reasonable speed these days, always far too fast. That&#039;s why I&#039;m using dosbox. Ah well, have fun modding :) [[User:Knan|Knan]] 14:14, 9 July 2008 (PDT)&lt;br /&gt;
:Well, actually I have the speed issue too. It&#039;s just that setting the laptop to max battery and scroll speed to one is enough to work around the problem ^^. The geoscape has a sleep routine to prevent too fast updates. The mecanism is not present in the tactical part. [[User:Seb76|Seb76]] 14:45, 9 July 2008 (PDT)&lt;br /&gt;
:Edit: might be your lucky day. I made a modification, it should slow down the scroll now. Can you check? [[User:Seb76|Seb76]] 15:42, 9 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Seb76, since you appear to be on a roll with the findings lately, I thought I&#039;d mention this as something to look out for if you haven&#039;t already found it. Can you track down the tables that determine a few other object properties that aren&#039;t stored in obdata.dat? I mean for properties like if it can cast light, what bullet image to use if the object is fired, whether its melee attack/mind probe/psi attacks are available for that item, etc. This would certainly allow for much more robust equipment modding. I&#039;m guessing it&#039;ll be a part of the tactical.exe portion of the game. - [[User:NKF|NKF]] 19:56, 11 July 2008 (PDT)&lt;br /&gt;
:Only flares can cast light currently. It is not a property in obdata, but a hardcoded &amp;quot;objectType=0x1B&amp;quot; check. I can hack in a piece of code to enable light for some other object types, but we&#039;ll need a way to say which ones do (can be done in the ini file but it would not be clean. Maybe we can find an unused bit in obdata.dat and arrange that...). [[User:Seb76|Seb76]] 14:12, 12 July 2008 (PDT)&lt;br /&gt;
:Edit: the routine that populates the item menu has everything almost hardcoded too: stun, mind probe, psi-amp actions, scanner and medkit are all hardcoded by object type. The rest uses known flags from obdata. [[User:Seb76|Seb76]] 15:18, 12 July 2008 (PDT)&lt;br /&gt;
:Edit2: playing with the heavy laser mod, I found the data for bullet image/sound. It is located at offset 0x6D1F8. Each entry is organized like that:&lt;br /&gt;
 struct {&lt;br /&gt;
 	short bulletVisual;&lt;br /&gt;
 	short shootSound;&lt;br /&gt;
 	short impactSound; &lt;br /&gt;
 	short impactAnimation;&lt;br /&gt;
 }&lt;br /&gt;
Entries are sorted per [[OBDATA.DAT]] ID (i.e. the first entry is for pistol, the 0x12th for heavy laser, etc.) [[User:Seb76|Seb76]] 15:31, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Ah, that&#039;ll help with some modding. Although I just remembered something that I was going to ask at the time - but completely forgot about. What controls how the weapon is displayed while in the soldier&#039;s hands? I mean, the pistols are displayed with the weapon extended in the firing position while most other weapons are held across in both hands (mimicking one/two handed items). Would this be hard coded as well in addition to the unique item actions? -[[User:NKF|NKF]] 17:43, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Error running UFOExtender ==&lt;br /&gt;
&lt;br /&gt;
Hi Seb76.  I&#039;ve tried running your UFOExtender as I want to slow down the scrolling in the tactical view.  However I get the following error message:&lt;br /&gt;
&lt;br /&gt;
 C:\Games\X-com\UFO Defense\UFOLoader.exe&lt;br /&gt;
 This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.&lt;br /&gt;
&lt;br /&gt;
Any ideas what&#039;s going wrong?  I&#039;m on Win XP running Collector&#039;s Edition of UFO. --[[User:Col w|col_w]] 05:34, 12 July 2008 (PDT)&lt;br /&gt;
:Hum, looks like the error you get when there is a missing DLL. I compiled using Visual Studio 9.0 Express Edition, maybe you don&#039;t have the runtime installed? You can get it [http://www.microsoft.com/downloads/details.aspx?FamilyID=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&amp;amp;displaylang=en here]. Tools like [http://www.dependencywalker.com/ dependency walker] can help identify missing DLLs. Also what OS are you using (service pack number)? I don&#039;t have Vista here to test so it may only be running in XP SP2. Anybody can report it running on Vista? For sure it won&#039;t work on Win9x. [[User:Seb76|Seb76]] 09:02, 12 July 2008 (PDT)&lt;br /&gt;
::Yeah, visual xyz runtime dlls need to be included with things you compile with visual xyz. A common complaint when running small hacks under Wine on Linux as well, since you usually install just a very few programs on each virtual windows install, so it&#039;s unlikely some other program installs the dlls for you. [[User:Knan|Knan]] 17:08, 12 July 2008 (PDT)&lt;br /&gt;
:Especially since they made up that manifest stuff. Supposed to solved DLL hell... Well, so far it caused me more trouble than it solved issues. The funny part is when you install a new VS service pack on your build servers and have half the development team freak out because their target system won&#039;t boot the latest piece of code... [[User:Seb76|Seb76]] 18:04, 12 July 2008 (PDT)&lt;br /&gt;
Awesome, that fixed it! Now I can enjoy this classic game once again.  Love the language screen joke too :)  Many thanks --[[User:Col w|col_w]] 11:08, 12 July 2008 (PDT)&lt;br /&gt;
:My pleasure man. Glad you enjoyed it ;-) [[User:Seb76|Seb76]] 12:07, 12 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== UFOloader and Xcomutil ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb76 awesome work with this patch! Just wondering though if it would be possible to run this together with XcomUtil somehow. Thanks!&lt;br /&gt;
Oh and btw when&#039;s the TFTD version coming out? ;-)&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 14:09, 24 July 2008 (PDT)&lt;br /&gt;
:You can try this version: [[Image:UFOExtender-dev.zip ]]. I did not really have time to test it. Use the modified batch and keep me posted ;-) You&#039;ll get a crash if you activate the patch to disable the introduction movie. I checked the equipment screen patches, they were OK. TFTD will wait till I&#039;m satisfied with the XCOM version. Anyway, I&#039;m not in a disassembling frenzy right now :p [[User:Seb76|Seb76]] 15:29, 24 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Hey fast response, thanks! I tried the new version but unless I&#039;m missing something I&#039;ve been unable to get it to include f0dder&#039;s bugfix loaders. I edited the ini file&#039;s Executable= to &#039;xcloader.exe&#039;, xcomutil&#039;s included bugfix loader, and when I run UFOloader.exe directly it works fine, but when using your modified runxcomW.bat it seems to be disregarded. This was not the case with your previous version. (I actually thought of modifying runxcomW.bat like that :-) ) Can&#039;t seem to find any reason for it in runxcomW.bat.&lt;br /&gt;
:The only modification I did to this version is forward the parameters passed to the loader to the XCOM executable (geoscape is passed an argument which tells it if it needs to start from scratch, or use the data from the missdat folder). Also it cannot work with f0dder&#039;s patch the way you tried: doing so, you are patching the xcloader binary itself, which obviously is not what you want.&lt;br /&gt;
:Edit: I added a &amp;quot;Video Pitch&amp;quot; bug fix to compensate for the incompatibility of the 2 loaders ;)&lt;br /&gt;
:: also a minor note, but on a fresh xcom install the console echoes a read error on MISSDAT\saveinfo.dat (I assume this is the work of xcomutil) and minimizes Xcom to the tray. It still works fine though.&lt;br /&gt;
:: while on the subject of minor notes the &#039;Rank In Inventory=&#039; in your ini file actually has the letter O instead of the number 0 by default ;-)&lt;br /&gt;
:Hm, I guess that&#039;s what you get when experimenting stuff at 1:00 am ;-) (GMT+2 here)&lt;br /&gt;
:: edit: I decided to do some testing first by manually disabling directdraw to circumvent the bugfix loader problem. Unfortunately the game crashes as soon as I enter tactical combat (when it should go to the equipment screen) even when all features are disabled. But unless I delete the MISSDAT folder&#039;s contents the next time I run runxcomW.bat I can hear the battlescape music playing. Unfortunately the batch file seems to get stuck in an infinite loop or something as it just keeps starting xcom over and over until it finally kills my system! :-) (all my base really belong to you ;-) )&lt;br /&gt;
:I start the runxcomw.bat batch from a shell and I have to do a &amp;quot;ctrl-C&amp;quot; between phases . Maybe it is because I replied yes to &amp;quot;Do you want to see XcomUtil messages after combat?&amp;quot; &lt;br /&gt;
:: using the previous version I can enter battles just fine, but none of the UFOloader features work.&lt;br /&gt;
:Did you try disabling every XComUtil features? I don&#039;t know how extensively it modifies the main executable. Here it works with the following config: replied &amp;quot;no&amp;quot; to everything while installing XComUtil (so that only executable splitting is done), enabling only equipment screen patches with my loader, and starting via the attached batch file. I can start a new game, down a UFO, go into tactical mode and go back to the geoscape view after taking down all the aliens. Did you try renaming UFOLoader.exe into xcloader.exe? It might work [[User:Seb76|Seb76]] 12:21, 25 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Thanks for your efforts, but still no luck. I downloaded the new version and did a fresh install of xcom. Running the UFOloader without xcomutil works fine (with your directdraw patch I get a ~3sec pause everytime the game zooms in/out on an interception though, which does not occur with f0dder&#039;s patch). Running xcomutil without the UFOLoader also works fine (using ctrl+C). I then did another fresh install and put the both of &#039;em together. I enabled the equipment screen patch and the directdraw fix on UFOLoader and told xcomutil to use f0dder&#039;s loader, answering no to all other questions. Renamed UFOLoader.exe to xcloader.exe and started runxcomW.bat. The game crashed when it should go to the equipment screen. (no ctrl+C possible) Disabling the equipment screen patch and/or enabling xcomutil&#039;s messages after combat yielded the same result. :(&lt;br /&gt;
:About the 3sec pause, it may be related to the musicfix that f0dder&#039;s patch does: it runs the MCI commands in a separate thread to remove the pause due to synchronous calls (with the unpatched version, there is a &amp;quot;slight&amp;quot; pause (~0.5sec on my computer) each time the music changes). Do you have the same pause in the main menu? Also if you activate the PSX music patch (even with no CD in the tray), it should remove the pause (if it is indeed the same problem). For your crash, I haven&#039;t got a clue. Maybe it&#039;s time I release the source code so people with different configurations can try more stuff. I know there are imaginative people out there ;-) [[User:Seb76|Seb76]] 07:02, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Ah that fixed the delays, thanks! Strangely the battlescape now works fine (using ctrl+C) as long as I don&#039;t enable the equipment patch with xcomutil... Don&#039;t know about the other fixes&amp;amp;flags. I&#039;ll do some more testing. [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:31, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: edit: quick testing reveals that it actually crashes exactly 1 times in 2, apparently regardless of what fixes are on. (though I did not yet test any xcomutil features) I guess it&#039;s probably related to one of the MISSDAT files? [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:37, 27 July 2008 (PDT)&lt;br /&gt;
:: edit2: OK here&#039;s what I have so far: It crashes if the previous mission worked. It works if it crashed on the previous mission. If I delete the contents of the MISSDAT folder it always crashes until I do a mission without xcomutil and/or without the loader. After that the normal rules apply. (i.e. next mission I play with both xcomutil&amp;amp;the loader it&#039;ll crash, as the previous mission worked, but the next one will work again) very strange :s Note that I did not yet try to play out a full mission, I always aborted on the first turn. Hope you can narrow the problem down a bit this way :-) [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:50, 27 July 2008 (PDT)&lt;br /&gt;
:Can you give me the address of the error when it crashes? (accessible in the crash window dialog)[[User:Seb76|Seb76]] 11:29, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: There is nothing when it crashes, not even the console remains. Unless you&#039;re talking about a log file?&lt;br /&gt;
:I was talking about the &amp;quot;a program has cause xxx to close unexpectedly&amp;quot; (or whatever it is in the US version) dialog box. This looks more like a silent crash (the worth case). I modified the loader and it looks better. I still have the &amp;quot;ctrl-C&amp;quot; issue however. [[User:Seb76|Seb76]] 12:38, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: &amp;lt;3 don&#039;t know what you did but the latest version works perfect! Just did 3 missions in a row, restarted xcom and did another 2 (only actually completed one of &#039;em tho :) ) without any crashes at all! *crosses fingers* I enabled all the settings I wanted in both xcomutil and the UFOLoader without problems. Thanks Seb, excellent work! ;-)&lt;br /&gt;
:: oh and the ctrl+C thing is a problem in the xcomutil batch file, it&#039;s not your program&#039;s fault. The Xcopy commands in the runxcomW.bat file are missing a /Y parameter. Here&#039;s a link to the xcomufo.com forum thread discussing it for anyone interested: [http://www.xcomufo.com/forums/index.php?showtopic=242025489]&lt;br /&gt;
:: Whew, was quite a ride... Now, where&#039;s my ammo clip fix? ^^&lt;br /&gt;
:Thanks for the feedback, it is good to know that it is possible to have this work with xcomutil. BTW, the fix I did in the test version is also in the latest package with the ammo clip hack ;-) [[User:Seb76|Seb76]] 16:16, 27 July 2008 (PDT)&lt;br /&gt;
:::After spending an hour with reading through this double discussion and trying to find the right batch file in the old archives and make the game work, I decided to put your &#039;&#039;&#039;Xcomutil + UFOloader solution&#039;&#039;&#039; here: [[Image:RunXcomW.zip]] with a simple explanation. Hope you don&#039;t mind.--[[User:Kyrub|Kyrub]] 15:43, 8 September 2008 (PDT)&lt;br /&gt;
::::Actually you don&#039;t need the modified runxcomw.bat file, the way I do it is I tell xcomutil to use f0dder&#039;s loaders and then I simply replace xcloader.exe (xcomutil&#039;s included f0dder patch) with UFOLoader.exe! [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:01, 9 September 2008 (PDT)&lt;br /&gt;
: Hey there, I&#039;ve read about this project and I&#039;m wondering if I can ran it with XComUtil but I play with the DOS versions (through DosBox) and thus use RunXCom. [[User:Hobbes|Hobbes]] 16:27, 13 September 2008 (PDT)&lt;br /&gt;
::Sorry there, this project uses modifications of the binary so it&#039;ll work only on the windows version. Why do you have to stick to the DOS version BTW? [[User:Seb76|Seb76]] 04:29, 14 September 2008 (PDT)&lt;br /&gt;
:::DOS version was the first I played and I prefer its sounds (specially the alien death cries). I also prefer the DOS bugs (some on CE are too annoying). Thanks anyway :) [[User:Hobbes|Hobbes]] 11:26, 14 September 2008 (PDT)&lt;br /&gt;
:::Hmm, something I remembered: IIRC, XComUtil splits the binary of CE into Tactical and Geoscape, in order for it to run with CE. I think I&#039;ll download your program and give it a try [[User:Hobbes|Hobbes]] 11:34, 14 September 2008 (PDT)&lt;br /&gt;
::::No success, doesn&#039;t surprise since I have the barest clue of what I should be doing. [[User:Hobbes|Hobbes]] 11:44, 14 September 2008 (PDT)&lt;br /&gt;
::There&#039;s no way it could work like that, windows binaries cannot run in DOS environment; split binaries or not. If you&#039;re pissed about a particular bug, just tell. I may be able to fix it ;-) Concerning the sounds, I don&#039;t know exactly what is the problem about CE version. If someone can give some details, I may have a look at that too. [[User:Seb76|Seb76]] 12:09, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Heavy Laser Mod ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb, I&#039;ve been trying the new heavy laser. It&#039;s a cool idea, adds some new options during battle :) But I think currently the full auto option is overpowered. I hardly use the burst mode at all. I&#039;d suggest lowering the accuracy and/or (if possible) reducing the amount of shots fired? Currently when I see a single alien I use full auto (can&#039;t miss with 10 shots), when I see a terror unit I use full auto (2x2 + 10 shots = dead terror unit :) ), and when I see a group of aliens I also use full auto (10 shots &amp;gt; 5 shots). A few units still standing? Bring on the next heavy laser.&lt;br /&gt;
Also because these new fire modes don&#039;t mind line of fire restrictions cover won&#039;t help aliens at all (unless the cover is strong enough to withstand HL power). Just use full auto to blast through any house that&#039;s in the way and in most cases it&#039;ll still kill the alien as well. (do need to make sure no agents/civilians are standing in the line of fire though) &lt;br /&gt;
Should note that ATM I&#039;m still only dealing with sectoids and the occasional floater. Will let you know how it fares against the later races.&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:44, 31 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
OK, it&#039;s cool but it really is overpowered. Accuracy must be lower in Auto modes than in Snap, that&#039;s basic in the game. If you assume the Heavy Laser is somehow better optimised for autofire than the Laser Rifle, and set the TUs for normal Auto at say 30% (vs 34% with Laser Rifle) that would let you get off 3 bursts, which would be better. (I could live with the idea that you can also only fire 3 snap shots). Then your &amp;quot;Full Auto&amp;quot; mode would be 100% TUs for 10 rounds and your &amp;quot;Burst Mode&amp;quot; could be 50% TUs for 5 rounds, and that would be consistent with the &#039;standard&#039; Auto mode. But the accuracy per shot needs to be much lower. I would suggest the base Accuracy per shot is reduced to 33% (one third less than Snap, similar to a Laser Rifle). You are still making the weapon MUCH more effective this way. [[User:Spike|Spike]] 12:47, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: On further analysis, even this is too powerful. The stats I just cited would give firepower only a fraction less than a Heavy Plasma - with much lower cost, unlimited ammo and easier-to-reach technology. That&#039;s not balanced. Unfortunately, you can&#039;t really go above 6 shots per turn without unbalancing the game, as none of the 2 handed weapons fire more than 6 shots/turn. So the TUs for Auto need to be 34%-40%, and you can&#039;t really have it fire more than 6 shots per turn even in the Full Auto mode. I would suggest Auto = 35%, Burst = 75%, Full Auto = 80%. Burst and Full Auto only fire 6 shots. Burst Mode fires 2 shots each at 2 waypoints, and a further 2 rounds spread in between the 2 waypoints. Full Auto fires one each at 2 waypoints and 4 shots spread between the waypoints. And maybe the Burst Mode should be the more expensive one as it is more &#039;concentrated&#039; fire. The reason you can&#039;t really exceed 6 shots per turn, even if you reduce the accuracy drastically, is because otherwise you create a super-effective shock weapon at point blank range (and a super effective terrain-clearing weapon). Somehow the &#039;shock power&#039; in particular seems inappropriate for something as clumsy as a Heavy Laser. To rationalise it, think of it this way - it&#039;s not a machinegun, it&#039;s an energy weapon. The &#039;cyclic rate of fire&#039; is limited by the energy circuitry as much as anything else. So squeezing six shots per turn out rather than 3 (the limit with Snap fire) is a pretty good improvement. With the Auto Mode I&#039;ve suggested here, you have still double the &#039;shock&#039; firepower of the Heavy Laser at short range, and increased its firepower by two thirds at longer ranges. Not a bad way to put some life back into a weapon that otherwise has very limited uses. Probably in the &#039;Area&#039; modes (Burst / Full Auto) the Accuracy should drop, say to 25% (vs 33% in standard Auto). [[User:Spike|Spike]] 13:48, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Ok I finally shut down my NeXCom Workstation and turned out the lights in the Bean Counter&#039;s Department at X-Com HQ - and headed down to the Armoury. I checked out one of the new, experimental Super Heavy Auto Lasers and ducked onto an Avenger heading into a hot LZ. &lt;br /&gt;
&lt;br /&gt;
Seb, let me tell, you, it was SPECTACULAR! You are the Ayatollah of Rock-and-Rolla! I was like Jesse Ventura in Predator, carving up the jungle with his minigun. I love your gun. It is too cool. It must not be nerfed. So I have another suggestion for your coding skillz: &lt;br /&gt;
&lt;br /&gt;
See if you can get the &amp;quot;hidden item&amp;quot;, Gatling Laser, working. Add your Super Heavy Auto Laser as a new item, using the Gatling Laser image and OBDATA entry. I don&#039;t know if you can add a new Research option or a new Manufacturing option. If you can&#039;t, maybe you can offer it to Purchase (once Heavy Laser is researched, or perhaps Laser Cannon). Given the power of the weapon (as spec&#039;d above), the cost to buy or manufacture should be similar to a Heavy Plasma: around a total cost of $164K to manufacture (including &#039;&#039;all&#039;&#039; costs) or around $225K to buy. As a quick hack, for the time being, if you are still using the Heavy Laser object for the Super Heavy Auto Laser (with 10 shot Full Auto), increase the manufacturing costs and buy/sell prices to roughly the same as the Heavy Plasma. [[User:Spike|Spike]] 13:29, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Thanks for the nice feedback! The initial idea for this mod came when watching a Laser Squad speedrun (never played the game myself) and seeing the guy waste several baddies with one auto-shot sweep (in this game you can also select the number of shots when auto-firing). I chose to try a modification of the heavy laser for 2 reasons: everybody agrees to say that the default one sucks and second, since it uses no ammunition there is no need to handle out-of-ammo conditions. I personally see this weapon more as a recipe for new doors than a direct way to kill aliens. Several things could nerf it a bit but I didn&#039;t try them yet:&lt;br /&gt;
:*make accuracy lower and lower during a burst (to account for the laser lens deformation caused by overheating). This would restore the advantage of cover and make people thing twice before firing when a friendly unit stands in front&lt;br /&gt;
:*reduce accuracy even further when shooting out of sight (this was mentionned in another post)&lt;br /&gt;
:*change the damage model and reduce the probability that terrain is destroyed when shot&lt;br /&gt;
:*have a cooldown period where the weapon is not useable (not sure if it&#039;s feasible though)&lt;br /&gt;
&lt;br /&gt;
::Yeah cooldown periods! Then restore functionality of the melee HIT command. Hey it worked for incubation: time is running out. ^^ [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 16:27, 7 September 2008 (PDT)&lt;br /&gt;
:::Hm, I already cannibalized the unused &amp;quot;open&amp;quot; and &amp;quot;close&amp;quot; actions for the heavy laser mod, there is no more room for a new &amp;quot;hit&amp;quot; command. Unless... ;-) [[User:Seb76|Seb76]] 11:28, 8 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Wish List please please please ==&lt;br /&gt;
&lt;br /&gt;
Seb: Wow! I can&#039;t believe what you&#039;ve done with UFO Extender! I wish I could try it but I can&#039;t get XCom working on my current PC. &lt;br /&gt;
&lt;br /&gt;
Can I ask what algorithm you used for Multiple Radar? The algorithm in my BaseFixer.py Python script is actually much better than the fairly lame one described on my User page.&lt;br /&gt;
:As I said, I used about the same as in you BaseFixer script:&lt;br /&gt;
 float shortDetection=pow(0.9f,smallRadars);&lt;br /&gt;
 float largeDetection=pow(0.8f,largeRadars);&lt;br /&gt;
 &lt;br /&gt;
 *(short *)(&amp;amp;base[0x10])=(short)((1.0-shortDetection*largeDetection)*100.0);&lt;br /&gt;
 *(short *)(&amp;amp;base[0x12])=(short)((1.0-largeDetection)*100.0);&lt;br /&gt;
:However I keep the computed value even for the one small/one big radar combo ;-) [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Now then, requests - could we please have:&lt;br /&gt;
&lt;br /&gt;
* Add 1-2 UFO Navigation to the haul after a successful Alien Base Assault. &lt;br /&gt;
:The game actually has specific code to remove these from the recovered items, it&#039;s just a matter of bypassing it. Next version will have an option to do so. [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
* Random chance (1-2%, and only for Scouts) per mission that a UFO accidentally crashes - like the &amp;quot;Roswell Incident&amp;quot;. Crash site would be automatically detected &amp;amp; UFO would have random damage. &lt;br /&gt;
:Sounds like a nice idea. I&#039;m working on it but I still have some crashes, and the routine to check if a ship is over water does not seem to work properly :( [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
:Update: feature almost complete, time to bake a new version ;-)&lt;br /&gt;
&lt;br /&gt;
:[[Image:Roswell.png]]&lt;br /&gt;
&lt;br /&gt;
:There are probably some bugs lurking (the most likely problem would be unfreed CRAFT.DAT entries), but I don&#039;t think I&#039;ll change the code much now. [[User:Seb76|Seb76]] 07:47, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Both of the above are totally pointless, apart from helping with my silly &amp;quot;No Detection&amp;quot; variant game, and actually making it possible to win. &lt;br /&gt;
&lt;br /&gt;
* Allow human side soldiers to reaction fire in their currently saved Reserved Fire mode - eg to take Autofire or Aimed reaction shots. That would be very, very cool. It would also be a balanced trade-off, if these Reacting soldiers were not allowed to &#039;switch&#039; to Snap fire after they no longer have the TUs left to use their Reserved mode. &lt;br /&gt;
&lt;br /&gt;
* Implement your &#039;Area Fire&#039; (as per Heavy Laser) for &#039;&#039;&#039;all&#039;&#039;&#039; large automatic weapons (AutoCannon, Heavy Plasma) or maybe just for all automatic weapons, period. It would be very handy for Autocannon bursts to cover a wider area, firing a narrow burst is often not what you want at all in many tactical situations. There might be a problem implementing this for Plasma weapons, if you couldn&#039;t persuade the Aliens&#039; AI to use the Area modes - it wouldn&#039;t be fair. &lt;br /&gt;
&lt;br /&gt;
I can&#039;t think of much else, as you&#039;ve already fixed everything!&lt;br /&gt;
&lt;br /&gt;
On the Heavy Laser Mod, my initial thoughts are that it is fun and cool but too powerful. The overall shots per turn should not be more than normal auto mode. The accuracy should be lower than normal auto. Having the &#039;sweep&#039; effect is advantage enough. I&#039;ll have a think and suggest some numbers. [[User:Spike|Spike]] 11:41, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Got an idea while I was at work today that I thought I&#039;d throw onto the wish list. Some means to completely fast-forward the base defense screen. Either by making all the firing sequences happen in an instant, or completely skip the screen altogether. I always advise against making impenetrable bases if only to preserve your sanity. I mean you eventually get sick of being interrupted to watch the defense module firing screen for the umpteenth time. If you never got the interruptions then an impenetrable base would be quite satisfactory. You shouldn&#039;t be getting any points for a failed base attack so you won&#039;t be gaining from it. About the only problem would be when an undefended base gets destroyed, unless you can make a dialog box pop up to announce it. -[[User:NKF|NKF]] 03:10, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Warm Grenades ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to have a Mod where grenades / HE  explode a set number of half-turns after you drop/place them. &lt;br /&gt;
&lt;br /&gt;
This could be implemented by an extra bit of logic that increments the &amp;quot;Turn When I Will Explode&amp;quot; field by +2 if the grenade is being held/worn when the Explode check happens. &lt;br /&gt;
&lt;br /&gt;
For me this is a more natural way for grenades to work: set the fuse, then the fuse only starts when you release the spring or set the HE pack in position. Certainly hand grenades should behave this way. I guess people could argue that HE packs should behave in the standard way. In which case, you could check the weapon type and use different logic for HE.  &lt;br /&gt;
&lt;br /&gt;
Hopefully the Alien AI would not be confused by any of these changes. I suspect the AI cheats anyway? Or always sets to 0 and throws right away? [[User:Spike|Spike]] 02:00, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Facility maintenance cost bug ==&lt;br /&gt;
&lt;br /&gt;
Could you fix that? [[User:Spike|Spike]] 16:15, 3 September 2008 (PDT)&lt;br /&gt;
:I&#039;m a bit confused about this one. Some says that the fund graph is OK but not the amount of money taken. I had a look at the code and found that what is shown on the graphs is exactly the same amount as removed (the graph data is updated at the same place and the computation is done once for both). I think I remember also someone saying that the bug does not exist at all... Can someone clarify? [[User:Seb76|Seb76]] 02:31, 15 September 2008 (PDT)&lt;br /&gt;
::The graph is ok and the amount of money taken is ok (tested). What is wrong is the maintenance displayed in the &#039;Base overview&#039; screen (in every respective base you go to &#039;overview&#039; and something like &#039;maintenance&#039;). The wrong way is very well described here [[Base_Facilities#Displayed_Base_Maintenance_Cost_Bug]], I think you will guess what exactly is wrong in the code. --[[User:Kyrub|Kyrub]] 15:34, 17 September 2008 (PDT)&lt;br /&gt;
:Thanks, I found the code and it is indeed completely f*cked up. I&#039;ll try a fix tomorrow. [[User:Seb76|Seb76]] 16:53, 17 September 2008 (PDT)&lt;br /&gt;
:Edit: Done. What&#039;s next? ;-) [[User:Seb76|Seb76]] 01:15, 18 September 2008 (PDT)&lt;br /&gt;
Just how bad was the mess up? Curios minds demand to know! By the way, my mind was wandering while at the office and one thing came to mind to add to your already useful inventory display: Armed grenade status. Ever drop one you&#039;ve just armed and lose it in a pile of other unarmed grenades on the ground? &lt;br /&gt;
:Well, from the look of it, I think they were trying to compute the maintenance cost using an array. Obviously something was wrong.&lt;br /&gt;
:*they first try to clear an array of 0x11 entries at the begining of the function (there are 0x11 base elements types, hangar count as 1). Note that there is already a bug here and the array is not cleared as expected, only the first entry is cleared 0x11 times...&lt;br /&gt;
 mov     esi, 11h&lt;br /&gt;
 ...&lt;br /&gt;
 loc_44004C:&lt;br /&gt;
 dec     esi&lt;br /&gt;
 mov     word ptr [esp+3Ch+elementsArray], 0&lt;br /&gt;
 jnz     short loc_44004C&lt;br /&gt;
:*ecx is initialized to point to the maintenance cost data (nothing wrong here)&lt;br /&gt;
 mov     ecx, offset baseElements.maintenance&lt;br /&gt;
:*then they loop on each base element, but the inner loop is nonsense (at this point ax contains the base element type. edi is the total maintenance cost):&lt;br /&gt;
 movsx   eax, ax&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     edi, [edi+eax*8]                        ;totalMaintenaceCost+=elementMaintenanceCost*1000&lt;br /&gt;
:we see that they increment the array element, but the content of the array is discarded and the maintenance cost (edi) is computed simply from [ecx].&lt;br /&gt;
:*then after each row, we have this:&lt;br /&gt;
 add     ecx, 10h&lt;br /&gt;
:which explains why the cost changes for each row.&lt;br /&gt;
:I don&#039;t see what kind of C code could produce such disassembly; maybe there is a bug in the compiler,at least the address calculation should have been removed (optimized out).&lt;br /&gt;
:The fix required two patches:&lt;br /&gt;
:*remove the incrementing of ecx for each row&lt;br /&gt;
 char nop[]={0x90,0x90,0x90};&lt;br /&gt;
 PatchInPlace(0x44066E,nop,3);&lt;br /&gt;
:*make a working inner loop:&lt;br /&gt;
 char patch[]={&lt;br /&gt;
   0x03, 0xc0,                  // add eax,eax&lt;br /&gt;
   0x8a, 0x04, 0xc1,            // mov al, BYTE PTR [ecx+eax*8] ;get the maintenance cost for the *specific* base element&lt;br /&gt;
   0x0f, 0xb6, 0xc0,            // movzx eax, al&lt;br /&gt;
   0x90, 0x90, 0x90, 0x90, 0x90 // nop the remaining&lt;br /&gt;
 };&lt;br /&gt;
 PatchInPlace(0x440651,patch,13);&lt;br /&gt;
:this takes care of the nonsense code&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
&lt;br /&gt;
Very interesting stuff! By the way I&#039;m playing a &amp;quot;Roswell&amp;quot; game at the moment and loving it - thanks Seb! [[User:Spike|Spike]] 10:31, 20 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
==Grenade Status Indicator==&lt;br /&gt;
&lt;br /&gt;
Is it possible to include an indicator on the end of the grenade&#039;s name string to show whether the grenade has been armed? Or perhaps even show how many grenade ticks are left to go? &lt;br /&gt;
:Hmm, I&#039;ll see if I can find something&lt;br /&gt;
&lt;br /&gt;
== Keyboard Support ==&lt;br /&gt;
&lt;br /&gt;
Would it be possible to introduce some keyboard shortcuts for simple tasks? -[[User:NKF|NKF]] 00:48, 19 September 2008 (PDT)&lt;br /&gt;
:such as? [[User:Seb76|Seb76]] 02:52, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Hmm, perhaps a few keys like they had in Apocalypse for ending the turn and raising/lowering the elevation with the page up and down keys would be a good start, or jumping to the inventory screen. Perhaps keys in the Geoscape for setting the time compression settings. I can already see a bit of an obstacle with adding a key capture function in the Geoscape, you&#039;d have to know when you&#039;re entering strings or every other time when you&#039;re just toggling the Geoscape overlay. I&#039;ve always admired this game for relying on a two button mouse for pretty much everything except when entering strings, but if it&#039;s within the realm of possibility I think it would be great to have some keyboard shortcuts. -[[User:NKF|NKF]] 12:39, 19 September 2008 (PDT) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
First off have to say that this is outstanding work Seb, sincere thanks for what you have done here. I have started playing this again after years thanks to your hard work. I was going to suggest the old smoke limit problem but before I could you fixed it!! I have some other ideas, I know there are a lot but I thought I would throw them in anyway. Don’t mind if you think there all rubbish, you’ve done loads already. &lt;br /&gt;
:Thanks. Don&#039;t hesitate to suggest stuff, if it is not too difficult I&#039;ll try to make something :)&lt;br /&gt;
BTW is there a separate loader with your new Laser weapon? Can’t see it listed in the extender file (not researched it in my current game yet).&lt;br /&gt;
:There is a special [[Image:UFOExtender-dev.zip|dev version]] for the HL mod. It is not in the normal package since it is still too experimental. &lt;br /&gt;
A suggestion for a mod would be the following; I understand that if you defeat an alien assault on your base with base defense measures, then the aliens will continue to attack that base with more battleships until defeated inside the base (they then have to ‘find’ your base again before launching another attack). Can this be altered so that if their battleship is destroyed then they have to find your base again before dispatching anther battleship? Or a chance that they have to find it again. &lt;br /&gt;
:I&#039;d gladly work on that, but I need a savegame to reproduce the problem. I have one but when the battleship is destroyed, no other comes back later so there must be something wrong with it.&lt;br /&gt;
Another suggestion is that I also understand that 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;
:At one time I had the idea of having aliens target only visible units, but then I thought that the scout units would be doomed. Maybe targeting any unit randomly would be better. I&#039;ll give it a try.&lt;br /&gt;
If you psi control a human 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;
&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;
:These two are on my secret todo list ;-)&lt;br /&gt;
80 item bug on base defense mission&lt;br /&gt;
:May be hard to pull off. IIRC there is a 170 objects limit in the battlescape, and we must leave some room for the aliens...&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;
:I think this is a known issue with LOS, not sure though&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;
:I don&#039;t think this is done already. It may be possible to modify the number of units according to the damage done to the attacking ship, I&#039;ll have to take a look&lt;br /&gt;
This one is way out there. Alien v Alien battles outwith main game, just ramdom battlescape maps. Sectoid and their terrorists against Floters and theirs etc. One side human controlled the other computer . Choice of ships involved etc. &lt;br /&gt;
:Hmm, you do know I don&#039;t have the original source code available, don&#039;t you? :p&lt;br /&gt;
Any plans to work on Terror from the deep? &lt;br /&gt;
:I had a look and reidentifying the specific patch locations is quite tedious, and I&#039;m quite lazy... The loader source is available however, if anyone feels like giving it a shot ;-) [[User:Seb76|Seb76]] 16:38, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Thanks for the reply. If I get a suitable saved game re the base attack I’ll let you know. Great to hear that a couple of the ideas are on your list already. I have been playing around with the smoke bombs since your fix. I have not noticed any problems, seems to be working fine. --[[User:Mal310|Mal310]] 12:10, 21 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Inventory screen ammo weight bug ==&lt;br /&gt;
&lt;br /&gt;
I think there is a small bug. The weight of loaded weapons is not initially calculated. The base weight of the weapon is used but the weight of the ammunition is ignored. However if you reload the weapon in the inventory screen, the correct weight is then calculated. I have seen this repeatedly with AutoCannons. I am using XcomUtil to &#039;remember&#039; the equipment loads - maybe this might be part of the problem? [[User:Spike|Spike]] 09:24, 21 September 2008 (PDT)&lt;br /&gt;
:Yeah, I noticed this one already but flagged it as minor :) I&#039;m using a function that I found in the executable to calculate the weight (the one that&#039;s actually used by the game to see if a soldier is overburdened) so it is an original bug. Anyway, this calls for a fix ;-) [[User:Seb76|Seb76]] 09:47, 21 September 2008 (PDT)&lt;/div&gt;</summary>
		<author><name>Mal310</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=Wish_List_(EU)&amp;diff=16976</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=16976"/>
		<updated>2008-09-19T16:57:54Z</updated>

		<summary type="html">&lt;p&gt;Mal310: &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;
=== Fuel Ready always ===&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;
=== Smarter on 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;
===Equipment Management===&lt;br /&gt;
&lt;br /&gt;
==== Soldiers remembers THEIR equipment ====&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;
&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;
===Fog of War Mk. 2===&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;
====Blind Dropship Pilots====&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;
====Moving Fog====&lt;br /&gt;
&lt;br /&gt;
The Fog of War in X-COM is clumsily implemented, compared to modern expectations.  Everything starts out black, but after exploring, is shown...and it&#039;s kept in the same showing, regardless of whether you actually have LoS to that area anymore.  It would be nice if when you no longer had Line of Sight to a particular map area, it would be cloaked in a way so that you knew the terrain, but not the units there.  Since I&#039;ve sometimes spent over half an hour trying to hunt down that last alien hiding in area I&#039;d already explored.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
====Deactivate Object Radar====&lt;br /&gt;
&lt;br /&gt;
Currently, in X-COM, any objects dropped in a given square show on your Battlescape, regardless of whether you have Line of Sight to the square or not.  In regards to dropped weapons/grenades/equipment/dead soldiers/dead aliens, this doesn&#039;t make a large difference.  But in the case of STUNNED aliens, a quick scan across the Battlescape can tell you whether the alien you stunned 10 turns ago is still down, or stood back up(the stunned alien object will disappear from the stack).  Of course, since aliens which have revived from stun are almost always disarmed(and the ones that aren&#039;t probably should&#039;ve been killed instead), the usefulness of this &#039;exploit&#039; is reduced mainly to finding out that the last alien you&#039;re looking for is just wandering aimlessly and unarmed.  Perhaps leave stacks showing the same until you regain LoS to that area? [[User:Arrow Quivershaft|Arrow Quivershaft]] 22:38, 7 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===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;
===Decrease Accuracy for targets out of sight===&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;
: There is a penalty. Bullet drift. The further away you are, the more this will impact the bullet, potentially making even a 100% accurate shot miss. Also X-Com maps are pretty small, and the aliens already cheat enough as it is to make things difficult even with the sniper/scout strategy. In Apocalypse they addressed this with adding weapon ranges. But then, even some weapons were capable of shooting beyond the unit&#039;s ability to see an enemy target. - [[User:NKF|NKF]] 23:07, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::That&#039;s not really a good reason for me. 1) Bullet drift has a very small effect in the game, because the actual percents are set quite high. Example: if you spray an unseen alien from the other corner of the map with autofire of 35%, you&#039;ll get a 73,6% chance to hit with at least one bullet. Physics and game balance, adieu. 2) Moreover, bullet drift has nothing to do with not seeing the target. It should be the contrary, you ACCIDENTALLY hit something you don&#039;t see, no? 3) You get a penalty for handling two weapons in the same time. Why couldn&#039;t we take the same penalty (80%*Acc) for the hit-out-of-sight? (Well, I can&#039;t do this actually, maybe others can)--[[User:Kyrub|Kyrub]] 18:25, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: I don&#039;t agree that bullet drift is already there as a penalty, since this doesn&#039;t distinguish between seen and unseen targets at all (ok it does indirectly, only in so far as unseen targets tend to be further away). I think we should look at 3 cases: 1. person firing did not happen to be the one who &#039;&#039;&#039;spotted&#039;&#039;&#039; the target. 2. person firing &#039;&#039;&#039;could not&#039;&#039;&#039; see/spot the target under any circumstances. In the first case, we can assume the firer has visual contact with the target, after someone else pointed it out. No accuracy penalty should be applied (maybe a TU penalty?). In the second case, there should be an accuracy penalty. 80% would be generous, I would go for 50%. Or maybe something non-linear, so that autofire percentages would not fall by as much as aimed fire and snap fire percentages. One problem you have is how to present these two different cases to the player before they take the shot. It&#039;s a bit obscure if you just show them a lower hit probability without explaining why. [[User:Spike|Spike]] 19:02, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Bullet drift is an effect on range (actually it has quite a major effect on the blaster bomb), but yes it&#039;s not because of whether or not the unit can see the alien. But then again, the maps are small. If you ever took lots of screen shots of the map and made a large composite from them, you&#039;d find that the area of operations is very tiny and that the 20 tile visual range means that our avatars are quite short sighted. That&#039;s not realistic either, but imposed for game balance. Other tactical games appear to handle the accuracy vs. range dropoff issue by combining the shooter&#039;s skill and the weapon&#039;s maximum range. Basically you can operate the weapon to the best of the shooter&#039;s ability within the maximum range, but the further away you try to aim, accuracy is decreased. In some games, you even get to see the effect on the accuracy before you pull the trigger as the accuracy is attached to the cursor. - [[User:NKF|NKF]] 22:46, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::Actually the blaster bomb &amp;quot;drift&amp;quot; issue is not mainly caused by drift, but by accuracy adjustment between each waypoint (60% for xcom players, 55% for aliens). Maybe we can cook a kind of &amp;quot;max effective range&amp;quot; for a weapon base on firing mode (auto&amp;lt;snap&amp;lt;aimed) and gun type (pistol/rifle). Firing above this range would decrease the accuracy. [[User:Seb76|Seb76]] 01:03, 15 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:::: (to NKF) The main flaw of the whole &amp;quot;shoot the unseen&amp;quot; thing is the aliens cannot shoot back at somebody shooting at them (no reaction fire). If they could (or if they&#039;d shoot at least the soldier they see), I wouldn&#039;t complain. This destroys the battle tactics side of the game, you just sent a man to &amp;quot;spot them&amp;quot;.  Nota bene, they cannot use the same scout-sniper tactic, the way we do, either. (This would be most annoying, by the way). &lt;br /&gt;
::::(to Seb76) Effective range would restore some balance and add some use to the aimed shots. I thought about a simpler solution with &#039;&#039;substracting&#039;&#039; some accuracy (which would make auto useless, snap into a poor and aimed into a solid chance-to-hit). Your suggestion is much more elegant, Seb, if you can cook it ;-) --[[User:Kyrub|Kyrub]] 08:00, 18 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::: Fair enough, but do note that even your units cannot react against an alien that they cannot see within their visual range. Attacks of opportunity and actively taking your turn are two different tasks after all. I&#039;m not sure the aliens would be such sportsmen though. It might be worth looking into whether there is cooperation amongst the aliens while they are taking their turn - and I think I just have the scenario savegame to test this. If I could find it. BBs probably break the rules of basic firearms and range, and mind control has its own set of rules, so probably wouldn&#039;t count. -[[User:NKF|NKF]] 00:37, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Enough Smoke===&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;
===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;
===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 [[HE]] damage. In the end, I picked &amp;quot;I want flashbangs.&amp;quot;--[[User:Brunpal|Brunpal]] 03:32, 13 September 2008 (PDT)&lt;br /&gt;
: Maybe flashbangs dont&#039; work on Aliens - otherwise, XCom would use them, right? :) But seriously, I too would like flashbangs, and stun grenades / concussion grenades. Both of these would make the game easier, though. With flashbangs, you might have to compensate by just giving the aliens more TUs. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
::More options for the player is going to make it easier for any kind of game. Particularly of games like XCOM where the computer can&#039;t take advantage of the changes. However I don&#039;t believe a weak stun grenade (like 44 stun damage, comparable to AC-HE) would change the game much because the 80 item limit remains.--[[User:Brunpal|Brunpal]] 22:21, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Night Vision===&lt;br /&gt;
&lt;br /&gt;
I &#039;&#039;&#039;don&#039;t&#039;&#039;&#039; want to add night vision equipment to the game. I assume that either (1) all XCom units already have night vision gear as standard, but it&#039;s not as good as alien night vision, and the visibility that XCom units have at night is based on their standard-issue night vision gear, or (2) night vision gear does not work on Aliens. Either they do not appear on night vision, or maybe worse - maybe the aliens can manipulate night vision equipment, causing worse than normal vision, or hallucinations, and even tricking XCom units into firing on each other. [[User:Spike|Spike]] 13:33, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
===Throwing over stuff===&lt;br /&gt;
&lt;br /&gt;
I want to throw stuff over other stuff. I don&#039;t find grenades useful. I much rather shoot a rocket launcher from outside reaction shot range because even when you miss, odds are it&#039;s close enough. The throw itself has an arc trajectory and can hit the ceiling (a feature I like) but to pick the target it has to have straight line of sight (like a bullet) which is stupid. I want to throw onto the top of buildings where I &#039;&#039;can&#039;t see&#039;&#039;, or bounce a grenade off the ceiling and over the head of a squadie &#039;&#039;because &#039;&#039; I don&#039;t have line of sight with a gun. If I had line of sight, I would just shoot since that costs less TU even if I already had an armed grenade.&lt;br /&gt;
&lt;br /&gt;
The easiest way to accomplish this is to keep &amp;quot;out of range&amp;quot; but remove &amp;quot;you can&#039;t throw there&amp;quot; and just let a solider throw to any square they want. A better way is to keep the warning but give the player the option to try the throw anyway. If you can&#039;t really throw there, then oops... that&#039;s your badly positioned live grenade to deal with.--[[User:Brunpal|Brunpal]] 22:59, 11 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:I did some tests disabling the &amp;quot;you can&#039;t throw there&amp;quot; check and it does not work. The grenade ends up in the vicinity of the throwing unit. Actually the line of sight is not used when throwing objects. I&#039;m 98% sure it simulates the throwing of the object and if it intercepts anything, the throw is refused. [[User:Seb76|Seb76]] 04:47, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: The explicit emulation of the trajectory has been verified as part of the throwing range testing by [[User:Zombie|Zombie]] and myself.  The range bands are not consistent with a continuous model; they look like a table lookup from the same source 3rd ed. GURPS (Steve Jackson Games) uses. -- [[User:Zaimoni|Zaimoni]] 8:21 13 September 2008 (CDT)&lt;br /&gt;
&lt;br /&gt;
:::Units don&#039;t need LOS to an area to throw a grenade, as evidenced by my favored tactic of chucking an Alien Grenade or HE Pack into any Medium or Large Scout which has had the roof blown away in the crash from outside to &#039;pacify&#039; any remaining crew.  [[User:Arrow Quivershaft|Arrow Quivershaft]] 09:22, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Really? It never seems to work for me. Always requires me to have line of sight. For example tossing in a grenade into the roof hole doesn&#039;t work for me if the solider is on level 0 and I target a square inside at level 0. The walls and door obviously block the LoS. However I can target an area on level 1 or 2 in mid air and throw to that location where it naturally drops down to level 0. However I have line of sight to those higher levels in that case.&lt;br /&gt;
That&#039;s an acceptable compromise in many cases but in others it fails completely. For example having an alien on the top of a 2 story building (level 2) in the middle and a solider standing next to the building and not being able to toss a grenade onto the center of the roof. I could toss a ball there in real life. I wouldn&#039;t have thought the trajectory would have been high/steep enough to hit the &amp;quot;sky roof&amp;quot;.--[[User:Brunpal|Brunpal]] 22:04, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Just how strong are your soldiers? The stronger they are, the higher their toss. There are various occasions where you don&#039;t need to see where you&#039;re throwing to throw. For example, try tossing grenades over a tall fence or hedge. A High Explosive pack into the apple orchard that is surrounded by a hedge on farm maps is often an easy way to smoke out any hidden aliens - and the orchard.  One likely cause why you can&#039;t throw inside the UFO is that there&#039;s something in the way inside that&#039;s preventing the throw, such as a wall. Try adjusting your throwing destination, or reposition your soldier for a better throwing angle. &lt;br /&gt;
&lt;br /&gt;
: I&#039;ve often found grenades to be much more reliable than a directional attack early in the game where firing accuracy is much lower. You ought to try playing a few of the simpler missions like supply ship or large scout assaults with an all-grenadier cast. Takes a bit of planning to not destroy much of the loot, but otherwise literally a blast. -[[User:NKF|NKF]] 22:52, 13 September 2008 (PDT)&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;
===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;
===Base Build Stacking===&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;
===Recuit Certain Enemy===&lt;br /&gt;
&lt;br /&gt;
Consider that not all alien loyal to its master (most TFTD alien has a device lodged to its brain), it should be interesting (or at least cool) if we can recuit such alien. Maybe we can replace those controling device from captive alien after research that specie. Or convince head of the Snakemen that it would be far more benefit to help us instead of the Ethereal [[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;
&lt;br /&gt;
==Fix All Bugs==&lt;br /&gt;
&lt;br /&gt;
Oh no [[User:Seb76|Seb76]] already did this! :) [[User:Spike|Spike]] 12:06, 3 September 2008 (PDT)&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;br /&gt;
&lt;br /&gt;
  SOME MORE WISH LIST STUFF&lt;br /&gt;
&lt;br /&gt;
I have already listed most of this wish list on Sep’s excellent loader page. Didn’t know this page existed till now. &lt;br /&gt;
&lt;br /&gt;
1. 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;
2. If you psi 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;
&lt;br /&gt;
3. 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;
&lt;br /&gt;
4. 80 item bug on base defense mission&lt;br /&gt;
&lt;br /&gt;
5. 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;
6. 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;
7. 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;
These are a couple of new ones, just thought of them&lt;br /&gt;
&lt;br /&gt;
8. 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. &lt;br /&gt;
&lt;br /&gt;
9. Open doors like they do in TFTD (I know this is mentioned above with the good stun grenades idea).&lt;br /&gt;
&lt;br /&gt;
10. 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;/div&gt;</summary>
		<author><name>Mal310</name></author>
	</entry>
	<entry>
		<id>https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=16975</id>
		<title>User talk:Seb76</title>
		<link rel="alternate" type="text/html" href="https://temp.ufopaedia.org/index.php?title=User_talk:Seb76&amp;diff=16975"/>
		<updated>2008-09-19T15:53:54Z</updated>

		<summary type="html">&lt;p&gt;Mal310: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hey, sorry to pester you again. :) I&#039;ve gotten access to IDA, as you suggested, and with it I&#039;m making some slow progress toward my mod. I wanted to ask, though, do you know of any sort of tutorial or useful intro for it? The user interface is pretty obtuse, the built-in help has nothing useful, and I&#039;ve been struggling just to make comments go where I want them to.&lt;br /&gt;
&lt;br /&gt;
(I mean, I understand that it&#039;s meant for very advanced users, but Jesus, who writes an enterprise-grade utility and doesn&#039;t bother to implement an Undo function?!?)&lt;br /&gt;
&lt;br /&gt;
Thanks again for your help! [[User:Phasma Felis|Phasma Felis]] 23:15, 16 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Okay, a little more progress since I discovered anterior comments. Couple of more specific questions: what&#039;s the difference between a &amp;quot;comment&amp;quot; and a &amp;quot;repeatable comment&amp;quot;? Or any of the several other types of comments, for that matter.&lt;br /&gt;
&lt;br /&gt;
What exactly does &amp;quot;mov cs:word_102F9, ax&amp;quot; do? At first I thought it was just copying the accumulator into the data word at 02F9, but the &amp;quot;cs:&amp;quot; part is confusing. word_102F9 is 0, I think (&amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot;). Does that mean it&#039;s copying AX into the current code segment, offset 0, modifying the code in progress? That seems odd.&lt;br /&gt;
&lt;br /&gt;
Okay, one more and then I&#039;ll go to bed: what does &amp;quot;jmp short $+2&amp;quot; do? It looks like it just means &amp;quot;jump to next instruction&amp;quot;, which is kinda redundant, but it could be &amp;quot;jump &#039;&#039;over&#039;&#039; next instruction&amp;quot;, which...still seems unnecessarily verbose. I dunno. [[User:Phasma Felis|Phasma Felis]] 00:51, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: The last two questions are actually general Intel 16-bit assembly ;)&lt;br /&gt;
&lt;br /&gt;
: The cs in &amp;quot;mov cs:word_102F9, ax&amp;quot; is the 16-bit code segment base, yes.  It *might* be self-modifying code, but more likely there is a C global or static variable that was implemented there and being updated.  The &amp;quot;seg000:02F9 word_102F9 dw 0&amp;quot; is probably from C default initialization, but could be from an explicit initialization to 0.&lt;br /&gt;
::Back in the 16bit days, there were several memory models. My knowledge on this is quite rusty, but IIRC COM executables were using the &amp;quot;tiny&amp;quot; one which means that the code and data use the same segment (I assume you&#039;re working on the music TSR?). Modification of data via the CS segment is not necessarily self-modifying code. Also TSRs were usually signaled using software interruptions so the code most likely sets up an interrupt vector and bails out. e.g.:&lt;br /&gt;
 seg000:0140 mov     dx, 157h&lt;br /&gt;
 seg000:0143 push    ds&lt;br /&gt;
 seg000:0144 push    cs&lt;br /&gt;
 seg000:0145 pop     ds&lt;br /&gt;
 seg000:0146 mov     ax, 2566h&lt;br /&gt;
 seg000:0149 int     21h                             ; DOS - SET INTERRUPT VECTOR&lt;br /&gt;
 seg000:0149                                         ; AL = interrupt number&lt;br /&gt;
 seg000:0149                                         ; DS:DX = new vector to be used for specified interrupt&lt;br /&gt;
 seg000:014B pop     ds&lt;br /&gt;
 seg000:014C call    sub_1067A&lt;br /&gt;
 seg000:014F mov     dx, ax&lt;br /&gt;
 seg000:0151 mov     ax, 3100h&lt;br /&gt;
 seg000:0154 int     21h                             ; DOS - DOS 2+ - TERMINATE BUT STAY RESIDENT&lt;br /&gt;
 seg000:0154 start endp                              ; AL = exit code, DX = program size, in paragraphs&lt;br /&gt;
&lt;br /&gt;
::In this example (from music.com), there is code at 157h but IDA does not detect it. You can get there, type &#039;C&#039; and create a new function. The code there is the most important. HTH [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::: There were at least six common memory models.  *.COM not only assumed a single code and single data segment, it assumed their base addresses were the same.  You get four more (with one segment of static data) by 1 or more than 1 of each of code and data segments [near and far pointer distinctions].  The last allowed more than 64K of static data.&lt;br /&gt;
&lt;br /&gt;
::: XCOM most likely used one of the double-far memory models.  -- [[User:Zaimoni|Zaimoni]], 9:31 Jun 19 2008 CDT&lt;br /&gt;
&lt;br /&gt;
: &amp;quot;jmp short $+2&amp;quot; is jump over the next instruction, if the next instruction is 2 bytes.  This probably came from an if-then-else in C (it&#039;s a common idiom in translating C to assembly).  -- [[User:Zaimoni|Zaimoni]], 12:36 Jun 17 2008 CDT&lt;br /&gt;
&lt;br /&gt;
:: I can see several instances of this in music.com for simple &amp;quot;return value&amp;quot; functions. Most likely a &amp;quot;feature&amp;quot; of the compiler. If used for padding, it is equivalent to 2 nop instructions, but takes only one cycle to execute. This was before deeply pipelined processors though ;-) [[User:Seb76|Seb76]] 12:10, 17 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Yeah, I sidelined off IDA onto general assembly there :) Probably a good thing, means I&#039;m getting used to it. Sort of.&lt;br /&gt;
&lt;br /&gt;
(Holy crap. I just discovered that hitting &amp;quot;P&amp;quot; (Create Function) in the right place is all it takes to enable graph display mode and give me a vast, improbably pretty flowchart of, well, a lot of stuff. I&#039;d been wondering how to make that work.)&lt;br /&gt;
&lt;br /&gt;
Anyway! Seb, you&#039;re correct, I&#039;m working on the music TSR. I&#039;ve pretty much figured out how the entry code works, setting up an interrupt vector and terminating, which I think is decent progress for three days&#039; experience with x86 assembler. I did find a web reference to &amp;quot;jmp short $+2&amp;quot; [http://www.programmersheaven.com/mb/x86_asm/484/484/ReadMessage.aspx here], which suggests that it&#039;s &amp;quot;used to clear the cache, before going in or out of protected mode&amp;quot;. Not entirely sure what clearing the cache does, but it&#039;s good to know.&lt;br /&gt;
&lt;br /&gt;
Thanks to the both of you for your help. Seb, do you mind if I continue to ask questions here? I don&#039;t know where else it should go. Maybe we need a &amp;quot;ridiculous hacking ideas&amp;quot; section of the wiki... ;) [[User:Phasma Felis|Phasma Felis]] 01:10, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Hehe, sounds like fun. When I can find time to write a dll injector, I may add some stuff to it ;-) I&#039;d start with increasing the max number of smoke entries. (Not possible right off the bat because it&#039;s using a static array instead of malloc-ed data :( ). Other ideas: fix the proxmine bugs, or maybe the disjoint base bug. I found the piece of code and it is not a simple &amp;quot;off by one&amp;quot; issue so it cannot just be patched in place... [[User:Seb76|Seb76]] 12:22, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
::Yeah, there&#039;s a lot of bugs and odd behaviors that could be fixed by just using larger arrays somehow. The 80-item limit causes all sorts of problems, the smoke limit, the 20-armed-proxmine limit...I wouldn&#039;t mind having more than 8 bases in the late game...stuff like that. [[User:Phasma Felis|Phasma Felis]] 12:42, 18 June 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hmm. The loader thing looks wonderful, but as I&#039;m using a dos version in dosbox I&#039;m guessing I&#039;m out of luck for now? Or are you a dos wizard as well? :)&lt;br /&gt;
[[User:Knan|Knan]] 12:35, 9 July 2008 (PDT)&lt;br /&gt;
:Using a loader coupled with dll injection, there is no limit to the size of what you want to patch. You can also use higher level languages instead of plain assembler. However it is windows specific (won&#039;t work on anything pre-XP because of CreateRemoteThread usage BTW). For CD music in DOS, [[User:Phasma Felis|Phasma Felis]] may be your ticket. I&#039;m willing to help but as I said before, my knowledge of DOS is quite rusty. [[User:Seb76|Seb76]] 12:49, 9 July 2008 (PDT)&lt;br /&gt;
::It&#039;s really the equipment screen hack that looks compelling. Figure it might be unreasonably hard to do that in dos. But I can&#039;t seem to get the windows version to run at a reasonable speed these days, always far too fast. That&#039;s why I&#039;m using dosbox. Ah well, have fun modding :) [[User:Knan|Knan]] 14:14, 9 July 2008 (PDT)&lt;br /&gt;
:Well, actually I have the speed issue too. It&#039;s just that setting the laptop to max battery and scroll speed to one is enough to work around the problem ^^. The geoscape has a sleep routine to prevent too fast updates. The mecanism is not present in the tactical part. [[User:Seb76|Seb76]] 14:45, 9 July 2008 (PDT)&lt;br /&gt;
:Edit: might be your lucky day. I made a modification, it should slow down the scroll now. Can you check? [[User:Seb76|Seb76]] 15:42, 9 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Seb76, since you appear to be on a roll with the findings lately, I thought I&#039;d mention this as something to look out for if you haven&#039;t already found it. Can you track down the tables that determine a few other object properties that aren&#039;t stored in obdata.dat? I mean for properties like if it can cast light, what bullet image to use if the object is fired, whether its melee attack/mind probe/psi attacks are available for that item, etc. This would certainly allow for much more robust equipment modding. I&#039;m guessing it&#039;ll be a part of the tactical.exe portion of the game. - [[User:NKF|NKF]] 19:56, 11 July 2008 (PDT)&lt;br /&gt;
:Only flares can cast light currently. It is not a property in obdata, but a hardcoded &amp;quot;objectType=0x1B&amp;quot; check. I can hack in a piece of code to enable light for some other object types, but we&#039;ll need a way to say which ones do (can be done in the ini file but it would not be clean. Maybe we can find an unused bit in obdata.dat and arrange that...). [[User:Seb76|Seb76]] 14:12, 12 July 2008 (PDT)&lt;br /&gt;
:Edit: the routine that populates the item menu has everything almost hardcoded too: stun, mind probe, psi-amp actions, scanner and medkit are all hardcoded by object type. The rest uses known flags from obdata. [[User:Seb76|Seb76]] 15:18, 12 July 2008 (PDT)&lt;br /&gt;
:Edit2: playing with the heavy laser mod, I found the data for bullet image/sound. It is located at offset 0x6D1F8. Each entry is organized like that:&lt;br /&gt;
 struct {&lt;br /&gt;
 	short bulletVisual;&lt;br /&gt;
 	short shootSound;&lt;br /&gt;
 	short impactSound; &lt;br /&gt;
 	short impactAnimation;&lt;br /&gt;
 }&lt;br /&gt;
Entries are sorted per [[OBDATA.DAT]] ID (i.e. the first entry is for pistol, the 0x12th for heavy laser, etc.) [[User:Seb76|Seb76]] 15:31, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Ah, that&#039;ll help with some modding. Although I just remembered something that I was going to ask at the time - but completely forgot about. What controls how the weapon is displayed while in the soldier&#039;s hands? I mean, the pistols are displayed with the weapon extended in the firing position while most other weapons are held across in both hands (mimicking one/two handed items). Would this be hard coded as well in addition to the unique item actions? -[[User:NKF|NKF]] 17:43, 2 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Error running UFOExtender ==&lt;br /&gt;
&lt;br /&gt;
Hi Seb76.  I&#039;ve tried running your UFOExtender as I want to slow down the scrolling in the tactical view.  However I get the following error message:&lt;br /&gt;
&lt;br /&gt;
 C:\Games\X-com\UFO Defense\UFOLoader.exe&lt;br /&gt;
 This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.&lt;br /&gt;
&lt;br /&gt;
Any ideas what&#039;s going wrong?  I&#039;m on Win XP running Collector&#039;s Edition of UFO. --[[User:Col w|col_w]] 05:34, 12 July 2008 (PDT)&lt;br /&gt;
:Hum, looks like the error you get when there is a missing DLL. I compiled using Visual Studio 9.0 Express Edition, maybe you don&#039;t have the runtime installed? You can get it [http://www.microsoft.com/downloads/details.aspx?FamilyID=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&amp;amp;displaylang=en here]. Tools like [http://www.dependencywalker.com/ dependency walker] can help identify missing DLLs. Also what OS are you using (service pack number)? I don&#039;t have Vista here to test so it may only be running in XP SP2. Anybody can report it running on Vista? For sure it won&#039;t work on Win9x. [[User:Seb76|Seb76]] 09:02, 12 July 2008 (PDT)&lt;br /&gt;
::Yeah, visual xyz runtime dlls need to be included with things you compile with visual xyz. A common complaint when running small hacks under Wine on Linux as well, since you usually install just a very few programs on each virtual windows install, so it&#039;s unlikely some other program installs the dlls for you. [[User:Knan|Knan]] 17:08, 12 July 2008 (PDT)&lt;br /&gt;
:Especially since they made up that manifest stuff. Supposed to solved DLL hell... Well, so far it caused me more trouble than it solved issues. The funny part is when you install a new VS service pack on your build servers and have half the development team freak out because their target system won&#039;t boot the latest piece of code... [[User:Seb76|Seb76]] 18:04, 12 July 2008 (PDT)&lt;br /&gt;
Awesome, that fixed it! Now I can enjoy this classic game once again.  Love the language screen joke too :)  Many thanks --[[User:Col w|col_w]] 11:08, 12 July 2008 (PDT)&lt;br /&gt;
:My pleasure man. Glad you enjoyed it ;-) [[User:Seb76|Seb76]] 12:07, 12 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== UFOloader and Xcomutil ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb76 awesome work with this patch! Just wondering though if it would be possible to run this together with XcomUtil somehow. Thanks!&lt;br /&gt;
Oh and btw when&#039;s the TFTD version coming out? ;-)&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 14:09, 24 July 2008 (PDT)&lt;br /&gt;
:You can try this version: [[Image:UFOExtender-dev.zip ]]. I did not really have time to test it. Use the modified batch and keep me posted ;-) You&#039;ll get a crash if you activate the patch to disable the introduction movie. I checked the equipment screen patches, they were OK. TFTD will wait till I&#039;m satisfied with the XCOM version. Anyway, I&#039;m not in a disassembling frenzy right now :p [[User:Seb76|Seb76]] 15:29, 24 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Hey fast response, thanks! I tried the new version but unless I&#039;m missing something I&#039;ve been unable to get it to include f0dder&#039;s bugfix loaders. I edited the ini file&#039;s Executable= to &#039;xcloader.exe&#039;, xcomutil&#039;s included bugfix loader, and when I run UFOloader.exe directly it works fine, but when using your modified runxcomW.bat it seems to be disregarded. This was not the case with your previous version. (I actually thought of modifying runxcomW.bat like that :-) ) Can&#039;t seem to find any reason for it in runxcomW.bat.&lt;br /&gt;
:The only modification I did to this version is forward the parameters passed to the loader to the XCOM executable (geoscape is passed an argument which tells it if it needs to start from scratch, or use the data from the missdat folder). Also it cannot work with f0dder&#039;s patch the way you tried: doing so, you are patching the xcloader binary itself, which obviously is not what you want.&lt;br /&gt;
:Edit: I added a &amp;quot;Video Pitch&amp;quot; bug fix to compensate for the incompatibility of the 2 loaders ;)&lt;br /&gt;
:: also a minor note, but on a fresh xcom install the console echoes a read error on MISSDAT\saveinfo.dat (I assume this is the work of xcomutil) and minimizes Xcom to the tray. It still works fine though.&lt;br /&gt;
:: while on the subject of minor notes the &#039;Rank In Inventory=&#039; in your ini file actually has the letter O instead of the number 0 by default ;-)&lt;br /&gt;
:Hm, I guess that&#039;s what you get when experimenting stuff at 1:00 am ;-) (GMT+2 here)&lt;br /&gt;
:: edit: I decided to do some testing first by manually disabling directdraw to circumvent the bugfix loader problem. Unfortunately the game crashes as soon as I enter tactical combat (when it should go to the equipment screen) even when all features are disabled. But unless I delete the MISSDAT folder&#039;s contents the next time I run runxcomW.bat I can hear the battlescape music playing. Unfortunately the batch file seems to get stuck in an infinite loop or something as it just keeps starting xcom over and over until it finally kills my system! :-) (all my base really belong to you ;-) )&lt;br /&gt;
:I start the runxcomw.bat batch from a shell and I have to do a &amp;quot;ctrl-C&amp;quot; between phases . Maybe it is because I replied yes to &amp;quot;Do you want to see XcomUtil messages after combat?&amp;quot; &lt;br /&gt;
:: using the previous version I can enter battles just fine, but none of the UFOloader features work.&lt;br /&gt;
:Did you try disabling every XComUtil features? I don&#039;t know how extensively it modifies the main executable. Here it works with the following config: replied &amp;quot;no&amp;quot; to everything while installing XComUtil (so that only executable splitting is done), enabling only equipment screen patches with my loader, and starting via the attached batch file. I can start a new game, down a UFO, go into tactical mode and go back to the geoscape view after taking down all the aliens. Did you try renaming UFOLoader.exe into xcloader.exe? It might work [[User:Seb76|Seb76]] 12:21, 25 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Thanks for your efforts, but still no luck. I downloaded the new version and did a fresh install of xcom. Running the UFOloader without xcomutil works fine (with your directdraw patch I get a ~3sec pause everytime the game zooms in/out on an interception though, which does not occur with f0dder&#039;s patch). Running xcomutil without the UFOLoader also works fine (using ctrl+C). I then did another fresh install and put the both of &#039;em together. I enabled the equipment screen patch and the directdraw fix on UFOLoader and told xcomutil to use f0dder&#039;s loader, answering no to all other questions. Renamed UFOLoader.exe to xcloader.exe and started runxcomW.bat. The game crashed when it should go to the equipment screen. (no ctrl+C possible) Disabling the equipment screen patch and/or enabling xcomutil&#039;s messages after combat yielded the same result. :(&lt;br /&gt;
:About the 3sec pause, it may be related to the musicfix that f0dder&#039;s patch does: it runs the MCI commands in a separate thread to remove the pause due to synchronous calls (with the unpatched version, there is a &amp;quot;slight&amp;quot; pause (~0.5sec on my computer) each time the music changes). Do you have the same pause in the main menu? Also if you activate the PSX music patch (even with no CD in the tray), it should remove the pause (if it is indeed the same problem). For your crash, I haven&#039;t got a clue. Maybe it&#039;s time I release the source code so people with different configurations can try more stuff. I know there are imaginative people out there ;-) [[User:Seb76|Seb76]] 07:02, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: Ah that fixed the delays, thanks! Strangely the battlescape now works fine (using ctrl+C) as long as I don&#039;t enable the equipment patch with xcomutil... Don&#039;t know about the other fixes&amp;amp;flags. I&#039;ll do some more testing. [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:31, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: edit: quick testing reveals that it actually crashes exactly 1 times in 2, apparently regardless of what fixes are on. (though I did not yet test any xcomutil features) I guess it&#039;s probably related to one of the MISSDAT files? [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:37, 27 July 2008 (PDT)&lt;br /&gt;
:: edit2: OK here&#039;s what I have so far: It crashes if the previous mission worked. It works if it crashed on the previous mission. If I delete the contents of the MISSDAT folder it always crashes until I do a mission without xcomutil and/or without the loader. After that the normal rules apply. (i.e. next mission I play with both xcomutil&amp;amp;the loader it&#039;ll crash, as the previous mission worked, but the next one will work again) very strange :s Note that I did not yet try to play out a full mission, I always aborted on the first turn. Hope you can narrow the problem down a bit this way :-) [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 10:50, 27 July 2008 (PDT)&lt;br /&gt;
:Can you give me the address of the error when it crashes? (accessible in the crash window dialog)[[User:Seb76|Seb76]] 11:29, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: There is nothing when it crashes, not even the console remains. Unless you&#039;re talking about a log file?&lt;br /&gt;
:I was talking about the &amp;quot;a program has cause xxx to close unexpectedly&amp;quot; (or whatever it is in the US version) dialog box. This looks more like a silent crash (the worth case). I modified the loader and it looks better. I still have the &amp;quot;ctrl-C&amp;quot; issue however. [[User:Seb76|Seb76]] 12:38, 27 July 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:: &amp;lt;3 don&#039;t know what you did but the latest version works perfect! Just did 3 missions in a row, restarted xcom and did another 2 (only actually completed one of &#039;em tho :) ) without any crashes at all! *crosses fingers* I enabled all the settings I wanted in both xcomutil and the UFOLoader without problems. Thanks Seb, excellent work! ;-)&lt;br /&gt;
:: oh and the ctrl+C thing is a problem in the xcomutil batch file, it&#039;s not your program&#039;s fault. The Xcopy commands in the runxcomW.bat file are missing a /Y parameter. Here&#039;s a link to the xcomufo.com forum thread discussing it for anyone interested: [http://www.xcomufo.com/forums/index.php?showtopic=242025489]&lt;br /&gt;
:: Whew, was quite a ride... Now, where&#039;s my ammo clip fix? ^^&lt;br /&gt;
:Thanks for the feedback, it is good to know that it is possible to have this work with xcomutil. BTW, the fix I did in the test version is also in the latest package with the ammo clip hack ;-) [[User:Seb76|Seb76]] 16:16, 27 July 2008 (PDT)&lt;br /&gt;
:::After spending an hour with reading through this double discussion and trying to find the right batch file in the old archives and make the game work, I decided to put your &#039;&#039;&#039;Xcomutil + UFOloader solution&#039;&#039;&#039; here: [[Image:RunXcomW.zip]] with a simple explanation. Hope you don&#039;t mind.--[[User:Kyrub|Kyrub]] 15:43, 8 September 2008 (PDT)&lt;br /&gt;
::::Actually you don&#039;t need the modified runxcomw.bat file, the way I do it is I tell xcomutil to use f0dder&#039;s loaders and then I simply replace xcloader.exe (xcomutil&#039;s included f0dder patch) with UFOLoader.exe! [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:01, 9 September 2008 (PDT)&lt;br /&gt;
: Hey there, I&#039;ve read about this project and I&#039;m wondering if I can ran it with XComUtil but I play with the DOS versions (through DosBox) and thus use RunXCom. [[User:Hobbes|Hobbes]] 16:27, 13 September 2008 (PDT)&lt;br /&gt;
::Sorry there, this project uses modifications of the binary so it&#039;ll work only on the windows version. Why do you have to stick to the DOS version BTW? [[User:Seb76|Seb76]] 04:29, 14 September 2008 (PDT)&lt;br /&gt;
:::DOS version was the first I played and I prefer its sounds (specially the alien death cries). I also prefer the DOS bugs (some on CE are too annoying). Thanks anyway :) [[User:Hobbes|Hobbes]] 11:26, 14 September 2008 (PDT)&lt;br /&gt;
:::Hmm, something I remembered: IIRC, XComUtil splits the binary of CE into Tactical and Geoscape, in order for it to run with CE. I think I&#039;ll download your program and give it a try [[User:Hobbes|Hobbes]] 11:34, 14 September 2008 (PDT)&lt;br /&gt;
::::No success, doesn&#039;t surprise since I have the barest clue of what I should be doing. [[User:Hobbes|Hobbes]] 11:44, 14 September 2008 (PDT)&lt;br /&gt;
::There&#039;s no way it could work like that, windows binaries cannot run in DOS environment; split binaries or not. If you&#039;re pissed about a particular bug, just tell. I may be able to fix it ;-) Concerning the sounds, I don&#039;t know exactly what is the problem about CE version. If someone can give some details, I may have a look at that too. [[User:Seb76|Seb76]] 12:09, 14 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Heavy Laser Mod ==&lt;br /&gt;
&lt;br /&gt;
Hey Seb, I&#039;ve been trying the new heavy laser. It&#039;s a cool idea, adds some new options during battle :) But I think currently the full auto option is overpowered. I hardly use the burst mode at all. I&#039;d suggest lowering the accuracy and/or (if possible) reducing the amount of shots fired? Currently when I see a single alien I use full auto (can&#039;t miss with 10 shots), when I see a terror unit I use full auto (2x2 + 10 shots = dead terror unit :) ), and when I see a group of aliens I also use full auto (10 shots &amp;gt; 5 shots). A few units still standing? Bring on the next heavy laser.&lt;br /&gt;
Also because these new fire modes don&#039;t mind line of fire restrictions cover won&#039;t help aliens at all (unless the cover is strong enough to withstand HL power). Just use full auto to blast through any house that&#039;s in the way and in most cases it&#039;ll still kill the alien as well. (do need to make sure no agents/civilians are standing in the line of fire though) &lt;br /&gt;
Should note that ATM I&#039;m still only dealing with sectoids and the occasional floater. Will let you know how it fares against the later races.&lt;br /&gt;
[[User:J&#039;ordos|J&amp;amp;#39;ordos]] 05:44, 31 August 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
OK, it&#039;s cool but it really is overpowered. Accuracy must be lower in Auto modes than in Snap, that&#039;s basic in the game. If you assume the Heavy Laser is somehow better optimised for autofire than the Laser Rifle, and set the TUs for normal Auto at say 30% (vs 34% with Laser Rifle) that would let you get off 3 bursts, which would be better. (I could live with the idea that you can also only fire 3 snap shots). Then your &amp;quot;Full Auto&amp;quot; mode would be 100% TUs for 10 rounds and your &amp;quot;Burst Mode&amp;quot; could be 50% TUs for 5 rounds, and that would be consistent with the &#039;standard&#039; Auto mode. But the accuracy per shot needs to be much lower. I would suggest the base Accuracy per shot is reduced to 33% (one third less than Snap, similar to a Laser Rifle). You are still making the weapon MUCH more effective this way. [[User:Spike|Spike]] 12:47, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: On further analysis, even this is too powerful. The stats I just cited would give firepower only a fraction less than a Heavy Plasma - with much lower cost, unlimited ammo and easier-to-reach technology. That&#039;s not balanced. Unfortunately, you can&#039;t really go above 6 shots per turn without unbalancing the game, as none of the 2 handed weapons fire more than 6 shots/turn. So the TUs for Auto need to be 34%-40%, and you can&#039;t really have it fire more than 6 shots per turn even in the Full Auto mode. I would suggest Auto = 35%, Burst = 75%, Full Auto = 80%. Burst and Full Auto only fire 6 shots. Burst Mode fires 2 shots each at 2 waypoints, and a further 2 rounds spread in between the 2 waypoints. Full Auto fires one each at 2 waypoints and 4 shots spread between the waypoints. And maybe the Burst Mode should be the more expensive one as it is more &#039;concentrated&#039; fire. The reason you can&#039;t really exceed 6 shots per turn, even if you reduce the accuracy drastically, is because otherwise you create a super-effective shock weapon at point blank range (and a super effective terrain-clearing weapon). Somehow the &#039;shock power&#039; in particular seems inappropriate for something as clumsy as a Heavy Laser. To rationalise it, think of it this way - it&#039;s not a machinegun, it&#039;s an energy weapon. The &#039;cyclic rate of fire&#039; is limited by the energy circuitry as much as anything else. So squeezing six shots per turn out rather than 3 (the limit with Snap fire) is a pretty good improvement. With the Auto Mode I&#039;ve suggested here, you have still double the &#039;shock&#039; firepower of the Heavy Laser at short range, and increased its firepower by two thirds at longer ranges. Not a bad way to put some life back into a weapon that otherwise has very limited uses. Probably in the &#039;Area&#039; modes (Burst / Full Auto) the Accuracy should drop, say to 25% (vs 33% in standard Auto). [[User:Spike|Spike]] 13:48, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Ok I finally shut down my NeXCom Workstation and turned out the lights in the Bean Counter&#039;s Department at X-Com HQ - and headed down to the Armoury. I checked out one of the new, experimental Super Heavy Auto Lasers and ducked onto an Avenger heading into a hot LZ. &lt;br /&gt;
&lt;br /&gt;
Seb, let me tell, you, it was SPECTACULAR! You are the Ayatollah of Rock-and-Rolla! I was like Jesse Ventura in Predator, carving up the jungle with his minigun. I love your gun. It is too cool. It must not be nerfed. So I have another suggestion for your coding skillz: &lt;br /&gt;
&lt;br /&gt;
See if you can get the &amp;quot;hidden item&amp;quot;, Gatling Laser, working. Add your Super Heavy Auto Laser as a new item, using the Gatling Laser image and OBDATA entry. I don&#039;t know if you can add a new Research option or a new Manufacturing option. If you can&#039;t, maybe you can offer it to Purchase (once Heavy Laser is researched, or perhaps Laser Cannon). Given the power of the weapon (as spec&#039;d above), the cost to buy or manufacture should be similar to a Heavy Plasma: around a total cost of $164K to manufacture (including &#039;&#039;all&#039;&#039; costs) or around $225K to buy. As a quick hack, for the time being, if you are still using the Heavy Laser object for the Super Heavy Auto Laser (with 10 shot Full Auto), increase the manufacturing costs and buy/sell prices to roughly the same as the Heavy Plasma. [[User:Spike|Spike]] 13:29, 3 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
:Thanks for the nice feedback! The initial idea for this mod came when watching a Laser Squad speedrun (never played the game myself) and seeing the guy waste several baddies with one auto-shot sweep (in this game you can also select the number of shots when auto-firing). I chose to try a modification of the heavy laser for 2 reasons: everybody agrees to say that the default one sucks and second, since it uses no ammunition there is no need to handle out-of-ammo conditions. I personally see this weapon more as a recipe for new doors than a direct way to kill aliens. Several things could nerf it a bit but I didn&#039;t try them yet:&lt;br /&gt;
:*make accuracy lower and lower during a burst (to account for the laser lens deformation caused by overheating). This would restore the advantage of cover and make people thing twice before firing when a friendly unit stands in front&lt;br /&gt;
:*reduce accuracy even further when shooting out of sight (this was mentionned in another post)&lt;br /&gt;
:*change the damage model and reduce the probability that terrain is destroyed when shot&lt;br /&gt;
:*have a cooldown period where the weapon is not useable (not sure if it&#039;s feasible though)&lt;br /&gt;
&lt;br /&gt;
::Yeah cooldown periods! Then restore functionality of the melee HIT command. Hey it worked for incubation: time is running out. ^^ [[User:J&#039;ordos|J&amp;amp;#39;ordos]] 16:27, 7 September 2008 (PDT)&lt;br /&gt;
:::Hm, I already cannibalized the unused &amp;quot;open&amp;quot; and &amp;quot;close&amp;quot; actions for the heavy laser mod, there is no more room for a new &amp;quot;hit&amp;quot; command. Unless... ;-) [[User:Seb76|Seb76]] 11:28, 8 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Wish List please please please ==&lt;br /&gt;
&lt;br /&gt;
Seb: Wow! I can&#039;t believe what you&#039;ve done with UFO Extender! I wish I could try it but I can&#039;t get XCom working on my current PC. &lt;br /&gt;
&lt;br /&gt;
Can I ask what algorithm you used for Multiple Radar? The algorithm in my BaseFixer.py Python script is actually much better than the fairly lame one described on my User page.&lt;br /&gt;
:As I said, I used about the same as in you BaseFixer script:&lt;br /&gt;
 float shortDetection=pow(0.9f,smallRadars);&lt;br /&gt;
 float largeDetection=pow(0.8f,largeRadars);&lt;br /&gt;
 &lt;br /&gt;
 *(short *)(&amp;amp;base[0x10])=(short)((1.0-shortDetection*largeDetection)*100.0);&lt;br /&gt;
 *(short *)(&amp;amp;base[0x12])=(short)((1.0-largeDetection)*100.0);&lt;br /&gt;
:However I keep the computed value even for the one small/one big radar combo ;-) [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Now then, requests - could we please have:&lt;br /&gt;
&lt;br /&gt;
* Add 1-2 UFO Navigation to the haul after a successful Alien Base Assault. &lt;br /&gt;
:The game actually has specific code to remove these from the recovered items, it&#039;s just a matter of bypassing it. Next version will have an option to do so. [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
* Random chance (1-2%, and only for Scouts) per mission that a UFO accidentally crashes - like the &amp;quot;Roswell Incident&amp;quot;. Crash site would be automatically detected &amp;amp; UFO would have random damage. &lt;br /&gt;
:Sounds like a nice idea. I&#039;m working on it but I still have some crashes, and the routine to check if a ship is over water does not seem to work properly :( [[User:Seb76|Seb76]] 07:19, 7 September 2008 (PDT)&lt;br /&gt;
:Update: feature almost complete, time to bake a new version ;-)&lt;br /&gt;
&lt;br /&gt;
:[[Image:Roswell.png]]&lt;br /&gt;
&lt;br /&gt;
:There are probably some bugs lurking (the most likely problem would be unfreed CRAFT.DAT entries), but I don&#039;t think I&#039;ll change the code much now. [[User:Seb76|Seb76]] 07:47, 13 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Both of the above are totally pointless, apart from helping with my silly &amp;quot;No Detection&amp;quot; variant game, and actually making it possible to win. &lt;br /&gt;
&lt;br /&gt;
* Allow human side soldiers to reaction fire in their currently saved Reserved Fire mode - eg to take Autofire or Aimed reaction shots. That would be very, very cool. It would also be a balanced trade-off, if these Reacting soldiers were not allowed to &#039;switch&#039; to Snap fire after they no longer have the TUs left to use their Reserved mode. &lt;br /&gt;
&lt;br /&gt;
* Implement your &#039;Area Fire&#039; (as per Heavy Laser) for &#039;&#039;&#039;all&#039;&#039;&#039; large automatic weapons (AutoCannon, Heavy Plasma) or maybe just for all automatic weapons, period. It would be very handy for Autocannon bursts to cover a wider area, firing a narrow burst is often not what you want at all in many tactical situations. There might be a problem implementing this for Plasma weapons, if you couldn&#039;t persuade the Aliens&#039; AI to use the Area modes - it wouldn&#039;t be fair. &lt;br /&gt;
&lt;br /&gt;
I can&#039;t think of much else, as you&#039;ve already fixed everything!&lt;br /&gt;
&lt;br /&gt;
On the Heavy Laser Mod, my initial thoughts are that it is fun and cool but too powerful. The overall shots per turn should not be more than normal auto mode. The accuracy should be lower than normal auto. Having the &#039;sweep&#039; effect is advantage enough. I&#039;ll have a think and suggest some numbers. [[User:Spike|Spike]] 11:41, 1 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
: Got an idea while I was at work today that I thought I&#039;d throw onto the wish list. Some means to completely fast-forward the base defense screen. Either by making all the firing sequences happen in an instant, or completely skip the screen altogether. I always advise against making impenetrable bases if only to preserve your sanity. I mean you eventually get sick of being interrupted to watch the defense module firing screen for the umpteenth time. If you never got the interruptions then an impenetrable base would be quite satisfactory. You shouldn&#039;t be getting any points for a failed base attack so you won&#039;t be gaining from it. About the only problem would be when an undefended base gets destroyed, unless you can make a dialog box pop up to announce it. -[[User:NKF|NKF]] 03:10, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Warm Grenades ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to have a Mod where grenades / HE  explode a set number of half-turns after you drop/place them. &lt;br /&gt;
&lt;br /&gt;
This could be implemented by an extra bit of logic that increments the &amp;quot;Turn When I Will Explode&amp;quot; field by +2 if the grenade is being held/worn when the Explode check happens. &lt;br /&gt;
&lt;br /&gt;
For me this is a more natural way for grenades to work: set the fuse, then the fuse only starts when you release the spring or set the HE pack in position. Certainly hand grenades should behave this way. I guess people could argue that HE packs should behave in the standard way. In which case, you could check the weapon type and use different logic for HE.  &lt;br /&gt;
&lt;br /&gt;
Hopefully the Alien AI would not be confused by any of these changes. I suspect the AI cheats anyway? Or always sets to 0 and throws right away? [[User:Spike|Spike]] 02:00, 2 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
== Facility maintenance cost bug ==&lt;br /&gt;
&lt;br /&gt;
Could you fix that? [[User:Spike|Spike]] 16:15, 3 September 2008 (PDT)&lt;br /&gt;
:I&#039;m a bit confused about this one. Some says that the fund graph is OK but not the amount of money taken. I had a look at the code and found that what is shown on the graphs is exactly the same amount as removed (the graph data is updated at the same place and the computation is done once for both). I think I remember also someone saying that the bug does not exist at all... Can someone clarify? [[User:Seb76|Seb76]] 02:31, 15 September 2008 (PDT)&lt;br /&gt;
::The graph is ok and the amount of money taken is ok (tested). What is wrong is the maintenance displayed in the &#039;Base overview&#039; screen (in every respective base you go to &#039;overview&#039; and something like &#039;maintenance&#039;). The wrong way is very well described here [[Base_Facilities#Displayed_Base_Maintenance_Cost_Bug]], I think you will guess what exactly is wrong in the code. --[[User:Kyrub|Kyrub]] 15:34, 17 September 2008 (PDT)&lt;br /&gt;
:Thanks, I found the code and it is indeed completely f*cked up. I&#039;ll try a fix tomorrow. [[User:Seb76|Seb76]] 16:53, 17 September 2008 (PDT)&lt;br /&gt;
:Edit: Done. What&#039;s next? ;-) [[User:Seb76|Seb76]] 01:15, 18 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
Just how bad was the mess up? Curios minds demand to know! By the way, my mind was wandering while at the office and one thing came to mind to add to your already useful inventory display: Armed grenade status. Ever drop one you&#039;ve just armed and lose it in a pile of other unarmed grenades on the ground? &lt;br /&gt;
:Well, from the look of it, I think they were trying to compute the maintenance cost using an array. Obviously something was wrong.&lt;br /&gt;
:*they first try to clear an array of 0x11 entries at the begining of the function (there are 0x11 base elements types, hangar count as 1). Note that there is already a bug here and the array is not cleared as expected, only the first entry is cleared 0x11 times...&lt;br /&gt;
 mov     esi, 11h&lt;br /&gt;
 ...&lt;br /&gt;
 loc_44004C:&lt;br /&gt;
 dec     esi&lt;br /&gt;
 mov     word ptr [esp+3Ch+elementsArray], 0&lt;br /&gt;
 jnz     short loc_44004C&lt;br /&gt;
:*ecx is initialized to point to the maintenance cost data (nothing wrong here)&lt;br /&gt;
 mov     ecx, offset baseElements.maintenance&lt;br /&gt;
:*then they loop on each base element, but the inner loop is nonsense (at this point ax contains the base element type. edi is the total maintenance cost):&lt;br /&gt;
 movsx   eax, ax&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     eax, [eax+eax*4]&lt;br /&gt;
 lea     edi, [edi+eax*8]                        ;totalMaintenaceCost+=elementMaintenanceCost*1000&lt;br /&gt;
:we see that they increment the array element, but the content of the array is discarded and the maintenance cost (edi) is computed simply from [ecx].&lt;br /&gt;
:*then after each row, we have this:&lt;br /&gt;
 add     ecx, 10h&lt;br /&gt;
:which explains why the cost changes for each row.&lt;br /&gt;
:I don&#039;t see what kind of C code could produce such disassembly; maybe there is a bug in the compiler,at least the address calculation should have been removed (optimized out).&lt;br /&gt;
:The fix required two patches:&lt;br /&gt;
:*remove the incrementing of ecx for each row&lt;br /&gt;
 char nop[]={0x90,0x90,0x90};&lt;br /&gt;
 PatchInPlace(0x44066E,nop,3);&lt;br /&gt;
:*make a working inner loop:&lt;br /&gt;
 char patch[]={&lt;br /&gt;
   0x03, 0xc0,                  // add eax,eax&lt;br /&gt;
   0x8a, 0x04, 0xc1,            // mov al, BYTE PTR [ecx+eax*8] ;get the maintenance cost for the *specific* base element&lt;br /&gt;
   0x0f, 0xb6, 0xc0,            // movzx eax, al&lt;br /&gt;
   0x90, 0x90, 0x90, 0x90, 0x90 // nop the remaining&lt;br /&gt;
 };&lt;br /&gt;
 PatchInPlace(0x440651,patch,13);&lt;br /&gt;
:this takes care of the nonsense code&lt;br /&gt;
 inc     word ptr [esp+eax*2+44h+elementsArray]  ;increment the array entry corresponding to the base element type&lt;br /&gt;
 lea     eax, [esp+eax*2+44h+elementsArray]      ;get the address of the array entry we just incremented&lt;br /&gt;
 xor     eax, eax                                ;discard the address we just computed (!)&lt;br /&gt;
 mov     al, [ecx]                               ;get the maintenance cost from ecx; the element type is not used here (!)&lt;br /&gt;
&lt;br /&gt;
Is it possible to include an indicator on the end of the grenade&#039;s name string to show whether the grenade has been armed? Or perhaps even show how many grenade ticks are left to go? &lt;br /&gt;
:Hmm, I&#039;ll see if I can find something&lt;br /&gt;
&lt;br /&gt;
Would it be possible to introduce some keyboard shortcuts for simple tasks? -[[User:NKF|NKF]] 00:48, 19 September 2008 (PDT)&lt;br /&gt;
:such as? [[User:Seb76|Seb76]] 02:52, 19 September 2008 (PDT)&lt;br /&gt;
&lt;br /&gt;
First off have to say that this is outstanding work Seb, sincere thanks for what you have done here. I have started playing this again after years thanks to your hard work. I was going to suggest the old smoke limit problem but before I could you fixed it!! I have some other ideas, I know there are a lot but I thought I would throw them in anyway. Don’t mind if you think there all rubbish, you’ve done loads already. &lt;br /&gt;
&lt;br /&gt;
BTW is there a separate loader with your new Laser weapon? Can’t see it listed in the extender file (not researched it in my current game yet).&lt;br /&gt;
&lt;br /&gt;
A suggestion for a mod would be the following; I understand that if you defeat an alien assault on your base with base defense measures, then the aliens will continue to attack that base with more battleships until defeated inside the base (they then have to ‘find’ your base again before launching another attack). Can this be altered so that if their battleship is destroyed then they have to find your base again before dispatching anther battleship? Or a chance that they have to find it again. &lt;br /&gt;
&lt;br /&gt;
Another suggestion is that I also understand that 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;
If you psi control a human 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;
&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;
&lt;br /&gt;
80 item bug on base defense mission&lt;br /&gt;
&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;
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;
This one is way out there. Alien v Alien battles outwith main game, just ramdom battlescape maps. Sectoid and their terrorists against Floters and theirs etc. One side human controlled the other computer . Choice of ships involved etc. &lt;br /&gt;
&lt;br /&gt;
Any plans to work on Terror from the deep? &lt;br /&gt;
&lt;br /&gt;
Cheers.&lt;/div&gt;</summary>
		<author><name>Mal310</name></author>
	</entry>
</feed>