Cabinet 12
Aim 3D
1 2 3 difficulty · 4 5 6 scenario · F full screen · M sound
This one needs a mouse: a touch screen cannot drive a pointer locked camera. The flat trainer at /aim/ plays fine on a phone.
Click the view to hand the mouse over and the camera starts turning with it: no cursor, just yaw and pitch, the way a shooter aims. Three spheres sit on a wall ten metres out and a new one appears every time you break one. Three scenarios share that wall: thirty kills against the clock, as many kills as you can take in one minute, and a minute of holding the crosshair on a single sphere that will not hold still. A miss costs a quarter second rather than the run, and three seconds of countdown run before the clock does. Escape gives the mouse back and ends the run where it stands. F fills the screen, and it is worth doing before you start rather than during a run, since some browsers drop the mouse when the window changes shape.
Put your own sensitivity in and it plays like your game: cm/360 with your DPI, or the raw number from CS or Valorant. Where the browser offers raw mouse input it is used, so pointer acceleration stays out of the way, but that is a Chromium feature today and elsewhere the operating system still has a hand on the numbers. Sensitivity is never submitted. A run is the angles you fired at, and the seed the spheres came from, so the global leaderboard is decided by a Worker that fires every shot again itself. The tracking path is the one thing the Worker picks rather than the page: everyone gets the same minute on the same day, because a run that hunts for a lazy sphere is not a run. Shot runs keep their tape on the board, so any row with a watch button can be played back here.