Asteroid Runner
Unity, C#, Procedural Generation, Prototyping, Bezier Curves, BLender
BACKGROUND
Asteroid Runner is an arcade spaceflight game that I themed around my interest in procedural generation. The player races through an infinite procedurally generated asteroid field collecting points as they navigate the field to each checkpoint.
PROJECT GOALS
My goal was to make this project with one control system to test where flight is exclusively controlled by the two analog sticks. I wanted to challenge myself by focusing on how the player navigates through the game with this unique input scheme.
PROCESS
I started off prototyping the core mechanic for player movement. The analog sticks control the direction of the left or right thrust vectoring engine of the spaceship, each applying their thrust force on the ship in a realistically simulated manner. The only two exceptions are pointing the engines at each other increases their thrust and away decreases it.
Dialing in the flight model was quite a finicky process; because it is physics driven, I had to play around with the magnitude of the force, the distance between the engine’s force and the ship itself, and how far the engines could rotate in order to arrive at a satisfying movement experience.
After seeing the flight mechanics work well together, I added several types of asteroids, objectives to guide your flight, a score system to encourage mastery of the mechanics, and visual/audio decoration to make the experience more pleasant.
I also practiced making frequent progress updates on social media to build my audience and engagement. I made a few short write ups for Twitter accompanied with screenshots and gifs to connect with my player-base.
TAKEAWAYS
I learned the importance of having an early, playable prototype to gauge game-feel and have a solid foundation to build upon. This process encouraged me to stay focused and have consistent motivation throughout making this game.