Working title "FREEDOM WARS"
一款基于 C&C Generals 风格的网页即时战略游戏,使用 Claude Code 在一周内完成,玩家可以在游戏中进行竞争,游戏还包含了排行榜。附带的试验片段是使用游戏引擎自己渲染的。
https://freedom-wars.vercel.app/
仅限桌面端,鼠标和键盘,暂不支持移动端。最好在 Chrome 中运行。测试在 macOS 14.2 上,若在其他系统上出现问题,请告诉我。
我使用了
- ChatGPT Codex (GPT-5.6),最高推理能力。首次提示后停止。
- Claude Code with Fable 5,最高推理能力。设计和架构。
- Claude Code with Opus 5,最高推理能力。实现和大部分的总花费。
- Grok 4.5(高,快)。2D 艺术:单位头像,UI 和事件图像。
- CC0 3D 和纹理来源:ambientCG 和 Poly Haven 的地面和建筑纹理,Kenney 的民用汽车,Quaternius 的步兵装备。
- ElevenLabs。声音效果和语音线。
- Suno。音乐。
- Supabase。排行榜,GitHub 和 Vercel。源代码控制和托管。
- chatGPT image 2。logo 和背景移除。
- photopea。截图游戏和 logo。
我为什么做了它。我想玩 Command & Conquer Generals 或 Age of Empires 4。那些游戏在 macOS 或我的 macOS 版本上无法运行。并且,我也想有一个现代的 C&C 游戏,带有当前事件和现实(更现实)的单位。启动它的提示:
- 为我创建一个在 three.js 中的浏览器游戏,风格类似于 Command & Conquer Generals 或 Age of Empires 4。单人游戏首先,但后期支持 p2p 多人游戏。场景:俄罗斯入侵乌克兰,防守欧洲地图上的攻击,带有适当的武器,特别是反坦克单位;俄罗斯人用坦克攻击。重建俄罗斯人实际上如何入侵。确保单位都比较详细,不要太像素化。据说还有俄罗斯空降兵,他们在基辅降落,你应该要与之战斗。同时,你也应该可以发起攻击等。卫星空中侦察应该很重要。坚持 C&C Generals 的概念——游戏,迷你地图等。
如何运行
没有 Gauntlet 提示和没有自主的过夜循环。这是一周内的 12 次 Claude Code 会话,期间我一直在调试,测试后每个步骤都进行了测试。
Codex 的比较值得报告:我给了它相同的首次提示,它的颜色工作更好。然而,Claude Code 的程序化 3D 模型在一个不同的层次上,且对于这个项目,模型是游戏。这样就决定了它。
花费的总金额(截至目前)
从会话日志中提取:7.7 亿个令牌,总共 16,235 个模型调用,包括 15M 输出,267M 缓存写入和 7.5B 缓存读取。根据 API 列表价格,这意味着大约 $6,200 到 $7,200。我在 Max 计划上运行,最大限度地发挥了我的每周限额一次,所以理论上讲,我们正在讨论 $200/4 = 我们说有效地 $50。
- 63,439 行 TypeScript,跨 101 个文件。Three.js + Vite。没有游戏引擎,没有物理库。
- 两个大型项目:8,531 行的模拟和 9,209 行的世界生成器。
- \~4,500 行设计文档,Claude 为自己编写,以便在会话之间传递,以及一个工作协议文件,它随着每次出现问题而不断增长。
- 30 种单位类型,46 种建筑类型。一场重建入侵的前几周的战役:六条攻击轴,Hostomel 空降攻击(无法及时夺回机场,Il-76波降落空降兵),40 英里远征。以及对 AI 的混战,1v1 P2P 多人游戏,地图编辑器和排行榜。
- 97 次提交,游戏仍在继续。
值得一读的部分
多人游戏基于 确定性的锁步,使用 WebRTC。只有你的点击会通过网络,约 1 KB/s,每个方向,使用校验和来捕捉 desync。
有趣的部分是 desyncs 实际上存活在哪里。每一个都出现在 UI 层。右键单击 迷你地图,直接调用了游戏,绕过了命令总线。和 民用交通出现在了模拟中,因为单位会与停放的汽车碰撞,所以一个 Math.random() 在汽车爆炸代码中就足以将两个机器分开。
教训:如果一个模块向模拟提供一个值,它就成了模拟的一部分,无论多么像背景。
在长时间的代理驱动工作中,我注意到地图会悄悄移动。一次光照变化会推动一个建筑,一个地形调整会移动一条路。所以现在,游戏在启动时会对整个生成的世界进行指纹识别,并在控制台中大声呼叫如果任何东西移动了。这一触发器结束了“等一下,为什么现在看起来会不同”的整个类别。
关于艺术
所列的来源中,令人惊讶的是什么都没有。每个坦克、直升机、建筑和废墟都是程序化几何体,写在代码中。没有打开过任何模型工具。CC0 包中包含了地面纹理、民用汽车和步兵动画套件;所有有军事轮廓的东西都是几何体。语音线还没有本地化。
试验片段是 45 秒长的,使用游戏引擎内部拍摄的,使用源代码写的剧本。它每帧写一个 PNG,总共 1,350 个,然后使用 ffmpeg 将它们组合起来。截图会根据墙时钟时间戳,并将每个慢帧都转换为慢动作。
关于主题:这是一个简化的、尊严的重现真实事件。没有真实的人物。若你不想玩它,完全可以理解。
我想从你那里得到什么
测试和享受!
RTS 玩家们说,感觉比特性更重要,所以我想听听。控制是否响应?路径寻找是否烦人?经济是否可读?AI 是否很有趣,还是它只是欺骗,或者太容易了?以及什么会出问题。
所以,请去看看。玩完整个战役,尝试在所有三个难度上与 AI 进行混战,若你能,试试 1v1 P2P 多人游戏。还没有测试 1v1 P2P 多人游戏,因为我独自一人坐在咖啡馆里,靠近海岸。
感谢任何反馈!非常感谢!
PS:我计划做一个 10 分钟的 YouTube 视频,讲解我如何做它,遇到的困难等。
评论 (0)