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
- Samples
- Gameplay Cue
- Intuitive Editor
- Multiplayer support
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.