mechanic

Use when

Vertical traversal needs skill expression against walls, not just floors.

Wall Jump

What it is. Press jump while pressed against a wall to launch up-and-away — off the surface, gaining height. Alternate walls in a shaft and you climb a space with no floor. It converts a vertical gap into a rhythm the player performs, not a distance they cross.

Player fantasy / why it’s fun. “The wall isn’t stopping me — it’s my next foothold.” The zip up a narrow chimney, the last-second stick before a fall, the descent turned into a controlled scramble. Walls stop being dead ends and become the terrain.

The verb

Touch a wall while airborne → hold toward it (or auto-stick) → press jump. You leave the wall with a fixed push-off vector: outward so you clear the surface, upward so you gain. The core dyad is cling, then kick — the wall is a beat, not a rest.

How it feels / why it’s fun

Tuning levers

LeverWhat it changesSane default
Push-off XHorizontal launch off the wall~0.7–1.0× run speed
Push-off YHeight gained per kick~0.85× a floor jump
Wall-stick timeFrames you cling before sliding6–10 frames (a beat to react)
Wall-slide speedFall speed while clinging~40% of terminal velocity
Wall coyoteFrames after leaving a wall you can still kick4–6 frames
Input lockoutFrames after kick before you re-steer toward the wall8–12 frames (stops instant re-cling)
Same-wall cooldownCan you re-kick the wall you just left?No, until you touch a different surface

The input lockout is the anti-cheese lever: without it, holding into the wall lets a player mash jump and levitate up one surface — an antipattern-input-lie where the geometry implies a limit the code doesn’t enforce. Lock out re-steer for a few frames so each kick commits to leaving.

Infinite-climb prevention is a design decision, not just a bug fix: either the input lockout (you drift away before you can re-cling), a same-wall cooldown (a kicked wall is inert until you touch another), or a per-kick vertical decay (each same-wall kick gains less). Pick one and make it visible — a scuff mark, a fading grip — so the limit reads as rule, not glitch.

Slots into (genres + anchors)

Composes tightly with mechanic-wall-run (horizontal sibling), mechanic-ledge-grab (the resting counterpart), and mechanic-glide (descend the height you climbed).

Twist seams

How it wires to Hayao

Fails when…

See also

This module rendersthe repo's markdowndirectly — edit it there, it changes here.