Combo System

Average Rating:  
X Rating Failed

Custom graph editor to create trees of combos and an actor component to utilize them during runtime

  • Supported Target Platforms
  • Supported Engine Versions


This plugin is an editor tool to help designers create a tree-like data structure for any fighting game where the player needs to string together a chain of combinations. It uses Blueprint and a custom GUI to make development easy but runs in C++ to increase performance.

The plugin adds a new ComboTree asset type under the miscellaneous tag that opens with a graph interface. From this graph you can create a tree of combo nodes, each of which contain a set of properties, such as name or multiplier. At each of these nodes you can branch down different combo paths. The path options available to you depend on a UEnum defined in code, which is the only coding required by this plugin. Say you have a UEnum with the fields ‘A’, ‘B’, and ‘C’, then at each node you can select the path to take given ‘A’, given ‘B’, and given ‘C’.

The second part to this plugin is an Actor Component called ComboSystem. This component holds a reference to a ComboTree and utilizes it during runtime. ComboSystem initially points to the root node of a tree and advances through it using a Blueprint-Callable function AdvanceToNextCombo. This function takes a UEnum of the same type that was used for the path options in the tree. During runtime when you want to advance your actor down the path associated with ‘B’ in the graph editor, you call the Blueprint function using the same ‘B’.

There are additional features that allow you to conditionally block advances. For example, ComboSystem runs a frame timer to allow the user to block input during the startup and ending frames of a combo. There are also Blueprint functions for accessing all the properties of a current node. These and a full explanation of the Combo System are included in the pdf documentation.

Technical Details


New Combo Tree Asset type

  • Graph Editor to create Combo Trees
  • Use a UEnum to specify combo paths
  • Associate a name, multiplier, and launch vector with each node in the tree

Combo System Actor Component

  • Blueprint-callable functions that run in C++
  • Move an Actor through a tree of combos using Blueprint
  • Pull information about the current node
  • Conditionally block combos from advancing:
  • Utilize frame timers to block combos during transitions
  • Require that a 'Hit Landed' flag be met before advancing
  • Coordinate combo availability with a movement UEnum

Code Modules:

  •  ComboSystemEditor, Editor
  •  ComboSystem, Runtime

Number of Blueprints: 0

Number of C++ Classes: 16

Supported Development Platforms: Win64, Win32

Supported Target Build Platforms: Win64, Win32

Video Guide:


Example Project:



Previous Next
  • Edit
  • Preview
  • Help
Login to comment
X Report this Comment
X Attention

X Edit this Comment
  • Edit
  • Preview
  • Help
X Remove this Comment

Are you sure you want to remove this comment?

X Attention