Overview
Over the 2023-2024 winter break, a friend and I decided to work on a small prototype. My goal for this project was to learn how to implement and use the Gameplay Ability System in C++ in Unreal Engine 5 (UE5). This project was my first dive into UE5 C++.
Gameplay Ability System (GAS)
The GAS is a UE5 Framework for creating gameplay driven player/character interactions. I created a Gameplay Effect, and two Gameplay Abilities.
Ablaze & Shield - Gameplay Effects
When the player walks into the fire, a Gameplay Effect damages the player over time and creates the flaming visual effect as a Gameplay Cue.
When the player walks into the shield, a tag is applied to the player which removes a pre-existing fire effect and prevents the player from catching fire for a short duration.
Fireball Basic Attack - Gameplay Ability
This basic attack is a Gameplay Ability that instantly spawns an instance of the fireball blueprint.
Using the Enhanced Input System and a short cooldown, it allows for rapid attacks following the mouse cursor. The cooldown and damage are both built using Gameplay Effects.
Using the Enhanced Input System and a short cooldown, it allows for rapid attacks following the mouse cursor. The cooldown and damage are both built using Gameplay Effects.
Tornado - Gameplay Ability
The tornado is a Gameplay Ability that spawns a reticle on cast. This reticle determines the spawn location of the tornado.
Upon receiving a second input, the tornado begins to move in a straight line away from the player.