Skip to content

ToHitCalc

Edits the template's to-hit calculation. Two slots exist: ToHitCalc (Template.AbilityToHitCalc) and ToHitOwnerOnMissCalc (Template.AbilityToHitOwnerOnMissCalc), both taking a ToHitCalcEdit block. With Class omitted, the existing calc is edited in place; with Class set, the existing calc is edited in place when it is already exactly that class, otherwise it is replaced by a new instance (unset fields then take class defaults). Classes without a dedicated editor below (e.g. X2AbilityToHitCalc_StandardMelee, X2AbilityToHitCalc_DeadEye) are still valid Class values - they get the fields of their nearest listed ancestor.

Config key: ToHitCalc. Edit struct: ToHitCalcEdit.

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.

X2AbilityToHitCalc_StatCheck_UnitVsUnit → X2AbilityToHitCalc_PercentChancePlusFocus → X2AbilityToHitCalc_PercentChanceWithBuddyZone → X2AbilityToHitCalc_StandardAim → X2AbilityToHitCalc_PercentChance → X2AbilityToHitCalc_Hacking → X2AbilityToHitCalc_RollStat → X2AbilityToHitCalc_RollStatTiers → X2AbilityToHitCalc_StatCheck → any other class

Shared fields

Available on every ToHitCalcEdit entry, whatever its Class.

Config field Type Requires Game field Description
HitModifiers array<ShotModifierInfo> non-empty (replace-only) HitModifiers Replace-only: when non-empty, replaces the calc's HitModifiers array entirely

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
X2AbilityToHitCalc_Hacking 1 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_PercentChance 2 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_PercentChancePlusFocus 1 X2AbilityToHitCalcEditor_PercentChance
X2AbilityToHitCalc_PercentChanceWithBuddyZone 1 X2AbilityToHitCalcEditor_PercentChance
X2AbilityToHitCalc_RollStat 2 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_RollStatTiers 1 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_StandardAim 12 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_StatCheck (abstract) 1 X2AbilityToHitCalcEditor_Base
X2AbilityToHitCalc_StatCheck_UnitVsUnit 2 X2AbilityToHitCalcEditor_StatCheck