Claude Code 建成可玩 RTS 游戏 Battle Drones:321 次提交,联机靠音频信号同步
- 构建路径:项目 7 月从 Claude Fable 5 起步,目标是做一款可在手机浏览器玩的《命令与征服》风格 RTS;截至发布共 12 个主要版本、321 次提交,主要由 Claude Code 完成,作者自述几乎未逐行审阅代码,且项目所用 TypeScript 并非其熟悉的语言。
- “更有趣”这一提示的实际产出:v3 时作者仍认为模型能做出“看起来像游戏”的东西但不好玩;在 Ultracode(动态工作流、并行 subagents)模式下仅输入一句
Make it a LOT more fun,模型运行了超过 1,000 场模拟试玩,并据此重新平衡单位、新增开场选择、呼叫打击、目标与残骸回收、Last Stand 模式与 8 关战役。其自撰发布说明给出数据:Normal 难度下 25 分钟仍未决的对局占比由 14% 降至 0.9%,曾落后 800 以上 scrap 的一方获胜比例由 24% 升至 46%。 - 3D 与资产:v5 用一条提示词把游戏移植到 three.js,全部建筑、载具与地形模型由 Claude 以 TypeScript 代码直接构造,未引入外部模型文件;早期精灵图由 Claude 调用 OpenAI 图像 API 生成并自行迭代提示词,配乐同样由代码实时生成并随战况变化强度。
- Agent 对战与回放:v10 加入 Agent vs. Agent 模式,两个 LLM 通过工具插件读取受战争迷雾限制的状态并下达指令,对局可录制回放,仓库内已有 Claude Haiku 5.5 对 GPT-6 Luna 等示例,作者计划做成联赛表。为让回放同步,模型还把
Math.sin()/Math.cos()替换为自定义实现——不同浏览器返回的数值存在极小差异,足以导致重放失步;这也是引入确定性模拟引擎的直接原因。 - 音频联机:v12 让两台处于麦克风拾音范围内的设备通过音频调制解调器交换游戏状态,无需部署服务器;该能力源自此前的 Chirp Pong 实验,Claude 先构建 Radio Probe 工具实测设备间可用带宽,再实现完整的音频通信层。作者称此前公开先例仅有 Siner 与 ggwave。
- 作者的两点判断:一是静态 HTML/JavaScript + WebGL/Three.js 是当前模型最熟悉的游戏开发介质,产物可作 PWA 离线运行(其在飞机上未安装即可游玩);二是这类作品仍不足以进入独立游戏展,“slop” 争议的关键不在是否用了 AI,而在成品是否真的可玩。附带观察是工具成本趋近于零——Radio Probe、模型浏览器、Agent 对战调试器均由 Claude 自行编写。
🔗 Simon Willison 原文 | GitHub 仓库 | 在线试玩 | Agent 对战设计文档





