XCOM:EU Perks

From Nexus Mods Wiki
Jump to: navigation, search




Overview

Here is a list of the perks found in the XComGame.upk file function XComPerkManager and their uses & effects, to be completed as testing advances.

A table of the Perk value codes and their offsets may be found in Table of Perk Codes and Offsets - XCOM:EU 2012.

There is now a mod available (for EU) that expands the size of the table and the number of selections available for each promotion. See Enhanced Perk Tree mod - XCOMEU: 2012. The information presented here is still applicable to that mod.

Perks versus Abilities

(Taken from an Amineri post in the Enemy Within Discovery Thread.)

Unfortunately the game itself blurs the line here, but from a code perspective these things are quite distinct.

Perks are drawn from the enum XGTacticalGameCoreNativeBase.EPerkType -- in EU this had 111 entries, while in EW the list has been expanded to 172.

Abilities are drawn from the enum XGTacticalGameCoreData.EAbility -- in EU this had 89 entries, while in EW the list has been expanded to 96.

As you can see there are 61 new perks but only 7 new abilities.

Here's the distinction.

PERK

A perk is a passive property that a unit possesses. Perks are stored in an array in XGCharacter. XGUnit is a m_kChar variable of type XGCharacter that stores this. Typically perk info is accessed via the HasUpgrade function:

simulated function bool HasUpgrade(int iUpgrade)
{
    return m_kChar.aUpgrades[iUpgrade] > 0;
}


A perk directly by itself doesn't do anything. Perks can be coded to have active or passive effects.

Perk passive effects are things that do not spawn a pressable button in the tactical HUD. These effects are automatically triggered when the conditions are met, without active intervention from the player. Examples of passive perk effects are Lightning Reflexes and Bullet Swarm.

Perk active effects usually trigger abilities, sometimes in combination with other conditions. Examples of active perk effects that trigger abilities are Run And Gun and Suppression. These generate pressable buttons in the tactical HUD.

ABILITY

Abilities have a lot more mechanics behind them. Abilities have ability properties and ability effects, both of which have enum lists describing possible properties and effects.

Abilities have to be configured (unlike perks). This happens in XGAbilityTree.BuildAbilities. For example:

BuildAbility(7, 2, 2, -1, -20, 1,,, 1, 47,,,,,,, 8);


is the configuration line for the basic "Fire action" ability. This is the one that allows a unit to perform the basic firing action (typically the left-most button in the tactical HUD).

Abilities can be made available by a variety of options:

  • Can be directly granted to a weapon, armor or character-type in the config data. For example ghost armor has:

Armors=( ABILITIES[0]=eAbility_Ghost, ABILITIES[1]=eAbility_NONE, ... iType=eItem_ArmorGhost, iHPBonus=6, iDefenseBonus=20, iFlightFuel=0,  iWillBonus=0,  iLargeItems=1, iSmallItems=1, iMobilityBonus=3 )


Most weapons grant the fire ability directly, like the Assault Rifle:

Weapons=( strName="", iType=eItem_AssaultRifle, ABILITIES[0]=eAbility_ShotStandard, ABILITIES[1]=eAbility_NONE,... ) 


  • Can be made available if the unit has a perk. For example:
having ePerk_RunAndGun' (6) grants eAbility_RunAndGun (68). To make things more confusing the eAbility_RunAndGun has the eEffect_RunAndGun (30). eEffect_RunAndGun is of type EAbilityEffect.
  • Can be made available in special circumstances.
This mostly applies to alien abilities. For example:
the Cyberdisc is not granted the eAbility_DeathBlossom by configuration in the DGC.ini, but is instead directly given the ability based on character type.

Available abilities are unfortunately built using native code. preventing their modification. The relevant function is XGUnitNativeBase.BuildAbilities. (Note that the BuildAbilities name is overloaded, since it is also used in XGAbilityTree.BuildAbilities):

native function BuildAbilities(optional bool bUpdateUI)
{
   bUpdateUI = false;            
}

  • function XGUnitNativeBase.BuildAbilities -- rebuilds the currently available abilities based on circumstances. For example after using Run And Gun, grenade abilities are suppressed.
  • function XGAbilityTree.BuildAbilities -- initially configures abilities, including ability duration, cooldown, properties and effects.

Details

The following information about Perks/Abilities applies to unmodified, vanilla XCOM. There are mods that alter some of these restrictions. Note that some restrictions apply to specific soldier classes, while others apply to particular weapons.

It is also important to consider the indirect effects of Class related 'Properties' of 'Weapons' in the DGC.INI file. (See DefaultGameCore.ini settings - XCOM:EU 2012.) For instance, adding the eWP_Heavy Property to a weapon reduces it's max available ammo to three shots, while allowing the Heavy Class to equip it.

DefaultGameCore.INI Perk entries

[XComGame.XComPerkManager]
SoldierPerkTrees= entries contain the lists of soldier perks at each rank. To change the available perks at a rank, simply change the list 'config' values. You may get some weirdness if you do things like remove "ePerk_FireRocket" as the first perk for Heavies, though.

The SoldierPerkTree DGC.INI configuration data was added with the EW release. In EW this DGC.INI data is accessed through the XComPerkManager.GetPerkInTree function, which handles / retrieves all 5 classes (included MECs) as well as psi-tree perks. Medals and genemods are handled separately.

EU had all of the Perk data hard-coded into the XComGame.UPK in the XComPerkManager class. In EU this was further broken down into a call to 1 of 4 helper functions that implicitly stored the perk data for each class. (e.g. GetPerkInTreeSupport). In order to modify the Perk trees it was necessary to modify the UPK file.

EW has a further twist to the code in that the call-path now routes through a new function in XComStrategyGame.UPK, XGStrategySoldier.GetPerkInClassTree. This is the function responsible for doing the mapping for randomly assigned perks.

The lists below the rank of "Colonel" are the "random perks" that apply if the Second Wave option "Training Roulette" is enabled. Any perk in the "random perks" list can randomly be swapped for another perk from the same list (a few hard-coded exceptions exist). Perks in the soldier's tree not in the "random perks" list won't be randomized.

The random perks are picked when the soldier has their class set, which only happens when the soldier is leveled up from rank 0 (Rookie) to rank 1 (Squaddie). All random perks are picked at that point and aren't changed, but the UI is set to not display perk choices for ranks above current.

