Build a 3D sailing simulator and race AI models against each other in it

A Redditor had Claude Code write a full sailing sim with boat physics, wind and 3D water, then raced Opus, GPT-6 Astra, Gemini 4 Argon and a small Qwen model in it. Argon won at $0.78 a run.

Done withClaude Code· Nov 6, 2026

What they did

u/abhi3188 used Claude Code to build a sailing simulator. By the poster's account Claude Code wrote nearly all of it: the boat physics, the wind model, the 3D water and coastline, and the harness that lets language models steer a boat. The poster's part was deciding what to build next and checking the results. In a race, every five seconds each model receives 23 raw numbers describing the world, such as heading, speed, wind and the position of the next mark, and replies with helm and sail settings. The models get no sailing advice, and the sim pauses while a model thinks so slow models are not penalised.

How it went

The sim ran and the poster posted a video of a race between Opus, GPT-6 Astra, Gemini 4 Argon and qwen3.5-9b. Argon won, and at $0.78 per run it cost about a fifth of Astra's $3.58. Opus did poorly, and commenters joked that the Qwen model headed for the beach instead of the course. The post drew 460 upvotes and several requests for the code, which the post does not link.

Worth knowing

The build is the agent work here; the race is a single informal run, not a benchmark, and the poster gives no build time or Claude Code cost. Commenters suggested Argon's edge may come from Google training it for spatial tasks in Maps and Earth. Every model had an unlimited budget per race, so the per-run costs reflect how much each one chose to think.

Try it

With Claude Code· 6 parts to fill in

Build a [sport or vehicle] simulator in [repo or folder] with [3D library]. Model the physics of [the vehicle] and the environment, such as [wind, current, terrain], and render it in 3D. Then add a harness that, every [number] seconds, sends each AI model the raw world state as a short list of numbers and applies the controls it returns. Give the models no strategy hints, pause the sim while a model is thinking, and log cost per run for each model. Run the tests after each change and stop to show me a short race before adding more models.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related