Game feel with AI: 12 juice techniques to ask for

By GamesByAI · Published · Updated · 8 sources

On this page

Game feel is how a game answers your input: how a jump lifts off and lands, how a hit connects, how the screen reacts. A coding agent builds what the prompt describes, though, and most prompts only describe mechanics. Ask for a jump and you’ll get a jump that works, and that’s about it.

The small timings that make it feel good, like a three-frame pause on a hit or a sound pitched slightly differently each time, only show up when someone asks for them by name. So here are twelve, each with a value to start from.

Watch a plain game change one effect at a time

Most of these got their names from two talks. At GDC Europe 2012, Martin Jonasson and Petri Purho gave “Juice It or Lose It”, where they took a plain block-breaker live on stage and cranked it up one effect at a time (GDC Vault, video).

A year later, at INDIGO 2013, Jan Willem Nijman of Vlambeer did the same thing to a shooter in “The Art of Screenshake” (video). Both are really worth watching before you prompt, and you should borrow freely.

Ask for the timing by name

The values below are starting points, and you’ll tune them by feel.

Give jumps a little forgiveness

1. Coyote time. A jump still works for a moment after the player leaves a ledge, so a jump pressed a hair too late doesn’t drop them into the pit. Maddy Thorson lists it first among the forgiveness tricks in Celeste (Celeste & Forgiveness). Start around 0.1 seconds.

2. Jump buffering. A jump pressed just before landing fires on the frame the player lands instead of getting lost (Celeste & Forgiveness). Start around 0.1 seconds here too.

3. A softer jump peak. Celeste does something clever here and halves gravity at the top of a jump while the button is held, which gives the player time to aim the landing (Celeste & Forgiveness). Pair it with variable jump height, so letting go of the button early means falling early.

Pause, shake or push back when a hit lands

4. Hit stop. Freeze the action for a few frames when a big hit lands. Masahiro Sakurai, who directs Super Smash Bros., even made it the subject of his first Design Specifics video (Stop for Big Moments). Start with 3 to 6 frames for a normal hit and more for a finishing blow.

5. Screen shake that decays. A short, sharp shake when something hits sells the impact, as long as it fades out within a fraction of a second. Scale it to what happened, so a footstep doesn’t shake anything and an explosion shakes the most. And shake the camera, not the UI, or the score and health bar jump around with everything else.

6. Knockback and recoil. The target gets pushed back, and so does the shooter. Nijman’s talk adds both to a shooter, and you can see how much weight they give it (video).

7. Particles and flashes. Think dust when you land, sparks when you hit and a one-frame white flash on the enemy that took damage. Particles should obey the world too, so give them a bit of gravity and drag and a short life.

Ease the movement and let the camera lead

8. Easing. Linear tweens look mechanical, so ask for easing on every tween. Menus slide in and slow down at the end (ease-out), and pickups pop past their size and settle back.

9. Squash and stretch. Stretch the character up on takeoff and squash it on landing, keeping its area roughly the same. Ten to twenty percent is plenty for a character, though a jelly can take more.

10. A camera that leads. The camera looks slightly ahead of where the player is moving and follows smoothly instead of locking on. A small dead zone keeps it from twitching every time the player does.

Give actions a sound and scores visible feedback

11. A sound for every action. Jumping, landing, hitting, picking up and clicking each get a short sound, pitched slightly differently each time, by around 5 to 10 percent, so repeats don’t grate. AI sound effects and music for games covers making them and playing them in a browser.

12. Feedback in the numbers. Scores count up instead of jumping, damage numbers pop out of the enemy, and the combo counter grows and shakes a little with each hit.

Spot them in the catalog

Several games we list wear their juice pretty openly. Arkanoid Neon piles particle bursts, shockwaves, screen shake and ball trails onto its hits, and its README says Claude Opus 5.5 made the whole game through Claude Code.

JellyBlob renders each player as squashy, see-through gelatin, which is a neat take on squash and stretch, and Floppy Brawler builds its fights around loose-limbed ragdoll physics.

Tune one technique per prompt

Ask for one technique per prompt, give it a number to start from, and keep every number in one place, like this.

Add hit stop: when the player’s attack connects, freeze the game for 4 frames, and 8 frames on the hit that defeats an enemy. Put both values in src/config/feel.js. Don’t freeze the UI or the music.

Three habits keep the tuning fast.

  • Keep all feel values in one file. Coyote time, shake strength, hit stop frames and easing curves all go there, so tuning becomes a one-line change you can ask for or make yourself.

  • Add a live tuning panel. Ask for a debug panel, hidden behind a key, with a slider per value. Ten minutes of dragging sliders gets you further than ten rounds of “make it a bit snappier”.

  • Add a master switch. One flag turns every effect off. Flipping it is basically Jonasson and Purho’s on-stage demo in reverse, one effect at a time, and it shows you whether each effect earns its place.

Don’t drown the game in effects

Not every developer buys the juice philosophy. At GDC Europe 2014, Folmer Kelly argued that the focus on eye candy costs games some immersion (Game Developer).

A useful test is to turn an effect off and play for a minute, because an effect you don’t miss probably wasn’t doing much.

Make it comfortable for everyone

Screen shake and flashes make some players sick, or worse. Browsers report a player’s reduced-motion setting through the prefers-reduced-motion media query (MDN), and it only takes one line to read it.

const reduceMotion = matchMedia('(prefers-reduced-motion: reduce)');
const shakeScale = () => (reduceMotion.matches ? 0 : settings.shake);

Offer a shake slider in the settings either way. And keep flashes to three per second or fewer, because WCAG has a flash guideline for a reason, which is that flashing content can trigger seizures (W3C).

Then give it frames, sound and a playtest

If your character needs animation, AI sprite animation for games plans the attack’s anticipation, impact and recovery, then slices and plays the frames. Sound is the other half of game feel, and AI sound effects and music for games covers it.

Once the effects are in, playtesting games with AI lets the agent check that they didn’t break the game. For prompts covering every step before polish, see our 10 prompts to copy.

Or play the top rated games and look for the techniques above. Hit stop especially gets hard to miss once you know what it is.

Games to look at

Questions

What is game feel?

It's how a game feels to control and how it answers you, moment to moment, like how a jump lifts off and lands, how a hit connects and how the screen reacts. Developers also call the feedback part juice.

Why do AI-made games feel flat?

Because a coding agent builds what you describe, and a prompt that only describes mechanics gets you mechanics. The jump works and the enemy dies, but nothing pauses, shakes, squashes or makes a sound, so ask for each technique by name, with a value to start from.

What is coyote time?

It's a short window after the player runs off a ledge when a jump still works. Maddy Thorson lists it, along with jump buffering, among the forgiveness tricks in Celeste.

Should every game have screen shake?

No. Shake suits impacts and explosions, not every action, and some players get motion sick. Scale it to the event, let it decay fast, and give players a setting to turn it off.