Overview
State of Mind was created in 48 hours for the Bradley University Kaboom Game Jam!
I spent a majority of the game jam implementing a design friendly and easily scalable ability system and character swapping system using an object oriented approach. I programmed each player ability and implemented their corresponding animations and VFX.
I also assisted with level management/loading and general bug fixing.
Ability System
The ability system was made by creating an Ability base class which each ability derives from.
The ability system stores each set of player abilities (devil and angel), and is responsible for switching sets during runtime, binding abilities to key binds, and casting and canceling abilities.
The design team is able to create abilities using a Unity Scriptable object where they can input any ability data such as cooldown, ability names, and art assets.
Abilities
Both ability functionalities derive from the Ability base class.
The angel ability heals the player to full as long as the player holds down the key bind.
The devil ability is a quick attack, using animation events to enable and disable the attack collision. The attack collider lerps to a specified end distance at the start of the attack.
Character Swapping
The character swapping was handled through the player controller. An action is fired off when the player presses the swap key bind, which other systems in the game listen and respond accordingly, such as the ability system and UI manager.
Animation and VFX Implementation
The animations were implement using Unity's built in animation system.
The VFX were implemented using Unity Particle Systems.
Animations: Angel and Devil walk cycles, jump, on-receive-damage flinch, idle
VFX: Angel Heal, Character Swap sparks, on-receive-damage sparks
Team Photo!