— GAME ENGINE
Moose Engine
— TEAM
Moose Ninja (6 members)
— DEVELOPMENT TIME
8 months (Nov 2017 ~ Jun 2018)
Fate Warriors is a beat 'em up game with some puzzle mechanics set in a dystopic future.
The player must advance, beating waves of enemies, while finding keys and activating switches to open new paths.
To reach the final area the player may need to visit old rooms in where new paths have been unlocked.
It’s possible to combo both weak and strong attacks to fight.
You can dowload the the game from itch.io
This game was developed as the Bachelor’s Degree in Multimedia Engineering senior year’s project.
We developed this game in our own engine, which we coded using C++ and OpenGL.
Additionally, I was also in charge of the project management, combat design and level design, including event scripting.
The game was completely reworked during mid-development, which proved to be a huge challenge, both in management and development.
Fate Warriors started as a King of the Hill type of game, where 3 groups of fighters were faced against each other.
As such, the map required for several rooms to be controlled, connected with each other by several paths.
During mid-development, after most of the map was already modeled, we decided to completely remake the game’s gameplay since the game wasn’t fun to play.
The game was remade to be a beat 'em up, focusing on some puzzle mechanics.
As the game changed, the level design changed to accommodate the new mechanics, such as the doors, keys, spikes and levers.
We also added some scripted events that triggered when the player reached certain areas.
I wanted the player to go travel through the different rooms, finding new items to open paths while fighting enemies.
As we developed the game, we also build our own game engine: the Moose Engine.
We had to take care of both the rendering and managing the game itself.
For the rendering engine, I programmed some classes in C++ and OpenGL, mostly related to the scene rendering order and animations.
I worked on some managers for the game enginge, like the enemy manager and the event manager.
The scripting manager was also one of my tasks. We could easily add events, such as moving the camera, making new enemies appear or playing music.