Development Process:

Initial Concept: The goal of this project was to create an endless runner app, similar to Flappy Bird, Subway Surfers, or Crossy Road, for example. I went for a cute, cartoonish look to the game, so it would come across as being light hearted and inviting.

Level Design: The background features an endless rocky mesa terrain, and the foreground is a vegetable patch the rabbit is hopping through.

Character Design: The rabbit uses a lot of circles in its character design to make him feel soft and friendly. The fox has more of a triangular body and face shape to signify that she’s sinister and edgy. I really like how Studio Ghibli (a Japanese animation film studio) designs its characters and for the rabbit I looked at some of their creatures as reference photos.

Putting It Into Code:

Powerups: The player activates a coroutine when they hit a powerup, which can be either increasing in size, decreasing in size, slow motion time, extra lives, or jumping higher.

Physics and Player Controller: I used 2D rigidbody components and colliders in Unity and the controls of the player were also based off of the 2D rigidbody system. The only thing the player has to do to move is to tap anywhere on the screen to jump.

Enemy AI: The vegetables and foxes continuously spawn from right to left, and gradually increase in speed over time. When the player collides with a game object tagged as being an enemy, they lose a life. When they run out of lives, they lose the game.

Saving Player Data: I used the PlayerPrefs system in Unity to save the high-score of players, and based on their high-score they can unlock different customizable features.

Go more into depth on the GitHub repository.