Game Designer
Shamus Donaldson
Sky Knights

Platform:
Mobile - App Store, Google Play
Engine:
Unity
Language:
C#
Team Size:
1
Overview
Sky Knights is a 2D arcade-style side-scroller inspired by classic retro games. The player controls a knight riding an ostrich, battling waves of vulture-mounted enemies.
Gameplay is simple and intuitive:
-
Tap the screen to flap the ostrich’s wings and ascend.
-
Release to let gravity pull the character downward.
-
The goal is to stay airborne and angle your lance to strike enemies before they strike you.
-
Hitting an enemy increases the score by 1.
-
If the player is hit or falls to the bottom of the screen, the game ends.
Each match displays the player’s current score and high score at the top of the screen, reinforcing the arcade-style chase for mastery and leaderboard dominance.
Project Design Goals
Sky Knights was the first project I developed after earning my Game Design degree. My primary goals for this game were:
-
Build a complete mobile game from scratch using Unity:
-
Gain hands-on experience with Unity’s 2D tools, physics systems, and mobile input handling.
-
-
Learn the mobile publishing pipeline:
-
Familiarize myself with all steps required to prepare, test, and publish a game to iOS and Android platforms.
-
-
Reinforce arcade-style game design principles:
-
Focus on tight controls, simple mechanics, and score-driven progression.
-
-
Practice 8-bit pixel art:
-
Develop a consistent retro visual style by creating all character, enemy, and UI sprites in a custom 8-bit aesthetic.
-




Post-Mortem
Sky Knights was the first game I developed after earning my Game Design degree, and it served as a personal milestone—both a return to the kind of arcade gameplay I grew up loving and a crash course in building and shipping a mobile game independently.
What Went Well
-
Simple, Intuitive Controls: Tapping to fly and releasing to fall proved to be a natural control scheme that players quickly understood. This made it easy to focus on mastering timing and positioning rather than struggling with inputs.
-
Strong Arcade Identity: The minimalist presentation, pixel art, and high-score loop captured the essence of retro arcade games. It was easy to pick up, hard to master, and encouraged players to chase their personal bests.
-
Completed & Published: Most importantly, I finished and published the game. I learned how to prepare builds, test on physical devices, and publish to the App Store and Google Play—all crucial steps for any indie developer.
Challenges
-
Limited Content & Variety: The game only had one enemy type and no progression system. While this aligned with the arcade feel, it limited long-term replayability and didn’t give players a sense of advancement or new challenges.
-
Lack of Visual Polish: As my first time working with 8-bit pixel art, many of the visuals were functional but unrefined. Animations were basic, and there was little visual feedback to enhance hits, damage, or failure.
-
Basic Systems: The scoring and collision systems worked, but lacked nuance—there were no combos, hit feedback cues, or ways to reward skilled play beyond simply surviving longer.
What I’d Do Differently
-
Add a progression system (even a simple wave or level structure) to create short-term goals beyond just beating your high score.
-
Incorporate multiple enemy types with different behaviors to encourage varied strategies.
-
Improve game feel through feedback: screen shake, hit sounds, and impact animations that reward every successful joust.
-
Plan more time for iteration and playtesting, especially to fine-tune difficulty and pacing.
Final Thoughts
Sky Knights gave me the confidence to call myself a game developer. It taught me how to build a complete game loop, how to solve problems in Unity, and how to take a concept from prototype to release. While it was small in scope, it laid the foundation for Super Sky Knights and everything I’ve created since. Most of all, it taught me the value of shipping a finished project, no matter how simple—and how each game is a stepping stone to the next.