Go-Go-Cube
Go-Go-Cube is a based off of a game called Cubethon by youtuber Brackeys; a game about racing down a narrow track without hitting any obstacles.
​
In cubethon, a cube is accelerated down a track with a multitude of obstacles, with the only movement options being moving left and right.
​
Cubethon also uses trigger boxes to determine passing a level, along with multiple script functions to detect collision and falling off the dge.

Movement
As opposed to Cubethon's horizontal sliding, go-go-cube's track has 3 sections, and pressing either of the horizontal movement inputs will move you to the track to the right or left of that one, eliminating the ability to fall off the edge.
​
This was achieved relatively simply due to Unity's scripting API being object based, pressing a key simply changes the X-component of position in relation to the button pressed.

TRY IT OUT!
The Idea
I did not enjoy playing Cubethon; I was incredibly bad at it. So when redesigning Cubethon, My goal was to have every player feel the same frustration as I had.
​
I wanted to redesign the core mechanics to feel more responsive, while also maintaining a frustrating experience, and thus, go-go-cube was born.

Color Gates
In order to maintain difficulty, I added a color Gate Mechanic, which adds another factor the player must account for while playing the game.
​
The Color gate operates as such: When passing through, the Player's cube must be the same as the gate, or the player will be sped up for 10 seconds. Players push one of 2 buttons to have their color changed for 1 second.
​
This is done by making the gate's collider a trigger box, and the trigger checks a variable on the player's script, set when the player presses the change color button. If that variable is the same, the trigger box gets deleted and nothing happens. If that variable is different, the trigger box will set the movement multiplier up, and then destroy itself.​