Mouse / 06

Accuracy.

Four modes, four difficulties, fullscreen with raw mouse input. Headshot ring multiplies score. Built for FPS practice — Valorant tac-FPS timings, not arcade flailing.

Notes

Pointer lock enables raw mouse deltas (no edge clamping, no Windows pointer acceleration mid-aim). Score = (180 − reaction_ms) × hit_quality, with hit_quality 2× inside the headshot ring (inner 40% of radius). Tracking mode accumulates per-frame quality while the cursor sits inside the target.

Mode · Gridshot · Normal Click to start F or fullscreen button locks the cursor for raw input
0 pts 30.0s · —
Score
0
Time
—
Hits
0
HS
0
Miss
0
Acc
—
HS %
—
Med rxn
—
p95 rxn
—
Err px
—
Streak
0
Reaction distribution
Personal best (local): —
Tip — press F or click Fullscreen to enable raw input. Esc exits.
Frequently asked

How is this aim trainer different from KovaaK's or Aim Lab?

Functionally the four modes mirror the routines used in those clients: Gridshot for click-target speed, Strafe for moving target tracking, Flick for long-distance snap aim, and Tracking for sustained smooth aim. The browser version cannot match a native client's frame pacing or input latency exactly, but it uses the Pointer Lock API for raw mouse input — bypassing OS cursor acceleration — and runs fullscreen, so the gap is small. It is suitable as a daily warm-up or for travel, not as a replacement for ranked benchmarks.

What is pointer lock and why does this trainer use it?

Pointer lock hides the OS cursor and feeds the page raw mouse movement deltas instead of constrained X/Y coordinates. That removes OS-level acceleration smoothing, allows the camera to rotate continuously beyond screen edges, and matches the input model real FPS games use. Click 'Start' to engage lock; press Esc to release. If lock fails, your browser blocks it on insecure (http) origins or inside iframes; on devicecheckonline.com lock works in all major browsers.

Which sensitivity should I set inside the trainer?

Match your in-game eDPI for transfer. Valorant 0.4 at 800 DPI = 320 eDPI; CS2 1.5 at 800 DPI = 1200 eDPI; Apex 1.6 at 800 DPI = 1280 eDPI. Plug your eDPI into the trainer's sensitivity field and the angle-per-cm will mirror your game. Without that, scores have no carry-over. If you want to recompute eDPI for your monitor, use /mouse/dpi to confirm the real DPI first — many gaming mice ship at slightly off-rated values.

What is a good Gridshot score for beginners and pros?

On the easy difficulty, beginners average 25–35 hits per 30 seconds and break 60 after a month of daily 15-minute sessions. Strong amateurs hit 90+ on medium and ranked Valorant Immortals routinely break 130 on hard. The Valorant pro tier here uses 8 px headshot rings and ~250 ms target windows; clearing 80 is professional territory. Tracking and Strafe scores are not directly comparable because they reward continuous over-target time rather than distinct hits.

Will mouse acceleration ruin my aim trainer score?

Yes — that is exactly why pointer lock is enabled. With Enhance Pointer Precision on, identical physical flicks produce different in-game angles, and your muscle memory cannot calibrate. The trainer reads raw deltas and bypasses Windows acceleration regardless of your OS setting, so scores are consistent here even if your desktop has acceleration enabled. For real games, turn acceleration off through Pointer Options. The /mouse/acceleration tool plots whether your OS is currently scaling input.

Does fullscreen affect input latency?

Slightly. Browser fullscreen on Chromium triggers a borderless-window path that bypasses the desktop compositor on Windows, shaving roughly 5–10 ms of input-to-display latency versus windowed mode. On macOS the gain is smaller because the compositor is always in the path. For a head-to-head comparison run /mouse/latency in both windowed and fullscreen — the median should drop by at least one frame's worth (4 ms on 240 Hz, 7 ms on 144 Hz).