XCOM: Enemy Unknown is an amazing game, and this post is about how to choose optimal skill tree for various character classes in XCOM, but really it's just using that as a game design exercise. I'll be explaining what they did right and what they did wrong in designing skill trees, and then I'll summarize design points at the end of the point. It's just much easier to discuss this with a concrete example than on purely theoretical terms.
XCOM character progressionFirst, the basics in case you never played it. You get a bunch of 0xp soldiers, who don't even have character classes. Then as they get XP they get levels, and on each level they get HP, Aim, and Will bonuses, plus one skill, either mandatory or one of two to choose from.
- Rookie - no class
- Squaddie - character gets their randomly assigned class, one class-defining skill
- Corporal - two skills to choose from
- Sergeant - two skills to choose from
- Lieutenant - two skills to choose from
- Captain - two skills to choose from
- Major - one skill
- Colonel - two skills to choose from
Random classesFirst - you can't choose class your rookies are going to get, so pushes the player towards a balanced team. It's even more interesting, since classes are random with same chances, except your first four rookies will always all get different classes (if it was left completely up to chance, you'd most likely get some duplicates only 9.375% would be all-different).
Later in the game if you really want to have all-Heavy team you definitely can - either by hiring and training a lot of rookies until you get all the Heavies, or buying an officer school upgrade that makes all new recruits start at squaddie (with a class you want already).
But early game the path of least resistance most new players will take is a balanced team - which happens to be pretty decent strategy (not obvious, in a lot of strategy games spamming one or two unit types is optimal, and some are clearly awful), and get the player to enjoy more game elements than if they had full choice.
This random assignment can also increase frustration. If your only soldier of a class you need gets killed or wounded (and will require long hospital stay), you won't have any replacement easily available. You have ways to deal with this frustration - by training more rookies, or investing in Officers Training School, or going for missions where you get a higher level soldier as a reward, and slightly unbalanced team can still deal with most missions - but this random assignment just keeps on giving.
Fortunately they didn't overdo it - since there are only 4 classes and you have enough outs, you'll eventually be able to get the kind of squad you want. Random game elements are a
Skill treesAnother really neat design gem is with xp levels. Some levels are much more valuable than others - especially getting a Squaddie matters since then the soldier gets their class - and then depending on class different levels might have more or less important skills to choose from. Soldiers mostly get xp for participating in missions and killing aliens - and the way it's tweaked is that one mission participation (60xp) plus one alien killed (30xp, more for some high level aliens) is exactly the amount (90xp) needed to get that first promotion. This makes it really important to get rookies on the front lines, not just keep them behind farming mission participation xp while high level soldiers do all the work - but even without much luck all rookies will get their promotion on the second mission.
And there's a reason why some levels don't give you a choice. Some skills are class-defining - you have to pick them, or other skills dependent on them won't work (see Heavy class for details of that). And some skills are basically must-haves - so powerful it would be stupid to take anything else over them. Unfortunately here XCOM doesn't do a very good job (see Sniper class for details).
SniperI feel Sniper has by far the worst designed skill tree of all classes, so let's start with it.
The difference between Sniper and other classes is that Sniper uses Sniper Rifle (or one of its upgrades based on alien technology) and can't fire it after moving. They can still fire a pistol, but that's a pretty miserable choice.
Skills for the first two levels are:
- Squaddie - Headshot - fires shot with +30% critical hit and extra damage, 2 turn cooldown
- Corporal - Snap Shot - can fire after moving with -20 aim penalty
- Corporal - Squadsight - can fire at anything any ally sees (if there are no walls in the way)
- Squaddie - Squadsight - it's a must-have skill and a class-defining ability
- Corporal - Snap Shot - nice to have
- Corporal - Headshot - nice to have (or even more it much further down the skill tree, and put something else here)
- Sergeant - Gunslinger - +2 bonus with pistols
- Sergeant - Damn Good Ground - +10 aim and +10 defence against enemies at lower elevation, in addition to the usual elevation bonuses
- Lieutenant - Disabling Shot - can fire a shot that causes target's primary weapon to malfunction until reloaded, but can't critical hit, 2 turns cooldown.
- Lieutenant - Battle Scanner - can throw scanning device that extends your vision for 2 turns, 2 uses per battle
- Captain - Executioner - +10 aim against targets with less than 50% health
- Captain - Opportunist - eliminates aim penalty for overwatch shots, and allows them to cause critical hits
- Major - Low Profile - makes partial cover count as full
- Colonel - In The Zone - killing a flanked or uncovered target with sniper rifle does not cost an action
- Colonel - Double Tap - can use both actions for shooting (including Heatshot and Disabling Shot), 1 turn cooldown
- Squaddie - Fire Rocket - fires a rocket using rocket launcher, cannot be used after moving, can be used once per battle
- Corporal - Bullet Swarm - can use both actions to fire primary weapon
- Corporal - Holo-Targeting - shooting at or suppressing enemy gives allies +10 aim against that enemy
- Sergeant - Shredder Rocket - fire a rocket that causes all enemies to take +33% damage from all sources for next 4 turns, but has weaker blast
- Sergeant - Suppression - special shot that makes target suffer -30 aim, and grants free reaction fire against it (and also uses a lot of ammunition)
- Lieutenant - HEAT Ammo - +100% damage against robots (nerfed to +50% in Enemy Within)
- Lieutenant - Rapid Reaction - second reaction shot on overwatch if first one was a hit
- Captain - Grenadier - can carry 2nd grenade in inventory slot
- Captain - Danger Zone - increases area of effect of rocket attacks and suppression by 2 tiles
- Major - Will to Survive - reduces normal damage taken by 2 if in cover and not flanked
- Colonel - Rocketeer - 1 additional rocket per battle
- Colonel - Mayhem - additional damage for suppression and all area-effects
Rocketeer synergizes very nicely with Shredder Rocket, HEAT Ammo, and Danger Zone - but you have to choose those early skills before the game reveals that this late skill exists.
Mayhem is nice, but one thing it synergizes most with is, well, Rocketeer. That is not a great design.
Value of rocket skills (HEAT Ammo, Danger Zone, Rocketeer, and Shredder Rocket too - but that last one is not as great) depends primarily on you having Slingshot DLC installed or not. WTF you're asking? All weapon types can be upgraded, but the only way to upgrade rocket launcher (to something ridiculously overpowered) is to capture an alien battleship and research Fusion Core. The problem is that without Slingshot DLC you won't see Battleships until very late in the game - in fact you're more likely than not to finish the game before any Battleship mission, since they have the same prerequisite (upgraded aircraft). But with the Slingshot DLC you can capture one quite early, making your Heavies completely overpowered mid game. Either way, I'd pick Rocketeer.
Overall, I'd say Heavy's skill tree is quite well designed, and the only changes I'd make would be some rebalancing. The choice to hide skill tree is probably bad for mechanics, but it makes sense from storyline point of view.
And it might be a good idea to add some mid-game rocket launcher upgrade, since overpowered DLCs are not good for any game.
AssaultAssaults are also pretty nicely designed.
- Squaddie - Run & Gun - allows firing or using overwatch after using both actions for moves, 2 turn cooldown.
- Corporal - Tactical Sense - +5 defence per enemy is sight (max +20)
- Corporal - Aggression - +10% critical hit chance per enemy in sight (max +30%)
- Sergeant - Lightning Reflexes - first reaction shot against the unit always misses
- Sergeant - Close and Personal - +30% critical shot chance against adjacent targets, bonus declines with distance
Close and Personal is a nice bonus for situations where you're already winning and it's safe to get very close to the alien, but in more difficult situations you just don't want to do that.
- Lieutenant - Flush - fires a shot that causes enemy to run out of cover, it's easier to hit but causes less damage
- Lieutenant - Rapid Fire - can fire two shots against single target with -15 aim penalty
3 out of 4 classes have some way to shoot twice. Rapid Fire has benefit of taking just one action (unlike Bullet Swarm and Double Tap), so you can fire and shoot twice. With Run&Gun and Rapid Fire you even get to move twice and shoot twice in just one turn. What's better - unlike Double Tap, Rapid fire has no cooldown, and unlike Bullet Swarm Assaults don't run out of ammo that fast. It's pretty amazing. There's rarely any reason to use regular fire once you get Rapid Fire.
- Captain - Close Combat Specialist - free reaction shot against any enemy which moves within 4 tiles, does not depend on overwatch
- Captain - Bring 'Em On - 1 damage to critical hits for each enemy the squad can see (up to 5)
- Major - Extra Conditioning - health bonus depending on type of armor equipped
- Colonel - Resilience - immunity to critical hits
- Colonel - Killer Instinct - activating Run & Gun gives +50% critical damage for the rest of turn
- Squaddie - Smoke Grenade - can throw smoke grenade that gives +20 defence bonus to all units under it, lasts through enemy turn
- Corporal - Sprinter - can move 3 additional tiles per move
- Corporal - Covering Fire - allows reaction shots to trigger on enemy attacks, not just movement
- Sergeant - Field Medic - can use medkits 3 times per battle rather than just 1
- Sergeant - Smoke and Mirrors - can use smoke grenades 2 times per battle (3 in Enemy Within) rather than 1
- Lieutenant - Revive - critically wounded soldiers recover to 33% of max health rather than just stabilizing
- Lieutenant - Rifle Suppression - special shot that makes target suffer -30 aim, and grants free reaction fire against it
- Captain - Dense Smoke - smoke grenades give extra +20 defence (+40 total) and have increased area of effect
- Captain - Combat Drugs - smoke grenades give extra +20 will and +10% critical hit chance
- Major - Deep Pockets - additional item slot in inventory (in Enemy Within instead additional use for each single use item)
- Colonel - Savior - medkits restore 4 more health per use
- Colonel - Sentinel - two reaction shops during overwatch instead of one
Covering Fire and Sentinel might be better on a Sniper instead, and Battle Scanner on the Support perhaps? Sprinter for that matter would synergize amazingly well with Assault's Lighting Reflexes and Run&Gun. Maybe Flush and Grenadier for the Support instead? It feels like rearranging skill trees could result in something much more interesting and balanced.
How to design skill trees
- Randomness is a very powerful game design element, but don't overdo it.
- Show whole skill trees, not just currently available portion, so player can look for synergies (problems with Rocketeer, Savior/Sentinel)
- Not everything has to be balanced. Within reason, it's good when player can figure out that some abilities are more powerful than others - but it's not great when half of abilities never see any use.
- Avoid giving the player a choice between a must-have skill and a nice-to-have skill (Squadsight vs Snap Shot).
- If two skills have interesting synergy, do not make them mutually exclusive (Squadsight + Snapshot).
- If skills have anti-synergy, put them on separate classes. (mostly done right)
- Don't make "upgrades" that make the character worse (like Squaddie Sniper).
- Give player options to deal with potentially unbalanced game elements. At best they won't need them. (like HEAT Ammo).
- If a skill is necessary for other skills, make it impossible to pick those other skills without picking the prerequisite (Fire Rocket and other rocket-related skills)
- Some players like high variance game elements, others prefer solid low variance (In The Zone vs Double Tap)