Universal Player Combat: Player Combat for Unreal Engine 5

Documentation Unreal Engine Combat Player

Player combat plugin for Unreal Engine 5.6, 5.7 and 5.8: combos that chain and cancel, weapons with their own moves, lock-on, parry and block, executions and an inventory, set up in Blueprint with no C++, in single player and multiplayer.


Universal Player Combat System (GAS + Enhanced Input) is player combat for Unreal Engine 5.6, 5.7 and 5.8. A move is a node in an action graph: the node plays an animation, and a transition names the input that leads to the next move. Items carry their own moves, keys and hit volumes, so drawing a weapon changes what the player can do. You set everything up in Blueprints and data assets, and it runs in single player, on a listen server and on a dedicated server.

At a glance

  • Made for: third-person action games whose player needs combos, a dodge, lock-on, parry and block, and finishers: souls-like, action RPG and brawler.
  • Engine: Unreal Engine 5.6, 5.7 and 5.8.
  • Setup: Blueprints and data assets, with no C++ needed. The full C++ source is included.
  • Moves: each move is a card in an Action Graph you wire in the editor, and a drawn weapon brings its own moves, keys and hit volumes.
  • Attacks and hits: Gameplay Ability System abilities play each move, swept weapon traces find the hits (Melee Trace), and defense rules answer with a parry, a block or invulnerability frames (Defense).
  • Multiplayer: a move plays at once on the player's own machine and the server confirms it, in single player, on a listen server and on a dedicated server (Multiplayer).
  • Included: a demo level with three combat styles, the Action Graph Editor and the Pairing Editor (for executions and other two-character moves), an inventory with three ready screens, and a guide that lets an AI coding agent build a player for you (AI Agent Guide).
  • Not included: enemy AI. The demo's enemies run action graphs like the player's, pressed by a Behavior Tree, and Soulslike Enemy Combat is the enemy AI plugin of the same family.

How a hit happens

A light attack, from the item in handto the target's health
1
The drawn item brings the moves
Item Definition, Equippable fragment
An Item Definition holds fragments, parts you add in its Details panel. Its Equippable fragment names an action graph, keys and hit volumes. Drawing a sword hands the character all three; drawing another item changes the moveset. With nothing drawn, the Default Item, such as bare fists, gives the moves.
2
A key becomes an input tag
Equippable: Input Mapping Context, Input Mappings
Each mapping pairs an Input Action with a gameplay tag such as UPC.Input.LightAttack, and the character's UPC Input Mapping component sends that tag on when the key is pressed.
3
The graph picks the move
Action Graph: a transition on the current node
Each transition out of a move names an Input Tag and the move it leads to: from idle (ROOT), UPC.Input.LightAttack leads to Light 1, and from Light 1 to Light 2. A press during Light 1 waits, and Light 2 starts when Light 1 ends. A montage can mark an action window, a stretch where a press cuts in sooner.
4
The move plays its montage
Action node: Play Montage
The node lasts as long as its montage, or the section it plays. Windows on the montage also say when the blade sweeps and which tags the character holds.
5
A trace window sweeps the blade
UPC Melee Trace Window, Equippable: Trace Sockets
Every frame of the window, the item's hit volumes sweep from where they were to where they are, so a fast swing does not skip the space between frames. Teammates are passed over.
6
The target answers the hit
Damage Config, then the target's Defense and Vitals
The window's damage config says what a hit is worth and what it sets off: sparks, hit stop (a short pause on impact), a flinch. The target's defense rules can parry, block or scale it, and what is left comes off its health.

Start here

Building with an AI coding agent such as Claude Code, Codex or Cursor? The AI Agent Guide lets it build a player from your mesh and animations in your open editor.

Guides


Moves


Items and equipment


Inventory


Feel and motion


Landing a hit


World


Presentation


Reference


Credits

The demo's locomotion includes animations and Blueprints adapted from Epic Games' Lyra Starter Game and Game Animation Sample. Its footstep, scenery hit, swing, dodge, gear, guard and interface sounds come from Lyra Starter Game, and its landing, jump and body fall sounds from the Game Animation Sample, all used under the Unreal Engine EULA. The demo UI uses the Inter and Cinzel typefaces under the SIL Open Font License 1.1.

Support


Pairs well with

Universal Player Combat gives the player their fight: combos, equipment, targeting and finishers. Need enemy logic? Soulslike Enemy Combat gives your enemies theirs.