Game Feel Library
← Browse
InputIntermediate

Coyote Time

Letting the player still jump for a few frames after walking off a ledge.

inputplatformerforgivenessjump

Examples

Captured from this page's own interactive demo below.

Overview

Coyote time keeps the jump available for a short window (typically 70–150ms) after the character has left the ground — named after Wile E. Coyote hanging in the air past the cliff's edge before gravity notices.

It exists because players press jump when their eyes say the character is at the edge — but between reaction time, input latency, and the character's own velocity, the press physically lands a few frames after the ground is gone. Strict physics calls that a miss; players call it 'the controls ate my jump'.

It's the flagship example of input forgiveness: an invisible lie about physics that makes controls feel precise and fair. Nearly every acclaimed platformer (Celeste, Hollow Knight, Super Meat Boy) ships some version of it, and nobody ever notices it's there — they only notice when it's missing.

Interactive Demo

RUN OFF THE LEDGE
Coyote Time120ms
Jump Press Delay100ms

Use Cases

PlatformerMetroidvaniaRunnerAction

Best Practices

Do

  • Keep the window short (70–150ms) — it should absorb reaction-time misses, not enable mid-air jumps players can perceive.
  • Track 'time since last grounded' rather than a boolean, so the same timer drives coyote time, animations, and landing logic.
  • Consume the coyote window on jump — one forgiven jump per ledge, or players can chain impossible hops.

Don't

  • Don't grant coyote time after jumping (only after walking/falling off) — that's an accidental double jump.
  • Don't scale the window with frame time inconsistently — define it in seconds, not frames, or 30/60/144 fps players get different games.
  • Don't stack coyote time on top of generous ground-check colliders without retuning — the combined forgiveness becomes visible floatiness.

Common Mistakes

Implementation

Paste this into your AI assistant (Cursor, Copilot, Claude) to add the effect to your project.

Prompt
Add the "Coyote Time" game-feel effect to my project: Letting the player still jump for a few frames after walking off a ledge.

How it works: Coyote time keeps the jump available for a short window (typically 70–150ms) after the character has left the ground — named after Wile E. Coyote hanging in the air past the cliff's edge before gravity notices.

Guidelines:
- Keep the window short (70–150ms) — it should absorb reaction-time misses, not enable mid-air jumps players can perceive.
- Track 'time since last grounded' rather than a boolean, so the same timer drives coyote time, animations, and landing logic.
- Consume the coyote window on jump — one forgiven jump per ledge, or players can chain impossible hops.

Avoid:
- Don't grant coyote time after jumping (only after walking/falling off) — that's an accidental double jump.
- Don't scale the window with frame time inconsistently — define it in seconds, not frames, or 30/60/144 fps players get different games.
- Don't stack coyote time on top of generous ground-check colliders without retuning — the combined forgiveness becomes visible floatiness.

Implement the effect in whatever engine/stack the project already uses and follow its existing code style. Wire it up where it makes sense.

References

Related Effects

Comments