Ricochet
One bullet, bouncing forever. Click to bend it up to 60° toward your cursor. Hit targets, dodge growing hazards.
❂ Primer
Skip if you already know the theory; the interactive is right below.
One bullet. It enters from the left and never stops — walls bounce it forever. Click anywhere on the field and the bullet bends up to 60° toward your cursor: toward a target you want to hit, or away from a hazard about to swallow it.
You don’t move. The bullet does. You only steer it.
▶ Try it
Targets
0
Survived
0.0 s
Best
0
runs · 0
One bullet, ricocheting off every wall. Hover to aim, then click the field (or press space) to bend the bullet up to 60° toward your cursor. Hit blue targets, avoid red zones — they grow on spawn and end the run on contact. Hazards begin appearing after about five seconds.
saved locally · sign in to sync
▤ Leaderboard · top 25
Loading…
⁂ Notes from the bench
What to watch for, why it matters, and the one thing that usually surprises people.
The twist
Most shooting games have you firing many bullets at fixed targets. Here the bullet is a persistent thing — a single object careening around a closed room — and your job is to babysit it. Every click is an investment: you spend a small bend now to put the bullet somewhere useful in two seconds.
The interesting decision is when notto click. Every nudge perturbs a trajectory you’ve already half-planned in your head. Resist the urge to over-correct. The bullet was already going to ricochet into that target on its next bounce — let it.
The math
The bullet moves at constant speed and reflects perfectly off each wall. On click, I take the angle from bullet to cursor, compare it to the current heading, and rotate by min(60°, |Δθ|)in the direction of the cursor. So a single click carves at most a 60° arc; reversing the bullet end-to-end takes three clicks at minimum, gated by a small cooldown so you can’t mash your way out of a bad situation.
Targets fade after a few seconds (less time as the run progresses). Hazards spawn at a point and grow outward to a capped radius, then sit there for a while before shrinking out. Hitting a fully-formed hazard ends the run; clipping one in its first half-second doesn’t, which gives you a beat to bend away from a bad spawn.
What I’m unsure about
Whether the bend size is right. 60° feels powerful enough to rescue a doomed run but small enough that you can’t just click frantically and live. Playtesting this honestly — well, I’m the only playtester so far, and I designed the bend, so my proprioception is biased toward thinking my own touch is correct.
In a line
Canvas physics game. A persistent bullet ricochets off every wall at constant speed; clicks rotate its heading toward the cursor with a hard 60° cap and a small cooldown. Targets fade, hazards grow, difficulty ramps with elapsed time.
Other experiments
15- Exp 001
How a sentence becomes tokens
- Exp 002
Temperature and top-p, visibly
- Exp 003
What does this prompt actually cost?
- Exp 004
Tokens per second
- Exp 005
How far should the model think?
- Exp 006
Neural language vs a Markov chain
- Exp 007
What each token looks at
- Exp 008
Words in space
- Exp 009
The injection arena
- Exp 010
AI or human?
- Exp 011
Context Tetris
- Exp 012
Magnet flip
- Exp 014
Wick
- Exp 015
Echo
- Exp 016
Orbit