Cubarun
Cubarun was my gateway to game development. I
managed to implement a lot of fun systems for the first time in my life.
And that was the beginning of a journey that is still ongoing.
Role: Gameplay Engineer
Game Engine: Unity
Programming Language: C#
Technologies: Blender, Visual Studio
Platform: PC, Mobile
Date: 2019 - 2020
Concept
Cubarun is an endless runner game where the player controls a cube with special
abilities to
collect
coins
and get as far down the cubes world as they can.
I implemented a lot of systems in this game. And while I architectured the project during my
undergrad (when I was still learning programming),
I was amazed that the whole thing worked together still without the need to fix any bugs. After
all,
this
project is 4 years old by now.
Game Systems
Level Generation
To achieve the endless runner dynamic, I developed a random level generation system that dynamically constructs the game environment as the player progresses. This system operates by monitoring the player's position, adding new tiles ahead of the player and removing old ones from behind to maintain continuous gameplay without loading interruptions. Each tile is selected based on a set of probabilities that determine which tiles are likely to follow. To enhance variety and prevent repetition, the system tracks previously chosen tiles and adjusts their spawn likelihood. As the player advances, the difficulty of the level increases by either increasing the likelihood of spawning more difficult tiles to cross or by increasing the difficulty of a chosen tile. For instance, a tile that has a spinning laser beam will have the laser spin even faster.
Player Selection Menu
I designed and implemented a simple player selection menu in that allows players to choose and purchase cubes, each featuring unique abilities. This system not only provides a choice of characters but also adds depth to the gameplay through special abilities that enhance player strategy. In addition to the abilities, all cubes have the ability to speed up or slow down, providing crucial gameplay mechanics that players can use tactically to navigate through increasingly difficult levels.