Maze Run is a 2D top-down game. The player controls an adventurer who explores a maze in a volcano searching for treasure boxes. However, the maze holds dangers. There are traps which poison the player and hinder the progress. Deep hollows are deadly traps. With elegant jumps the adventurer evades those traps. But traps are not the only challenge. The volcano threatens to erupt. There is a time limit which stresses the player. Treasure boxes are protected by Maze Guardians. These ancient creatures awake as soon as the player picks up the treasure box. They chase the player to death. Moreover, the maze begins to alter. The adventurer needs to pick up all treasures to win the game.

The Team

In this project 3 artists and 3 programmers were involved.

Technical Implementation

We created this game with the SFML library and C++ from scratch. This game uses my own implementation of the Entity-Component-System (ECS), called NiceECS. The SFML (L)ibrary was used to render the game and play audio. SFML is clearly separated from the NiceECS.

Personal Contribution

I developed the NiceECS library which provides classes and functions which implement the architectural pattern “Entity-Component-System”. We developed our entire game based on this library. I controlled the game in terms of software architecture. Moreover, I wrote/contributed on many concrete systems/managers for the game itself. I was responsible for the game setup. Things like setting up component type registrations, concrete systems/renderers and loading assets.