Mobile shooter template with swipe weapon control, upgrade system, and easy-to-expand architecture.A production-ready mobile game template built on clean modular architecture. Fully playable out of the box — import, press Play, and ship.Swipe Gunner is a dynamic mobile game template where the player controls a weapon mounted on a vehicle, blasting through hordes of monsters on the way to the final destination. It comes with ready-to-play demo levels and is easy to expand, customize, and integrate into any project.This template is an excellent starting point for building a complete mobile action game with intuitive swipe controls, or for use as a standalone gameplay module within a larger project.SupportTry a demo: Browser DemoCore ArchitectureDependency injection via Zenject — zero singletons, fully decoupled modulesAsync game loop powered by UniTaskSignal-based communication between modulesObject pooling for enemies, projectiles, audio and UI popupsAddressables-based asset loading with auto-generated address constantsFour-scene architecture (Bootstrap, Global, UI, Gameplay)Player SystemsSpline-based vehicle movementSwipe-controlled turret with laser trajectory previewShooting system with ammo trackingRocket launcher with target detection and arc flightPlayer health, damage, low-health effects and explosion fragmentsWheel rotation, smoke and fire visual feedbackHaptic feedback (iOS & Android)Upgrade & ProgressionDrag-and-drop merge board with animated part combining5 upgradeable part types: Armor (health), Wheels (speed), Turret (damage), Ammo Box (capacity), Rocket (explosive damage)Permanent progression saved between sessionsWeighted random part spawning based on current upgrade levelsCoin economy with wallet serviceEnemy Systems2 fully animated enemy types: Stickman and TentacleStickman: 7-state AI (Idle, Wander, Chase, Attack, Hit, Dead, Inactive), ragdoll on deathTentacle: sphere-cast attack with rotation toward playerSpline-based spawn system with visual editor (RectAlong, Circle, Rect zones)Configurable stats: health, damage, speed, reward — scale with level indexCulling system: AI and rendering disabled for off-screen enemiesMonetization3 ad mediation providers, swap via compile define:AppLovin MAX (APPLOVIN)LevelPlay / IronSource (LEVELPLAY)Google AdMob (ADMOB)Banner, interstitial (with cooldown and level gate) and rewarded adsGoogle UMP consent + iOS ATT tracking authorizationNo Ads purchase supportCameraCinemachine-based system with 3 cameras: Start, Follow, FinishSmooth blended transitions between statesAspect ratio FOV correction — consistent horizontal FOV on any screenUser InterfaceStack-based navigation with separate popup stackHUD: ammo counter, coin balance, level indicator, meter progress bar, rocket launcher buttonUpgrade screen with merge boardTap to Start, Level Complete, Level Failed, Settings screensLoading curtain with animated shaderSafe Area support for notched devicesTutorial SystemStep-based tutorial driven by signal completionConfigurable steps via ScriptableObject — no code changes neededBlocks UI interaction per step, restores on completionLevel SystemScriptableObject level databaseSpline-based enemy spawn zones with Scene View Gizmos editorAutomatic level looping when all levels completedDoor triggers, speed change zones, camera switch zonesAudioPooled SoundEmitter — 2D, 3D fixed position, 3D follow transformAudioMixer with separate Music and SFX groupsAll sounds configurable via ScriptableObject (volume, pitch, loop, spatial blend)Save SystemSignal-driven persistence — no direct coupling between services and storage5 independent data stores: Progress, Player parts, Board layout, Settings, WalletJSON serialization via PlayerPrefsOne-click reset via Editor toolEditor ToolsAuto code generation for Addressables address constants (Ctrl+G)Scene quick-open shortcutsOne-click PlayerPrefs clearEnemy spawn zone visual editor with GizmosScript and folder structure exporters• Documentation• Platforms Support: Android, iOS, WebGL• Render Pipeline Support: Universal Render Pipeline (URP)• Full Unity C# source code, clean and well-documented• Built with a clean, modular, and extensible State Machine architectureThis package uses:UniTask under MIT License;Extenject under MIT License;DOTween under Artistic License;see LICENSE.txt file in package for details.




