BPC_ShieldDefenseSystem — Actor Component
File: Content/Framework/Weapons/BPC_ShieldDefenseSystem
Parent Class: UActorComponent
Dependencies: BPC_DamageReceptionSystem, BPC_StaminaSystem
Purpose: Manages defensive tools: shields, blocking, parrying. Works in both melee and ranged defense contexts.
Variables
| Name |
Type |
Description |
bIsBlocking |
Bool |
Block active |
BlockDamageReduction |
Float |
% reduction while blocking (0.0–1.0) |
ParryWindow |
Float |
Perfect parry timing window in seconds |
ShieldDurability |
Float |
Current shield durability (0 = broken) |
MaxShieldDurability |
Float |
Maximum durability |
BlockAngle |
Float |
Max angle from forward vector for block to cover |
StaminaCostPerBlock |
Float |
Stamina drain per blocked hit |
bCanParry |
Bool |
Whether parry mechanic is enabled |
Functions / Events
| Name |
Inputs |
Outputs |
What it does |
BeginBlock |
— |
— |
Raises shield, starts blocking |
EndBlock |
— |
— |
Lowers shield, ends blocking |
ProcessHit |
Damage: S_DamageEvent |
Bool (blocked) |
Evaluates if hit was blocked or parried |
TryParry |
— |
Bool |
Checks if parry window is active |
BreakShield |
— |
— |
Reduces durability to 0, triggers break anim |
Event Dispatchers
| Name |
Parameters |
Fired when |
OnBlockStarted |
— |
Shield raised |
OnBlockEnded |
— |
Shield lowered |
OnHitBlocked |
Damage: S_DamageEvent |
Incoming hit blocked |
OnHitParried |
Instigator: Actor |
Perfect parry executed |
OnShieldBroken |
— |
Durability reaches 0 |
Communications With
| Target System |
Method |
Why |
BPC_DamageReceptionSystem |
Interface hook |
Intercepts incoming damage |
BPC_StaminaSystem |
Direct ConsumeStamina |
Stamina cost per block |
BPC_HitReactionSystem |
Direct |
Triggers parry follow-up window |
ABP_PlayerBody |
Animation Notify |
Block/parry animation states |
Reuse Notes
- ParryWindow drives a perfect-parry mechanic; set to 0 to disable parries
- BlockDamageReduction is per-shield from DA_WeaponData or DA_EquipmentConfig
- Shield durability adds wear mechanic; set MaxShieldDurability to 0 for indestructible shields