Xcom 2 How To Mod
Contents.OverviewFirst of all, it is not possible to modify XCOM:Enemy Unknown 2012 (XCOM:EU 2012) for any game console. Only computer versions can install mods.If you are getting 'application error 0xc0000142', you have a so-called 'non Steam' (as in 'cracked') version of the game. (Even the version sold on CD requires a Steam account and internet connection.) The Nexus site rules prohibit anything supporting piracy or help with this problem. If you believe you have a legitimate Steam version of the game, then this is indicating a corrupted file. Use the Steam 'verify local files' option in the Library section of the Steam Console and it should replace the affected file.Note that the initial release is called 'Enemy Unknown' (EU). The later expansion release (as a 'DownLoadable Content' or 'DLC' addon) is known as 'Enemy Within' (EW).
So I'm on mac and I've just managed to fix it. The problem was steam downloading my mods to a generic steamworkshop folder and not the mods folder within the actual game. I created a 'mods' folder (only all lower case works) then copied the relevant Xcom 2 mods from the generic workshop folder over. So, now that you know how to apply XCOM 2 mods, here are the 20 best XCOM 2 mods you should try to enhance the gameplay: 1. Stop Wasting My Time. In fast paced games, some irregular breaks really ruin the rhythm of the game. XCOM 2 has some of these breaks in the game. These Breaks occur between shots, after killing someone or running for cover.
Mods are written for specific releases, and are not generally interchangeable. EW mods can not be expected to work with EU, and vice versa. The popular 'Long War' (LW) mod is not an official release from Firaxis, but is so extensive a reworking of the game it is regarded by many as another (unofficial) expansion.
'Long War' is not compatible with other mods that are not specifically written for use with it, even if they work with the vanilla version of the game.XCOM:EU 2012 is not (at this time: April 2013) considered a 'modder friendly' environment. Despite the presence of various configuration files, for the most part the ones you would expect to be able to 'tweak' to have an effect are not actively used by the game itself by default, except in a very limited set of instances.
The vast majority of changes have to be made by altering the hex code of the game executable file, either directly or indirectly. (More on this is the Details section.) As a consequence, every time a patch to the game is released, or Steam 'verifies' the game files, any changes by mods installed will be removed and vanilla files restored, and eventually you will find it necessary to reapply all your desired mods.
Plan ahead for this and develop packages for any manual changes you make.Fortunately, some techniques and tools have been developed to make installing mods more accessible to those who do not wish to directly make the changes themselves. However, the process may require the use of several tools and is not as easy or straight forward as with other games. Take the time to educate yourself first.At this time there is no direct support for modding provided by Firaxis, such as a Software Development Kit (SDK) or a formal mechanism for applying mods. Mod makers have to tease out the information from the hex code of the game, and despite great strides, it is a long and laborious process.
Fortunately the game uses the Unreal Game Engine, which is licensed from a third party and used by a number of other games. Hence a fair amount of general game engine information is available as a foundation.
The page has the majority of these third-party resources. Some others may be found on the page. The 'known information' about XCOM:EU 2012 is found in various articles under the Category:XCOMModding.Everyone is advised to read to understand how to locate desired articles.ChecklistThe following is a checklist of points discussed in the main article below.
It's provided to help diagnose the most common problems people have after installing a mod. It assumes that you have actually read the relevant sections of this article, and does not include everything discussed in those sections. These are simply the most common overlooked steps leading to problems. They also form the fundamental questions asked when looking for help.XCOM on other platforms than Windows (i.e. Mac OS/X or Linux or ARM/IOS devices) have significant differences in file and hex offset locations. See the appropriate sections in the Table of Contents. Which version of the game (EU or EW) and ', for which platform (Windows, Linux, Mac, ARM/IOS) have you tried before it broke?.
Have you tested EU/EW (twice) to the main menu prior to installing any mods (see )?. Have you moved Windows Steam games out from the 'C:Program Files' (or 'C:Program Files(x86)') tree to another folder (see )?.
Are you running with Steam in 'off-line' mode (see )?. Have you disabled the 'phone home' feature (see )? 1.
Have you 'Enabled INI loading' (see )? 1. Have you disabled 'Hash checks' (see )? 1 (Not required with EW.)1 Note this can be handled for you in the 'Options' menu of mod installation utility, or manually as described in this article.The instructions on most download pages assume you have already performed the above. And they are never a substitute for reading the included documentation, such as 'ReadMe' files.The following are general troubleshooting questions you can expect when asking for help in trying to isolate the problem:. What mods have you installed and any 'in game' options enabled, such as 'Training Roulette'?.
Which version of which mods (meaning: is the mod intended for EU or EW; they are not interchangable and may be patch level dependent)? Not all mods are compatible with each other, and some have already been incorporated into other mods. Use mod version numbers, not vague terms like 'latest'. If nothing else there are 'uploaded' dates on the mod download page. Have you installed? If so, you need to uninstall it, install all other mods first, and then install TexMod last (because it requires renaming the game executable and messes up other mod installations). Try installing only one mod at a time, test it, and report with details on what is installed and the nature of any error messages the system gives.
See the wiki article '.If you are still having problems getting mods to install, please answer these checklist questions in your request for help on the Nexus ' forum.Problems with getting your own custom mod to work should be addressed to the Nexus ' forum.Problems with a specific mod created by someone else should be addressed to the mod author in the 'comments' or 'forum' section of the mod download page on the Nexus.The more details you can initially provide, the more quickly you are likely to get a solution. If the problem cannot be reproduced by others, it's most likely specific to your situation.DetailsEven if all you desire is to install mods and play the game, there are some things you need to understand about the current state of the modding process.The ExecutableThe game executable file has embedded in it ALL of the files it requires to display and run the game. These are generally referred to as the 'embedded files', which can be confusing since we often are referring to files within one file. The key point is that the embedded files in the EXE are all in a 'compressed and packed' archive file format that the game engine can deal with.(See. Here the term packed simply means concatenated, or added one after the other, into a single archive. Compressed means they have been reduced in size, which typically refers to replacing multiple instances of a re-occurring pattern with placeholders. (This is where the file turns into a 'coded message'.) Many people do not realize that it is possible to pack multiple archive files together into another archive file, with the same or different formats, but that is what is happening with XCOM.
Self-extracting archives are simply an EXE wrapper around an archive that automatically takes care of the unpacking and decompressing as needed. The game EXE is a bit more than just a wrapper, but the principle is the same.)The compression makes changes to these elements like trying to alter a 'coded message'. For this reason, only the parts of the EXE that do not contain the embedded files are safe to directly apply hex changes, and most mods avoid direct EXE edits entirely, using specialized tools instead.The Resource CacheThe term resource cache is often used by modders to refer to these 'embedded files', but technically the term refers to the area of the EXE resources identified by the Resource Hacker tool (see ) as resource type RCData. This tool has an internal script compiler and decompiler that enables it to work with the 'packed and compressed' format of the embedded files, and successfully make direct changes in the EXE.
Searching for RCData in a hex editor will fail to locate the resource cache, so the term should be regarded as tool specific.Various sub-sections under RCData in Resource Hacker present different groups of information in different formats. Of interest to most modders are sections:1020/1033: XComGame.XGTacticalGameCore 1030/1033: XComGame.XComMPData 1040/1033: XComGame.XGLoadoutMgr The Loose FilesThese same files that are embedded in the game EXE are also present in various installation sub-folders under the of.Steamsteamappscommon.NOTE: '.Steam' means the drive and whatever your 'games' folder is called where the 'Steam' folder is located (i.e. ' C:GamesSteam').
Refers to the 'parent path' of the 'Steam' directory 'tree'. 'Directory' and 'folder' are interchangeable terms. XCOM is installed under the in.XCom-Enemy-Unknown (also known as the ) folder:(i.e. ' C:GamesSteamsteamappscommonXCom-Enemy-Unknown'). This is the location most mod installers want you to point out to them. ' Enemy Unknown' (EU) is one level further down the tree in.XComGame:(i.e. ' C:GamesSteamsteamappscommonXCom-Enemy-UnknownXComGame').
' Enemy Within' (EW) is installed in it's own sub-folder under the folder as.XEW:(i.e. ' C:GamesSteamsteamappscommonXCom-Enemy-UnknownXEW'). If you have installed any DLCs, such as Slingshot, these will be under.XComGameDLCPCConsole folders, as in:'Elite Soldier Pack' = ' C:GamesSteamsteamappscommonXCom-Enemy-UnknownXComGameDLCPCConsoleDLCPackIn'Slingshot' = ' C:GamesSteamsteamappscommonXCom-Enemy-UnknownXComGameDLCPCConsoleDLCDay060'Some of these DLC files may also be duplicated under your local Windows account XCOM folder as well:.
i.e. ' C:UsersMy DocumentsMy GamesXCOM - Enemy Unknown' and subfolders, or ' C:UsersMy DocumentsMy GamesXCOM - Enemy Within' and subfolders.The files found under the and XCOM folders are collectively referred to as the 'loose' files. Some of them (such as UPK files) also are in a 'compressed and packed' archive file format.
While these files can be 'decompressed' and then 'unpacked' into individual component files, general practice is to just 'decompress' them and use a hex editor to apply changes to the 'still packed' archive. A decompressed but packed 'loose' file will be used by the game engine, as will a 'loose' compressed file, over the one embedded in the EXE. Apparently the difference in file size informs it as to which to use. It is very important to run the game (both EU and EW) up to the main menu in the game at least TWICE prior to installing any mods or making any of the mod prep changes listed in this article.
This is necessary for Steam to update the game to the latest version files from both the Steam and the Firaxis (the 'phone home') servers. This process takes place when the game is initially run, and then verifies the files the second time. It can replace any loose files: EXEs, INIs, INTs, etc, unpredictably.
Failure to perform this twice to a vanilla game can result in 'Crash To Desktop' errors (CTDs) later on.Mods in general are based upon making hex changes to the 'decompressed but still packed' 'loose' files under the sub-folders. This is not a requirement, but simply has proven to be the simplest method.
While tools exist to 'unpack' a decompressed archive into it's separate constituent files, a suitable 'repacker' is not available. In addition, no one has discovered a method to reliably replace an embedded file with one that has been repackaged, nor is it necessary, so working with the 'decompressed but still packed' loose files remains the most efficient method.Plaintext FilesNot all files require hex editing. The INI and INT files are plaintext, and can be edited with any plain text editor (like Notepad, not Write or any word processing program, which insert special formatting codes.) However, there are some caveats; so if you desire to get into this aspect of modding, read and it's related articles.The plaintext files are there in part to allow the player to make simple changes to game variables. With the release of Enemy Within (EW), Firaxis deliberately moved a number of variables previously only found buried with the code to INI files, presumably to make them available to the modding community. In addition, the EW expansion was in many ways treated like other downloadable content (DLC), and also as a separate game. The EW game files are installed in a XEW sub-folder under the of XCOM (i.e.SteamsteamappscommonXCom-Enemy-UnknownXEW).
But when running, it works from XCOM-prefix named versions located in the MyDocsMyGames folder of the Default-prefix named INI files that are located in the, as with previous DLCs.In the orginal EU EXE, all the loose INI files were blocked from being accessed fully, by default. EW changed this to only blocking DefaultGameCore.INI by default. (See the entry under for how to change this.)As is the case with DLCs, the XCOM-prefix versions of the INIs are merged versions of Default-prefix and DLC specific INIs. The files in the root XCom/XEW folders are the 'master' copies. These master files all begin with 'Default' as a prefix (e.g. DefaultGameCore.ini, DefaultGameData.ini).
Whenever the game is launched, near the very beginning of execution it performs merge operations, creating copies of the config files in the My Games.Config folder. These merged files all begin with an XCom prefix (e.g. XComGameCore.ini, XComGameData.ini). For the present state of Enemy Within these are simply copies (but with all comments stripped out). However, once DLC for Enemy Within is released, these MyGames versions are expected to be merged versions of the base game + DLC config files as before. These XCOM-prefix files are reconstructed (or are supposed to be) every time the game launches so altering the versions in MyGames probably will be ineffective.
By all appearances Firaxis wants to encourage making your mods whenever possible to the 'master copy' Default-prefix versions of the INIs.Something that may not be apparent is that patches and updates to the game can not only replace the game EXE (as might be expected), but also any of the 'loose' compressed files. Consequently not only must mods be reapplied after patching, they may also require being updated in turn. The more complex the mod, the longer it takes to update, test, and release. If you are impatient for a mod maker to update your favorite mod, consider making a donation as an incentive. (Guilt is a powerful motivator, and 'money talks'. Or nags, if you prefer.)Environment.
See for why you should and how to move your Steam folder out of the Program Files folder tree. (On 64-bit versions of Windows, 64-bit programs are installed under 'C:Program Files' while 32-bit programs are installed under 'C:Program Files(x86)', by default.
Both folders are otherwise treated the same: as 'system folders' with special protections against mal-ware.). See for instructions on how to set up your Steam account to work with mods.The disabling of the 'phone home' capability as presented in is somewhat optional for XCOM:EU - 2012.
If you look into.UsersDocumentsMy GamesXCOM - Enemy UnknownXComGameLogsEMS folder, you'll find XComGameCore.INI. It contains lines that are responsible for clearing Armors, Characters and Weapons arrays. Arrays are filled with new entries afterwards. UPDATE: See the Disabling Hash checks entry in section below.
The game's internal check of the SHA hash can be disabled once and for all.Installation EssentialsIt is important to note Mod release notes as to which versions of the game they are compatible with. It should NOT be assumed that any given mod is compatible with any version other than it states in it's documentation. This is especially true where offsets are given to locate the position of hex code changes. Patches usually cause changes to offset values. See the section for a list of patches.
Set up the environment to support using mods with Steam. (See section Environment.). Acquire the necessary tools. (See section Tools.). Backup files to be changed. File affected by Mods are all located in sub-folders of the game installation path (aka ) 'SteamsteamappscommonXCom-Enemy-Unknown'. The executable is located in.BinariesWin32.
Movie BIK files are located in.XComGameMovies. UPK files are located in.XComGameCookedPCConsole.
(SWF files are embedded in UPK files.). INI files are located in.XComGame and.Engine sub-folder Config. INT files are located in.XComGame and.Engine sub-folder LocalizationINT (for English, and other country codes for other languages). Note that DownLoadable Content (DLC) or game expansions such as Slingshot Missions have localization (INT) language files in the personal account My GamesXCom-Enemy-UnknownXComGameLocalizationINT path as well.
If you are using a specific localized language version of the game other than English (INT), look for your 3 character language code (i.e. 'FRA' for French) instead of 'INT'. Note that only the DGC.INI's BALANCE Modes (i.e.
'BalanceMod' settings) in the file located in SteamsteamappscommonXCom-Enemy-UnknownXComGameConfig have any effect on the game, as they are 'Difficulty' modifiers. Only changes to these setting are read in and override the same DGC.INI file embedded or 'cooked-in' to the executable. These are the only modifications to the game that do not require making hex changes to the EXE directly. Other alterations have to be made to the copy of the DGC.INI in the executable directly, using ModPatcher tool.MAINTAINERS: This information is still accurate, and should be retained for reference. UPDATE: There now exists a way around the need for ModPatcher entirely, as well as the embedded DGC.INI size limitation, by enabling INI files to be read and used by the game engine.
See the Enabling INI loading entry in the section, below. See for Mod packages.Offset Location ValuesMost mods are packaged with, or designed for use with, tools which locate the correct spot to begin replacing the existing hex code with the mod's replacement hex code. There are two methods of programmatically determining the correct location: by finding a pattern of sequential hex code (commonly referred to as find-and-replace); or by jumping to a location that is an offset, or so many bytes distant (commonly called an offset location), from a known starting point (usually the beginning of the file). The find-and-replace method suffers from the risk that the searched code sequence might be changed by a later patch or other mod, as well as requiring it be sufficiently unique (i.e. Long) as to eliminate any other similar code sequence; while the offset method only has to be adjusted if a later patch has changed the starting location. The offset method has become more popular, and most of the mods found on this Wiki use or are adding the offset location.
(Actually providing both a unique search pattern and an offset location is preferred, as both enable anyone to make their own adjustments after subsequent patches.) Some mods are simple enough to merely provide instructions with an offset location and a few byte changes to be made manually.There are two questions modders might have when referencing a hex-code offset location value. 1) How to find that location in the file to be modified; OR 2) Given some decompiled code sequence, how to determine the equivalent hex-code and then find the offset value of the beginning location of that code in the packed UPK or executable?Question 2 is for mod developers, so in that case direct your attention to the article.
But question 1 applies in either case, so read on.An offset is always relative to some starting point. When modding, generally this will be the relative to the beginning of the file being modified: byte zero. However, it is always possible to be relative from some other point, so examine the instructions carefully. It's always worth repeating: BACKUP your file before you make any changes to it.
Changing the wrong location or entering the wrong byte can cause your game to fail to load or to crash without any clue as to why. But you are 'safe' until you actually SAVE the changes because they remain in memory only until then. Make the minimum changes you can before saving, and then always test the result. This will make it easier to determine where you went wrong.When you open any hex editor (but we will use HxD here because it's in our suggested toolkit) you have to first tell it what file you want to edit. For this example we will assume we want to edit the game executable XComGame.EXE to enable INI file loading by modifying location '0x157D93A'. (The details about the necessary hex changes to enable INI file loading are available in the section of this article.) Note the 0x prefix simply indicates that the following value is a hexadecimal number, and should be ignored. The actual offset value of the target location is 157D93A.
Open HxD and then select File Open and navigate your to XCom-Enemy-UnknownBinariesWin32 and select XComGame.EXE. Select Search in the menu bar and then drop down to select Goto, or use the hotkey combination of.
(This results in the smaller box at the top of this image.). Enter the offset location ( 157D93A) in the offset field (red box) of the Goto box, as shown in the upper part of the image. Double check that you do not have any extra characters when you either paste or type the offset value.
Xcom 2 How To Mod Weapons
The field has a right-justified zero by default. (Don't worry about case; HxD will automatically convert valid letters into upper case for you.).
Check that the two radio buttons in that dialog box are set correctly: type of value is on hex (red box); and Offset relative to is on begin (yellow box). When you click on the OK button, the edit cursor ( ) in the HxD window will be positioned at that location in the hex portion of the display (immediately to the left of the first hex character), ready to start replacing the byte with your hex changes. (Unfortunately, the editor cursors are not displayed in the image.)Note that a hex byte always consists of a pair of hex characters ( 0-9 + A-F). (See.).
HxD has unlimited undo operations. Use (or look under the Edit menu) to undo the last hex character change. Repeat as often as needed. ( HxD features are described.)Notice that the very first column of the display for each line (in the yellow box) is also a hex value very similar to what you entered in the 'Goto' box (actually all but the very last character). Each line displays 16 bytes, starting in position zero (notice the column labels across the top line in the yellow box), with each byte consisting of a pair of hexadecimal characters.
In the image the very bottom line offset is 0157D930 (red box). Our offset location is in the 0A (or 10th) column (red box) of that row. So it is entirely possible to scroll through the file to the desired offset location. Is simply faster.To the right of the hex bytes are displayed the 16 printable ASCII characters for every 2 hex characters of each hex byte. Where there is not a printable ASCII character for a hex byte, a period is used as a placeholder.Note that a dotted-box is displayed around the equivalent ASCII character (red box) for the same byte that the hex edit cursor is positioned at. You can edit either the hex byte or the ASCII character, but do not attempt to place a non-printable character in the ASCII display.
For this reason, it is best to get used to entering only hex values and treat the ASCII display as a means of verification.With this information, you should now be able to find the correct location to implement hex changes.Mac OSX Offset DifferencesApple's OSX handles things a little differently than Windows. (For just one instance, it typically uses forward slashes ( /) where Windows uses backward slashes ( ). So you might see a path displayed either way.) SteamApps/common/XCom-Enemy-Unknown contains an.app file (an 'application bundle', the typical OSX way to package an executable + related files; roughly the equivalent of a Windows archive file unpacked on the disk), and an XCOMData folder. Here's the directory structure.├── XCOM Enemy Unknown.app│ ├── Contents│ │ ├── Frameworks│ │ ├── Info.plist│ │ ├── MacOS. Versions purchased from the Apple/Mac 'AppStore' may have a different directory structure.Note the presence of the Hashes.sha file in BinariesWin32, which is absent from the Windows implementation. This contains the Hash check data, located at 0x00D0-0x0120 within that file, which otherwise is embedded in the Windows executable.
You must change the data in Hashes.sha to Disable Hash Checks.The last recorded (as of 13 Aug 2013) Steam patch for EU is Patch 3 on Jan 8, 2013.Here is a screenshot for the OSX Steam version's DGC.ini offset, taken in the freeware program. Everything stated above about locating an offset still applies, with the following specific deviations:. The encoding displayed in this screenshot is, which can be selected in Hex Fiend under Text Encoding - Other as 'UTF32LE'. This displays as 32-bit memory blocks of 4 pairs of hex digits (8 digits per block) compared to the 8-bit single pair of digits for the Windows version of the editor. Only the first (8-bit) pair of hex digits for each block are significant for the ASCII display portion of the screen. But each pair of digits must be counted to find the correct offset.
To Jump directly to an offset location, just select Edit - Jump to Offset and remember to include the identifying 0x so that Hex Fiend knows you're in base 16.(Thanks to psyflame for this image and general information)Note the offset given here (0x1E7E590) is a general location. The specific offset location of the 'D' (0x44) in filename DefaultGameCore.ini is 0x1E7E5E0. For the Enemy Within (EW) DLC release, searching for the regular string DefaultGameCore in XComEW.exe doesn't generate any matches; but searching as a unicode string finds 2 matches. In the PC version it is the 2nd instance of this that has to be changed.For the Mac / OSX version of EW, the string is found around 0x1fe7eb3. (You also need to edit the hosts file with the additional IP address and domain name for EW to prevent it phoning home, which is found in /private/etc/hosts.)OS/X mod installationThe material in this section comes from the Nexus Mod Talk Forum threadThere are basically four directory trees you're dealing with in a Steam install.
This is just some arbitrary nomenclature for reference:. The 'game tree', where the main files are installed.
This is typically /Library/Application Support/Steam/SteamApps/common/XCom-Enemy-Unknown. (It will be in a different place if you told Steam to install the game somewhere else when you installed it. This is the OS/X equivalent of the for Windows.) It should have two subdirectories, XCOMData and XCOM Enemy Unknown.app. Note that for Enemy Within, all the relevant files are in XCOMData/XEW/XComGame. It's easy to get confused and drop them in XCOMData/XComGame by accident, in which case they won't do anything. The 'app bundle tree', meaning the.app folder that you can double-click to launch the game. This is the directory XCOM Enemy Unknown.app inside the game tree above.
In the finder, to show this directory you've got to right-click on XCOM Enemy Unknown and select 'show package contents.' . The 'feral tree', which lives in /Library/Application Support/Feral Interactive/XCOM Enemy Unknown. This directory probably won't exist until you've run the game at least once.
The relevant files in here are all in the directory XEW/MacInit. As above, don't forget the XEW part.
The 'extract tree' is the directory where you extracted the mod files from the Windows installer with innoextract. It contains all the new files you're going to copy into the other places to install the mod. The files you want to deal with are all under the app/XComGame directory.The versions of EU and EW from gamersgate.co.uk are reported to use these directories instead:.
/Applications/XCOM Enemy Unknown - Elite Edition/Contents/Resources/Data/XEW (which has the following. Binaries/Engine/XComGame./Library/Application Support/Feral Interactive/XCOM Enemy Unknown - Elite Edition/XEW. Google chrome mute tab not working. FeralTemp/Logs/MacInit/Profiling/SaveData/Volumes'. shaderlog.txt file.Versions released from other vendors may differ. Note there are known issues with the Mac port of 'XCOM: Enemy Unknown Elite Edition v1.2.0'. It does not seem to recognize when you patch it to 'Elite Edition v1.2.1'.
Be sure to get version 1.2.1 or later. The Steam 'EU:Complete Edition' should auto-update EW to patch 3. Only install any DLC once the game is patched to the current/latest version. Contact Feral Interactive for assistance if you already have an older version.
timgilbert has created an OS/X 'dmg' installer package for Long War mod, which is now included on that mod's download page. Installer instructions may be found. (Note this was for older versions of the beta.
See next for the latest versions.). The Long War team has now included a 'bash shell script' installer ( install-LW-OSX.sh) for OS/X, which is run from the terminal program. (This is no longer packaged as a 'dmg' installer. See about the differences and how to recognize packages, DMG files, and other executables.) Follow the instructions for copying the package to your computer. For those with the Apple 'App store' version, tn of the Nexus XCOM Forums developed the following method to use the LW install script without Steam. This was tested with LW Beta 14. Basically you need to edit the install-LW-OSX.sh file as well as copy the XCOM: Enemy Unknown - Elite Edition.app file from your /Applications/ folder to the following folder: /Library/Containers/com.feralinteractive.xcomenemyunknown/Data/Library/Application Support/Feral Interactive/XCOM Enemy Unknown - Elite Edition/.
This section is in need of development.Contributors may want to consider writing their material in OpenOffice with the Sun Wiki Publisher extension, which enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language. All important text attributes such as headings, hyperlinks, lists and simple tables are supported. Even images are supported as long as they have already been uploaded to the wiki site. An automatic upload of images is currently not supported.
It is the perfect extension for all users who want to make existing documentations and specifications available on MediaWiki servers. Just load the document and call the Extension with 'Send – MediaWiki Server'. A dialog will guide you to publish your document.Remove this message when the section is complete.We have virtually no reports about any attempts to mod XCOM on IOS devices. What little is known in general follows:Requires - iFile, WinSCP, iFunbox, iExplore, etc.; some sort of ability to view files and folders.Find the folder /var/mobile/Applications/'XCOM'/.
The 'Documents' equivalent of the Windows 'My Documents' folder is under this tree.(It would be very helpful if someone would post the complete directory structure below this point for both EU and EW/other DLC content.)At least one person has made a modded savegame file for IOS available.The Android system packages games in an 'obb' wrapper, much like a ZIP file. The 'obb' file contains the XCom UPK files, though with different extensions than 'UPK' to match Android file associations.Bogdacutu has ported the UPKUtils package (by wghost81) to the Android OS, which includes a tool for unpacking the 'obb' file. The forum thread announcing these tools is found.Linux DifferencesThanks to 'wghost81' (aka 'Wasteland Ghost') for the following, taken from the Nexus 'XCOM Mod Talk' forum thread.Game itself is installed under the steam library folder. 0027.91 DevHTTP: FHttpDownload resolve complete to: 65.118.245.165:80 0027.91 DevHTTP: FHttpDownload resolve complete to: 65.118.245.165:80 0027.91 DevHTTP: FHttpDownload resolve complete to: 65.118.245.165:80.
0028.15 DevHTTP: FHttpDownload::StateParsingHeader: Got unknown status code 503 URL: prod.xcom.firaxis.com:80/News.ashx 0028.19 DevHTTP: FHttpDownload::StateParsingHeader: Got unknown status code 503 URL:The entries marked like so are:. The Server IP address: 65.118.245.165. The Server DNS Name: prod.xcom.firaxis.comThese are what you will place into the hosts file to block attempts to connect.
Start Menu Right click on 'Notepad' (or any ), select 'Run as Administrator'. File Open %systemroot%system32driversetchosts.
The hosts file has no '.' Suffix, so make sure you don't add.txt or anything else. Also,%systemroot% on most systems is C:Windows, but the exact folder name may vary by OS version. The value of the global%systemroot% on your system can be determined by entering 'set' on the Windows command line, or as it's shortcut is called, the. But the variable%systemroot% (including the percent '%' signs) can safely be used without knowing it's actual value. Add these three lines to the hosts file:(The first line is a comment. The next two lines do the actual work, but are specific to XCOM:Enemy Unknown 2012.
Other games may have their own DNS names i.e. Prod.xcom.firaxis.com and IP addresses i.e. PatcherGUI (as of v5.2), part of the mod, includes options to 'Enable INI loading' and 'disable phoning home' for you. It can also find and open the correct config folder for you.
So, to install INI modifications, one needs to select the correct game path (XCom or XCom/XEW), 'enable INI loading' and 'disable phoning home', and it will open the config folder and replace the vanilla file with the modified one. This is currently the recommended tool if you do not feel comfortable hex editing yourself.
It has recently (20 Apr 2013) that the launcher does not check every UPK file, and that it uses a table in the executable to look-up the files it checks. It then compares the hash with that in the companion '.uncompressedsize' file. By simply changing the names of the UPK files in this look-up table so they are not recognized or found, it will happily load regardless of any other files hash.
This appears to eliminate the need for removal of the companion '.uncompressedsize' file (which consequentially causes the game to use it's internally stored hash value) and XSHAPE (which updates the internal hash), or any other hash fixing.Simply look for the strings 'xcomgame.upk' and 'xcomstrategygame.upk' in the executable using a hex editor (such as HxD, linked below) and change them to some other string. The current version of ToolBoks is now using this technique on both of those files, as well as 'xcomshell.upk'. Mac OSX users need to make these changes to the Hashes.sha file in BinariesWin32, to the filenames located at 0x00D0-0x0120.NOTE: The Enemy Within (EW) expansion does not include these UPK hash checks any longer, and does not need this patch to read in the loose decompressed versions of these files.
The original EU EXE with patch 5 still does.The following is taken from the documentation of the XCOMModHelper tool available at. A recent (24 May 2013) makes it possible to force the game to load the DGC.INI config file from the 'XComGameConfig' folder, thereby eliminating the need to use ModPatcher or make DGC.INI changes to the EXE at all, and avoiding the size limitation on the embedded file. (See the entry note on ModPatcher here about size limitations.)Bear in mind: Loose INI files get read, and thus override mod changes to the internal 'resource cache', after the game EXE starts.Choose your mods intelligently and with understanding. Not all will work together.These hex offsets are for EXE version 1.0.0.28586; patch 4, Changelist 356266, unless otherwise noted. In xcomgame.exe: starting at location 0x157D93A. For Mac OS XCOM Elite Edition: starting at location 0x1D86A70.
For Mac OSX Steam version, patch 3 (Jan 8, 2013): starting at location 0x1E7E5E0. For Mac App Store version 1.0: around offset 0x1BD58D0. Search for '72 00 00 00 65 00 00 00 2E 00 00 00 69 00 00 00 6E 00 00 00 69 00 00 00' (which is 're.ini' in UTF32 Little-Endian).NOTE that these strings are also found as part of disabled debug code, at offset range: 0x156BA82-156BF38. For Mac App Store version 1.0.1: starting at 0x1D86B50.
If searching in a hex editor, look for '44 00 00 00 65 00 00 00 66 00 00 00 61 00 00 00 75 00 00 00 6C 00 00 00 74 00 00 00 47 00 00 00 61 00 00 00 6D 00 00 00 65 00 00 00 43 00 00 00 6F 00 00 00 72 00 00 00 65 00 00 00 2E 00 00 00 69 00 00 00 6E 00 00 00 69 00 00 00'. This is 'DefaultGameCore.ini' in UTF32LE.If you edited version App Store version 1.0, the App Store will not update the game and you will need to delete it and re-download. After editing, the app will need to be code-signed, again (as usual.).Take care with the location of the strings you disable. As always, these locations may change after official game patches are released.There are the three unicode text strings.X.C.o.m.G.a.m.e.C.o.n.f.i.g.D.e.f.a.u.l.t.G.a.m.e.C.o.r.e.i.n.i.X.C.o.m.G.a.m.e.C.o.n.f.i.g.D.e.f.a.u.l.t.M.P.G.a.m.e.i.n.i.X.C.o.m.G.a.m.e.C.o.n.f.i.g.D.e.f.a.u.l.t.L.o.a.d.o.u.t.s.i.n.i. It appears that these three strings are checked to see which files to NOT load from the Config directory. Change the first string to something else.
And behold: the game loads from the (DGC.INI) file in the ' XComGameConfig' directory, even if larger than the embedded version.All the other INI files are read by default. Only these three have to be modded to load.This means that no longer are BALANCE Mode settings the only ones taking effect from the text editable file in 'Config', and that additional items can be added to the DGC.INI file.
Of the other files explicitly denied from loading, (believed to be 'multiplayer' related), and (initial equipment for classes of Soldiers and Aliens), are similarly enabled in the same manner.NOTE: The Enemy Within (EW) expansion appears to still need this patch to read in the loose INI files. The original EU EXE definitely still does.For instructions on how to search for the above filenames as unicode strings, with screenshots, see the wiki article.Bear in mind: Search for the following in hex mode for unicode values.The following patches are taken from the documentation of the XCOMModHelper tool available at. There appears to be a minimum and maximum size to the combined total of the three INI files that are prevented by default from being loaded by the game engine:,. If the combined total size of these three INIs is either smaller or larger than these limits, the game won't load (not a CTD) with the message: 'Failed to start game (app already running)'. This may apply to the combined size of ALL INI files, but has not been tested nor have the combined minimums and maximums been determined.
(See the discussion at.)However, interestingly this implies reducing the size of one of these files enables expanding the size of another of them by the same amount. There has been some success with exploiting this for expanding the DGC.INI, but there may be other checks that have not yet been identified. There appears to be an upper limit to the DGC.INI of very close to 101648 bytes.Increased Load Times.
This is a purchased expansion to XCOM:EU 2012, released in the USA on 12 Nov 2013. It installs to a XEW subfolder under the main XCOM install path.
Most of the loose files from EU are replicated in this subfolder, which means EU and EW are basically separate games. There is some sharing of movie (.BIK) files.
EW adds a launcher app XComLauncher.exe in the XCom-Enemy-UnknownXEWBinariesWin32 folder which is started by Steam and provides the option of which game ( EU or EW) to launch.The actual game executables this launcher runs are:. XCom-Enemy-UnknownBinariesWin32XComGame.exe - launches Enemy Unknown.
XCom-Enemy-UnknownXEWBinariesWin32XComEW.exe - launches Enemy WithinEW no longer makes a hash check of the compressed UPK files. So they can simply be decompressed and will be used after modification once the related.uncompressedsize files are removed.However, the mod to force the game to use the loose XEWXCOMGameConfigDefaultGameCore.ini file is still needed. Hex edit the XComEW.EXE file as follows:Find: (i.e. Key is the 58 in the last line)25 00 64 00 00 00 00 00 49 00 6e 00 69 00 72 00 73 00 69 00 6f 00 6e 00 00 00 00 002e 00 2e 00 5c 00 2e 00 2e 00 5c 00 58 00 43 00Replace: (i.e. Replace the 58 in the last line with 57.)25 00 64 00 00 00 00 00 49 00 6e 00 69 00 72 00 73 00 69 00 6f 00 6e 00 00 00 00 002e 00 2e 00 5c 00 2e 00 2e 00 5c 00 57 00 43 00EW Update server (i.e.
HOSTS file):. 127.0.0.1 prod.xcom-ew.firaxis.com. 127.0.0.1 65.118.245.139These 'phone home' locations update the XComGamecore.INI file in config/loc on game launch, and are needed in addition to the entries for EU.
However, early reports that disabling these connections cause the game to freeze are now attributed to other causes, such as not disabling 'auto-updates'. Cloud Synching of save game files still works with these addresses disabled.
(While sometimes referred to as 'the silent patching mechanism', so far there is no evidence that these servers are involved in actual changes to the game code. They still appear to only restore certain vanilla files involved in Multiplayer games, which can disrupt mods touching those same files.)The EW 'phone home' addresses seem to only update XComGameCore.INI in My GamesXCOM - Enemy WithinXComGameLogsEMS at this time.Extending/Replacing FunctionsIn early Dec 2013, wghost81 discovered it was possible to alter the UPK Package information so the game would utilize an expanded or replacement function of any size. This frees the mod creator from the constraint of keeping their code changes to within the original byte size limitations of the vanilla function, as well as providing the possibility to add new functions exclusive to your own mods. See the Hex editing UPK files article entry for details.TroubleshootingFinally, if you have problems with installing a mod see the following wiki article. Note that this document is one of those it will refer you to, so you might as well start by reviewing the material here.ReferencesReferred to by this article:. (Defunct).That refer to this article:.