User talk:Xusilak

From UFOpaedia
Jump to navigation Jump to search

Feel free to discuss anything related to my projects here! --Xusilak 15:42, 24 March 2010 (EDT)

I'm smiling for a reason.

TSIA ;) - Amphibious Tentaculat 18:45, 24 March 2010 (EDT)

Potential Projects

Good set of potential projects, I like! Spike 19:28, 24 March 2010 (EDT)

Especially looking forward to the TFTD patches! By the way, xcomutil already allows you to set the difficulty value to any number you wish. J'ordos 08:40, 2 April 2010 (EDT)

Interesting; I didn't know that. However, my experiments with high difficulty levels showed that exceeding the defaults will break certain aspects of the game, like spawning arbitrary numbers of aliens in missions. My primary goal there is to make those difficulty levels fully functional, with expected results for spawn numbers, capping overflows, and so on. My secondary goal is to make it easier to use those difficulty levels by adding the Advanced Difficulty configuration to the main difficulty screen. Thanks for the tip, though.
As for TFTD, I have a few usable patches implemented already, but I think I'll leave it up to Seb to compile and release it with his current patcher, if he wants to. Seb, if you happen to see this, let me know how you feel about the TFTD patches I'm working on. I'd prefer if you compile and release it alongside the X-COM patcher, to ensure compatibility, as I use VS2010 RC for developing right now. Either way, it'll be a while before that happens, as I'm working on testing and adding more functionality. Thanks! --Xusilak 13:18, 2 April 2010 (EDT)
I do not work on TFTD mainly for 2 reasons: first, I don't play it; second, redoing the same things all over again is not that much interesting to me. If you want to make it happen though, I'll gladly take the opportunity to make that available for everyone in the loader. Also if you need some help analysing some bits of asm don't hesitate to ask; I'll help if I can. Good luck and have fun! Seb76 15:46, 2 April 2010 (EDT)
OK, that's fine. I don't know how much work I'll get done on TFTD, but I do want to get it to the point where all of the basic UI upgrades are done. Since you're not interested in working on it, I may just release it independently as a separate project on my own user page here, if you don't mind. That way it won't interfere with your other work. I will credit you as the main developer of it, of course, and continue to contribute original X-COM patches to UFOExtender as I develop them. --Xusilak 17:33, 2 April 2010 (EDT)
Also, for clarity, I'll provide the source code for the TFTD patcher when I start releasing them. --Xusilak 17:38, 2 April 2010 (EDT)

TFTD Database

Maybe you could publish the TFTD patch database on this site, as it evolves. Initially it will have a lot of gaps, but if you publish the gaps people will know what to look for. You will probably get volunteers who will hunt down the patches for the things that they are particularly interested in. The work will go faster with collaboration. Spike 05:19, 3 April 2010 (EDT)

For now, I think it will go faster if I focus on it. I'm already about 40% done naming the variables and functions that are already known from X-COM, thanks to Seb. Once I've gotten that bit done (should be within a week or so) and gotten the patcher itself to a useful state, I'll go ahead and publish both the IDA database and the patcher source code here. --Xusilak 11:24, 3 April 2010 (EDT)

Any reason why IDA crashes when I load the .idc file? It says: Attempt to call a database related function without a database. Do I need a plugin? Using v5.2 J'ordos 17:23, 28 April 2010 (EDT)

never mind just realized I need to add this over the disassembled file, right? J'ordos 17:26, 28 April 2010 (EDT)
Yep. Disassemble the TFTD CE exe, then load the IDC on top of it. --Xusilak 19:09, 28 April 2010 (EDT)

Hi Xusilak, Where can I get ready version of your TFTD mod? I don't know how .idc file in .exe file. Whether can to get ready version for so illiterate users such me? ))

The IDC file is a database you can use with the IDA pro disassembler. There is no way to turn it in a program like seb's loader. You will have to wait until Xusilak finishes that. On that note, how is progress Xusilak? :) J'ordos 17:01, 8 May 2010 (EDT)
I'll have to apologize. I've had a combination of sickness and other things coming up lately that have kept me from working on it as much as I'd like. The current progress is largely still as is listed on my page. Sorry for the long delay. If I can't get more patches translated for it soon, I'll go ahead and just polish it up and release it in its current form, then work on it as I have the time. --Xusilak 18:30, 9 May 2010 (EDT)
I'm already happy knowing you're still working on it! J'ordos 21:45, 11 May 2010 (EDT)

Hi Xusilak. I wish a soon convalescence to you. I'll wait surely until you 'll finish so useful work. I hope that you 'll draw attention on my other questions (about shipping route,research tree ...)when you 'll have 10 free minutes... Only you can help me in it... I would be greatly thanks.


Hello, first of all, i would like to say that you guys (you and Seb) are doing great job :)

I've found some project for Dungeon Keeper, which can be considered similar to what you're doing, but it's done quite different way (i believe). If i understand correctly, you're somehow altering x-com code in memory after launching it? Author of keeperfx is doing it such way (qoute from website):

Instead, I've learned binary formats of EXE and DLL files, and modified the Dungeon Keeper executable file to become a DLL. With my new DLL, I was able to create very simple executable file which may be used as complete code to run the game. Now I'm incrementally rewriting DK; functions which are not yet rewritten are called from the DLL, so the project functions like whole game, even tho it wasn't completely rewritten yet.

Here's instruction how to change exe to dll:

