It’s Friday January 12th, 2018 and there is a little over 4 days left for submissions to the Unity3D Neon Challenge. I didn’t think about joining this challenge until yesterday when I had a sudden burst of inspiration from a little game I made for Star Trek Jam in June 2016.
Over the last week I have been updating some of my older projects to use Unity 2017.3 and after updating Fortuna Station and messing about with the Post Processing effects had a ‘eureka’ moment!
Fortuna Station is a simple space station management game that uses a risk strategy as the game mechanic. Risk isn’t often understood well, and this game is a good way to learn it. The best example I saw was a YouTuber (Jupiter Hadley) who had the worst luck while playing Fortuna Station! The mechanics behind the game involve an ever increasing likelihood of attack over the course of the game play. In the very first level of the game the chance of an attack is rated as ‘Rare’. Internally there is still a 5% chance of attack, so an attack in the first level will rarely happen, but there is still a chance that it will happen. Poor Jupiter got smashed on the very first level on her very first game play!
Jupiter’s experience inspired me to do a ‘post-mortem’ on the trouble with risk management when not clearly understood or abused. I’ve been inspired to present this experience as a short cinematic clip dramatising what may have led to the destruction of Fortuna Station.
Fortuna Station has unreleased/unfinished code to show the actual attack on the station, and this is a good opportunity to showcase the attack code.
For the Neon Challenge, I wanted to tell the story of Fortuna Station.
The first thing of course was to create a branch in the git repo and duplicate the game scene while stripping out all the UI and game mechanics. Easy.
Right after this was putting in the post-processing effects and Cinemachine. Working on getting the camera transitions working was easier than what I had expected.
Next up was adding in Timeline. This took a little while to get used to since I was used to having things procedurally done. It did eventually let me down in a few places though and I ended up having to hack a few scripts together to work around some of the limitations. I also came across a very annoying bug where audio managed by timeline would just stop and I needed to restart Unity to make it work.
Once that was done, I made sure the drones were working. The drones were triggered by timeline to both enable them and to put them into attack mode. Drone movement was not directly controlled by timeline but they had their own code to control their attack patterns.
Originally I wanted to have a radio chat in the background but that ended up being too much for the given timeframe (since I started in the last 4 days) so I ended up presenting it from an AI's perspective. The voice over was generated by using AWS Polly services.
You can view various stages evolution of the project on YouTube:
There is a lot more I would like to do with this. I think I may even flesh this out a bit more to become part of the game play, I'll see how I go.
I know I left this one pretty late to start. In fact at the time of writing there is less than 4 hours left before submissions! With all that, I hope you like what I've made.