The Lab
Press an arrow key to take over.
That jump, in words
This updates as you change the dials. Paste it to an agent and it builds this jump, with no guessing. It also carries into Say it.
- Run: top speed 340 px/s, 70 ms to reach it, 60 ms to stop. Keep 85% of that acceleration in the air. - Jump: 150 px high, 360 ms to the top. Derive gravity as 2h/t² and jump speed as 2h/t, so height and time stay independent. - Fast fall: multiply gravity by 1.7 on the way down. - Variable jump height: if the button is released while rising, multiply gravity by 2.6 until the apex. - Apex hang: while jump is held and vertical speed is under 70 px/s, multiply gravity by 0.50. - Coyote time: 100 ms after leaving a ledge. - Jump buffer: 120 ms before landing. - Corner correction: nudge a rising character up to 8 px around a corner it clips. - Squash and stretch: squash on landing in proportion to fall speed, stretch while airborne, keep the area constant, settle with a spring. - Follow-through: a scarf on a rope simulation, pinned at the neck, dragged by run speed. - Particles: dust at the feet on every landing, scaled by fall speed. - Hit stop: freeze the action for 85 ms on a stomp, keeping the camera and particles alive. - Screen shake: a decaying trauma value, with offset equal to trauma squared and smooth noise, not random jumps. Include a setting to reduce it. - Camera lookahead: lead the camera up to 200 px in the direction of travel, easing into place rather than snapping. - Run physics on a fixed 120 Hz timestep, so the jump is the same on any display.