The Old Ones is a boss-battler top-down game with a deep focus on immersion. The art direction is heavily inspired by H.P. Lovecraft and the goal of the game is to eradicate ancient monstrosities that have been plaguing the lands.
The one presented in this post is a prototype of the game and its development was part of the DADIU Project, during which, the Creative Catacombs team (18 members) worked on it for 6 months.
My role in the team was that of Game Programmer and Audio Programmer and, given the time available, I was able to implement and work on a lot of different systems. However, due to organization issues among several team members, the end-product did not live up to our expectations and some systems ended up not being used. That said, I am still proud of these systems and I will proceed to showcase the main ones, particularly the HAESystem, the Ability System, and the Enemy AI.
The HAESystem (Hysse’s Audio and Event System) was a comprehensive system I developed to fit the needs of the Audio Designer of the team. At its core, it is an Event System that allows for easy creation and management of events in the game through an intuitive user interface realized with Unity’s Odin Inspector plugin. Once events are created in the Event System they are automatically visible by all of the Audio Components that can be slotted on objects in the game. This enables the Audio Designer to effortlessly add complex audio logic to game elements and tie said logic to events that can happen during the game. All of the Audio Components of the HAESystem interface automatically to the Wwise infrastructure, helping other programmers that don’t have any experience with it in achieving satisfactory results with their audio management. The system also enabled me to easily create an event-based animation system to simplify the work of our tech artist in building dynamic animations.
The Ability System was the second main system I worked on during the DADIU project. It consists of a modular interface in which designers can slot in abilities on the player character, change properties of said abilities and create combo abilities that use multiple sub-abilities in a row. This was achieved through the use of both Scriptable Objects and Unity’s Odin Custom Inspector. The Ability System was also connected to the HAESystem unlocking even more complex possibilities, such as abilities that go on cooldown until a specific event is fired in the game world, fire events when a specific ability is used, etc.
Finally, the Enemy AI was the last game element I worked on during the project, consisting of a modular system that allowed designers to visually edit the behavior of the enemies present in the game and add new abilities to their arsenal. The system also enabled designers to differentiate logic depending on whether the enemy is a normal encounter or a boss-fight. In case of bosses, the system would provide the designers with phase management, phase transitions, transition conditions, routines of abilities to fire in a specific order, delay and timeouts for transitions and abilities, and many other features.
Link to the game’s Itch.io page: https://dadiu.itch.io/the-old-ones