
Emergency Runway
Game genre: Side-scrolling 2.5D
Gameplay summary: Get airborne in your rickety plane and dodge as many obstacles as you can to get the farthest you can on your new makeshift emergency runway. Collect machinegun ammo and destroy obstacles as well!
Platform: Windows PC.​
Engine: Unity.
Time spent on project: Feb - Mar 2021 (6 weeks)
My job role(s): All. I developed this game solo.
Software used: Unity. MAYA. Bolt. Substance Painter. Photoshop. Audacity.
Emergency Runway was a fun little experience to create, it started in programming class, we were just meant to take an existing mechanic and modify it in some way to learn the basics of coding, I started off with flappy bird as my goal to recreate and modify in some way, this game ended up as the final result.
​
Once I started to grasp programming I couldn't stop tinkering and expanding mechanics wherever I could.
I wanted to add more types of things to dodge, chickens, cars, other planes etc, and also different levels each with their own theme, farm, ocean islands, city etc, but ran out of time.
​
My contributions to this project:
Game design.
- I designed the game flow, the mechanics, everything.
- I started with flappy birds simple tap to go up and gravity lets you fall...
..Then I thought why not hold the key down to go up and release to fall, which led me to think of using an airplane...
..Then I thought why not make it an old plane with machine guns to shoot targets. With a high score to chase...
..Then I thought why not make it comedic that your plane is busted and you're trying to land in some random road near a farm or whatever.. dodging also earns you a high score.. and so on 😋Art.
- I created all the 3D models and artwork you see in game.Programming.
- I programmed everything you see in game.
- The plane flies erratically using two combined methods: Plane goes up when you hold a key & falls under gravity physics. The code also lerps the planes rotation w/ a clamp to aim the plane in the velocity direction it's travelling. The 2nd method combined with this is tilts & sputters using an animation clip that plays on a loop as it flies, simple.
- The plane will stall if you stay up in the clouds too long. The code detects your velocity when you hit the ground, if too hard it's game over, but if it's light enough you can land and roll along the "runway" again.
- The background actually moves past the plane not vice versa, spawning in ammo, sheep or balloons at random, then is destroyed once it's scrolled past the camera.
- Machine guns are spawning bullet hit particle fx using raycasts, and depleting the health of individual balloon gameobjects, or popping sheep into red jam lol..Audio.
- I sourced, modified or created all SFX in the game.
- The plane randomly sputters as it flies, playing one of several sfx clips of an exhaust backfire using a random selection, breaking up any repetition.
​
​
Highlights from this project:
First time I figured out how to use variables that can be saved even after the game is closed, to keep high scores and try to beat it later.
First endless scroller game I've made, using the fake scrolling BG and spawning in objects.
First game I made where the player actually shoots things with a gun and collects ammo.
& first to have "enemies" that use health bars you can see as you shoot them.










