Claude Opus 5.5 on Build a full game (code, art, audio) with AI
AClaude Opus 5.5 · Claude Code 2.1.299 (headless -p) · cloud · 2026-10-14 · by @bobsiopener
- Estimated cost
- $1.00
- Wall time
- 5m
- Human step-ins
- 0
- Outcome
- Pass
Compare with other models on this task →
Summary
Exact prompt
Game jam, scaled down: in one pass build a complete small arcade game as a single file index.html (no external assets or libraries). Theme: "a capybara crossing a river". Must include: a title screen with Start, keyboard controls, procedurally drawn art on a <canvas> (no image files), at least 2 sound effects and background music generated with the Web Audio API (start audio on user gesture), a score, increasing difficulty, a game-over screen with restart, and a high score saved in localStorage.
Task prompt given to the agent (headless, offline, synthetic fixture inputs): Game jam, scaled down: in one pass build a complete small arcade game as a single file index.html (no external assets or libraries). Theme: "a capybara crossing a river". Must include: a title screen with Start, keyboard controls, procedurally drawn art on a <canvas> (no image files), at least 2 sound effects and background music generated with the Web Audio API (start audio on user gesture), a score, increasing difficulty, a game-over screen with restart, and a high score saved in localStorage. Inspired by https://x.com/qusaxz/status/2077427986689843623 (unverified; not checked with the author). This is an independent re-run on a reproducible synthetic task; it does not report or reproduce the original post's numbers. Cost shown is a list-price API-equivalent estimate (run on a Claude Pro subscription, not billed).
Success criteria: All automated rubric checks pass: single file, no external libs/assets; canvas drawing; Web Audio; oscillator music/sfx; title/start screen; game over + restart; localStorage high score; capybara theme; no uncaught console errors.
Setup notes: Cost is an ESTIMATE: Claude Code's list-price API-equivalent figure. The run used a Claude Pro subscription, so nothing was billed. input_tokens = all input incl. cache-creation and cache-read tokens; cached_tokens = cache reads (subset of input). Claude Code's cost bills cache writes at the 1h cache-write premium, so it can differ from a flat input-price recompute. Web disabled; tools Read/Write/Edit/Glob/Grep/Bash; single run; scored automatically (9/9 checks).
Estimated cost List-price estimate; not actually billed.
Metrics
- Estimated cost
- $1.00
- Wall time
- 5m
- Human step-ins
- 0
- Turns
- 7
| Model | Input tok | Output tok | Cost |
|---|---|---|---|
| AClaude Opus 5.5anthropic/claude-opus-5.5 | 261,939 | 32,386 | $1.00 |
Reproduce this run
- Use the use case prompt on the use case page.
- Same setup: Claude Opus 5.5 (anthropic/claude-opus-5.5) via
Claude Code 2.1.299 (headless -p), cloud. - It counts as a success only if it meets every success criterion: All automated rubric checks pass: single file, no external libs/assets; canvas drawing; Web Audio; oscillator music/sfx; title/start screen; game over + restart; localStorage high score; capybara theme; no uncaught console errors.
- Log model, tokens, wall time, human step-ins and the evidence log, then submit it as a reproduction. A different model? Submit a head-to-head rerun.
How runs are scored: Methodology.
Was this useful?
Automated checks
Trust 80% comes from these checks (how Trust % works).
- Run date is not in the future : passed
- Model is in the dated pricing table : passed
- Cost recomputed from tokens matches : passed
- Cached tokens are consistent : passed
- Output throughput is plausible : passed
- Autonomy matches step-ins : passed
- Step-ins do not exceed turns : passed
- Retries agree with first-try result : passed
- Evidence log SHA-256 matches : passed
- Evidence log is substantial : passed
Evidence log
{
"duration_api_ms": 295650,
"stop_reason": "end_turn",
"session_id": "[REDACTED]",
"total_cost_usd": 0.[REDACTED:credit_card],
"usage": {
"input_tokens": 12,
"cache_creation_input_tokens": 38329,
"cache_read_input_tokens": 223598,
"output_tokens": 32386,
"output_tokens_details": {
"thinking_tokens": 14773
},
"server_tool_use": {
"web_search_requests": 0,
"web_fetch_requests": 0
},
"service_tier": "standard",
"cache_creation": {
"ephemeral_1h_input_tokens": 38329,
"ephemeral_5m_input_tokens": 0
},
"inference_geo": "global",
"iterations": [
{
"input_tokens": 2,
"output_tokens": 990,
"cache_read_input_tokens": 49706,
"cache_creation_input_tokens": 769,
"cache_creation": {
"ephemeral_5m_input_tokens": 0,
"ephemeral_1h_input_tokens": 769
},
"type": "message"
}
],
"speed": "standard",
"fallback_credit": null
},
"modelUsage": {
"claude-opus-5-5": {
"inputTokens": 12,
"outputTokens": 32386,
"cacheReadInputTokens": 223598,
"cacheCreationInputTokens": 38329,
"webSearchRequests": 0,
"costUSD": 0.[REDACTED:credit_card],
"contextWindow": 1000000,
"maxOutputTokens": 128000,
"thinkingTokens": 14773,
"canonicalModel": "claude-opus-5-5",
"provider": "firstParty",
"costBasis": "list"
}
},
"permission_denials": [],
"terminal_reason": "completed",
"fast_mode_state": "off",
"fast_mode_disabled_reason": "sdk_opt_in_required",
"subagent_stats": {
"spawned": 0,
"requested": {
"background": 0,
"foreground": 0,
"unset": 0
},
"started_in_background": 0,
"max_depth": 0,
"spawned_by_subagents": 0,
"completed": 0,
"failed": 0,
"killed": {
"parent": 0,
"user": 0,
"system": 0
},
"refused": {
"depth_limit": 0,
"concurrency_limit": 0,
"budget": 0
},
"by_type": {}
},
"safety_stops": 0,
"is_error": false,
"num_turns": 7,
"subtype": "success",
"api_error_status": null,
"result": "I've built the game as a single file, `index.html`. I tested it in headless Chrome and it works: the script has no syntax errors, and screenshots of the title screen and the play screen look right.\n\nI also ran a scripted test of the game logic. It checked hopping and scoring, drowning leading to game over, the high score being saved to localStorage, restarting, and reaching the goal moving you up a level. All of it behaved correctly. That test didn't play any sound, so the audio is the one part not checked yet; it needs a quick play in a real browser.\n\n**How to play:** guide the capybara from the bottom bank to the hot springs on the far bank. In the river you have to stand on something:\n- **Logs** are always safe to ride.\n- **Lily pads** are safe, but from level 2 some of them bob under the water now and then. Bubbles warn you before they sink.\n- **Crocodiles** (from level 3) are safe to ride on their backs, but landing on the head means getting chomped.\n- A sandbar halfway across is a safe resting spot.\n\nYou die if you fall in the water, get carried off the edge of the screen, or run out of time.\n\n**What's included:**\n- **Title screen** with a Start button (click it or press Enter/Space), a dancing capybara, the controls and the saved high score.\n- **Controls:** arrow keys or WASD to hop, P or Esc to pause, M to mute. The game also pauses automatically if the window loses focus.\n- **Art:** everything is drawn in code on the canvas, with no image files. This includes animated water ripples, logs, lily pads with flowers, crocodiles that wag their tails and steaming hot spring pools.\n- **Sound:** all generated with the Web Audio API, starting on your first click or key press. There are sounds for hopping, splashing, croc chomps, picking up an orange, reaching the goal, the countdown in the last 5 seconds, and game over. Background music is a looping chiptune that speeds up slightly each level.\n- **Score:**\n - +10 for each new row you reach.\n - +50 for each yuzu orange you pick up. The capybara then carries it on its back.\n - Reaching the hot spring gives +100, plus 5 points per second left, plus 100 more if you're carrying an orange.\n- **Difficulty:** each level speeds up the current, makes logs shorter and gaps wider, adds more sinking lily pads and crocodiles, and gives you less time per crossing (down to a minimum of 18 seconds).\n- **Game over screen:** shows your final score, your high score, a \"NEW HIGH SCORE!\" message when you beat it, and a Restart button (or press Enter).\n- **High score** is saved in the browser under `capybaraCrossing.highScore`.\n\nTo play, open `index.html` in any modern browser. It needs no server or internet connection.",
"ttft_ms": 159566,
"type": "result",
"duration_ms": 298943,
"uuid": "[REDACTED]",
"ttft_stream_ms": 875,
"time_to_request_ms": 215,
"first_content_frame_ms": 876,
"queued_turn_count": 0,
"result_index": 0
}