GAS Companion

MickaelDaniel - Apr 23, 2021

Gameplay Ability System Template and Starter Kit - Leveraging the power of the Gameplay Ability System, this plugin provides a starting template and a robust foundation to speed up the creation and development of GAS based projects.

  • Supported Platforms
  • Supported Engine Versions
    4.24 - 4.26
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

Update 1.2.1 Added an Editor module to provide a custom AttributeSet / Gameplay Attributes Wizard class generation. You can now generate new Attributes from within the Editor without c++ knowledge, and configure the plugin to use those for your Characters (Only for 4.26 users, video preview)


GAS Companion aims to be a general base for GAS powered projects without making any game design choices. The various parts of the system are intended to be subclassed and customized per project needs.


It includes the necessary initial C++ setup, helpers and additional features to get started on a new project that aims to use Epic's GAS plugin (used namely in Fortnite and Paragon, and showcased in Action RPG project)


Similarly, GAS Companion can help existing projects that are considering the use of GAS and accelerate the implementation, or provide guidance.

  • Provided as a Plugin to easily share code between projects
  • Blueprint Friendly, no need to dive into the cpp side, you can implement Abilities right away
  • C++ Friendly too! You can easily extend from the provided C++ class and / or modify the plugin source.
  • Not Game Specific The plugin doesn't make any assumptions about your game design and decisions, and was built to be generic enough to be used in any kind of game.
  • Flexible AttributeSet / Attributes framework Generate custom Attributes from the Editor with a hand-crafted AttributeSet Wizard.
  • Ability Queue System (with a Debug Widget! more information below)
  • Ignore Ability Cost feature (Possibility to "loosely" check cost for Abilities, more information below)
  • AttributeSet default setup with most commonly used Attributes (Health, Stamina, Mana)
  • ASC on PlayerState (for Player characters) or on Pawns (for AI / NPC Characters)
  • AI Tasks Activate Abilities by Tags or Class from Behavior Trees


Documentation / Discord Server / Issue tracker

Demo (playable demo, doesn't require plugin) / Project (ue4 project, requires plugin)

Technical Details

Features:

  • Ability Queue System Store failed abilities and re-trigger when the previous running ability ends, with a custom Debug Widget to visualize the state of the Queueing System
  • Ignore Ability Cost for activation Only checking for positive resource value, letting abilities activate even if attributes goes into negative values - but still prevents activation when value is 0 or below 0
  • Custom AbilitySystemComponent and GameplayAbility Activate abilities by Class / Tags (and return the activated ability), Abilities with onAbilityEnded delegate (useful for Behavior Tree Tasks), Abilities with Gameplay Effect Containers (inspired by Action RPG project)
  • Comprehensive Base Character Getters for AttributeSet values, Support for startup Attributes, Effects and Abilities, Ability System helpers (Ability activation, Checking for GameplayTags, ...), Ability, Attributes and Character lifecycle Events (OnAbilityActivated, OnAbilityEnded, OnAbilityFailed, OnAttributeChange, OnHealthChange, OnStaminaChange, OnManaChange, OnRespawn, OnDamage)
  • UI setup and basic HUDs provided


Code Modules:

  • GASCompanion (Runtime)
  • GASCompanionEditor (Editor)
  • GASCompanionDeveloper (UncookedOnly)


Number of Blueprints: 6

Number of C++ Classes: 35

Network Replicated: Yes

Supported Development Platforms: Windows / Mac

Supported Target Build Platforms: Windows, Mac, Xbox One, PS4

Version: 1.2.1


Important/Additional Notes: Although it should support all the mentioned platforms above, this plugin has been tested exclusively on Windows.