Home

Awesome

UnityGAS<!-- omit in toc -->

Introduction

GAS is short for Gameplay Ability System, the ability system architecture from Unreal (For more information).
This is an implementation of GAS in Unity.
In short, GAS can help you create a complicated attribute, ability, and effect system for your game with ease.
It has been used in some projects and fully tested with Unity Test Framework but I'm still improving it so feel free to use and contribute.

Next step

Table of Contents<!-- omit in toc -->

Installation

This package require my Unity Extension Core so install it via Unity Package Manager.
Also, it depends on this Utility package so make sure to install it.
Unity SerializeReferenceExtensions

After that, add the git address in Unity Package Manager: https://github.com/h2v9696/UnityGAS.git
Or you can use git to clone this repository, then copy the whole folder to your project.

Usage

This package is the same as GAS in Unreal Engine, so to understand this better you should take a look at Unreal Engine's Document.
These explanations assume you understand GAS and Unity's Scriptable Object (SO) structure.
But feel free to check out my guide first—I'll try to include as many reference links as possible.

UML

This is an overview of this package. image