if any image is not shown, please open it in a new tab

github Project link

book Release note

DEMO VIDEO

TECH STACK

PlatformsWindows
Game FrontendUnreal Engine 4.4
ShowcasingCombo Chain Subsystem, AI Behaviour Tree, Animation Mixing, Blueprints, C++, Data Assets

โš™๏ธ TECHNICAL INFORMATION

  • Engine: Unreal Engine 5.4.4
  • Source: Blueprint & C++
  • Demo video: Here or in the download panel below.

image

๐ŸŽฎ HOW TO PLAY

ActionInput
MoveWASD
JumpSpace
Light AttackLeft Click
Heavy AttackRight Click
Dodge LeftQ
Dodge RightE

๐Ÿ’ก Try mixing light and heavy attacks with directional dodges to explore different combos and behavior reactions.


โš™๏ธ FEATURE DECISIONS

๐Ÿ”— COMBO SYSTEM

While not the core focus of the current test, the combo system is critical to gameplay. It defines how both * players and AIs perform actions*, and it decides the flexibility allows for dynamic, scalable design.

โœ… Design Goals

  • Scalable and designer-friendly
  • Clear separation between combo animation and logic tree
  • Lower dependencies between design combo flows and present combo action

After extensive iteration, the final structure includes the following components:

๐Ÿงฉ Components

ComboInput

  • Represents basic input actions (Light Attack, Heavy Attack, Counter, Dodge, etc.)
  • Used to traverse the combo tree

ComboTree

  • A Trie-like data structure for navigating input sequences
  • Starts from a root (default state) and moves through valid input chains

ComboSubsystem

  • Central system for managing combo trees
  • Builds and manages combo trees for all relevant actors

ComboRunner

  • Manages player interaction with combo trees
  • Fetches tree from ComboSubsystem, progresses based on input
  • Validates input at each stage to determine the next combo node

ComboAnimationPlayer

  • Executes animations based on current combo state
  • Communicates with the ComboRunner to play appropriate animations
  • Uses Animation Montages with Combo Window Notify States to control combo timing windows
  • (WIP) use “Combo Fastfoward State” to increase combo speed and smooth

๐Ÿ“Š Diagrams

Combo TreeNode

Combo Tree Architecture

๐Ÿ—ƒ๏ธ Data Asset views

Combo Data Node Info

Combo Animation Info

๐Ÿค– AI BEHAVIOR

Thanks to Unreal Engineโ€™s native support for:

  • Behavior Trees
  • Blackboards
  • BT Tasks and BT Conditions

AI logic is cleanly implemented and developer-efficient.

AI Perception

AI can detect the player through:

  • Sight
  • Sound
  • Custom scripted triggers

๐Ÿงญ AI Modes

โš”๏ธ AI can execute combos, such as Player do because they send the same input flow as player’s.

โš”๏ธ To briefly demonstrate fighting impacts, hit actions now PUSH targets away instead of causing damages.

๐ŸŸก Wander Mode

  • AI walks between 4 predefined waypoints
  • Pauses at each waypoint for ~8 seconds
  • Randomly plays idle/fun animations
  • When disengaging from combat, AI returns to the nearest waypoint

๐Ÿ”ด Engage Mode

  • AI approaches the player when in range
  • Stops at appropriate combat distance
  • Behavior includes:
    • Evading player attacks
    • Counter-attacking upon successful evade
    • Flanking if behind the player

๐ŸŒฒ Behaviour Tree

image


๐Ÿ•บ PLAYER ANIMATION

  • Base animations reused from Unreal Engine Mannequin
  • Customizations added for immersion and responsiveness

Enhancements:

  • Randomized idle animations to add realism
  • Player automatically draws sword when:
    • Enemy is near
    • Enemy is visible via the camera system
  • AI automatically draws sword when see or hear Player (via AI Senses).