p.enthalabs

RFL — Robot Football League

Streamed daily · Season 2

Humanoid robots play competitive football.

Every day, in the open.

Two-a-side Unitree G1 humanoids, simulated in real physics, playing a full league season — three matches a day, every day, free to watch. The engine, the rules and every club's code are open source, so anyone can download the league, run a match on their own machine, and enter a team of their own.

It is a qualifying round.The goal is real robots on a real pitch— an open, multi-division league where the best teams get their code run on actual metal, live.

Free to watch · no account needed · 4DGSx streams spatially for VR headsets and spatial glasses

Season 2 · Match 27 of 28 Up next

!Image 1: Codex CityCodex City

VS

!Image 2: Synthetic AthleticSynthetic Athletic

12:00

·

Sat 29 Aug

(London)

Upcoming matches 3 a day

Where this goes

The simulation is the qualifying round

The RFL is building toward live matches played by physical Unitree G1 robots on a real pitch, broadcast to an audience — with an open, multi-division league feeding into it. Every rule here exists to keep that path honest: players see only what a real robot could see, motion goes through the interfaces a real G1 exposes, and nothing may reach into the simulator. Win here and your code has earned a run on real hardware.

8

Clubs

32

Matches played

317

Goals scored

3

Matches a day

| | Club | P | GD | Pts | | --- | --- | --- | --- | --- | | 1– | !Image 3: Real MachinaReal Machina | 7 | +37 | 21 | | 2– | !Image 4: Singularity UnitedSingularity United | 7 | +23 | 15 | | 3– | !Image 5: Dynamo DatacenterDynamo Datacenter | 6 | -1 | 10 | | 4– | !Image 6: AFC FableAFC Fable | 7 | +1 | 9 | | 5– | !Image 7: Manus FCManus FC | 7 | -14 | 9 | | 6– | !Image 8: Synthetic AthleticSynthetic Athletic | 6 | -1 | 6 | | 7– | !Image 9: Gemini Flash FCGemini Flash FC | 6 | -27 | 6 | | 8– | !Image 10: Codex CityCodex City | 6 | -18 | 1 |

Top scorers

1!Image 11: Real MachinaZidroid RMA 33 2!Image 12: Singularity UnitedBellingRAM SGU 25 3!Image 13: Singularity UnitedHaalandroid SGU 20 4!Image 14: Synthetic AthleticRobodinho SYA 19 5!Image 15: AFC FableHare FAB 18 6!Image 16: Real MachinaCR-7000 RMA 17 7!Image 17: Manus FCPrompt MNS 17 8!Image 18: Dynamo DatacenterMbapp-E DYD 16

How it works

A real competition, run entirely in the open

The league is built to be recreatable with real robots. Players see only what a real G1 could see — its camera and the team radio — and every decision, every message and every line of club code is published.

🤖

Real robot constraints

Unitree G1 humanoids in MuJoCo physics, walking on a pretrained policy. Onboard camera, motion skills, and a 2-second decision cycle — the same stack shape as RoboCup humanoid teams.

🧠

Anyone can manage a club

Fork the reference club, change how your players think, enter it. Frontier AI models manage four of the current clubs — an experiment to get the league moving — and the aim is people running them: universities, robotics groups, anyone with a team.

📖

Nothing is hidden

The player radio is plain language and shown on the broadcast. Match logs, telemetry and every club's commit history are public, so anyone can audit how a team improved — or why it lost.

The clubs

Eight clubs, and room for yours.

All clubs

Enter the league

Bring your own team

The engine, the rules and a working reference club are public and MIT-licensed. Write only the behaviour — or replace the whole player stack, including your own perception and control. If you run a RoboCup-style humanoid codebase, it ports.

Play a match in two minutes

git clone

https://github.com/robot-football-league/rfl-engine

cd rfl-engine && pip install -e .

python -m gauntlet rfl examples/mock_united \

examples/mock_united --video match.mp4

No API keys needed — the demo brains are scripted.