Target Ball Hero is a physics-based arcade game for iOS developed using Swift and SpriteKit. The game challenges players' precision and timing as they launch balls to hit dynamically resizing targets, aiming for the highest score possible.
- Addictive Physics Gameplay: Simple "tap-to-shoot" mechanics where tap location determines the ball's trajectory and speed.
- Progressive Difficulty: Targets shrink as your score increases, demanding greater accuracy over time.
- Multiple Game Modes: Includes various game scenes (
GameScenethroughGameSceneFour) and aTimedGameBasefor different challenges. - Game Center Integration: Compete with friends and players worldwide via global leaderboards.
- In-Game Store & Continues: Use "Continues" to keep your streak alive after a miss.
- Interactive Tutorial: A built-in guided walkthrough for new players.
- Customizable Experience: Integrated photo picker components for personalized game elements.
The project is organized into the following logical components:
GameBase.swift: The foundational class for all game scenes, handling physics, scoring, UI setup, and tutorials.TimedGameBase.swift: Extension of the base logic for time-attack modes.Helpers.swift: Utility functions for GameCenter authentication, high scores, and background management.
GameScene.swift-GameSceneFour.swift: Various levels with unique target behaviors and layouts.SelectLevelScene.swift: The level selection interface.GameOverScene.swift: The end-of-game summary and restart menu.SettingScene.swift: Configuration for sound and game preferences.
GameViewController.swift: The main entry point for the SpriteKit view.StoreViewController.swift: Handles in-app purchases and the "Continues" shop.SKLabelNodeButton.swift: Custom interactive button nodes for SpriteKit.LandscapePhotoPicker.swift/PhotoPickerHeaderView.swift: Custom UI components for image selection.
Sounds/: Audio effects includinghit.mp3,pop.mp3, andtrumpets.mp3.Images.xcassets: Managed image assets including the App Icon and UI elements.Icon/: Design source files including Sketch mockups.
- iOS: 12.0+ (suggested based on SpriteKit usage)
- Xcode: 10.0+
- Swift: 5.0+
- Clone the repository to your local machine.
- Open
Ball Hero.xcodeprojin Xcode. - Ensure a valid development team is selected in the Signing & Capabilities tab.
- Build and run on an iOS Simulator or a physical device.
- SpriteKit: Apple's 2D game framework for animations and physics.
- GameKit: Used for Game Center leaderboards and player authentication.
- Photos UI: Used for the custom photo picker functionality.