|  | 
| override float | CalculateDamage (in AttackInformation attackInformation, in AttackCollisionData collisionData, in MissionWeapon weapon, float baseDamage) | 
|  | 
| override void | DecideMissileWeaponFlags (Agent attackerAgent, MissionWeapon missileWeapon, ref WeaponFlags missileWeaponFlags) | 
|  | 
| override bool | DecideCrushedThrough (Agent attackerAgent, Agent defenderAgent, float totalAttackEnergy, Agent.UsageDirection attackDirection, StrikeType strikeType, WeaponComponentData defendItem, bool isPassiveUsage) | 
|  | 
| override bool | CanWeaponDismount (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| override void | CalculateCollisionStunMultipliers (Agent attackerAgent, Agent defenderAgent, bool isAlternativeAttack, CombatCollisionResult collisionResult, WeaponComponentData attackerWeapon, WeaponComponentData defenderWeapon, out float attackerStunMultiplier, out float defenderStunMultiplier) | 
|  | 
| override bool | CanWeaponKnockback (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| override bool | CanWeaponKnockDown (Agent attackerAgent, Agent victimAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| override float | GetDismountPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData attackCollisionData) | 
|  | 
| override float | GetKnockBackPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData attackCollisionData) | 
|  | 
| override float | GetKnockDownPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData attackCollisionData) | 
|  | 
| override float | GetHorseChargePenetration () | 
|  | 
| override float | CalculateStaggerThresholdMultiplier (Agent defenderAgent) | 
|  | 
| override float | CalculatePassiveAttackDamage (BasicCharacterObject attackerCharacter, in AttackCollisionData collisionData, float baseDamage) | 
|  | 
| override MeleeCollisionReaction | DecidePassiveAttackCollisionReaction (Agent attacker, Agent defender, bool isFatalHit) | 
|  | 
| override float | CalculateShieldDamage (in AttackInformation attackInformation, float baseDamage) | 
|  | 
| override float | GetDamageMultiplierForBodyPart (BoneBodyPartType bodyPart, DamageTypes type, bool isHuman) | 
|  | 
| override bool | CanWeaponIgnoreFriendlyFireChecks (WeaponComponentData weapon) | 
|  | 
| override bool | DecideAgentShrugOffBlow (Agent victimAgent, AttackCollisionData collisionData, in Blow blow) | 
|  | Decide if victim agent can successfully shrug off blow. Blows that are shrugged off does not deal damage and does not apply combat mechanics (knock back, knock down etc.) 
 | 
|  | 
| override bool | DecideAgentDismountedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decide if a mounted victim can be dismounted by a blow. Victim must be a mounted human. 
 | 
|  | 
| override bool | DecideAgentKnockedBackByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if a victim can be knocked back by a blow. Only applies to agents on foot. Victim must not be mounted. 
 | 
|  | 
| override bool | DecideAgentKnockedDownByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if a victim can be knocked down by a blow. Only applies to agents on foot. Victim must not be mounted. 
 | 
|  | 
| override bool | DecideMountRearedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if mount can be reared by a blow (i.e. a polearm thrust attack). Victim must be a mount. 
 | 
|  | 
| abstract float | CalculateDamage (in AttackInformation attackInformation, in AttackCollisionData collisionData, in MissionWeapon weapon, float baseDamage) | 
|  | 
| abstract void | DecideMissileWeaponFlags (Agent attackerAgent, MissionWeapon missileWeapon, ref WeaponFlags missileWeaponFlags) | 
|  | 
| abstract void | CalculateCollisionStunMultipliers (Agent attackerAgent, Agent defenderAgent, bool isAlternativeAttack, CombatCollisionResult collisionResult, WeaponComponentData attackerWeapon, WeaponComponentData defenderWeapon, out float attackerStunMultiplier, out float defenderStunMultiplier) | 
|  | 
| abstract float | CalculateStaggerThresholdMultiplier (Agent defenderAgent) | 
|  | 
| abstract float | CalculatePassiveAttackDamage (BasicCharacterObject attackerCharacter, in AttackCollisionData collisionData, float baseDamage) | 
|  | 
| abstract MeleeCollisionReaction | DecidePassiveAttackCollisionReaction (Agent attacker, Agent defender, bool isFatalHit) | 
|  | 
| abstract float | CalculateShieldDamage (in AttackInformation attackInformation, float baseDamage) | 
|  | 
| abstract float | GetDamageMultiplierForBodyPart (BoneBodyPartType bodyPart, DamageTypes type, bool isHuman) | 
|  | 
| abstract bool | CanWeaponIgnoreFriendlyFireChecks (WeaponComponentData weapon) | 
|  | 
| abstract bool | CanWeaponDismount (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract bool | CanWeaponKnockback (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract bool | CanWeaponKnockDown (Agent attackerAgent, Agent victimAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract bool | DecideCrushedThrough (Agent attackerAgent, Agent defenderAgent, float totalAttackEnergy, Agent.UsageDirection attackDirection, StrikeType strikeType, WeaponComponentData defendItem, bool isPassiveUsageHit) | 
|  | 
| abstract bool | DecideAgentShrugOffBlow (Agent victimAgent, AttackCollisionData collisionData, in Blow blow) | 
|  | Decide if victim agent can successfully shrug off blow. Blows that are shrugged off does not deal damage and does not apply combat mechanics (knock back, knock down etc.) 
 | 
|  | 
| abstract bool | DecideAgentDismountedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decide if a mounted victim can be dismounted by a blow. Victim must be a mounted human. 
 | 
|  | 
| abstract bool | DecideAgentKnockedBackByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if a victim can be knocked back by a blow. Only applies to agents on foot. Victim must not be mounted. 
 | 
|  | 
| abstract bool | DecideAgentKnockedDownByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if a victim can be knocked down by a blow. Only applies to agents on foot. Victim must not be mounted. 
 | 
|  | 
| abstract bool | DecideMountRearedByBlow (Agent attackerAgent, Agent victimAgent, in AttackCollisionData collisionData, WeaponComponentData attackerWeapon, in Blow blow) | 
|  | Decides if mount can be reared by a blow (i.e. a polearm thrust attack). Victim must be a mount. 
 | 
|  | 
| abstract float | GetDismountPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract float | GetKnockBackPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract float | GetKnockDownPenetration (Agent attackerAgent, WeaponComponentData attackerWeapon, in Blow blow, in AttackCollisionData collisionData) | 
|  | 
| abstract float | GetHorseChargePenetration () | 
|  |