What Works (but isn't obvious)

  • Holotargeting works for all classes, and is not restricted to the LMG.
  • In the Zone works for all classes.
  • In the Zone works with Run & Gun after a Dash.
  • Rapid Fire refreshes after each kill with In The Zone.
  • Rapid Fire works with Bulletswarm if fired LAST. (Means 3 shots in a round!)
  • Run & Gun works with the Sniper Rifle ONLY with Snapshot active.
  • Disabling Shot and Headshot work with the Assault Rifle ONLY if you edit the DGC.INI file. You need to add Ewp_Sniper as a second property to the Weapon. They don't work with Run & Gun ability after a Dash. Disabling Shots animation is broken for the Assault Rifle but the action does function correctly.
  • Double Tap is restricted to the Sniper Class, so adding Ewp_Sniper and Ewp_Anyclass to the Assault Rifle will allow your Sniper to Double Tap with an Assault Rifle, but no other class can do it. (However, see the mod XCOM EU: Double Tap and Bullet Swarm Unlocked.)

Restrictions

  • Bulletswarm only works for Heavy Class. (However, see the mod XCOM EU: Double Tap and Bullet Swarm Unlocked.)
  • Double Tap only works with the Sniper Class. (However, see the mod XCOM EU: Double Tap and Bullet Swarm Unlocked.)
  • Smoke and Mirrors cannot be selected multiple times to give soldier more than 2 smokes. (2 smokes max!)
  • Combat Drugs and Dense Smoke don’t stack together if a soldier has both.
  • Rifle Suppression does not work with Shotguns.
  • Holotargeting does not apply when using Flush (so no +30 to aim when flushing a critter from full cover).
  • Holotargeting does not apply when using Rapid Fire.
  • Covering Fire combined with Sentinel and/or Rapid Reaction only fires ONCE at an attacking enemy, even if you hit that enemy.
  • Sentinel and Rapid Reaction combined do NOT allow 4 Overwatch shots in the same turn. You either get 2 shots at a single target with Rapid Reaction, or 1 shot at 2 different targets with Sentinel. Extensive testing has confirmed this. Furthermore, after you get your two reaction shots, you can’t use Covering Fire in the same turn. Seems like 2 reaction shots max are hardwired into the game.
  • Tactical Sense and Aggression do NOT provide bonuses against enemies available only from Squadsight.

Comparison Groupings

With the ability to modify the Perk/Ability trees, it becomes useful to categorize the abilities, regardless of original class, for comparison prior to selection.

Regarding Ability numbers: some of them are class specific or give problems when giving them to other classes. They are coded as follows and arranged is ascending decimal order within each group:

*** (Class specific)
### (Issues)
nn/hh (nn=Decimal: for reference and VPE; /hh=Hex: byte-code, from the XComPerkManager List.)
(Affect Codes): + =bonus, - =penalty; Number before Affect Code =applies to Soldiers, after =applies to Aliens.
(Affect Code) modifiers: (C)=Critical Chance/Damage; (L)=with Limitation considerations; (P)=Psionic; (T)= Tech Level.

Second shot enablers (S)

(nn/hh)
  • 02/1A { Bullet Swarm } *** (S): Firing the primary weapon as the first action no longer ends the turn. Does stack with Rapid Fire if that is used LAST.
  • 13/06 { Run & Gun } (SL): Allows firing or Overwatch after Dashing on the turn Run & Gun is activated. 2 turn cooldown. Does stack with Sniper Rifle ONLY with Snap Shot active.
  • 19/24 { Rapid Fire } (S-15A): Take two shots against a single target in quick succession. Each shot carries a -15 penalty to Aim. ITZ refreshes this after every kill, and works with Bullet Swarm if used last.
  • 26/10 { Snap Shot } *** (S-20A): Removes the sniper rifle's restriction on firing and Overwatch after moving. Any shots taken suffer a -20 Aim penalty. (The description suggests this is weapon restricted. Needs validation for other weapons.)
  • 35/0E { In The Zone } (S): Killing a flanked or uncovered target does not cost an action. (Works for all classes, and with Run & Gun after a Dash.)
  • 36/0D { Double Tap } *** (SL): Allows both actions to be used for Standard Shot, Headshot, or Disabling Shot, provided no moves were made. 1 turn cooldown. (This is a Sniper class rather than weapon restriction.)

Reaction shot enablers (R)

(nn/hh; Hardcoded limit of 2 Reactions per turn)
  • 05/15 { Suppression } (R-A30): Can fire a special shot that grants reaction fire at a single target. The target also suffers a -30 Aim penalty.
  • 07/17 { Rapid Reaction } (RL): Confers a second reaction shot (at the same target), if on Overwatch and the first reaction shot is a hit. Does NOT stack with Sentinel or Covering Fire.
  • 20/28 { Close Combat Specialist } (RL): Confers a reaction shot against any enemy who closes to within 4 tiles. Does not require Overwatch.
  • 33/0A { Opportunist } (R+20A): Eliminates the -20 Aim penalty on reaction shots, and allows reaction shots to cause critical hits.
  • 39/2F { Covering Fire } (R): Allows reaction shot to trigger on enemy attacks, not just movement. Only ONCE per enemy with Sentinal or Rapid Reaction.
  • 43/31 { Rifle Suppression } (R-A30): Fires a barrage that pins down a target, granting reaction fire against it and imposing a -30 penalty to aim. Not useable with Shotguns. (The description suggests this is weapon restricted. Needs validation for other weapons like Sniper/Plasma weapons or LMG.)
  • 48/36 { Sentinel } (RL): Allows two reaction shots (at different targets) during Overwatch, instead of only one. Does NOT stack with Rapid Reaction.

Aiming modifiers (A)

(nn/hh)
  • 03/13 { Holo-Targeting } (+10AL): Shooting at or suppressing enemies also confers a +10 Aim to any allies' attacks on those enemies. Does not stack with Flush or Rapid Fire.
  • 05/15 { Suppression } (R-A30): Can fire a special shot that grants reaction fire at a single target. The target also suffers a -30 Aim penalty.
  • 14/21 { Tactical Sense } (-A5~20): Confers +5 Defense per enemy in sight (max 20). Does NOT protect against Squadsight Snipers.
  • 15/20 { Aggression } (+10~30CA): Confers +10% critical chance per enemy in sight (max +30%). Does NOT benefit Squadsight Snipers.
  • 16/23 { Lightning Reflexes } (-A100): Forces the first reaction shot against this unit each turn to miss.
  • 17/22 { Close and Personal } (+30CAL): Confers +30% critical chance against adjacent targets. The bonus declines with distance from the target.
  • 18/12 { Flush } (+30A+=4D): Fire a shot that causes enemies to run out of cover. The shot is easy to hit with, but does reduced damage.
  • 19/24 { Rapid Fire } (S-15A): Take two shots against a single target in quick succession. Each shot carries a -15 penalty to Aim. ITZ refreshes this after every kill, and works with Bullet Swarm if used last.
  • 24/29 { Killer Instinct } (A&D): Activating Run & Gun now also grants +50% critical damage for the rest of the turn.
  • 25/02 { Headshot } *** (+30CA+?CD): Fire a shot with +30% critical chance and extra damage on critical hits based on the tech level of the sniper rifle. 2 turn cooldown. Allowed with assault rifles with the 'ewp_sniper' and 'ewp_anyclass' properties. (This is a weapon rather than class restriction.)
  • 26/10 { Snap Shot } *** (S-20A): Removes the sniper rifle's restriction on firing and Overwatch after moving. Any shots taken suffer a -20 Aim penalty. (The description suggests this is weapon restricted. Needs validation for other weapons.)
  • 27/03 { Squadsight } (AL): Allows firing at targets in any ally's sight radius, but still requires clear LoF. Works with the assault rifle as well without changes.
  • 29/0F { Damn Good Ground } (+10A-10L): +10 Aim and +10 Defense against enemies at lower elevation in addition to the usual elevation bonuses.
  • 30/09 { Disabling Shot } *** (-10A-100CDL): Allows weapons with the 'ewp_sniper' and 'ewp_anyclass' properties to fire a shot that causes the target's main weapon to malfunction. The target may use Reload to fix the weapon. The shot cannot inflict a critical hit. 2 turn cooldown. -10 Aim penalty. Animation with Assault Rifles is broken. (This is a weapon rather than class restriction.)
  • 31/08 { Battle Scanner } (AL): Scanning device, when thrown creates a new source of vision for 2 turns. Can only be used 2 times per battle.
  • 32/0B { Executioner } (+10AL): +10 Aim against targets with less than 50% health.
  • 33/0A { Opportunist } (RC+20A): Eliminates the -20 Aim penalty on reaction shots, and allows reaction shots to cause critical hits.
  • 34/05 { Low Profile } (-A20): Makes partial cover count as full. [+20 Defense]
  • 37/2C { Smoke Grenade } (-A20): Deploy a smoke grenade once per mission. The smoke confers +20 Defense to all units, not just allies, and lasts during the enemy turn.
  • 41/5C { Smoke and Mirrors } (-A20I): Allows 1 additional use of Smoke Grenade each mission. [+20 Defense]
  • 43/31 { Rifle Suppression } (R-A30): Fires a barrage that pins down a target, granting reaction fire against it and imposing a -30 penalty to Aim. Not useable with Shotguns. (The description suggests this is weapon restricted. Needs validation for other weapons like Sniper/Plasma, Pistols, or LMG.)
  • 44/34 { Dense Smoke } (-A40): Smoke Grenades have increased area of effect and further increase units' Defense by 20. Does not stack with Combat Drugs.
  • 45/33 { Combat Drugs } (+10C+20A-DP20): Smoke Grenades now contain powerful stimulants that grant +20 Aim, +20 Will, and +10% critical chance for all units in the cloud. Does not stack with Dense Smoke.

Damage modifiers (D)

(nn/hh)
  • 04/16 { Shredder Rocket } *** (+D33%L): Fire a rocket that causes all enemies hit to take +33% damage from all sources for the next 4 turns. The rocket's blast is weaker than a standard rocket's.
  • 06/5B { HEAT Ammo } (+D100%L): +100% to damage against robotic enemies.
  • 09/19 { Danger Zone } *** (D): Increases hit area of rockets and suppression by 2 tiles.
  • 10/11 { Will to Survive } (-2DL): Reduces all normal damage taken by 2 if in cover and not flanked.
  • 12/5E { Mayhem } (+1TD): Confers additional damage based on weapon tech level to Suppression and all area-effect abilities (1 damage per tech level).
  • 17/22 { Close and Personal } (A&D): Confers +30% critical chance against adjacent targets. The bonus declines with distance from the target.
  • 18/12 { Flush } (+30A+=4D): Fire a shot that causes enemies to run out of cover. The shot is easy to hit with, but does reduced damage.
  • 21/27 { Bring 'Em On } (+1~5DC): Adds 1 damage on critical hits for each enemy the squad can see (up to 5).
  • 22/1B { Extra Conditioning } (-TDL): Confers bonus health based on which type of armor is equipped. Heavier armor increases the bonus.
  • 23/2B { Resilience } (-D100%C): Confers immunity to critical hits.
  • 24/29 { Killer Instinct } (+50%CDL): Activating Run & Gun now also grants +50% critical damage for the rest of the turn.
  • 28/5F { Gunslinger } (+2DL): Confers 2 bonus damage with pistols.
  • 42/38 { Revive } (=33%D): Allows Medikits to revive critically wounded Soldiers at 33% of maximum health instead of just stabilizing them.
  • 45/33 { Combat Drugs } (+10%CA-DP20): Smoke Grenades now contain powerful stimulants that grant +20 Will and +10% critical chance for all units in the cloud. Does not stack with Dense Smoke.
  • 47/37 { Savior } (-4D): Medikits restore 4 more health per use.

Inventory modifiers (I)

(nn/hh)
  • 08/18 { Grenadier } (I): Allows to carry 2 grenades in a single inventory slot.
  • 11/29 { Rocketeer } *** (I): Allows 1 additional standard rocket to be fired per battle.
  • 40/30 { Field Medic } (I): Allows medikits to be used 3 times per battle instead of once.
  • 41/5C { Smoke and Mirrors } (-A20I): Allows 1 additional use of Smoke Grenade each mission. [+20 Defense]
  • 46/35 { Deep Pockets } (I): Confers an additional item slot in inventory. (This will not display properly when combined with a mod that adds a second item inventory slot to armor. However, see XCOM Third Small Item Mod.)

Misc. enablers (M)

(nn/hh)
  • 01/12 { Fire Rocket } *** (M): Fire a rocket using an equipped launcher. This ability can not be used after moving, nor more than once per mission.
  • 38/1F { Sprinter }(M): Allows the soldier to move 3 additional tiles.

Perk Tree Layout for UI Choices

The following applies to the unmodified, vanilla Perk/Ability Tree.

Choice Table Layout:
Column A Column B
01
03 02
05 04
07 06
09 08
10
12 11


Here the choices are simply "Choice 1", Choice 2", etc. as displayed on the UI, rather than specific Perk codes. In each Class specific Perk Tree that follows, the numbers are the significant HEX code values assigned to each Perk which need to be replaced with the desired perk code in the existing code pattern. They are presented in the order they appear in the vanilla UI table as choices (i.e. first perk will be in choice position labelled '01', second perk will be in choice position labelled '02', etc.

Assault Class Perks Tree

The following applies to the unmodified, vanilla Perk/Ability Tree.

Hex Perk Description
06 Run & Gun: Allows firing or Overwatch after Dashing on the turn Run & Gun is activated. 2 turn cooldown.
21 Tactical Sense: Confers +5 Defense per enemy in sight (max 20).
20 Aggression: Confers +10% critical chance per enemy in sight (max +30%).
23 Lightning Reflexes: Forces the first reaction shot against this unit each turn to miss.
22 Close and Personal: Confers +30% critical chance against adjacent targets. The bonus declines with distance from the target.
25 Flush: Fire a shot that causes enemies to run out of cover. The shot is easy to hit with, but does reduced damage.
24 Rapid Fire: Take two shots against a single target in quick succession. Each shot carries a -15 penalty to Aim.
28 Close Combat Specialist: Confers a reaction shot against any enemy who closes to within 4 tiles. Does not require Overwatch.
27 Bring 'Em On: Adds 1 damage on critical hits for each enemy the squad can see (up to 5).
1B Extra Conditioning: Confers bonus health based on which type of armor is equipped. Heavier armor increases the bonus.
2B Resilience: Confers immunity to critical hits.
29 Killer Instinct: Activating Run & Gun now also grants +50% critical damage for the rest of the turn.

Here is the hex code for the vanilla tree, with { comments } (syntax as recognized by mod 'ToolBoks') identifying specific perk codes:

{ ASSAULT }
04 2C

{ Rank 1 Private }
06 { Run & Gun }

06 4A 01 07 4F 00 9A 00 37 66 00 00 2C 02 16 07 3A 00 9A 00 36 66 00 00 25 16 04 2C

{ Rank 2 Corporal }
20 { Aggression }

06 4C 00 07 4C 00 9A 00 36 66 00 00 26 16 04 2C

21 { Tactical Sense }

06 4A 01 07 89 00 9A 00 37 66 00 00 2C 03 16 07 74 00 9A 00 36 66 00 00 25 16 04 2C

{ Rank 3 Sergeant }
22 { Close & Personal }

06 86 00 07 86 00 9A 00 36 66 00 00 26 16 04 2C

23 { Lightning Reflexes }

06 4A 01 07 C3 00 9A 00 37 66 00 00 2C 04 16 07 AE 00 9A 00 36 66 00 00 25 16 04 2C

{ Rank 4 Lieutenant }
24 { Rapid Fire }

06 C0 00 07 C0 00 9A 00 36 66 00 00 26 16 04 2C

25 { Flush }

06 4A 01 07 FD 00 9A 00 37 66 00 00 2C 05 16 07 E8 00 9A 00 36 66 00 00 25 16 04 2C

{ Rank 5 Captain }
27 { Bring em On }

06 FA 00 07 FA 00 9A 00 36 66 00 00 26 16 04 2C

28 { Close Combat Specialist }

06 4A 01 07 13 01 9A 00 37 66 00 00 2C 06 16 04 2C

{ Rank 6 Major }
1B { Extra Conditioning }

06 4A 01 07 4A 01 9A 00 37 66 00 00 2C 07 16 07 38 01 9A 00 36 66 00 00 25 16 04 2C

{ Rank 7 Colonel }
29 { Killer Instinct }

06 4A 01 07 4A 01 9A 00 36 66 00 00 26 16 04 2C

2B { Resilience }

04 25 04 3A 35 66 00 00 53 00 00 00 02 00 02 00 FE 33 00 00 00 00 00 00 4A 66 00 00 50 55 00 00 00 00 00 00 00 00 00 00 01 00 00 00 80 05 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 4B 66 00 00 50 55 00 00 00 00 00 00 39 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 4C 66 00 00 50 55 00 00 00 00 00 00 3A 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 4D 66 00 00 50 55 00 00 00 00 00 00 38 66 00 00 00 00 00 00 00 00 00 00 3B 66 00 00 00 00 00 00 C5 01 00 00 A2 41 00 00 57 01 00 00 0F 01 00 00 07 15 00 9A 00 3B 66 00 00 26 16 04 2C

{ End of vanilla Skill default assignments }

Support Class Perks Tree

The following applies to the unmodified, vanilla Perk/Ability Tree.

Hex Perk Description
2C Smoke Grenade: Deploy a smoke grenade once per mission. The smoke confers +20 defense to all units, not just allies, and lasts during the enemy turn.
1F Sprinter: Allows the support to move 3 additional tiles.
2F Covering Fire: Allows reaction shot to trigger on enemy attacks, not just movement.
30 Field Medic: Allows medikits to be used 3 times per battle instead of once.
5C Smoke and Mirrors: Allows 1 additional use of Smoke Grenade each mission.
38 Revive: Allows Medikits to revive critically wounded Soldiers at 33% of maximum health instead of just stabilizing them.
31 Rifle Suppression: Fires a barrage that pins down a target, granting reaction fire against it and imposing a 30 penalty to aim.
34 Dense Smoke: Smoke Grenades have increased area of effect and further increase units' Defense by 20.
33 Combat Drugs: Smoke Grenades now contain powerful stimulants that grant +20 Will and +10% critical chance for all units in the cloud.
35 Deep Pockets: Confers an additional item slot in inventory.
37 Savior: Medikits restore 4 more health per use.
36 Sentinel: Allows two reaction shots during Overwatch, instead of only one.

Here is the hex code for the vanilla tree, with { comments } identifying specific perk codes:

{SUPPORT }
04 2C

{ Rank 1 Private }
2C { Smoke Grenade }

06 4A 01 07 4F 00 9A 00 3B 66 00 00 2C 02 16 07 3A 00 9A 00 3A 66 00 00 25 16 04 2C

{ Rank 2 Corporal }
2F { Covering Fire }

06 4C 00 07 4C 00 9A 00 3A 66 00 00 26 16 04 2C

1F { Sprinter }

06 4A 01 07 89 00 9A 00 3B 66 00 00 2C 03 16 07 74 00 9A 00 3A 66 00 00 25 16 04 2C

{ Rank 3 Sergeant }
5C { Smoke and Mirrors }

06 86 00 07 86 00 9A 00 3A 66 00 00 26 16 04 2C

30 { Field Medic }

06 4A 01 07 C3 00 9A 00 3B 66 00 00 2C 04 16 07 AE 00 9A 00 3A 66 00 00 25 16 04 2C


{ Rank 4 Lieutenant }
31 { Rifle Suppression }

06 C0 00 07 C0 00 9A 00 3A 66 00 00 26 16 04 2C

38 { Revive }

06 4A 01 07 FD 00 9A 00 3B 66 00 00 2C 05 16 07 E8 00 9A 00 3A 66 00 00 25 16 04 2C

{ Rank 5 Captain }
33 { Combat Drugs }

06 FA 00 07 FA 00 9A 00 3A 66 00 00 26 16 04 2C

34 { Dense Smoke }

06 4A 01 07 13 01 9A 00 3B 66 00 00 2C 06 16 04 2C

{ Rank 6 Major }
35 { Deep Pockets }

06 4A 01 07 4A 01 9A 00 3B 66 00 00 2C 07 16 07 38 01 9A 00 3A 66 00 00 25 16 04 2C

{ Rank 7 Colonel }
36 { Sentinel }

06 4A 01 07 4A 01 9A 00 3A 66 00 00 26 16 04 2C

37 { Savior }

{ End of vanilla Skill default assignments }

Heavy Class Perks Tree

The following applies to the unmodified, vanilla Perk/Ability Tree.

Hex Perk Description
12 Fire Rocket: Fire a rocket using an equipped launcher. This ability can not be used after moving, nor more than once per mission. (Note: Only works for Heavies)
1A Bullet Swarm: Firing the primary weapon as the first action no longer ends the turn. (Note: Only works for Heavies)
13 Holo-Targeting: Shooting at or suppressing enemies also confers a +10 Aim to any allies' attacks on those enemies.
16 Shredder Rocket: Fire a rocket that causes all enemies hit to take +33% damage from all sources for the next 4 turns. The rocket's blast is weaker than a standard rocket's.
15 Suppression: Can fire a special shot that grants reaction fire at a single target. The target also suffers a -30 Aim penalty.
5B HEAT Ammo: +100% to damage against robotic enemies.
17 Rapid Reaction: Confers a second reaction shot, if on Overwatch and the first reaction shot is a hit.
18 Grenadier: Allows to carry 2 grenades in a single inventory slot.
19 Danger Zone: Increases hit area of rockets and suppression by 2 tiles.
11 Will to Survive: Reduces all normal damage taken by 2 if in cover and not flanked.
5D Rocketeer: Allows 1 additional standard rocket to be fired per battle.
5E Mayhem: Confers additional damage based on weapon tech level to Suppression and all area-effect abilities (1 damage per tech level).

Here is the hex code for the vanilla tree, with { comments } identifying specific perk codes:

{ HEAVY }
04 2C

{ Rank 1 Private }
12 { Fire Rocket }

06 4A 01 07 4F 00 9A 00 33 66 00 00 2C 02 16 07 3A 00 9A 00 32 66 00 00 25 16 04 2C

{ Rank 2 Corporal }
13 { Holotargetting }

06 4C 00 07 4C 00 9A 00 32 66 00 00 26 16 04 2C

1A { Bulletswarm }

06 4A 01 07 89 00 9A 00 33 66 00 00 2C 03 16 07 74 00 9A 00 32 66 00 00 25 16 04 2C

{ Rank 3 Sergeant }
15  { Suppression }

06 86 00 07 86 00 9A 00 32 66 00 00 26 16 04 2C

16 { Shredder Rocket }

06 4A 01 07 C3 00 9A 00 33 66 00 00 2C 04 16 07 AE 00 9A 00 32 66 00 00 25 16 04 2C

{ Rank 4 Lieutenant }
17 { Rapid Reaction }

06 C0 00 07 C0 00 9A 00 32 66 00 00 26 16 04 2C

5B { HEAT Ammo }

06 4A 01 07 FD 00 9A 00 33 66 00 00 2C 05 16 07 E8 00 9A 00 32 66 00 00 25 16 04 2C

{ Rank 5 Captain }
19 { Danger Zone }

06 FA 00 07 FA 00 9A 00 32 66 00 00 26 16 04 2C

18 { Grenadier }

06 4A 01 07 13 01 9A 00 33 66 00 00 2C 06 16 04 2C

{ Rank 6 Major }
11 { Will to Survive }

06 4A 01 07 4A 01 9A 00 33 66 00 00 2C 07 16 07 38 01 9A 00 32 66 00 00 25 16 04 2C

{ Rank 7 Colonel }
5E { Mayhem }

06 4A 01 07 4A 01 9A 00 32 66 00 00 26 16 04 2C

5D { Rocketeer }

04 25 04 3A 31 66 00 00 53 00 00 00 02 00 02 00 FF 33 00 00 00 00 00 00 46 66 00 00 50 55 00 00 00 00 00 00 00 00 00 00 01 00 00 00 80 05 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 47 66 00 00 50 55 00 00 00 00 00 00 35 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 48 66 00 00 50 55 00 00 00 00 00 00 36 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 49 66 00 00 50 55 00 00 00 00 00 00 34 66 00 00 00 00 00 00 00 00 00 00 37 66 00 00 00 00 00 00 92 01 00 00 DB 3D 00 00 57 01 00 00 0F 01 00 00 07 15 00 9A 00 37 66 00 00 26 16 04 2C

{ End of vanilla Skill default assignments }

Sniper Class Perks Tree

The following applies to the unmodified, vanilla Perk/Ability Tree.

Hex Perk Description
02 Headshot: Fire a shot with +30% critical chance and extra damage on critical hits based on the tech level of the sniper rifle. 2 turn cooldown. (Note: Only works for sniper)
10 Snap Shot: Removes the sniper rifle's restriction on firing and Overwatch after moving. Any shots taken suffer a -20 Aim penalty.
Squadsight: Allows firing at targets in any ally's sight radius.
5F Gunslinger: Confers 2 bonus damage with pistols.
0F Damn Good Ground: +10 Aim and +10 Defense against enemies at lower elevation in addition to the usual elevation bonuses.
09 Disabling Shot: Fire a shot that causes the target's main weapon to jam. The target may Reload to fix the weapon. 2 turn cooldown. -10 Aim penalty. (Note: Only works for sniper)
08 Battle Scanner: Scanning device, when thrown creates a new source of vision for 2 turns. Can only be used 2 times per battle.
0B Executioner: +10 Aim against targets with less than 50% health.
0A Opportunist: Eliminates the Aim penalty on reaction shots, and allows reaction shots to cause critical hits.
05 Low Profile: Makes partial cover count as full.
0E In The Zone: Killing a flanked or uncovered target with the sniper rifle does not cost an action. (Note: Works for all classes)
0D Double Tap: Allows both actions to be used for Standard Shot, Headshot, or Disabling Shot, provided no moves were made. 1 turn cooldown. (Note: Only works for sniper)

Here is the hex code for the vanilla tree, with { comments } identifying specific perk codes:

{ SNIPER }
04 2C

{ Rank 1 Private }
02 { Headshot }

06 4A 01 07 4F 00 9A 00 2F 66 00 00 2C 02 16 07 3A 00 9A 00 2E 66 00 00 25 16 04 2C

{ Rank 2 Corporal }
03 { Squadsight }

06 4C 00 07 4C 00 9A 00 2E 66 00 00 26 16 04 2C

10 { Snapshot }

06 4A 01 07 89 00 9A 00 2F 66 00 00 2C 03 16 07 74 00 9A 00 2E 66 00 00 25 16 04 2C

{ Rank 3 Sergeant }
0F { Damn Good Ground }

06 86 00 07 86 00 9A 00 2E 66 00 00 26 16 04 2C

5F { Gunslinger }

06 4A 01 07 C3 00 9A 00 2F 66 00 00 2C 04 16 07 AE 00 9A 00 2E 66 00 00 25 16 04 2C

{ Rank 4 Lieutenant }
08 { Battlescanner }

06 C0 00 07 C0 00 9A 00 2E 66 00 00 26 16 04 2C

09 { Disabling Shot }

06 4A 01 07 FD 00 9A 00 2F 66 00 00 2C 05 16 07 E8 00 9A 00 2E 66 00 00 25 16 04 2C

{ Rank 5 Captain }
0A {Opportunist}

06 FA 00 07 FA 00 9A 00 2E 66 00 00 26 16 04 2C

0B { Executioner }

06 4A 01 07 13 01 9A 00 2F 66 00 00 2C 06 16 04 2C

{Rank 6 Major}
05 { Low Profile }

06 4A 01 07 4A 01 9A 00 2F 66 00 00 2C 07 16 07 38 01 9A 00 2E 66 00 00 25 16 04 2C

{ Rank 7 Colonel }
0D { DoubleTap }

06 4A 01 07 4A 01 9A 00 2E 66 00 00 26 16 04 2C

0E { In the Zone }

04 25 04 3A 2D 66 00 00 53 00 00 00 02 00 02 00 01 34 00 00 00 00 00 00 42 66 00 00 50 55 00 00 00 00 00 00 00 00 00 00 01 00 00 00 80 05 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 43 66 00 00 50 55 00 00 00 00 00 00 31 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 44 66 00 00 50 55 00 00 00 00 00 00 32 66 00 00 01 00 00 00 80 00 00 00 00 00 00 00 50 55 00 00 00 00 00 00 00 00 00 00 45 66 00 00 50 55 00 00 00 00 00 00 30 66 00 00 00 00 00 00 00 00 00 00 33 66 00 00 00 00 00 00 5F 01 00 00 20 3A 00 00 57 01 00 00 0F 01 00 00 07 15 00 9A 00 33 66 00 00 26 16 04 2C

{ End of vanilla Skill default assignments }

Psi Class Perks Tree

The following applies to the unmodified, vanilla Perk/Ability Tree.

Hex Perk Description
45 Mindfray: Use psi abilities in combat to unlock further psi training. Causes the target to lose grip on reality, inflicting penalties to Aim, Will, and mobility, and doing 5 base damage. Robotic units are immune. Lasts 2 turns. 1 turn cooldown.
46 Psi Panic: Cause target to panic on its following turn, if the target's Will is overcome. Robotic enemies are immune. 2 turn cooldown.
47 Psi Inspiration: Removes Mindfray and panic from all allies within 3 tiles, and strengthen their Will by 30 for 3 turns. 4 turn cooldown.
48 Mind Control: Very difficult psi technique that, if successful, grants control of the target for 5 turns. Robotic enemies are immune. 5 turn cooldown.
49 Telekinetic Field: Create an immobile telekinetic field that lasts through the enemy turn. The field distorts and deflects incoming attacks, granting 40 Defense to both allies and enemies within the field. 5 turn cooldown.
4A Rift: Devastate an area with a storm of psi energy. The rift does more damage against targets with low Will, and reduced damage against targets with high Will. 4 turn cooldown. Only available at a certain time in the story.

Here is the hex code for the vanilla tree, with { comments } identifying specific perk codes:

{ PSI }
55 00 45 65 00 00 03 00 2C
45                                        { PsiMindfray }
16 55 00 45 65 00 00 03 00 2C
46                                        { PsiPanic }
16 55 00 45 65 00 00 03 00 2C
47                                        { PsiInspiration }
16 55 00 45 65 00 00 03 00 2C
48                                        { PsiMindControl }
16 55 00 45 65 00 00 03 00 2C
49                                        { PsiTelekineticField }
16 55 00 45 65 00 00 03 00 2C
4A                                        { PsiRift }
16 04 00 45 65 00 00 04 3A 46 65 00 00 53 00
00 00 02 01 02 00 07 34 00 00 00 00 00 00

"Legacy" Perks

These are perks that are believed to have been in the game at some point but do not appear in any of the classes' perk trees in the final game.

TooCloseForComfort
enum value 4 = 0x04
No BuildPerk() call, but is defined in enum EPerkType as ePerk_TooCloseForComfort
INT Localisation file gives additional information:
m_strPassiveTxt[ePerk_TooCloseForComfort]="Aim penalty for close proximity is halved."
Presumably a discarded Sniper Class perk
Button Up
BuildPerk(12, 0, "ButtonUp");
If added to ability tree, appears with a "?" icon and no description. Does not seems to activate a particular ability.
HEAT Rockets
BuildPerk(20, 0, "HEATRockets");
Appears to be early version of Perk 'Heat Ammo'
Blitz
enum value 28 = 0x1C
No BuildPerk() call, but is defined in enum EPerkType as ePerk_Blitz
First Blood
BuildPerk(29, 0, "FirstBlood");
does not appear in any tree. Testing needed.
From localisation files
m_strPassiveTitle[ePerk_FirstBlood]="Rocketeer"
m_strPassiveTxt[ePerk_FirstBlood]="Allows a second use of Fire Rocket in each mission."
Ready For Anything
BuildPerk(30, 0, "ReadyForAnything");
Does not appear in any tree.
Can be granted to soldiers via Perk Tree
Has no icon or descriptive text
If soldier does not move, then after firing a shot the soldier can enter overwatch
Abilities do not correctly update after firing - pressing fire again will cause the ability HUD to refresh
Using Overwatch after firing shows text "Soldier is Ready for Anything"
Using a grenade ends turn as usual -- overwatch cannot be entered
Related script :
simulated function bool ReadyForAnythingPerkActive()
{
return GetCharacter().HasUpgrade(30) && (m_iFireActionsPerformed == 1) && (m_iMovesActionsPerformed == 0) && (m_arrVisibleEnemies.Length > 0);
}
Flame On
BuildPerk(38, 0, "FlameOn");
Does not appear in any tree. Testing needed.
Possibly a legacy perk linked to the canceled flamer weapon ?
Vengeance
BuildPerk(42, 0, "Vengeance");
Does not appear in any tree. Testing needed
Appears to cause unit to use 'Fire' ability on any unit that damages it
The Blue Wire
enum value 45 = 0x2D
No BuildPerk() call, but is defined in enum EPerkType as ePerk_TheBlueWire
Modern Foxhole
enum value 50 = 0x32
No BuildPerk() call, but is defined in enum EPerkType as ePerk_ModernFoxhole
Heat Wave
BuildPerk(96, 1, "HeatWave");
Does not appear in any tree or alien. Placement suggests it is intended as an Alien perk. "1" indicates an active perk.
If added to ability tree, appears with a "?" icon and no description. When combined with the eAbility_HeatWave (does not appear anywhere in Vanilla), it adds an active ability which has a randomly changing icon and no desciption. Trying to activate it brings up a targeting interface, but I was not able to target anything even with enemies in sight. This ability may be only partially implemented, or be tied to a specific weapon.

"State" Perks

Some of the states soldiers and aliens can be in during tactical combat are described with perks.

BuildPerk(57, 0, "HeightAdvantage");
self-explanatory, descriptions as follows :
m_strBonusTxt[57]="All units receive offensive bonuses against enemies on lower ground."
m_strPenaltyTxt[57]="An enemy unit has elevated position and can see this unit."
m_strPassiveTxt[57]="Elevated Ground"
BuildPerk(59, 0, "ImmuneToDisabled");
no other references found
BuildPerk(60, 0, "SuppressedActive");
self-explanatory, descriptions as follows :
m_strBonusTxt[60]="Suppressed ERROR" (probably should not show bonus txt for this state, hence the ERROR)
m_strPenaltyTxt[60]="Suppressed units suffer a penalty to Aim and, if they move, will be shot at by the suppressing unit."
BuildPerk(61, 0, "CriticallyWounded");
self-explanatory, descriptions as follows :
m_strBonusTxt[61]="Critically Wounded ERROR" (probably should not show bonus txt for this state, hence the ERROR)
m_strPenaltyTxt[61]="Critically wounded units will bleed out after a short time unless Stabilized or Revived by a Medikit."
BuildPerk(62, 0, "Flying");
self-explanatory, descriptions as follows :
m_strBonusTxt[62]="Flying units can bypass ground obstacles. They can remain in flight if they have sufficient fuel."
m_strPenaltyTxt[62]="Airborne ERROR" (probably should not show penalty txt for this state, hence the ERROR)
BuildPerk(63, 0, "Stealth");
self-explanatory, descriptions as follows :
m_strBonusTxt[63]="Stealthed units are much harder for enemies to see, and receive a bonus to their critical chance."
Could not be used successfully as a perk ; needs eAbility_Ghost in soldier definition, which works even without the perk.
BuildPerk(65, 0, "ChitinPlating");
Perk activated when wearing Chiting Plating.
m_strBonusTxt[65]="Units with Chitin Plating suffer <XGAbility:ChitinPlatingDamageReduction/>% less melee damage and receive +<XGAbility:ChitinPlatingHealthBonus/> bonus health."
BuildPerk(66, 0, "CombatStimsActive");
Perk activated after activating Combat Stims or while inside the radius of a smoke grenade put out by a Support soldier with the relevant perk[TBC].
m_strBonusTxt[66]="Units under the influence of Combat Stims are less likely to panic, move faster, and take <XGAbility:CombatStimsDamageReduction/>% less damage from all sources."
BuildPerk(68, 0, "Panicked");
self-explanatory, descriptions as follows :
m_strPenaltyTxt[68]="Panicked units have a chance to move or act unpredictably."
BuildPerk(107, 0, "BattleFatigue");
Permanent will malus after a critical wound has been suffered
m_strPenaltyTxt[107]="This unit has suffered combat wounds, weakening its Will."
BuildPerk(108, 0, "MindShield");
Perk activated when wearing a Mind Shield.
m_strPassiveTxt[108]="A device that protects the wearer's mind, increasing their Will."
BuildPerk(76, 1, "MindMerge");
Based on ePerk_MindMerger
Benefits of the MindMerge ability (receiving end)
m_strBonusTxt[ePerk_MindMerger]="Psionically assisting an ally, granting the ally an array of stat bonuses."
BuildPerk(79, 1, "MindMerge2");
Based on ePerk_GreaterMindMerger
Provide the benefits (receiving end) of the Greater Mind Merge ability
From Localisation File:
 ; For Greater Mind Merge Caster.
m_strBonusTitle[ePerk_GreaterMindMerger]="Greater Mind Merge"
m_strBonusTxt[ePerk_GreaterMindMerger]="Psionically assisting any nearby Sectoids, granting them +<XGAbility:MindMergeCritBonus/>% critical chance and +<XGAbility:MindMergeHealthBonus/> health."

"Alien" Perks

These are perks that are believed to be be giving aliens their abilities, possibly in conjunction with eAbility properties found in Defaultgamecore.ini [1] like eAbility_MindMerge or eAbility_Launch.


BuildPerk(46, 0, "Stun");
Stun resist perk found on the cyberdisk and chrysalid
m_strPassiveTxt[46]="This unit cannot be stunned with the Arc Thrower; taking a live specimen is not possible."
BuildPerk(81, 1, "Launch");
Gives Floaters and Heavy Floaters the ability to "teleport" anywhere on the map.
m_strPassiveTxt[81]="Move anywhere on the battlefield in a single turn. Launch cannot be used indoors."
Related ability : eAbility_Launch
If both perk and ability are given to a soldier, it can then use this ability succesfully.
BuildPerk(80, 1, "Evasion");
Floater and Drone perk.
m_strPassiveTxt[80]="Enemies targeting this unit when it is airborne suffer a -<XGAbility:EvasionDefenseBonus/> Aim penalty."
Related ability : eCP_AirEvade
BuildPerk(79, 1, "MindMerge2");
Give Sectoid Commanders the Greater Mind Merge ability
m_strBonusTxt[79]="Psionically assisting any nearby Sectoids, granting them +<XGAbility:MindMergeCritBonus/>% critical chance and +<XGAbility:MindMergeHealthBonus/> health."
Related ability : eAbility_GreaterMindMerge
BuildPerk(82, 1, "Bombard");
Floater, Heavy Floater, Muton, Muton Elite and Cyberdisk perk.
Can be granted to soldiers, but will not work without an additional patch to XcomGame.upk. For hex change, see: [2]
m_strPassiveTxt[82]="Throw or launch grenades over exceptionally long distances."
BuildPerk(83, 1, "Leap");
Thin Man and chrysalid perk
m_strPassiveTxt[83]="Allows vertical leaps onto elevated surfaces during movement."
Related ability : eCP_Climb
BuildPerk(84, 1, "PoisonSpit");
Thin Man perk
m_strPassiveTxt[84]="Spit poison at long range, causing a noxious cloud to remain briefly on the battlefield."
Related Ability : eAbility_Plague
BuildPerk(85, 1, "PoisonSpit");
Chrysalid Perk (name should read "Poisonous" or the like)
m_strPassiveTxt[85]="Poison enemies wounded with melee attacks."
Related Character Property : eCP_Poisonous
BuildPerk(86, 1, "Bloodcall");
Muton-type aliens perk.
m_strPassiveTxt[86]="Unleash a bestial roar that inspires nearby allies of the same species to greater speed, focus, and resolve for <XGAbility:BloodCallDuration/> turns. <XGAbility:BloodCallCooldown/> turn cooldown."
Related Ability : eAbility_BloodCall
BuildPerk(87, 1, "Intimidate");
Muton-type aliens perk.
m_strPassiveTxt[87]="Reacts unpredictably when wounded, provoking panic in enemies."
Related ability : eAbility_Intimidate
BuildPerk(89, 1, "Bloodlust");
Muton Berserker perk.
m_strPassiveTxt[89]="Allows the Berserker to charge an enemy that wounds it."
Related ability : eAbility_Bloodlust
BuildPerk(90, 1, "Bullrush");
Muton Berserker perk.
m_strPassiveTxt[90]="Charge in a straight line through cover to unleash a devastating melee attack."
Related ability : eAbility_BullRush
BuildPerk(75, 1, "MindMerge");
Sectoid perk (giving end)
m_strPassiveTxt[75]="Merge minds with the target, granting the target +<XGAbility:MindMergeCritBonus/>% critical chance and +<XGAbility:MindMergeHealthBonus/> health."
Related ability : eAbility_MindMerge
BuildPerk(97, 1, "ClusterBomb");
Sectopod "artillery" perk.
m_strPassiveTxt[97]="Mark a large area, and after one turn, saturate it with a barrage of explosive mini-bombs."
Related ability : eAbility_ClusterBomb (on eItem_SectopodClusterBomb weapon)
BuildPerk(98, 1, "PsiLance");
Ethereal's psi attack perk.
m_strPassiveTxt[98]="Project a bolt of pure psi force at an enemy."
Related ability : eAbility_PsiLance (on eItem_ElderWeapon weapon)
BuildPerk(99, 1, "DeathBlossom");
Cyberdisk perk.
m_strPassiveTxt[99]="Project an intense energy field from Closed position, damaging all nearby enemies. <XGAbility:DeathBlossomCooldown/> turn cooldown."
Related ability : eAbility_DeathBlossom (found on eItem_CyberdiscWeapon weapon)
BuildPerk(100, 1, "Overload");
Drone perk.
m_strPassiveTxt[100]="Overload the unit's own power source, destroying the unit but causing explosive damage similar to a grenade's."
Related ability : eAbility_ShotOverload
BuildPerk(77, 0, "Harden");
Sectopod, Chryssalid and Berserker perk.
m_strBonusTxt[77]="Hardened units receive extra protection against critical hits."
Related Character property : eCP_Hardened.
BuildPerk(101, 1, "PsiMindControl");
Sectoid Commander and Ethereal perk. Separate from the psi-soldier Mind Control perk.
m_strPassiveTxt[101]="Very difficult psi technique that, if successful, grants control of the target for 3 turns. Does not work on robotic enemies."
Related ability : eAbility_PsiControl
BuildPerk(102, 1, "PsiDrain");
Ethereal perk.
m_strPassiveTxt[102]="Drain health from an ally."
Related ability : eAbility_PsiDrain
BuildPerk(103, 1, "Repair");
Drone perk.
m_strPassiveTxt[103]="Repairs robotic units."
Related ability : eAbility_Repair (found on eItem_DroneBeam weapon)
Can be granted to XCOM soldiers via Perk Tree, but has no effect
May require an item with eAbility_Repair
BuildPerk(104, 1, "CannonFire");
Sectopod's main attack perk.
m_strPassiveTxt[104]="Beam attack that causes high damage and grants free Overwatch. If the Sectopod does not move, Cannon Fire can be used twice (against different enemies)."
Related ability : eAbility_CannonFire (found on eItem_SectopodChestCannon weapon)
BuildPerk(106, 0, "Implant");
The "implant" title is an artifact, it should read "Chryssalid Spawn".
Zombie perk.
m_strPassiveTitle[106]="Chryssalid Spawn"
m_strPassiveTxt[106]="Implanted Chryssalid eggs hatch into Chryssalids after 3 turns if the Zombie host is not killed."

Other Perks

These are the remaining perks, the use and effect of has not been discovered yet.

BuildPerk(105, 0, "Implant");
Needs more info. Possibly the Chryssalid's ability to lay eggs in their victims.
BuildPerk(7, 0, "AutopsyRequired");
Is displayed on the info panel of aliens not yet autopsied instead of their actual info.
m_strPassiveTitle[7]="Autopsy Required"
BuildPerk(88, 0, "FallenComrades");
Needs more info.
m_strPenaltyTxt[88]="An ally has fallen, weakening this unit's Will."
BuildPerk(109, 0, "DONT_USE_ItemRangeBonus");
Needs more info.
BuildPerk(110, 0, "DONT_USE_ItemRangePenalty");
Needs more info.

References

Referred to by this article:


That refer to this article: