View project on GitHub:
Eternal is a combat action RPG inspired by From Software’s souls-like games and designed specifically for a casual audience while retaining a souls-like gameplay loop, where you fight your way through a medieval fantasy landscape using a variety of weapons, spells, and consumables.
My main responsibilities were programming the:
AI
and integrating & implementing the Easy Save 3 save system package to create the game's save system.
The enemies can engage the player as individuals or as a group, and combo their attacks when fighting. They'll also evade player attacks and occasionally circle the player's position. Otherwise, the enemies will be patrolling a path or searching for the player.
There are 3 different types of AI:
Each enemy implements a behaviour tree to control which actions they perform and when.
HUD
Eternal's HUD displays: player statistics such as health, stamina, and combo counters; four quick-slots for cycling through the player's equipment; and prompts for performing actions, which change at runtime depending on the input device being used.
Inventory
There are two sections within the player inventory: a window showing the player's collected items; and a window showing the player's equipped items. Selecting an item will display its statistics and items can be equipped or unequipped with a drag & drop feature.
Menus
I also programmed the game's main menu & pause menu, and added controller support for all UI elements.
Through using FMod, the audio manager handles playing one-shot audio clips; the number of instances of audio clips; restarting audio clips.