I wonder if such way could be useful (and possible) for x-com (tftd) extender? Would it be easier to add new things? Would it allow to gradually rewrite whole game from scratch? What do you think? --Michal 13:11, 13 April 2010 (EDT)

Interesting idea. Thanks for mentioning that. What we're doing now is similar, but essentially the inverse of this. We're using DLL injection to replace X-COM functions and code at run-time. So, we have the game using its normal EXE and the patcher using a DLL. His method is focused specifically on rewriting the game, but in an incremental way that doesn't require him to go for years without seeing any results. That method would be very poor for doing the kind of patching we're doing now, because we'd have to rewrite all of the core loop code in X-COM before we could get to a point where we could start implementing our new functionality. This is because the replacement game EXE can't simply inject functions at certain points in the original game DLL's function calls, at least not without doing what we do now (patching memory directly). In the end, there's no particular benefit to doing small patches through that EXE-based method. It would be an advantage if we were trying to rewrite the game entirely, with an emphasis on rewriting the core code and working our way up, but that's not what we're doing; if we did want to do that, it could be done through the DLL injection method painlessly, and then converted to its own EXE once we finished rewriting the game. It is unlikely that we'll try to rewrite the game, however, because it would be an extremely lengthy and arduous task; if I were doing it alone, it would take years. Our current technique of simply extending X-COM's existing code produces much more immediate and beneficial results.
Thanks again for posting a link to this, though. It might be useful to me in the future. --Xusilak 19:33, 13 April 2010 (EDT)

X-COM bugs that TFTD inherits

Since I'm going to be translating patches from X-COM to TFTD now, I could use some information on which bugs need to be fixed in TFTD that existed in X-COM. If anyone has such information, I'd greatly appreciate it, as it would save me the effort of testing each bug. In particular, a list of which of Seb's bug-fix patches could still usefully apply to TFTD would be awesome. Note that I don't need information on TFTD-specific bugs, just bugs that TFTD inherits from X-COM. Thanks in advance! --Xusilak 20:20, 15 April 2010 (EDT)

Scroll speed in tactical mode is reduced. It is too fast for certain hardware configurations
Phantom radar bug fixed. Radar coverage is updated when facilities are destructed
Pay for dirt bug removed. The cause was a funny one ^_^
If you're tired of having to reselect your TU reserve mode at the begining of each turn, then the "Save Reserve Mode" patch is for you :)
Base disjoint bug
Radar stacking enabled. Credits go to Spike for I used something close to his formula.
Vertical waypoints blaster bomb bug
Garbled video output due to ignored pitch
Problem with last salvo during dogfights. The ship won't retreat when running out of ammo, allowing the last salvo to hit. Not the perfect solution, but you may still find this useful.
Armed state issues with proximity grenades when reloading a game. Should also fix "What just exploded?"
Experience issue with proximity grenades. The thrower now gets the experience, not the poor alien that blows up...
Refueling issue when transfered crafts arrive (enabled by default if you use the "Crafts Always Ready" mod)
Elerium fueled crafts bug when fuel level is 50%
Displayed Base Maintenance Cost Bug
Door jam
Robotic Manufacturing / Cybernetic Laboratories. You cannot get more than 255 engineers/scientists, buying more will just result in them being lost during transfer...
Funky fire fix: Fire/stun damage applied only at the end of the turn. Maximum fire damage increased from 5 to 10 to compensate
Hostile Civilians fix. Not really tested, may fix some mind control abuses.
Animations Speed: Reduce the animation speed of cursors and smoke/fire.
Almost all bugs were transferred over AFAIK :) can't remember if the game did remember the TU reserve mode though. J'ordos 10:22, 20 April 2010 (EDT)
Thanks! I really appreciate this list; it should save me a good deal of time. Hopefully I'll be able to get most of them fixed by the end of the month. --Xusilak 13:14, 20 April 2010 (EDT)


Hi, Xusilak

Firstly, I Am so-so so sorry that I reverted your file acidentally. I don't know English good, pressed acidentally and 'llnot know undo it. I am sorry for disturbance I informed that you are great specialist in TFTD executable. My great respect for you for work, which you are doing.

At discussion file Missions.dat (XCOM-EU) Seb 76 posted this formules: After a shootdown, the next UFO for that mission is delayed between 1 and ~9 days ( the formula is 48+RAND()*400 half hours ). A retaliation mission will be scheduled if RAND()*100 < 4*(24-difficultyLevel).

   If RAND()*100 < (50-6*difficultyLevel), the retaliation mission will use the same zone as the shot UFO, else it'll be the zone containing the base the craft in coming from.

At first, Formule 2 and 3 probably contins mistake. formule 'll have to have symbol > instead symbol <. Otherwise retaliation mission activates more often on Beginner diificulty than Superhuman difficulty. Is is strange. I ask generously to you to check this 3 formules in TFTD. Is these same or not? and would check indicated me probably mistake.

Thank you for this help very great

Research tree in executable

Do you know location (starting offset) of research tree in TFTD? and how much entries it contains ? how much rows it contains?

Or at least where are located requirements for technologies? (for example - vibro blade, aqua plastics)

I have found already research tree in TFTD (with Seb76's help)... It begins at address 448500 (hex) and I can some changes it now. Though my knowledge's assembler isn't great.

Terror ship route and alien artefact site

Maybe do you know where locate offset responsible for probability of appearing at 1-st day of month these events?

If you would be know it, I didn't know how I could thank you for so valuable help to me