Jump to content

Steam Versions

From UFOpaedia
Revision as of 01:10, 7 October 2008 by Spike (talk | contribs) (Steam TFTD version changed from Win CE to DOS, now works fine with XComUtil)

General Notes on Steam Distribution of XCom Series Games

Take Two's 2K division is the current owner of all the XCom series of games.

The games are available via Valve's Steam service, at http://store.steampowered.com. (The exact link is currently on the main page of this UFOPaedia.)

The cost is $4.99 per game, or the entire collection of 5 games for $14.99.

In the Steam distribution, the XCom executables and game files are found in e.g. "C:\Program Files\Steam\steamapps\common\x-com terror from the deep" and "C:\Program Files\Steam\steamapps\common\xcom ufo defense\XCOM".

XCom 1 (UFO Defense / Enemy Unknown) is the DOS 1.4 version, from strategycore.com.

XCom 2 TFTD is the Windows Collector's Edition (CE), aka Gold Edition.

CORRECTION Steam have now "updated" it to the DOS version sometimes called "TFTD Beta".

Steam provides anti-cheat functionality to prevent modification of the games distributed via Steam. However this fortunately does not seem to be implemented for the XCom series. The game files can be edited using standard tools such as TFTD Hack and the command line version of XComUtil. The changes are then picked up in the game.

It is possible to execute the TFTD game directly, without using the Steam launcher, by running the "*... patched.exe" version. An error is thrown, but the game does start. This suggests it might be possible to use Seb76's loader, or XComUtil in RunXComW batch mode - maybe.

The Steam distributions incorporate the "fanmade" F0dder loader.

XComUtil

Summary

XCom 1 works fine. Just edit dosbox.conf autoexec, after you install using xcusetup. Slight visibility problems if you use the inter-executable actions such as xcomutil messages or autocombat.

TFTD is trickier. XCUSETUP must be modified in order to run. Xcusetup creates the split and patched binaries, but they don't get used. The game data files are modified. RUNXCOMW can't be used, meaning a lot of XComUtil's automatic continuing functions can't be used. The functions that only modify game files could be run manually from a command line. Some more investigation is needed to see how to use the "auto-equip before each battle" function of runxcomw, it's not very clear how that works.

CORRECTION now Steam have changed to the DOS version, xcusetup installs fine and you can use all xcomutil functionality by modifying dosbox.conf, as described for XCOM 1

XCom 1

Copy xcomutil files into the XCOM subdirectory of the "xcom ufo defense" installation directory. Open a command window in the XCOM subdirectory and run XCUSETUP. It should work normally.

Then edit the autoexec section of dosbox.conf, replacing:

call ufocd.bat

with

call runxcom.bat

Launching XCom 1 from Steam should now provide all the normal RunXCom features.

There may be issues if runxcom needs user input during the black screen between Battlescape and Geoscape. Just hit enter. If that doesn't work, hit ctrl-C. If you want to see what the prompt was, check xcomutil.log.


TFTD

CORRECTION This is now out of date, see Summary section above.

For the Steam version of TFTD, in order to get XCUSETUP to run at all, it is necessary to comment out this line in xcusetup.bat:

xcomutil ufoexe shp:cfg map:cfg wrt XcuSetup

replacing it with

xcomutil ufoexe shp:cfg wrt XcuSetup


You can probably live without the changes that "map:cfg" makes.

The Steam distribution already comes with a version of f0dder's loader The Steam version comes with a patch.dll file. XCUSetup unconditionally deletes this file (thinking it is an earlier version of its own patch). However it is binary identical to the file that XCUSetup installs, so no harm is done.


XComUtil is able to create patched split executables (geoscape.exe and tactical.exe), but they are not launched by Steam. This also means that RUNXCOMW.BAT will not work. But XCUSETUP will make changes to the games data files. Any mods that are based on game data files will work. Those mods which are based on changing the executables will not work. The automatic fixes which are performed before and after every battle by RUNXCOMW.BAT, will not work.


Workarounds

Until there is a way to force Steam TFTD to use the split patched executables, and therefore to be able to use RunXComW.bat, to get more functionality out of XComUtil with TFTD Steam you need to run xcomutil commands manually. For example


XCOMUTIL GAME_1 REN:KILLS SRT WRT
(Add stat strings to aquanaut names for stats, rank and kills. Sort aquanauts by rank order. Write file)

This simulates runxcomw.bat's automatic appending of stat strings to aquanaut names, and sorting of aquanauts. You would then need to load saved game #1, to continue playing with the renamed and sorted aquanauts.

See XComUtil.txt for a full description of the command line options, including a table of which options depend on modifying the executable. There is also a good description of the options in the UFOPaedia article on XcomUtil.