A fast-paced, vertical platformer iOS game built with SpriteKit. Jump, dodge, and collect as you ascend through space!
- Vertical Platformer Gameplay: Jump from platform to platform, avoid hazards, and collect coins and power-ups.
- Physics-based Movement: Responsive controls using device tilt (CoreMotion) and smooth animations.
- Multiple Game States: Includes waiting, playing, and game over states.
- Dynamic Obstacles: Breakable platforms, lava, bombs, and more.
- Score Tracking: Real-time score and best score tracking with persistent storage.
- Sound & Music: Engaging sound effects and background music.
- Ad Integration: Google Mobile Ads for monetization.
- Multilingual Support: Localized for multiple languages using Localize-Swift.
- Architecture:
- Built with SpriteKit for 2D game rendering and physics.
- Follows a Model-View-Controller (MVC) structure for scene and UI management.
- Localization:
- Supports English, Simplified Chinese, and Traditional Chinese via Localize-Swift.
- Ad Integration:
- Uses Google Mobile Ads SDK for banner and interstitial ads.
- Device Support:
- Universal app: runs on iPhone and iPad.
- Portrait orientation only.
- Deployment Target:
- Minimum iOS version: 11.0
- Swift Version:
- Written in Swift 5.0
- Tested On:
- iPhone 8, iPhone 12, iPad (simulators and real devices)
- Xcode 12 and above
- Known Limitations:
- No Android or macOS support.
- Requires device with accelerometer for optimal experience.
- Some features (ads, music) may require network or permissions.
- Clone the repository:
git clone https://github.com/banghuazhao/space-charge.git cd space-charge - Install dependencies:
Ensure you have CocoaPods installed, then run:
pod install
- Open the project:
Open
Space Charge.xcworkspacein Xcode. - Build & Run:
Select your target device or simulator and hit Run (
▶️ ) in Xcode.
- SpriteKit (Apple framework)
- Google-Mobile-Ads-SDK
- Localize-Swift
- SnapKit
- Then
- SwiftyButton
All dependencies are managed via CocoaPods (see Podfile).
This project is licensed under the MIT License. See the LICENSE file for details.


