-
Notifications
You must be signed in to change notification settings - Fork 6
Gameplay Ability System
CaIzii edited this page Jul 1, 2023
·
1 revision
It could be overkill for your arena shooter or tiny indie game with a small set of abilities/actions
- Epic's framework for abilities, buffs, and attributes. (Separate from 'Gameplay Framework')
- Powerful feature set for RPGs and a Wide range of genres.
- Steep learning curve and only a little documentation.
Official Docs: https://docs.unreaIengine.com/en-US/Gameplay/GameplayAbilitySystem/index.html
Community Docs: https://github.com/tranek/GASDocumentation (Far more detailed than official.)
Video: 'Getting Started With the Gameplay Ability System' (https://youtu.be/irzq610_Y4E)
Video: 'Using the Gameplay Ability System' (https://youtu.be/713CSOWkTU)
GameplayTags (https://docs.unrealengine.com/en-US/Gameplay/Tags/index.html)
- Avoid monolithic Character Class containing all Ability-code and VEX.
- Easier to maintain single-purpose classes. (eg. Action_MagicProjectile, Action_Sprint)
- Better collaboration, especially for Blueprint (Binary assets can't be merged in version control)
- Grant Abilities and Buffs during gameplay, e.g. level-ups, gear upgrades, and damage-over-time effects.
- Avoid loading the entire game into memory at once via 'hard-references'.
- Manage many states and labels via GameplayTags rather than booleans or enums.
// Examples: 'DamageType.Melee.Slashing', 'Action.lsSprinting', 'Pawn.Mage', 'Pawn.Warrior'
- More than just Player Abilities, Actors in the world can use Actions too.