From the blog

Neon runner


Neon runner is a 2D side-view platformer, also an individual academic project of mine. As a game of “endless”, there’s no end or goal in Neon runner. The solution to this “endlessness” is a point of difficulty at that time. The art assets are from one of my friend, hyouai.


The solution to the “endlessness” in this game is achieved with the following steps:

  1. Create pre-made levels. There are about 5 different levels in the game.
  2. Connect the levels. Once you passed a level, there will be a random level chosen to append to the end of the last level.

Simply connecting the levels is less interesting, so I added some system for the difficulty.

  1. Obstacles. Two types of these, one deadly (when touch, game over) and one slower the player.
  2. Speed up the scrolling of the screen.

But due to the lack of experience, the difficulty is not well designed. As a result, the game will reach a crazy difficulty after a certain time of playing.


As I stated earlier, the “endlessness” of this project is achieved by pre-made levels. These levels are saved as prefabs in Unity. Once a level needs to be used, it will be generated by Instantiate function, and it will be destroyed by Destroy function when it’s no more needed.

In the reflection of this course, I realize this whole process can be replaced by an Object Pool. Prefabs will be stored in this pool and enable when needed. This can avoid the frequent uses of the two functions and save system resources.


You can download the build of this project from Mega Drive.

Controls of the game

  • [A and D] move the character.
  • [SPACE] to jump.
  • [Mouse] to aim.
  • [Mouse Left Button] to shoot.

When the character falls out of the screen, hit the left edge of the screen or hit a laser beam, the game is over.

Leave a Reply

Your email address will not be published. Required fields are marked *