Spacequest for iOS (2014-2023, updated for iPhone 15)
Full source code of a working iOS
game. Yet another take on a space shooter game. The game falls into Shoot 'em up video games genre. It is written in Swift and uses SpriteKit
- graphics rendering and animation infrastructure built into iOS
. All vector graphics and image assets created in Inkscape
and GIMP
.
Interesting topics covered during the development:
- Particle systems (e.g. jet engine burst in player's spaceship)
- Collision detection
- HUD, buttons + joystick
- Sound effects and background music
Technologies used
- Swift (Xcode)
- SpriteKit
- Vector graphics (Inkscape, GIMP)
What could be improved
The app was created as a multi-weekend project long time ago. It is updated to run in the latest IDEs, but couple of things could be either added or improved. Not having time to do it is the problem.
- Adding tests
- iPad support and better support for iPhone X
- Internationalization
- Moving images and colors to asset catalogs
- Adding more abstraction for constants (now constants are spread spread among multiple source files)
- Improving enemy creation logic to make enemies spawn faster
- Adding new enemy types
- More weapons
- Scrolling background (parallax style)
Acknowledgments
Background music loop
Title: Game Space Battle Loop
Album: Corporate Uplifting Business Background Music
Artists: Plastic3
License
This code is distributed under the terms and conditions of the GNU GPLv3 license.
Copyright (c) 2014 - 2023 Rafał Sroka