Whose Arena this is. The Arena, its events, its scorer and its workshop are Pollen Robotics', and each section below links to their own pages for its rules. We raced Pollen's sprint reference and the reference walker the Arena ships with, and the policies of duckbatch, an open project by this site's author. Those are smaller students of Pollen's own walker, the teacher in Book 4, and the fine-tunes that book traces. Our times come from the Arena's own scorer, run on our machine, and the log of every run has them in full; only the Arena's own run puts a time on its board.
How the Arena times you
Why might the time on your machine not match the board's? The Arena's servo model is chaotic enough that a run drifts apart after a few seconds of simulated time, so the same policy gives other times on a Mac or another architecture. Only a machine like the Arena's own, x86_64 Linux, reproduces the board's (the Arena's README).
The rules are built so that one lucky run cannot win. For a race, the Arena tries every commanded speed in the
event's sweep once, then runs the three fastest again from five starts, each with the joints and the heading nudged a
little, and keeps the best average. A fall, or no finish inside the time limit, counts as the time limit, so a policy
that is quick four times and falls once ranks below a steady one. The replay you watch is the median finishing run,
not the best. Pollen's workshop and its arena score apply the same rules on your machine.
We saw what that costs. Book 4's starting point, duckbatch's student, finishes the sprint in 5.59 to 5.76 s when it finishes, but one of its five starts never reached the line, and its score is 14.523 s.
Our machine is the same kind as the Arena's, and the times agree to the millisecond. Pollen's sprint reference scores 4.886 s here and 4.886 s on the board, start for start, and the entry we made scored 6.416 s on both.
The 2 m Sprint
This race asks the duck to walk 2 m down a flat lane, 0.8 m wide between low walls, as fast as it can without falling. The sweep runs from 0.20 to 1.20 m/s in steps of 0.05, and a fall or a timeout counts as 50 s (the Arena's rules). The policy's command is one constant forward speed, with the head and body commands at zero, and it is never told its heading or where it is in the lane. A fall is the trunk tilted past 60° for 0.3 s, after an untimed settle at the start (Pollen's notes for this challenge).
What it really tests. The leaders do not walk to the line. In the best run when we looked, the duck gets going in the settle and is already running when the clock starts. It runs bent forward in quick strides and dives across the line in under a second. The fall rule lets it: a dive that crosses the line before the trunk has been past 60° for 0.3 s is a finish. That is Book 3's point that the reward is the specification, played out on a public board: the race times only the run to the line, and a running start and a dive are both inside its rules.
What we measured. A walk is slower, and a steady walk is harder than it looks.
| Policy | Score | Timed at |
|---|---|---|
| Pollen's sprint reference | 4.886 s | 0.55 m/s |
| b003f | 5.108 s | 1.15 m/s |
| The Arena's reference walker | 9.392 s | 0.45 m/s |
| b003d | 14.083 s | 0.90 m/s |
| duckbatch's student | 14.523 s | 0.90 m/s |
| b003b | 32.202 s | 1.05 m/s |
Slow commands leave a duck standing here, too. From the Arena's start, its reference walker stays put when asked for 0.20 m/s, and duckbatch's student up to 0.30. That is a wider band than Book 4 measured for the same student, which crept forward when asked for 0.30. The sweep simply times them at a faster speed, so in this race the band costs nothing; what costs a walker is a single start that falls or never reaches the line.
The 1.5 m Hill Climb
Walk 1.5 m up an 8° slope, measured along the slope. The sweep runs from 0.15 to 1.00 m/s, and a fall or a timeout counts as 60 s. The challenge's own training already walks on generated slopes up to 8° (the Arena's rules).
It tests forward progress without slipping or tipping backwards. Our runs split hard: b003b climbed it in 6.416 s and b003f in 4.859 s, both finishing every start, while the Arena's reference walker finished two of five for 38.053 s. We do not know why those two climb so much better than their siblings, and nothing in their notes was about slopes.
The 2 m Roller Sprint
Skate 2 m on flat ground with passive wheels, so the policy still drives only the 14 body joints. The sweep runs from 0.30 to 2.00 m/s in steps of 0.10, and a fall or a timeout counts as 40 s. The Arena's own advice is to test several checkpoints, because on this course some score well and their neighbours fall (the Arena's rules).
A walk still gets there on wheels: the Arena's reference walker finished five of five in 7.490 s, and our student in 8.814 s, though both were made for walking.
MicroDuck Got a Talent
Put on a 20-second performance on an open stage, and the public votes for its favourite. Nothing is timed, nothing has to be finished, and a fall is part of the show (the Arena's rules).
The challenge trains a duck to sit and stand on command and to turn its head where it is told, and your performance
is a timeline.json published beside the policy: when to sit, when to stand, where to look. From each
keyframe until the next, the policy reads its 13 command numbers, which are the twist (3), the head (4) and the body
(6). Those are the last 13 of the 61 numbers in Book 2, the duck's
orders, so a performance is a program written over time, which is
Book 1's Do this, then that.
Plan the act with Duck Cards before you write it. The deck already has its moves: Sit or stand, the Look cards, and Wheee, which is the pad's LT trigger here as on a real duck. Studio's bench plays the tricks but leaves the Look and Sound cards to people; on this stage they all become keyframes. Lay a row, one beat at a time, with each Look card under the card it changes, then write each beat as a keyframe in the workshop's timeline editor. The other trigger, RT, quacks, which no card in the deck does, and a troupe of up to eight ducks can share the stage.
Votes decide it. A ballot shows two to four anonymous performances, you can cast 20 votes a day, and the most votes over the last seven days wins. A vote is a person's preference, the same kind of signal Microduck Studio's Compare collects.
Tug of War
Two ducks are tied neck to neck by a 1 m string over a 0.3 m pit, in a 3 m ring, and each tries to drag the other in. Every duck gets the same command, walk backwards at 0.30 m/s, and only the pit decides (the Arena's rules).
The board rates five bouts against the Arena's reference duck: the centimetres the string's marker moved your way, plus 100 when the reference ends in the pit and minus 100 when yours does, with a fault scoring −200. A walker cannot pull, and we measured it: our student rates −122.9 cm and the Arena's reference walker −135.0 cm. The Arena says it plainly, too: a walking policy from the races cannot pull, so train a new one.
Each week a cup plays every player's latest entry in groups, then a knockout. Entries close on Friday at 16:00, Paris time, the cup airs on the Arena's live channel from 18:00, and it needs at least four entrants. The first cup is set for 6 November 2026 (the event's file).
What we entered
We entered b003b on the hill climb first, from this site author's Hugging Face account, as craigm26/microduck-duckbatch-b003b. On the Arena's own machine it scored 6.416 s at 0.85 m/s and finished all five starts, the same as on ours (its run on the Arena). It is a walk, and it stays one, on a board led by dives: the hill's best run when we looked also gets going in the settle and ends in a dive. b003b's repo says what it is: a student of Pollen's walk, fine-tuned in simulation, never run on a real duck.
We chose b003b before b003f's hill result was in. b003f is faster on both courses, so we entered it on both, as craigm26/microduck-duckbatch-b003f. On the Arena's machine it scored 5.108 s on the sprint and 4.859 s on the hill, finishing every start, the same as on ours again (its sprint run and its hill run).
Points and the season
The Arena keeps a season, and its points reward taking part as well as winning, so your result in a race and your player points are separate. A first publication in a challenge earns 100, and a podium place is worth 250, 150 or 100 while you hold it. The whole table is on the Arena's points page.
Get to the start line
Every event starts from the same line, with its own name at the end. It opens Pollen's workshop on that challenge, where you train, judge every checkpoint under the Arena's rules and enter the one you choose:
uv run https://pollen-robotics-microduck-arena.hf.space/workshop.py hill-climb-1m5
What that line needs depends on your machine, and each guide walks through it: a Windows PC, a Linux PC or a Mac. Pollen's own Train your first policy covers the same ground from the Arena's side.
Already have an .onnx? Race it under the Arena's rules on your own machine before you enter it, in a
clone of Pollen's microduck-challenges:
uv run --group workshop arena score policy.onnx --event sprint-2m