
DESCRIPTION
​
The CORE Combat System is a combat framework plugin being developed as an extension of the Unreal Engine Gameplay Ability System (GAS). The goal of the system is to provide a modular and designer-friendly way to build combat mechanics, abilities, and character kits while maintaining full multiplayer replication support.
The plugin extends GAS with additional layers that simplify class creation, ability composition, and gameplay configuration. Designers can build complex abilities using reusable gameplay patterns rather than requiring new engineering work for every mechanic.
This system is currently part of an unannounced game in active development, implementation details are proprietary. So, this documentation focuses on the high-level architecture and design philosophy behind the framework.
​
​
Features
​
-
Archetypes and Class Creation
-
Class Builder Component
-
-
Weapons / Equippables
-
Targeting System
-
Tab Targeting​
-
Click Targeting
-
Scoring and Prioritization
-
-
Abilities
-
Stationary Abilities (Point Blank Melee Attacks)​
-
Point Blank Area of Effects
-
-
Spawner Abilities
-
Projectile​
-
Ground Targeted
-
Summons / Companions
-
-
Movement Abilities
-
Consumption Abilities
-
Linked Abilities
-
Chain​
-
Charging
-
-
Reactive Abilities (Passive Abilities)
-
-
Design Goals
​
​
​
Class builder Component​​​​
​

​​
Archetypes represent the RPG class layer of the combat system. An archetype defines shared behavior and configuration for a group of classes, allowing designers to centralize gameplay settings and class mechanics.
Each archetype stores configuration data that defines how the class interacts with weapons, abilities, and special gameplay systems. This includes weapon configurations, utility ability pools, class specific mechanics, and passive skills.
​
Passive skills are reactive abilities that remain active during gameplay and respond to events such as damage, effects, or ability triggers. This allows classes to support complex combat interactions without requiring constant player input.
​​
​
Weapons / Equippables
​
Weapons are designed to be reusable assets that can be equipped by multiple archetypes. However, the ability granted by a weapon is determined by the archetype using it.
For example, a sword used by a warrior might grant a dash attack, while the same sword used by a gladiator could trigger a ground slam. This ensures that each class maintains a unique combat identity without requiring separate weapon assets.
To create a weapon, designers create a child class of CORE_BaseWeapon and configure its gameplay data.
​​​​

​The most important setting is the required weapon tag under archetype data, which determines which ability set will be used when the weapon is equipped.​
​​

​Once those are set, it is ready to be used.​
​
​
​
TARGETING SYSTEM
The targeting system combines tab targeting with direct click targeting. Targets are detected using a multi sphere trace around the player and ranked using a priority scoring system.
Tab Targeting
-
Tab targeting allows players to scan their surroundings and cycle through enemies using a single key. Each press of the key selects the next target in the priority list.
Click Targeting
-
Click targeting allows the player to directly select a target by clicking on an enemy on screen. Clicking empty space clears the current target.
Scoring and Prioritization
-
Target priority is determined using a score that combines distance from the player and crosshair alignment. Enemies closer to the crosshair receive higher priority, while distance acts as a secondary factor.​​
​
Priority Score = Distance Score( Distance Factor * Distance Weight(1))
+
Crosshair Position Score (CrosshairFactor * Crosshair Weight(2))
​
​​
ABILITIES
Abilities are implemented as extensions of GAS gameplay abilities. All abilities inherit from CORE_BaseAbility, which adds additional structure for common gameplay patterns.
The system organizes abilities into several types that represent common combat behaviors. These ability types act as templates that designers can use to build new mechanics without needing custom code.
STATIONARY SKILLS (POINT BLANK MELEE ATTACKS)
-
Stationary skills activate without moving the caster. These abilities trigger their effects immediately from the player’s current position and typically represent melee attacks or self centered effects.
​
Point Blank Area of Effects
-
Point blank area abilities are a common example. These abilities apply effects within a small radius around the player and are typically used for close range combat attacks.
-
Use Cases: Melee attacks, self-centered buffs/debuffs.
SPAWNER ABILITIES
-
Spawner abilities create actors in the world such as projectiles, summons, or area effects. After spawning, the actor is responsible for its own behavior and gameplay logic.
Projectile
-
Projectiles are a common use case and may travel in straight paths, arcs, or homing trajectories.
​
Ground Targeted Attacks
-
Ground targeted abilities also fall into this category and allow players to select a location in the world where the ability will activate.
-
Use Cases: Ranged spells, area abilities.
MOVEMENT ABILITIES
-
Movement abilities alter the caster’s position through dashes, teleports, leaps, or other directional movement mechanics. These abilities allow classes to reposition quickly during combat.
-
Movement abilities cannot be interrupted by the caster cancelling the ability, but they may still be interrupted by enemy actions.
CONSUMPTION ABILITIES
-
Consumption abilities apply effects directly to the caster. These abilities are typically used for consumable items or temporary buffs.
-
A common example is a healing potion that restores health or applies a temporary status effect.
LINKED ABILITIES
-
Linked abilities act as containers that hold multiple abilities and dynamically determine which ability should activate based on gameplay conditions.
-
This allows complex ability behavior to be built from smaller modular ability components.
Chain Skills
-
Chain skills activate multiple abilities sequentially. Each stage becomes available when specific conditions are met, allowing the ability to progress through multiple steps.
Charging Skills
-
Charging skills increase in power while the player holds the input. The ability progresses through multiple stages, each representing a stronger version of the ability.
-
When the player releases the input, the ability associated with the current stage is activated.
​
REACTIVE ABILITIES (PASSIVE ABILITIES)
-
Reactive abilities are always active and respond to gameplay events. These abilities are commonly used for passive buffs, triggered effects, or event driven mechanics.
-
Because they operate in response to events, reactive abilities are often used to support other active abilities and extend combat interactions.
​​
​
DESIGN GOALS
​
Modularity
-
The system is designed around modular components that can be combined to build a wide range of combat mechanics. Abilities, archetypes, and weapons are implemented as independent systems that interact through shared configuration and gameplay tags. This allows new gameplay behaviors to be created without modifying core systems.
Designer Workflow
-
A major goal of the framework is reducing the amount of engineering work required to implement new abilities. Designers can assemble skills using reusable ability patterns and configuration data rather than requiring custom code for each mechanic. This makes iteration significantly faster during gameplay development.
Reusability
-
Abilities are organized into reusable categories such as movement skills, spawner abilities, and linked abilities. These patterns act as building blocks that can be combined to create more complex gameplay behaviors. As a result, many new abilities can be implemented by composing existing systems rather than building new ones.
Multiplayer Support
-
The framework is built on top of the Gameplay Ability System in Unreal Engine, allowing it to inherit the engine’s replication and gameplay effect systems. This ensures that abilities and combat interactions function correctly in multiplayer environments while minimizing the need for custom networking code.
​
​




