I’m writing this as a bit of a retrospective about a month after developing and releasing Sonar Strike https://play.google.com/store/apps/details?id=jf.sonarstrike.game
It was fun to make, and flowed out quite organically. My documentation was mainly logic diagrams, and excel spreadsheets with level event information. As a learning experience it has given me insight into the entire design process, and also given me some confidence in my future work. Without actually going through the whole process of making a the game here are some of the things I did during the design and development.
When I started making this game, I decided it would be as small and manageable as possible. I had started making a few games while learning to use Unity, but they were never completed because there scope was way too big, or beyond my capabilities and time. After hearing the sound of the Sonar ping in the classic ww2 movie “The Cruel Sea” I thought that the tense atmosphere and the use of the sonar screen could be interesting mechanic for a small game.
Just before I started working on the game I discovered I-tweens to create a variety of smooth animation transitions, I ended up using I-tweens for a lot of the game animations (explosion, captains head popping up) and moving objects, which was probably not the most efficient method, but had the flexibility to get the results I was after.
The spawning system in the game is very simple, the enemy submarines spawn rotate around the screen attached to the sonar needle. This “mechanical” way of having random spawn locations without having to code the random locations, using unity as a machine that simulates a game is something I can see could create interesting visuals and gameplay mechanics.
I then refined the game slightly to make the action of “launching” missiles and blowing stuff up an satisfying experience, through animation.
A hard lesson I learnt is to have your game properly tested (particularly the GUI) before releasing a game, as the initial thrill of your game being released is quickly doused by a message from a user that your game has half the screen missing, or with UI scaling problems on different resolutions than my test phone). The next game I release will have an alpha testing release for a small group of people to test on different phones.
Since the release I have updated the game a few times, and will probably continue to support it, with improvements and updates, I think it could have potential if developed further into a sequel with a game loop that gets players coming back everyday to perform missions/buy upgrades etc.Having just gotten back from Russia where I was lucky enough to visit a soviet era arcade museum, I am inspired to make a game inspired by the mechanical and basic arcade machines, but that’s a story for another post..