“Yunara 31/3/3 (Diamond 3)”, 29 minutes, 60 fps. Analysed 26 Sep 2026.

Is a human hand on this mouse?

Cursor, clicks and champion tracked in every frame, then tested against how hands move and how scripts behave.

The real cursor path at 5:26, drawn at real speed.

No machine signature found.

104,519frames analysed
4,409cursor movements
3,721clicks
6annotated clips

The cursor moves like a hand

Bell-shaped speed, a correction in 22% of movements, and the −⅓ curvature law in every minute (median −0.365).

5:26, real time. Each spike in the speed strip is one flick.

Longer mouse moves reach higher top speeds

Each dot is one mouse movement. Hands scale like this, with lots of scatter.

When each mouse move hits top speed

Hands peak around the middle.

The hand slows down on curves

One dot per minute. Hands land near the purple line; a path that ignores curves sits on the red one.

Moderate evidence: good humanizers fake these shapes.

Nothing switches on in fights

Movement shape is identical all game (p ≥ 0.67). Speed only drifts, 12% slower by the late game.

Mouse speed through the game

Every 10 seconds, compared with this player's average. Grey stretches: dead or in base.

Movement style early, mid and late game

If the same hands play all game, the three colours stay close together.

Slowing down is human: people tire, scripts don't.

No replayed motions

A bot replaying 20 stored motions would cluster at 0.025. This player sits at 0.059.

How close each movement is to its nearest twin

Orange: a bot replaying stored moves. Blue: this player.

Supporting only: a generator that makes fresh motion each time would also pass.

Fast clicks, uneven timing

Gaps of 183 ms ± 183 ms, never metronomic. 88% of clicks land at the end of a hand swing (70% by chance).

25:53 at 0.4×.
7:55 at 0.35×.

Time between clicks

Calm play only. A timer script would make one tall spike (orange).

Clicks per minute

Every detected right-click, fights included.

The cursor goes to its targets

It lands on enemies about 1.2 times a second, roughly the attack rate. Orbwalker users don't need to.

20:34, real time. Coral: cursor on an enemy.

How often the cursor lands on an enemy

Times per second, for each minute. Low minutes: dead, shopping or farming.

Checked: the fight at 28:05

Looked like instant reactions. Slowed down, the cursor turns toward the two new enemies 400 ms after they appear and reaches them at 720 ms: normal human speed.

28:05 on the game clock (video 27:52), 0.3× speed.

No sign of aim assist

An assist would stack the cursor on each target's centre. It sits anywhere on the body instead, a median 42 px out, in every situation.

Where the cursor sits on its target

Each dot is one moment on an enemy, placed around its centre (the cross).

How far from the centre each landing settles

One value per landing. A lock-on would spike at 0.

The same in every situation

Median distance (dot) and middle half (bar).

Late speed-ups into the stop

Share of stops ending in a burst of speed. Higher on targets, a gap we haven't explained; a lock-on would push it far higher.

An assist that redirects the attack without moving the cursor wouldn't show up here at all.

Clicking around the champion

Half the time within 234 px of Yunara, and in lane over 90% of her walking traces back to where the cursor pointed.

11:30, real time.

Where the cursor sits around Yunara

Whole game. Brighter means more time there; the star is Yunara.

Open questions

  • Attack timingAn orbwalker moves the instant each wind-up ends; humans are a little off. Shot timing couldn't be detected reliably from video.
  • Scripts that skip the cursorOnly Riot's server logs can rule these out.

Methods

Cursor
Template match on every frame, found in 81%
Champion
Her green health bar, found in 81%
Clicks
The game's click marker: ring, then four arrows
Limits
60 Hz, 720p, one video, no outside players
  • BotScreen and HAWK: behaviour-based cheat detection.
  • DMTG and BeCAPTCHA-Mouse: why shape tests alone are weak.
  • The two-thirds power law (Lacquaniti, 1983) and its noise caveat (Maoz, 2006).