Server-authoritative combatKBVECombat
The shared combat domain — server-authoritative damage, teams/factions, and death — built on KBVEGameplay primitives (stats + effects). It depends on KBVEGameplay, never the reverse: combat consumes the primitives, it doesn't define them. Backend-agnostic — Mover pawns, CMC characters, and Mass NPC proxies all fight through one interface.
Authority-only damage
UKBVECombatStatics::ApplyDamage resolves a combatant on any actor and applies an FKBVEDamageEvent against the owner's Health stat via IKBVEStatTarget, composing with KBVEGameplay effects and replicating through the owner's transport.
- Backend-agnostic — Mover, CMC, and Mass NPC proxies fight through IKBVECombatant.
- Depends on — KBVEGameplay (stats + effects), never the reverse.
Pieces
Pieces
UKBVECombatComponent
Resolves damage against the owner's Health stat via IKBVEStatTarget, tracks team + replicated dead state, fires OnDamaged / OnDeath. Implements IKBVECombatant.
IKBVECombatant
GetTeamId / IsAlive / ApplyDamage — uniform participation regardless of movement backend.
FKBVEDamageEvent
Amount, EKBVEDamageElement, instigator, and hit info.
UKBVECombatStatics
ApplyDamage / IsAlive / GetTeamId / AreHostile, resolving a combatant on any actor.
Integration
Usage
FKBVEDamageEvent Dmg;Dmg.Amount = 25.f;Dmg.Element = EKBVEDamageElement::Fire;Dmg.Instigator = Attacker;UKBVECombatStatics::ApplyDamage(Target, Dmg); // authority-onlyAdd UKBVECombatComponent to any actor implementing IKBVEStatTarget with a Health stat (e.g. AKBVEMoverPawn, AchuckCoreCharacter). Damage flows through the stat, composing with KBVEGameplay effects and replicating via the owner’s transport (Iris / KBVENet).
Planned
Roadmap
- Element resist/weakness scaling, attack/ability driver (windups/cooldowns/hitboxes), threat/aggro + death loot hooks, combat-event feed for UI.
Questions
Frequently asked
What is the KBVECombat plugin?
KBVECombat is the shared combat domain for KBVE Unreal Engine games — server-authoritative damage, teams and factions, and death — built on KBVEGameplay stat and effect primitives. It depends on KBVEGameplay and never the reverse.
Which movement backends does KBVECombat support?
It is backend-agnostic. Mover pawns, CMC characters, and Mass NPC proxies all fight through the same IKBVECombatant interface, so combat participation is uniform regardless of the movement backend.
How is damage applied in KBVECombat?
Damage is authority-only. UKBVECombatStatics::ApplyDamage resolves a combatant on any actor and applies an FKBVEDamageEvent against the owner's Health stat via IKBVEStatTarget, composing with KBVEGameplay effects and replicating through the owner's transport.
