No way back


No way back is the first game runs on a computer that I have ever made, and I am also glad because I got a 9.2 for this course. It doesn’t have the main menu or anything else but the gameplay itself.

This game is coded in JavaScript, using Phaser library. I don’t have any rights of the art assets, it’s a set of assets with CC0 license, you can find it in the reference list below.

Although the game is fairly short (takes about 3 minutes to reach the end without deaths), it has almost everything what a platformer should have: moving, jumping, attacking and also enemies.


I am pretty proud of the “fake” randomly generated enemies I have made. What it does is spawning enemies on a high level on the Y axis, so that they will fall, most of the time, on a platform. And when they fall into the water, they will be moved into the air again. The code of moving enemies into the air is similar to how they are generated. But the AI of these enemies is simple, they will just go straight to the player character.

Honestly, I am pretty satisfied that I have done such a job since although I have no experience of programming video games in the past, I made a relatively functional game, without any (terrible) bugs.


There is a bit of implicit narrative in the game. But it seems that didn’t tell the story well from some playtesting I have done later. So I probably need to learn more about narrative in games. The story behind this game is like:

“There’s a revelution happening in your kingdom. And you have to escape from the capital and keep the crown on you head. Now, you are in a dark forest, you know that they are chasing you, you have to run.”

You can find the story at the beginning of the game, in the dialogue box, together with the tutorial. When you get away from the forest, there’s also a short piece of text tells you that you ran away only for now (finished the game).

This was an attempting of mine that tries to give a narrative which is not lead by the player. Instead, the player is more like a witness in this game. So the player doesn’t have to worry to be overwhelmed by tons of information (world, character, etc.) since the narrative is split into small pieces and set to every possible slot. This is one way that I prefer to narrate, by putting story pieces in the description of items, in the text of a signpost, etc.


You can download it from my Mega Drive. Open index.html to run the game.

Notice: JavaScript files will be blocked for safety when you run the game directly Chrome or Firefox, for non-advanced people, you can refer to the tutorial below to run the game.

A short tutorial of running the game

1 – Open the entire project with Visual Studio Code.

2 – Install Visual Studio Code extension: Live Server (extension Id: ritwickdey.liveserver).

3 – Open index.html in your Visual Studio Code, on the bottom right corner, click on “Go Live“.