🚀 Spring Sale is live! 🚀 Don't miss your chance to get all my products at 30% OFF!  

Get it!

Ability System Overview

Statement

  1. You can refer to the Demo project to learn how to replace animations for abilities, change parameters, and adjust values for game effects, among other things.
  2. The basic demo of GCS includes some characters and animations from Paragon, which are pre-configured for your reference.
  3. The animations mentioned in this document are sourced from Space.Bar.Anim and are not included in GCS. If you own these anim packs, you can directly import them into your project. They are all setup and with minor tweaks and you are ready to use them.
  4. The effects/sound fx in the animations are setup with Context Effects System, meaning the animations do not directly reference specific assets. Therefore, you can replace the corresponding VFX/SFX entirely by swapping different EffectsContextLibraries without needing to adjust each animation individually.
  5. The input trigger methods and ability activation conditions mentioned in this document can be modified through configuration rather than hard coding.

Abilities Overview

GCS offers a wide range of pre-configured abilities, each with adjustable parameters that you can use directly.

GCS技能系统概述.001

Ability Tag Relationship Mapping

The interruption/blocking relationships between all abilities provided are determined by the Ability Tag Relationship Table, allowing you to apply completely different interruption/blocking rules for reusing these abilities without creating a bunch of subclasses and getting lost in a sea of tags.

GCS技能系统概述.技能关系

你应该复制一份默认的关系表,并按照你的游戏设计规则进行修改。

Input To Ability Activation

You can also fully customize the input trigger methods for abilities through Input Control Setup.

Ability Action Set

The GCS_AbilityActionSetSetting is a data asset where you can configure different ability actions that will be used in various situations for any ability. A ability action is a structure that contains basic information about the ability action, such as the montage to play and its playback method.

GCS技能系统概述.002

Creating ability Action Set Settings

You create a new ability Action Set Setting by creating a data asset of type GCS_AbilityActionSet. It is recommended to prefix the naming of action set settings with AAS_.

GCS技能系统概述.003

You should create corresponding ability action set settings for different types of weapons, so that when switching weapons, the same ability will use different animations.

GCS技能系统概述.004

Each ability action set setting contains all potential ability action sets corresponding to different abilities.

GCS技能系统概述.005

Refer to Weapon System to understand how to associate action set settings with weapons.

Layered Ability Action Sets

When configuring ability action sets, you can also implement a layered approach to change moves under specific conditions.

The following example demonstrates that the same attack ability will have different moves/combo combinations depending on the type of weapon held.

GCS技能系统概述.006

When layering is enabled, it will first query the layered ability action set for actions that meet the conditions, then fallback to the default actions.

Querying Ability Actions

In GameplayAbility, you can query the ability actions corresponding to a ability using the combat interface's QueryAbilityActions.

For abilities activated directly, the usage is generally as follows:

GCS技能系统概述.007

For abilities activated through events, the usage is generally as follows:

GCS技能系统概述.008

How to use the returned AbilityActions is entirely determined by the design of the ability itself. The simplest usage is generally as follows:

GCS技能系统概述.009

Underlying Logic

At the core, AbilityActions are actually derived from queries made by the implementation object of the combat interface through the "ability Action Set Settings."

GCS技能系统概述.010