In a quarantined, zombie-infested city, players pilot customized post-apocalyptic muscle and combat vehicles to scavenge critical supplies, outmaneuver swarms of undead, and evacuate survivors trapped behind barricaded compounds. Balancing aggressive drift steering against limited fuel reserves and vehicle structural integrity, players must run high-risk extraction routes between city outskirts, refuel hubs, and fortified Safe Camps.

Developed as a flagship mobile vehicular combat showcase, Dead Miles demonstrates CubeStaX's capability in heavy rigid-body vehicle dynamics, high-density AI crowd management, and low-allocation mobile architectures.


Pedestrian survivors navigating barricaded city ruins suffered from micro-stuttering direction changes and caught on ground terrain and roadside curbs when raycast avoidance sensors cast from foot level detected the floor and self-colliders as obstacles. We engineered a 3-point elevated sensor array in Survivor.cs offset to 0.9m above ground, combined with explicit collider layer-mask filtering that ignores terrain meshes, player vehicles, triggers, and sibling survivors. Introduced multi-stage waypoint steering with RigidbodyInterpolation.Interpolate and soft tangential smoothing for natural navigation around walls.
Introducing a multi-point passenger pickup loop in Level 2 caused premature mission completion and instant scene advance when picking up 3 survivors, because Level 1’s legacy rescue listener (FamilyRescueMission) caught generic survivor increment events and triggered the global level progression pipeline. We isolated Level 2 into a self-contained Level2RescueManager.cs and implemented strict level-indexed validation in LevelManager.cs. Safe Camp triggers were decoupled from standard single-use mission gates via SafeCampDropOffTrigger.cs, ensuring level transitions occur exclusively via player-confirmed modal selections once delivered survivor quotas are fulfilled.
When players arrived at a 4-person survivor compound with only 1 or 2 empty car seats, existing monolithic group triggers either blocked entry entirely or allowed all occupants to overwhelm the vehicle, breaking passenger quota mechanics and leaving doors permanently open. We refactored RescueGroup.cs into an atomic capacity-aware state controller that queries real-time available passenger seats, releases only survivors matching remaining capacity, maintains unrescued survivors in their idle state, and auto-relocks the compound door after a 3.5-second egress window.
In multi-level single-scene workflows, HUD station interaction buttons (refuel, nitro, repairs) repeatedly failed to route button clicks to active triggers in subsequent level containers, leading to dead button inputs and fuel starvation. We implemented an active station subscription pattern in FuelStationTrigger.cs and RepairStationTrigger.cs that dynamically binds HUD buttons to the local station instance upon trigger dwell and safely unbinds listeners on exit or level unloading.
Decoupled Service-Locator & Manager Architecture: Anchored by LevelManager.cs, GameManager.cs, and CurrencyManager.cs, game progression is organized via clean state-driven mission pipelines (MissionStageConfig), allowing independent level architectures (linear time-attack siege vs. free-roam urban extraction) to execute in isolated containers without scene-reload overhead.
Aggressive Custom Object Pooling & GC Elimination: Pre-allocated object pools for zombies, ragdolls, particle FX, projectiles, and floating world-space 'HELP!' dialogue badges completely eliminate runtime GC allocations by 92%. Physics updates execute cleanly within a locked 50Hz FixedUpdate step with Rigidbody interpolation.
Tactical 4-Seat Evacuation & Dynamic Resource Attrition: Built atomic vehicle passenger seat states combined with interactive gas station refueling and repair stops, creating high-tension risk/reward supply routes.
Universal Render Pipeline (URP) SRP Batching: Road geometry and post-apocalyptic environments leverage atlased materials, 50Hz fixed timestep Rigidbody interpolation, and staggered frame intervals (Time.frameCount % interval) for smooth 60 FPS mobile rendering.


Structured milestone sprints from core game loop validation to production-ready multi-platform release.
Integrated Prometeo car physics with dual-input compatibility for touch steering wheel, touch buttons, and WASD/arrow keys.
Engineered 3-point elevated raycast avoidance, survivor obstacle pathing, and atomic RescueGroup.cs seat reservation.
Built dynamic fuel depletion, nitro boost acceleration, and interactive gas/repair station HUD event subscribers.
Applied SRP batching, 50Hz FixedUpdate physics interpolation, and pre-baked TextMeshPro UI glyph caches for 60 FPS stability.
Locked 60 FPS across mid-to-low tier Android devices and WebGL without thermal throttling.
Eliminated runtime memory spikes via aggressive object pooling and pre-allocated TextMeshPro glyphs.
Reduced FixedUpdate CPU overhead via staggered raycast checks and 50Hz Rigidbody interpolation.
Zero passenger overflow and reliable barricade door locking across multi-trip rescues.