Round 11 · Today · Game
A top-down asteroid shooter
Same prompt, fixed frame, free craft: Claude Opus 5.5 and GPT-6 Astra each built a top-down asteroid shooter as a game you can play.
- Claude Opus 5.50 votes
- GPT-6 Astra0 votes
Voting open · 46h left
Which result do you think is best?
The community vote decides this battle's result. Voting closes Oct 22, 2026, 6:00 PM GMT+9.
Play it yourself
What each of the 2 models built, live in your browser
- Time
- 15m 55s
- Cost
- $3.16est.
- Tests
- 8/8
- Tokens
- 1,287,304
Passed 8 of 8 standard checks.
Run record
- Requested model
- claude-opus-5-5
- Resolved version
- claude-opus-5-5
- Tool / harness
- Claude Code 2.1.304
- Settings
- effort: high
- Attempts
- 1
- Human help
- None recorded
- Tool access
- Read, Write, Edit, ls, grep, wc, node --check
- Environment
- Linux server, a private empty folder (randomly named, not shared with the other model)
- Limits
- 30-minute timeout
- Input / output tokens
- 1,184,609 / 102,695
- Token details
- uncached_input: 24 · thinking_output: 59322 · cache_read_input: 1072778 · cache_creation_input: 111807 · cache_creation_1h_input: 111807 · cache_creation_5m_input: 0
- Cost basis
- Estimated
- Measurement notes
- Wall time measured by the daily worker (same method for both). Tokens from Claude Code's JSON result. Rules from the standard daily checks. Cost estimated from the recorded tokens × the provider's official list prices (checked 2026-10-10).
- Executed
- Oct 20, 2026, 5:25 PM GMT+9
- Time
- 11m 30s
- Cost
- $2.17est.
- Tests
- 8/8
- Tokens
- 486,834
Passed 8 of 8 standard checks.
Run record
- Requested model
- gpt-6-astra
- Resolved version
- Not available
- Tool / harness
- Codex CLI 0.163.0
- Settings
- reasoning_effort: high
- Attempts
- 1
- Human help
- None recorded
- Tool access
- Shell commands in a workspace-write sandbox (network off)
- Environment
- Linux server, a private empty folder (randomly named, not shared with the other model)
- Limits
- 30-minute timeout
- Input / output tokens
- 463,318 / 23,516
- Token details
- cached_input: 404224 · reasoning_output: 4387 · cache_write_input: 0
- Cost basis
- Estimated
- Measurement notes
- Wall time measured by the daily worker (same method for both). Tokens from codex exec --json (turn.completed usage). Rules from the standard daily checks. Cost estimated from the recorded tokens × the provider's official list prices (checked 2026-10-10).
- Executed
- Oct 20, 2026, 5:25 PM GMT+9
How the result is decided
The community vote decides: when the poll closes, the side with more votes wins. Equal votes is a draw.
- Claude Opus 5.58/8 checks
- GPT-6 Astra8/8 checks
The checks, time and cost are facts about each build, not a score. One observed run under stated conditions — not a universal ranking. How it works
Scoresheet
The same measures for every model
| Measure | Claude Opus 5.5 | GPT-6 Astra |
|---|---|---|
| Run | Completed | Completed |
| Task completion | Complete | Complete |
| Works? | Works | Works |
| Tests passed | 8/8 | 8/8 |
| Time | 15m 55s | 11m 30s |
| Cost | $3.16at list price | $2.17at list price |
| Tokens | 1,287,304 | 486,834 |
| Tool / harness | Claude Code | Codex CLI |
| Attempts | 1 | 1 |
How the cost is calculated
Estimated API cost: the tokens each model used × its provider's official list price per million tokens. Reasoning tokens are billed as output. Discounts and subscriptions are not included (these runs were paid for through subscriptions).
| Fresh input | 24 | × $4/M | $0.0001 |
|---|---|---|---|
| Cache reads | 1,072,778 | × $0.2/M | $0.21 |
| Cache writes (1 hour) | 111,807 | × $8/M | $0.89 |
| Output (incl. reasoning) | 102,695 | × $20/M | $2.05 |
| Fresh input | 59,094 | × $10/M | $0.59 |
|---|---|---|---|
| Cache reads | 404,224 | × $1/M | $0.40 |
| Output (incl. reasoning) | 23,516 | × $50/M | $1.18 |
Prices: platform.claude.com (checked 2026-10-10) · developers.openai.com (checked 2026-10-10)
The prompt
Every model received exactly this
Create a top-down asteroid shooter: a complete browser game that people want to play again and again. What makes it great: - It is fun within the first five seconds: instant controls, a clear goal, and a difficulty that starts gentle and rises steadily, so a new player survives their first 20 seconds. - It feels good to play: responsive controls, smooth motion, and clear feedback for every point, hit and miss (a flash, a small shake, particles, a pop of the score). - It has its own style: a coherent colour palette and shapes drawn in code, not a grey prototype. Sound is optional: make it with the Web Audio API, start it only after the first input, and keep it quiet. How it is played: - Desktop: the arrow keys (WASD too) and Space. Phone: tap, or swipe and drag where it suits the game. Use Pointer Events so mouse and touch both work, and set touch-action: none on the play area. - Attract mode: on the title screen, before any input, the game plays itself with a simple autopilot that plays well (it survives, scores points and shows off the game's best moments), like an arcade cabinet. The title, the goal in one line and the controls stay readable on top. - The first Space, arrow key or tap hands control to the player and starts a real run from the beginning. After game over, Space or a tap starts a new run straight away (no reload, no extra screens), and with no input for about 8 seconds it returns to attract mode. - The score is visible during play. Game over shows the score and the best score of this visit (keep it in memory, or in localStorage inside a try/catch). - P or Escape pauses on a desktop. - The play area adapts to the window's shape, landscape desktop and portrait phone, without cutting off anything important. Text stays readable on a phone. Fixed rules (so every model is compared on the same terms): - Exactly one file, index.html, in the current directory. Create no other files. - Plain HTML, CSS and JavaScript. You may use three.js 0.170.0 from https://cdn.jsdelivr.net/npm/three@0.170.0/ (via an import map) if it helps. No other libraries, images, 3D models, fonts or network requests: build everything yourself in code (canvas, SVG, CSS or WebGL). - It fills the browser window and works on a phone and on a desktop, with no page scrollbars. - Animate with requestAnimationFrame and its timestamp so speed does not depend on the frame rate. It must work in an ordinary browser on any graphics card. You cannot open a browser to look at it, so build it carefully: - Every frame is fully drawn: no black, blank or flickering frames or patches. Keep any shader maths free of NaN and infinity (no division by a value that can reach zero, no pow() of a negative number, no normalize() of a zero-length vector), and clamp colours to a safe range before bloom or other post-processing. - No errors in the browser console: if you use three.js, map "three" and "three/addons/" in the import map, and import everything you use. - It runs smoothly on an ordinary laptop or phone: keep the pixel ratio at 2 or below, and avoid creating new objects every frame. - It adapts when the window is resized or the phone is rotated. - Do not hide errors: never wrap the main loop or whole functions in a try/catch that silently swallows them; fix the cause instead (a try/catch around storage or audio is fine). - Update the game with a clamped time step (at most about 1/30 s per update), so a slow or missing frame never makes things jump through walls or kills the player. - A restart fully resets the game: no leftover enemies, timers or listeners piling up, and no errors after many restarts. Before you finish, read your file once from top to bottom and make sure that: - With no input at all, attract mode plays well for at least 15 seconds without dying straight away or freezing. - Space or a tap on the title screen starts a real run, and the arrow keys and taps visibly control the game. - After game over, Space or a tap starts a new run. - It fits a 390×844 phone window and a 1280×720 desktop window. - Nothing can throw an error in the browser console. The battle video records about 15 seconds right after the page opens, with no input: attract mode is what viewers see first. Everything else is your choice: the mechanics, the theme, the art style, colour and effects. Make it as fun and polished to play as you can. Do not ask questions; make reasonable choices.
Run details: success criteria, conditions and notes
What counts as success
- Exactly one file, index.html, and no other files
- No libraries but three.js 0.170.0 (optional), and no images, models, fonts or requests
- Fills the window on a phone and a desktop, with no scrollbars
- Playable with keys (arrows and Space) and touch, with the score shown and a best score at game over
- A title screen with the goal and controls, over an attract mode that plays itself well
- Space or a tap starts a run, and starts a new one straight after game over
- Fully drawn on any graphics card: no black, blank or flickering frames or patches
- No errors in the browser console
Conditions
- Time limit
- 30 minutes
- Starting materials
- An empty, private folder for each model; both started at the same moment so neither could see the other's work
- Network access
- Blocked
- Tools
- Claude Code: Read, Write, Edit, plus ls, grep, wc and node --check (no browser, no Python), effort high. Codex CLI: codex exec in a workspace-write sandbox (any shell command, no browser, network off), reasoning effort high. Neither can open a browser to look at its result.
- Human assistance
- None. No edits after the prompt.
- Attempts
- One attempt each. A build that is missing, blank, erroring or not animating gets one fresh retry, disclosed on the entry. The editor may re-run a broken build (at most 3 attempts in all), also disclosed with the reason.
- Other rules
- Both models start at the same moment, each in its own empty folder, with the identical prompt and no human help.
Notes
Prompt: AI Battle house template v2 (game); subject chosen by the editor.
Prompt fingerprint (SHA-256): 5c02bcceefcdcfdfa500b3b4f1a41af3870fe6d45d132452348123d70888631f
More rounds
#8
A tree growing through the four seasons
· 3D scene
- Claude Opus 5.5Unscored
- GPT-6 AstraUnscored
Result: No winner
#9
A jellyfish drifting through a dark ocean
· 3D scene
- Claude Opus 5.5Unscored
- GPT-6 AstraUnscored
Result: No winner
#7