How to use Claude to prototype a rugby runner
Claude Code with Luna built a Godot rugby runner through small edits. Real engine errors and human play checks guided movement rather than broad game requests.
Original prompt
Shared by the source author. See source notes for context.
make the carrier move forward and stay inside the pitch.
Reach people exploring AI agents
See placements →Evidence at a glance
Sourced account- Source author
- Nils Sanderson
- Original account
- Read the source ↗
- Published
- Source link checked
- Reported result
- An early playable runner foundation was produced through small Godot tasks and real play checks. Placeholder visuals and unfinished systems remained.
- Human involvement
- Sanderson defined small goals, opened Godot, played each change and fed actual errors and control problems back to the agent.
A linked account supports attribution. It does not mean we independently reproduced its result.
Report an issue with this case
Open correction emailOpens your email app with the case link included. Nothing is sent automatically.
How the agent did it
- Sanderson narrowed the broad runner request to one movement or game-state goal at a time.
- The agent read controllers and inspected Godot scenes before making focused edits.
- Sanderson ran and played each result, returning real engine errors and control issues.
Nils Sanderson used Claude Code with Luna through OpenRouter to prototype Rugby Runner in Godot. The game imagined a carrier moving down the pitch, reading approaching defenders and choosing when to evade, fend or offload to support.
A broad request to build the runner left too many decisions unresolved. Sanderson switched to smaller goals, such as moving the carrier forward while keeping it inside the pitch. The agent read the relevant controller before editing, used Godot MCP to inspect scenes and nodes, and ran the project so actual engine errors could guide the next change.
The prototype used a portrait layout and placeholder visuals. A central manager handled waves, score and HUD behavior while player steering and boundaries were developed as separate concrete tasks. This made it possible to test a playable mechanic before treating the entire design as implemented.
Sanderson opened Godot and played the results himself. The source stresses that a confident agent response was not sufficient evidence of movement or controls working correctly. The outcome was an early runner foundation, not a finished game. Its useful detail is the narrow edit-run-play loop: inspect the existing scene, change one behavior and check it in the engine before asking for the next system.
Prompt
Original prompt
Source: Personal blog · Nils Sanderson
Frequently asked questions
Which model ran inside the harness?
The author used Luna through OpenRouter with Claude Code.
Why narrow the tasks?
The broad game request left too many architecture and behavior decisions unresolved.
Was the game finished?
No. The article reports an early playable foundation with placeholder visuals.
More details
About this account
Sanderson narrowed the broad runner request to one movement or game-state goal at a time. The agent read controllers and inspected Godot scenes before making focused edits.
Original development account opened. Claude Code is the harness, using Luna through OpenRouter. The result is an early game foundation rather than a finished release. Original prompt excerpt.
Credit: Nils Sanderson — Personal blog
Source published
Added to Agents In Use
Source checked
Tools and topics
Claude Code · Luna · OpenRouter · Godot · Godot MCP
Runner prototype · Play testing
Editorial completeness: 100/100. Measures documented fields, not agent performance or verified outcomes.