Guide
Game air dash movement systems explained
Harbor Rooftop's third bell tower sat behind a six-meter horizontal gap between slate ridges. Playtest telemetry showed 58% of players abandoning the route after three failed attempts. They had a double jump and a sprint — mathematically insufficient at the tuned gravity and jump apex. Designers considered widening the ledge; instead they shipped a single horizontal air dash with one mid-air refresh on landing. Gap completion rose to 91%; average attempts per success fell from 4.7 to 1.3. Players described the dash as “a punctuation mark in the jump,” not a replacement for it.
An air dash is a burst of directed velocity applied while airborne (or, in hybrid designs, from a short ground slide into launch). Unlike dodge rolls, which prioritize defensive i-frames, air dashes prioritize displacement and rhythm — closing gaps, correcting mis-aimed jumps, and extending combo routes. Poorly tuned dashes trivialize level geometry or feel like laggy teleportation; well-tuned dashes become the signature verb of the game. This guide covers dash taxonomy, charge and cooldown models, direction locking and momentum rules, integration with coyote time and input buffering, combat vs traversal policies, the Harbor Rooftop refactor, a technique decision table versus double jump and dodge, pitfalls, and a production checklist.
Air dash taxonomy
“Dash” covers several distinct mechanics. Name them separately in design docs and tutorials so players build correct mental models:
- Cardinal air dash — fixed horizontal burst along stick direction; vertical component often zeroed or capped. Common in platformers (Celeste, Hollow Knight).
- Omni air dash — eight-way or full 360° burst; enables diagonal correction mid-fall. Higher skill ceiling; easier to break intended gap distances.
- Ground dash with air carry — dash starts grounded but animation lifts the character; momentum continues airborne. Blurs line between sprint and dash; popular in action RPGs.
- Blink dash — instant position offset with brief post-blink vulnerability. Distinct feel from velocity-based dash; harder to read for spectators.
- Charged dash — hold to extend distance or speed; release fires burst. Adds timing layer beyond tap-to-dash.
- Attack dash — offensive lunge with hitbox active during motion; shares input with mobility dash only if cancel rules are explicit.
Pick one primary air mobility verb per game mode. Stacking blink + omni dash + double jump without distinct costs produces unreadable movement and breaks encounter spacing.
Charges, cooldowns, and refresh rules
Unlimited air dashes reduce platforming to “hold dash until you arrive.” Production games gate dashes with one or more of:
- Per-airborne charge — one dash per jump until feet touch ground; refreshes on landing. Simplest model for metroidvanias.
- Charge stack — two or three dashes stored; regen one charge every N seconds or on wall touch. Enables longer aerial routes.
- Stamina drain — dash costs a chunk of the shared stamina pool; pairs with sprint and dodge in action RPGs.
- Cooldown timer — flat 0.8–2.0 s lockout after each dash; easy to tune but can feel sluggish if not animated well.
- Resource pickup refresh — dash crystals or feathers in level grant one-off charges; gates optional secrets without global unlimited mobility.
Ground vs air refresh asymmetry
Many titles refresh dash charges only on grounded contact, not on wall-run or ladder surfaces. Document which collision layers count as “floor” for refresh: moving platforms, enemy heads, and grapple endpoints each need an explicit policy or players will exploit unintended chains.
Velocity, direction locking, and momentum
Implementation quality lives in how dash velocity is applied and what happens afterward:
- Velocity override vs additive — override sets horizontal speed to dash magnitude (snappy, predictable); additive preserves fall momentum (smoother arcs, harder to tune gaps).
- Direction lock — stick direction frozen at dash start vs continuously steerable during dash. Locked dashes read cleaner; steerable dashes reward skill but widen collision windows.
- Gravity during dash — zero-g dash (true horizontal cruise) vs gravity-on (arc dips). Zero-g dashes simplify gap math; gravity-on feels more physical.
- Post-dash hang — brief gravity reduction after dash end lets players adjust before falling; common in platformers to avoid instant death after overshooting.
- Wall and ceiling cancel — dash stops on impact or slides along surface; define whether dash can chain into mantle automatically.
Expose dash distance, duration, and initial velocity in designer tables. Playtest gaps at min and max frame-rate; fixed-tick physics with variable render delta can shift dash distance by 5–8% if not clamped.
Input feel: buffering, coyote time, and cancel windows
Air dashes fail player feel tests when input is frame-perfect. Pair dashes with:
- Jump buffer into dash — dash pressed within 6–10 frames before jump apex still fires at peak height.
- Coyote dash — allow dash for 2–4 frames after leaving a ledge if jump was not yet used; extends locomotion leniency consistently.
- Dash buffer during hitstun — in combat-heavy games, queue dash during recovery so it fires on first actionable frame.
- Attack cancels — light attack strings cancel into air dash on specific frames; document in movelists to avoid “hidden tech” confusion.
Log dash attempts that fail due to “no charges” vs “wrong state” in playtest builds. High “wrong state” rates signal FSM gaps, not player error.
Traversal vs combat policies
The same dash button often serves exploration and fighting. Split policies when tuning diverges:
- Traversal dash — longer distance, no i-frames, refreshes on landing; may pass through thin hazard VFX without damage.
- Combat dash — shorter burst, 4–8 i-frames, shares dodge stamina; cannot cross gap-class distances.
- Unified dash — one tuning set; simpler but platform gaps must fit combat range or combat feels underpowered.
Harbor Rooftop uses unified dash for clarity but scales dash distance +12% outside combat volumes via trigger zones. Boss arenas revert to combat tuning so players cannot dash out of bounds.
Case study: Harbor Rooftop gap refactor
Before the dash, the bell tower route required a running jump from a 1.2 m wide ridge with 0.4 m/s wind push. Success needed frame-perfect sprint entry and jump at the last pixel. Heatmaps showed players attempting the jump then falling to a lower route, adding four minutes of backtracking.
The refactor shipped:
- Horizontal air dash: 7.2 m effective distance over 0.18 s, gravity on, direction locked at press.
- One charge per airborne session; full refresh on grounded contact.
- 6-frame input buffer from jump apex; 3-frame coyote dash off ledges.
- Post-dash 0.12 s hang with 40% gravity reduction for landing adjustment.
- Distinct SFX and afterimage color vs combat dodge to avoid input confusion.
Gap completion rose from 42% to 91%. Level designers widened two later gaps by 0.8 m each now that dash distance was a known constant — restoring intended difficulty elsewhere without touching the tutorial tower.
Technique decision table
| Approach | Best for | Tradeoff |
|---|---|---|
| Single air dash + jump | Metroidvanias, precision platformers | Gap distances must be authored to dash+jump range |
| Double jump only | Simpler tutorials, vertical-heavy levels | Weak horizontal correction; wide gaps need bridges |
| Dodge roll (grounded i-frames) | Combat defense, souls-likes | Poor gap crossing; different player expectation |
| Grapple hook | Large open zones, 3D spaces | Anchor authoring cost; camera and rope physics complexity |
| Air dash + wall-run chain | Vertical city rooftops, fast flow | Hard to gate power progression; QA surface explosion |
Prefer double jump when vertical rooms dominate and horizontal gaps are rare. Add air dash when heatmaps show repeated deaths on horizontal spans despite correct jump timing. Reserve grapple for distances beyond dash+double-jump reach.
Common pitfalls
- Same button as dodge without distinct feedback — players expect i-frames; air dash into damage feels broken.
- Unlimited dash — trivializes authored gaps and enemy ranged telegraphs.
- Diagonal dash farther than cardinal — unintended √2 distance advantage breaks gap math.
- Dash through collision — clipping into walls or out of bounds; use swept capsule tests along dash vector.
- No refresh on moving platforms — players stranded mid-route on elevators.
- Frame-rate dependent distance — higher FPS = longer dash if velocity applied per frame without time normalization.
- Dash during knockback — unless intentional, can cancel hitstun and break boss patterns.
- Networking without prediction — dash feels late in co-op; predict locally, reconcile on landing.
Production checklist
- Document dash distance, duration, and charge refresh rules in designer tables.
- Separate traversal and combat tuning if the same input serves both.
- Normalize dash velocity to delta time, not per-frame increments.
- Apply jump buffer and coyote dash for ledge-adjacent attempts.
- Use distinct VFX/SFX from dodge roll and sprint.
- Block dash through solid geometry with swept collision tests.
- Define which surfaces refresh charges (ground, wall, enemy, grapple).
- Author gap distances to dash+jump math with 10% tolerance band.
- Log failed dash reasons in playtest builds (no charge vs wrong state).
- Test at 30, 60, and 120 FPS for distance consistency.
- Gate infinite dash chains in PvP if dashes refresh on hit.
- Expose remaining dash charges in HUD for charge-stack models.
Key takeaways
- Air dash is a horizontal correction tool — it closes gaps double jump cannot and gives players agency mid-fall.
- Charge refresh on landing is the simplest gate for metroidvania pacing; stamina and cooldown models fit action RPGs sharing dodge budgets.
- Harbor Rooftop cut checkpoint abandonment by 49 points with one tuned horizontal dash, not wider ledges.
- Direction lock, gravity-on arcs, and post-dash hang define feel as much as raw distance.
- Pair dashes with input buffering and coyote time — frame-perfect requirements masquerade as bad level design.
Related reading
- Game dodge roll and invincibility frames explained — defensive bursts, i-frames, and perfect dodge rewards
- Game locomotion explained — ground controllers, coyote time, and jump buffers
- Game wall-run traversal systems explained — chaining vertical surfaces with dash exits
- Game input buffering explained — pre-input queues and leniency windows