Table of Contents
Introduction
“XCOM: Enemy Unknown” is a strategy game that has captured the hearts of gamers worldwide since its release in 2012. Developed by Firaxis Games and published by 2K Games, this reboot of the classic “X-COM” series has been praised for its tactical depth, engaging gameplay, and high replay value. One of the lesser-known but incredibly powerful features of the game is the use of console commands. These commands allow players to modify the game in various ways, from simple adjustments to game mechanics to enabling cheat codes for a more casual experience.
This comprehensive guide will delve into the world of XCOM: Enemy Unknown console commands, covering everything from how to enable the console, the most useful commands, and how they can enhance your gaming experience. Whether you’re a seasoned veteran looking to tweak the game to your liking or a newcomer interested in experimenting with the game’s mechanics, this guide has something for everyone.
Enabling the Console
Before diving into the commands themselves, it’s important to know how to enable the console in XCOM: Enemy Unknown. Unlike some games, the console is not readily accessible and requires a few steps to unlock.
Step 1: Locate the Config File
To enable the console, you’ll need to modify the game’s configuration files. These files are typically located in the game’s installation directory. Here’s how you can find them:
- Navigate to the folder where XCOM: Enemy Unknown is installed. The default path is usually something like:objectivec
C:Program Files (x86)SteamsteamappscommonXCom-Enemy-UnknownXEWXComGameConfig
- In this folder, locate a file named
DefaultEngine.ini
.
Step 2: Edit the Config File
Once you’ve located the DefaultEngine.ini
file, you’ll need to make a few changes to enable the console:
- Open the
DefaultEngine.ini
file with a text editor like Notepad. - Look for the section labeled
[Engine.Console]
. - If this section doesn’t exist, you can add it manually. Under this section, add the following lines:makefile
ConsoleKey=Tilde
TypeKey=Tilde
The
Tilde
key is the default key used to open the console (~
). You can replace it with another key if you prefer. - Save the changes and close the file.
Step 3: Enable Console in Launch Options (Optional)
In some cases, you might also need to enable the console via the game’s launch options:
- Right-click on XCOM: Enemy Unknown in your Steam library.
- Select
Properties
, then go to theSet Launch Options
button. - In the dialog box, type
-allowconsole
and clickOK
.
Now, when you launch the game, you should be able to open the console by pressing the ~
key (or the key you assigned).
Using Console Commands
With the console enabled, you can now start using commands to modify your game. Console commands in XCOM: Enemy Unknown are incredibly versatile, allowing you to do everything from spawning items to altering the game’s difficulty.
Basic Commands
Here are some of the basic console commands that can be useful for any player:
- GiveResource [ResourceName] [Amount]: This command allows you to add resources to your inventory. Replace
[ResourceName]
with the type of resource (e.g.,Elerium
,Meld
,Alloys
) and[Amount]
with the desired quantity.Example:
GiveResource Elerium 100
- GiveTech [TechName]: Instantly research a technology. Replace
[TechName]
with the name of the technology you want to unlock.Example:
GiveTech LaserWeapons
- AddItem [ItemName] [Amount]: Add specific items to your inventory. Replace
[ItemName]
with the name of the item and[Amount]
with the quantity.Example:
AddItem AlienGrenade 5
- SetSoldierStat [Stat] [Value] [FirstName] [LastName]: Modify a soldier’s stats. Replace
[Stat]
with the attribute you want to change (e.g.,Aim
,Will
,HP
),[Value]
with the new value, and[FirstName]
and[LastName]
with the soldier’s name.Example:
SetSoldierStat Aim 100 John Doe
- Teleport: Instantly move the selected soldier to the mouse cursor location. Useful for repositioning during missions.
Example:
Teleport
- GiveXP [Amount]: Grant a specific amount of experience points to the selected soldier.
Example:
GiveXP 500
- ForceCritHits [True/False]: Toggle guaranteed critical hits on or off.
Example:
graphqlForceCritHits True
- SetDifficulty [Value]: Change the game’s difficulty. The values are
0
(Easy),1
(Normal),2
(Classic), and3
(Impossible).Example:
SetDifficulty 2
- GiveEngineer [Amount]: Add a specified number of engineers to your base.
Example:
GiveEngineer 10
- GiveScientist [Amount]: Add a specified number of scientists to your base.
Example:
GiveScientist 10
These commands form the foundation of what you can achieve with the console. They allow you to customize your experience, whether you want to make the game easier or just experiment with different setups.
Advanced Commands
For players looking to dive deeper into the mechanics or modify the game in more complex ways, there are several advanced console commands worth exploring.
Spawning Enemies and Allies
One of the more interesting aspects of the console is the ability to spawn enemies or allies during missions. This can be useful for testing strategies or just having some fun with the game’s mechanics.
- Spawn [UnitName]: Spawn a specific unit at the mouse cursor location. Replace
[UnitName]
with the desired unit.Example:
Spawn Sectoid
You can spawn a wide variety of units, including:
- Sectoid
- Muton
- Ethereal
- Chryssalid
- ThinMan
- Cyberdisc
- And more…
- SpawnFriendly [UnitName]: Spawn a friendly unit at the mouse cursor location.
Example:
SpawnFriendly SHIV
- KillNearestEnemies: Eliminate all enemies near the selected soldier.
Example:
KillNearestEnemies
These commands are particularly useful for players who want to set up specific scenarios or test how different units interact.
Mission Manipulation
In addition to spawning units, you can manipulate entire missions using console commands. This can be useful if you want to skip a particularly difficult mission or replay one with different parameters.
- EndBattle [0/1]: Ends the current battle. Use
0
to end the battle in defeat and1
to end it in victory.Example:
EndBattle 1
- ReloadLevel: Reload the current mission level.
Example:
ReloadLevel
- SkipMission: Skip the current mission entirely.
Example:
SkipMission
- GiveObjective [ObjectiveName]: Instantly complete a specific mission objective.
Example:
GiveObjective SecureBase
- SetGlobalVariable [VariableName] [Value]: Modify global variables related to missions, such as panic levels or mission timers.
Example:
SetGlobalVariable PanicLevel 0
Customizing Soldiers
Customizing your soldiers is one of the most popular uses for console commands. Beyond basic stat adjustments, there are commands for modifying soldier classes, abilities, and appearances.
- MakeSoldierAClass [ClassName] [FirstName] [LastName]: Change a soldier’s class. Replace
[ClassName]
with one of the following:- Assault
- Heavy
- Sniper
- Support
- MEC (if you have the Enemy Within expansion)
- SHIV
Example:
MakeSoldierAClass Sniper Jane Doe
- GiveAbility [AbilityName] [FirstName] [LastName]: Grant a specific ability to a soldier. Replace
[AbilityName]
with the desired ability.Example:
GiveAbility RunAndGun John Doe
- RemoveAbility [AbilityName] [FirstName] [LastName]: Remove a specific ability from a soldier.
Example:
RemoveAbility Suppression Jane Doe
- SetSoldierAppearance [FirstName] [LastName] [AppearanceCode]: Change a soldier’s appearance. Replace
[AppearanceCode]
with a specific code corresponding to different cosmetic options.Example:
SetSoldierAppearance John Doe 3
- SetSoldierArmor [ArmorName] [FirstName] [LastName]: Equip a soldier with specific armor.
In addition to the basic commands for modifying soldier stats and abilities, there are more nuanced ways to customize your squad, allowing for a more personalized experience.
Armor and Weapons Customization
You can also equip your soldiers with specific armor and weapons, giving you control over their loadouts without having to rely on the base’s resources.
- SetSoldierArmor [ArmorName] [FirstName] [LastName]: This command equips the specified soldier with a chosen armor type. Replace
[ArmorName]
with options likeTitanArmor
,GhostArmor
,ArchangelArmor
, and more.Example:
SetSoldierArmor TitanArmor John Doe
- SetSoldierWeapon [WeaponName] [FirstName] [LastName]: Equip a soldier with a specific weapon. Replace
[WeaponName]
with the desired weapon such asPlasmaRifle
,LaserSniper
,HeavyPlasma
, etc.Example:
SetSoldierWeapon PlasmaRifle Jane Doe
- GiveItem [ItemName] [Amount]: Directly add items like medkits, grenades, or other gear to your inventory, which can then be distributed to soldiers.
Example:
GiveItem Medikit 3
- SetSoldierNationality [NationalityCode] [FirstName] [LastName]: Change a soldier’s nationality, which can be useful for role-playing purposes or just to mix up your squad’s diversity. Nationality codes are typically two-letter country abbreviations.
Example:
SetSoldierNationality US John Doe
Adjusting Soldier Experience and Ranks
If you want to create an elite squad without grinding through missions, you can use commands to instantly promote your soldiers and assign them experience points.
- GiveXP [Amount]: Adds a specified amount of experience to the selected soldier, helping them level up faster.
Example:
yamlGiveXP 1000
- SetSoldierRank [Rank] [FirstName] [LastName]: Directly set a soldier’s rank. Replace
[Rank]
with the desired rank such asRookie
,Squaddie
,Sergeant
,Colonel
, etc.Example:
SetSoldierRank Colonel John Doe
- SetSoldierPsi [PsiLevel] [FirstName] [LastName]: Assign psi abilities to a soldier by setting their psi level. Replace
[PsiLevel]
with the desired level (e.g.,1
for basic psi abilities,2
for advanced).Example:
SetSoldierPsi 2 Jane Doe
Impact on Gameplay
Using console commands in XCOM: Enemy Unknown can dramatically alter the game experience, for better or worse, depending on how you use them. It’s important to consider the implications of using these commands, as they can remove some of the challenge and satisfaction that comes from overcoming the game’s inherent difficulties.
Balancing Fun and Fair Play
One of the main reasons players turn to console commands is to alleviate frustration, whether it’s due to a tough mission or just wanting to experiment with the game’s mechanics. However, overuse of commands can lead to a less rewarding experience, as the game’s balance is designed to challenge the player.
If you choose to use commands, consider using them sparingly to maintain some level of difficulty. For example, you might use commands to give yourself a small resource boost or to modify a single soldier’s stats, rather than creating an invincible team or giving yourself unlimited resources.
Experimentation and Learning
On the other hand, console commands can be a fantastic tool for learning and experimentation. If you’re new to the game or struggling with a particular aspect, commands allow you to test different strategies and understand the mechanics more deeply without the pressure of losing a mission.
For instance, you might spawn different enemy types to see how they behave or modify a mission’s parameters to practice specific tactics. This can be especially useful in preparing for higher difficulties where the margin for error is much smaller.
Creating Custom Scenarios
Advanced players can use console commands to create custom scenarios, adding replay value to the game. For example, you might set up a scenario where you face off against a large number of a specific enemy type or create a mission where your squad is outnumbered but has superior firepower.
These custom scenarios can be shared with other players or used to challenge yourself in new ways, offering a fresh take on the game even after completing it multiple times.
Advanced Tips for Using Console Commands
To truly master the use of console commands in XCOM: Enemy Unknown, there are several advanced tips and tricks that can enhance your experience even further.
Scripting and Macros
If you find yourself using the same commands repeatedly, you can create scripts or macros to automate these processes. This involves writing a sequence of commands into a script file, which can then be executed with a single command in the console.
- Creating a Script: To create a script, simply write the desired commands into a text file and save it with a
.cfg
extension. Place this file in the appropriate directory within the game’s installation folder.Example Script (
custom_loadout.cfg
):GiveItem AlienGrenade 3
SetSoldierArmor GhostArmor Jane Doe
SetSoldierWeapon PlasmaRifle Jane Doe
- Executing a Script: To run the script, open the console and type
exec [ScriptName]
.Example:
bashexec custom_loadout.cfg
This allows you to quickly apply complex changes without having to manually enter each command every time.
Combining Commands for Complex Modifications
Console commands can be combined to create more complex modifications. For instance, you might combine commands to instantly upgrade your entire squad’s loadout, adjust their stats, and spawn a challenging enemy wave for a custom battle scenario.
- Upgrading a Squad:
GiveResource Meld 500
GiveItem PlasmaRifle 5
SetSoldierStat Aim 95 Jane Doe
SetSoldierStat HP 15 John Doe
- Spawning a Custom Enemy Wave:
Spawn Muton
Spawn Sectoid
Spawn Cyberdisc
By combining commands in creative ways, you can simulate almost any scenario you can imagine, whether it’s testing the limits of your squad or creating epic battles.
Reverting Changes
Sometimes, after using console commands, you might want to revert the game to its original state. While there’s no direct “undo” command, you can manually reset most changes by reversing the commands you’ve entered.
- Removing Resources or Items: If you’ve given yourself too many resources, you can reduce the amount by using negative values.
Example:
GiveResource Elerium -100
- Resetting Soldier Stats: To reset a soldier’s stats to their original values, you can use the
SetSoldierStat
command with the base values.Example:
SetSoldierStat Aim 65 John Doe
SetSoldierStat HP 8 Jane Doe
- Removing Abilities: If you’ve given a soldier an ability they shouldn’t have, you can use the
RemoveAbility
command.Example:
RemoveAbility PsiPanic Jane Doe
- Reverting Equipment: To revert a soldier’s equipment to its original state, simply reassign their original gear using the
SetSoldierArmor
andSetSoldierWeapon
commands.Example:
SetSoldierArmor CarapaceArmor John Doe
SetSoldierWeapon AssaultRifle Jane Doe
While these steps can help restore the game to its original state, it’s important to remember that frequent use of console commands can potentially cause unforeseen issues, so it’s always a good idea to create backup saves before making significant changes.
Conclusion
XCOM: Enemy Unknown is a game rich with tactical depth and challenging gameplay, and the addition of console commands only expands the possibilities for how you can experience the game. Whether you’re looking to alleviate frustration, experiment with new strategies, or create custom scenarios, console commands provide a powerful toolset for customizing your experience.
From basic resource management and soldier customization to advanced mission manipulation and enemy spawning, this guide has covered a wide range of commands that can enhance your gameplay. However, it’s important to balance the use of these commands to maintain the challenge and satisfaction that comes from overcoming the game’s tough but fair design.
Ultimately, console commands in XCOM: Enemy Unknown offer a new layer of depth and replayability for those willing to explore them. By understanding how to enable, use, and combine these commands, you can tailor the game to your preferences and unlock new ways to enjoy one of the best strategy games of the past decade.