This wasn't a complicated project, but I hope it was a satisfying one. The addition of new techniques like
SKAudioNode and parallax scrolling should have made it more interesting even for more experienced coders, and it was fun adding the extra bit of polish at the end to make the whole game feel more complete.
If you want to take this project further, you could start by having different kinds of obstacles – the repeating rocks do get a bit tiresome after a while! You could also make the game difficulty ramp up ever so slowly, either by decreasing the gap between the rocks or by increasing the world gravity.
To make the game much more challenging, how about introducing a secondary scoring mechanism: perhaps the player could get extra points if they fly through hoops in between the rocks? If you fancy a bigger challenge, how about making it a universal game, i.e. support both iPad and iPhone.
SPONSORED From August 2nd to 8th you can join a FREE crash course for mid/senior iOS devs who want to achieve an expert level of technical and practical skills – it’s the fast track to being a complete senior developer!
One of the most effective motivators of success is sharing your progress with other people – when you tell folks what you're doing and what you've learned, it encourages you to come back for more, which in turn will help you reach your app development goals faster.
So, now that you've done all the hard work it's time to share your success: tell folks that you've completed this project, either by clicking the button below to start composing a tweet, or by writing your own message from scratch. This will definitely encourage you to keep learning, but it will also help other folks discover my work – thank you!
Paul Hudson is the creator of Hacking with Swift, the most comprehensive series of Swift books in the world. He's also the editor of Swift Developer News, the maintainer of the Swift Knowledge Base, and a speaker at Swift events around the world. If you're curious you can learn more here.
Link copied to your pasteboard.