Effects¶
Edits the effect arrays of the template. Slot selects which array is edited (see EAbilityEffectSlot). Within the selected array the effect of class Class is edited in place if present; otherwise behaviour depends on Mode.
Config key: Effects. Edit struct: EffectEdit.
Dispatch order¶
The first editor that accepts a class handles it, so a class is matched by the earliest entry below that it derives from.
DLC_2.X2Effect_DLC_Day60Freezebridge → DLC_2.X2Effect_DLC_Day60TurnStartRemoveActionPointsbridge → X2Effect_Obsessed → X2Effect_Shattered → X2Effect_VanishingWind → X2Effect_KineticPlating → X2Effect_Vanish → X2Effect_BlastPadding → X2Effect_KillUnit → X2Effect_ParthenogenicPoison → X2Effect_PersistentStatChange → X2Effect_PersistentStatChangeRestoreDefault → X2Effect_SpawnPsiZombie → X2Effect_SpawnShadowbindUnit → X2Effect_ThreatAssessment → X2Effect_WallBreaking → X2Effect_Achilles → X2Effect_AdverseSoldierClasses → X2Effect_Amplify → X2Effect_ApplyAcidToWorld → X2Effect_ApplyBlazingPinionsTargetToWorld → X2Effect_ApplyFireToWorld → X2Effect_ApplyPoisonToWorld → X2Effect_ApplySmokeGrenadeToWorld → X2Effect_ApplySmokeToWorld → X2Effect_APRounds → X2Effect_Aura → X2Effect_Bewildered → X2Effect_BloodTrail → X2Effect_BondmateAimAdjust → X2Effect_BondmateBleedout → X2Effect_CombatStims → X2Effect_BonusArmor → X2Effect_BonusWeaponDamage → X2Effect_ChryssalidBurrowedAttack → X2Effect_ConditionalDamageModifier → X2Effect_CoveringFire → X2Effect_DamageImmunity → X2Effect_DeadeyeDamage → X2Effect_DelayedAbilityActivation → X2Effect_FaceMultiRoundTarget → X2Effect_Fortress → X2Effect_GenerateCover → X2Effect_Groundling → X2Effect_Guardian → X2Effect_HoloTarget → X2Effect_HolyWarriorDeath → X2Effect_HomingMine → X2Effect_HuntersInstinctDamage → X2Effect_ImmediateAbilityActivation → X2Effect_Impatient → X2Effect_Implacable → X2Effect_LaserSight → X2Effect_MeleeDamageAdjust → X2Effect_MimicBeacon → X2Effect_MindControl → X2Effect_ModifyReactionFire → X2Effect_ModifyStatCheckSuccesses → X2Effect_TemplarFocus → X2Effect_ModifyStats → X2Effect_Nearsighted → X2Effect_Needle → X2Effect_Oblivious → X2Effect_OverrideDeathAction → X2Effect_OverrideDeathAnimOnLoad → X2Effect_PaleHorse → X2Effect_PersistentSquadViewer → X2Effect_PersistentTraversalChange → X2Effect_PersistentVoidConduit → X2Effect_Possessed → X2Effect_Regeneration → X2Effect_RemoveEffectsByDamageType → X2Effect_ReserveOverwatchPoints → X2Effect_RunBehaviorTree → X2Effect_SmokeGrenade → X2Effect_Solace → X2Effect_SpawnDestructible → X2Effect_SpawnUnit → X2Effect_Stasis → X2Effect_Stunned → X2Effect_SuperConcealModifier → X2Effect_Sustain → X2Effect_Sustained → X2Effect_TalonRounds → X2Effect_TargetDamageDistanceBonus → X2Effect_TargetDamageTypeBonus → X2Effect_ToHitModifier → X2Effect_TrackingShotMarkTarget → X2Effect_TurnStartActionPoints → X2Effect_VolatileMix → X2Effect_AlertTheLost → X2Effect_ApplyDirectionalWorldDamage → X2Effect_ApplyMedikitHeal → X2Effect_ApplyWeaponDamage → X2Effect_Brutal → X2Effect_EnableGlobalAbility → X2Effect_GetOverHere → X2Effect_GrantActionPointsWithRecord → X2Effect_GrantActionPoints → X2Effect_IncreaseBondmateCohesion → X2Effect_Knockback → X2Effect_LifeSteal → X2Effect_MarkValidActivationTiles → X2Effect_ModifyInitiativeOrder → X2Effect_ModifyTemplarFocus → X2Effect_LethalWeaponDamage → X2Effect_Persistent → X2Effect_ReduceCooldowns → X2Effect_RemoteStart → X2Effect_RemoveEffects → X2Effect_ReserveActionPoints → X2Effect_SetUnitValue → X2Effect_SoulSteal → X2Effect_Spotted → X2Effect_SuspendMissionTimer → X2Effect_TriggerEvent → X2Effect_VoidConduit → X2Effect_World → any other class
bridge Provided by a bridge mod and only present when that mod is installed; bridge editors are checked before every built-in one.
Shared fields¶
Available on every EffectEdit entry, whatever its Class.
| Config field | Type | Requires | Game field | Description |
|---|---|---|---|---|
ApplyOnHit |
bool |
SetApplyOnHit=true |
bApplyOnHit |
Whether the effect is applied when the ability hits. Most effects want this true; setting it false is how an effect is made to trigger only on a miss. |
ApplyOnMiss |
bool |
SetApplyOnMiss=true |
bApplyOnMiss |
Whether the effect is applied even when the ability misses. |
ApplyChance |
int |
SetApplyChance=true |
ApplyChance |
Percentage chance the effect applies at all, rolled per target. 0 behaves as "always", since the roll is only made when a chance is set. |
ApplyToWorldOnHit |
bool |
SetApplyToWorldOnHit=true |
bApplyToWorldOnHit |
Whether the effect is applied to the world (tiles, cover, environment) on a hit, rather than to a unit. Used by fire, smoke, acid and the other world effects. |
ApplyToWorldOnMiss |
bool |
SetApplyToWorldOnMiss=true |
bApplyToWorldOnMiss |
As ApplyToWorldOnHit, but for a miss. Grenades typically set both, so they still affect the ground when they scatter. |
UseSourcePlayerState |
bool |
SetUseSourcePlayerState=true |
bUseSourcePlayerState |
Records the source player on the effect when it is applied, so later logic can tell whose effect it was. Needed by effects that behave differently for XCOM and the AI. |
IsImpairing |
bool |
SetIsImpairing=true |
bIsImpairing |
Marks the effect as impairing the unit, which fires the impairment event and makes the unit report as impaired. This is what stuns, panic and disorientation use. |
IsImpairingMomentarily |
bool |
SetIsImpairingMomentarily=true |
bIsImpairingMomentarily |
Fires the impairment event without leaving the unit flagged as impaired afterwards. For effects that interrupt an action but do not linger. |
BringRemoveVisualizationForward |
bool |
SetBringRemoveVisualizationForward=true |
bBringRemoveVisualizationForward |
Moves this effect's removal visualization earlier in the sequence, taking the whole context's visualization with it. Used when a removal must be seen before what follows. |
ShowImmunity |
bool |
SetShowImmunity=true |
bShowImmunity |
Shows a flyover when the target is immune to this effect. Only when the application actually failed because of immunity. |
ShowImmunityAnyFailure |
bool |
SetShowImmunityAnyFailure=true |
bShowImmunityAnyFailure |
Shows the immunity flyover whenever the effect fails to apply for any reason, not only immunity. Broader, and noisier, than ShowImmunity. |
AppliesDamage |
bool |
SetAppliesDamage=true |
bAppliesDamage |
Marks the effect as dealing damage, so it counts towards damage statistics and raises the generic ability-damage events. Set it on any custom source of damage. |
CanBeRedirected |
bool |
SetCanBeRedirected=true |
bCanBeRedirected |
Whether the effect is eligible to be redirected onto another target, by Untouchable, Bladestorm parries and similar. Leave false for effects that must hit their target. |
HideDeathWorldMessage |
bool |
SetHideDeathWorldMessage=true |
bHideDeathWorldMessage |
Suppresses the usual death message when this effect is what kills the unit, for deaths that should read as something other than a normal kill. |
MinStatContestResult |
int |
SetMinStatContestResult=true |
MinStatContestResult |
For effects resolved by a stat contest: the contest result must be at least this for the effect to apply. Used to band outcomes, so a stronger roll applies a stronger effect. |
MaxStatContestResult |
int |
SetMaxStatContestResult=true |
MaxStatContestResult |
Upper bound of the same stat-contest band. Ignored when it is below MinStatContestResult. |
DelayVisualizationSec |
float |
SetDelayVisualizationSec=true |
DelayVisualizationSec |
Seconds to delay this effect's visualization, for sequencing it against the rest of the ability rather than changing any game state. |
OverrideMissMessage |
string |
SetOverrideMissMessage=true |
OverrideMissMessage |
Replaces the usual "Miss" flyover with your own text, for abilities where a miss should read as something else. |
DamageTypes |
array<name> |
DamageTypesMode (ENameArrayEditMode) |
DamageTypes |
Damage types this effect counts as. A unit immune to any type listed here resists the effect, and cleansing effects look at these types to decide what they can remove. |
TargetConditions |
array<ConditionEdit> |
— | TargetConditions |
Conditions attached to the effect (X2Effect.TargetConditions) |
Classes¶
Class-specific fields are documented on each page below. A class with no dedicated editor still accepts every field in Shared fields.
| Game class | Own fields | Editor extends | Provided by |
|---|---|---|---|
X2Effect_APRounds |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Achilles |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_AdverseSoldierClasses |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_AlertTheLost |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Amplify |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ApplyAcidToWorld |
11 | X2AbilityEffectsEditor_World |
built-in |
X2Effect_ApplyBlazingPinionsTargetToWorld |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ApplyDirectionalWorldDamage |
9 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_ApplyFireToWorld |
6 | X2AbilityEffectsEditor_World |
built-in |
X2Effect_ApplyMedikitHeal |
3 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_ApplyPoisonToWorld |
1 | X2AbilityEffectsEditor_World |
built-in |
X2Effect_ApplySmokeGrenadeToWorld |
1 | X2AbilityEffectsEditor_World |
built-in |
X2Effect_ApplySmokeToWorld |
1 | X2AbilityEffectsEditor_World |
built-in |
X2Effect_ApplyWeaponDamage |
12 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Aura |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Bewildered |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_BlastPadding |
1 | X2AbilityEffectsEditor_BonusArmor |
built-in |
X2Effect_BloodTrail |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_BondmateAimAdjust |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_BondmateBleedout |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_BonusArmor |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_BonusWeaponDamage |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Brutal |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_ChryssalidBurrowedAttack |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_CombatStims |
1 | X2AbilityEffectsEditor_BonusArmor |
built-in |
X2Effect_ConditionalDamageModifier |
5 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_CoveringFire |
10 | X2AbilityEffectsEditor_Persistent |
built-in |
DLC_2.X2Effect_DLC_Day60Freeze |
5 | X2AbilityEffectsEditor_PersistentStatChange |
Ability Editor: Alien Hunters |
DLC_2.X2Effect_DLC_Day60TurnStartRemoveActionPoints |
1 | X2AbilityEffectsEditor_Persistent |
Ability Editor: Alien Hunters |
X2Effect_DamageImmunity |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_DeadeyeDamage |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_DelayedAbilityActivation |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_EnableGlobalAbility |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_FaceMultiRoundTarget |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Fortress |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_GenerateCover |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_GetOverHere |
3 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_GrantActionPoints |
5 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_GrantActionPointsWithRecord |
1 | X2AbilityEffectsEditor_GrantActionPoints |
built-in |
X2Effect_Groundling |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Guardian |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_HoloTarget |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_HolyWarriorDeath |
1 | X2AbilityEffectsEditor_ApplyWeaponDamage |
built-in |
X2Effect_HomingMine |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_HuntersInstinctDamage |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ImmediateAbilityActivation |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Impatient |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Implacable |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_IncreaseBondmateCohesion |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_KillUnit |
— | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_KineticPlating |
1 | X2AbilityEffectsEditor_PersistentStatChange |
built-in |
X2Effect_Knockback |
4 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_LaserSight |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_LethalWeaponDamage |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_LifeSteal |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_MarkValidActivationTiles |
3 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_MeleeDamageAdjust |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_MimicBeacon |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_MindControl |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ModifyInitiativeOrder |
2 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_ModifyReactionFire |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ModifyStatCheckSuccesses |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ModifyStats (abstract) |
— | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ModifyTemplarFocus |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Nearsighted |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Needle |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Oblivious |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Obsessed |
1 | X2AbilityEffectsEditor_PersistentStatChange |
built-in |
X2Effect_OverrideDeathAction |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_OverrideDeathAnimOnLoad |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_PaleHorse |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ParthenogenicPoison |
1 | X2AbilityEffectsEditor_SpawnUnit |
built-in |
X2Effect_Persistent |
39 | X2AbilityEffectsEditor |
built-in |
X2Effect_PersistentSquadViewer |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_PersistentStatChange |
2 | X2AbilityEffectsEditor_ModifyStats |
built-in |
X2Effect_PersistentStatChangeRestoreDefault |
1 | X2AbilityEffectsEditor_ModifyStats |
built-in |
X2Effect_PersistentTraversalChange |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_PersistentVoidConduit |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Possessed |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_ReduceCooldowns |
3 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Regeneration |
4 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_RemoteStart |
2 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_RemoveEffects |
4 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_RemoveEffectsByDamageType |
1 | X2AbilityEffectsEditor_RemoveEffects |
built-in |
X2Effect_ReserveActionPoints |
2 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_ReserveOverwatchPoints |
1 | X2AbilityEffectsEditor_ReserveActionPoints |
built-in |
X2Effect_RunBehaviorTree |
4 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_SetUnitValue |
3 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Shattered |
1 | X2AbilityEffectsEditor_PersistentStatChange |
built-in |
X2Effect_SmokeGrenade |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Solace |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_SoulSteal |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_SpawnDestructible |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_SpawnPsiZombie |
4 | X2AbilityEffectsEditor_SpawnUnit |
built-in |
X2Effect_SpawnShadowbindUnit |
1 | X2AbilityEffectsEditor_SpawnUnit |
built-in |
X2Effect_SpawnUnit |
9 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Spotted |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Stasis |
4 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Stunned |
5 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_SuperConcealModifier |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_SuspendMissionTimer |
1 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_Sustain |
— | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Sustained |
5 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TalonRounds |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TargetDamageDistanceBonus |
4 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TargetDamageTypeBonus |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TemplarFocus |
1 | X2AbilityEffectsEditor_ModifyStats |
built-in |
X2Effect_ThreatAssessment |
1 | X2AbilityEffectsEditor_CoveringFire |
built-in |
X2Effect_ToHitModifier |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TrackingShotMarkTarget |
2 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_TriggerEvent |
2 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_TurnStartActionPoints |
3 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_Vanish |
4 | X2AbilityEffectsEditor_PersistentStatChange |
built-in |
X2Effect_VanishingWind |
1 | X2AbilityEffectsEditor_Vanish |
built-in |
X2Effect_VoidConduit |
2 | X2AbilityEffectsEditor_Base |
built-in |
X2Effect_VolatileMix |
1 | X2AbilityEffectsEditor_Persistent |
built-in |
X2Effect_WallBreaking |
1 | X2AbilityEffectsEditor_PersistentTraversalChange |
built-in |
X2Effect_World |
1 | X2AbilityEffectsEditor_Base |
built-in |