Claude Code 技能打造完整 Godot 游戏

我已经做了大约一年,经历了四次重大重写。Godogen 是一个流水线,负责获取文本提示,设计架构,生成二维/三维资产,编写 GDScript,并进行可视化测试。
输出是一个完整且可玩的 Godot 4 项目。让大型语言模型可靠生成功能性游戏需要解决三个具体的工程瓶颈:1. 训练数据稀缺性:大型语言模型几乎不懂GDScript。
它有 ~850 个类和类似 Python 的语法,可以让模型产生无法编译的 Python 惯用法。为了解决这个问题,我构建了一个自定义参考系统:一个手写的语言规范、从Godot XML源头转换的完整API文档,以及一个关于引擎行为的特性数据库,这些行为是单靠文档无法学到的。
由于850个类会覆盖上下文窗口,代理在运行时只会懒惰加载它所需的特定API。2. 构建时间与运行时状态:场景由无头脚本生成,这些脚本在内存中构建节点图并将其序列化为.tscn 文件。
这避免了手工编辑 Godot 序列化格式的脆弱性。但这意味着某些引擎功能(比如 @onready 或信号连接)在构建时不可用——它们只在游戏实际运行时存在。
教模型哪些 API 在哪个阶段可用——以及每个节点的所有者必须正确设置,否则保存时会悄然消失——需要细致的提示,但得到了回报。3.评估循环:编码代理本质上偏向自身输出。
为了防止作弊,另外有一个Gemini Flash代理作为视觉质检。它只看到运行引擎渲染出来的截图——没有代码——并将其与生成的参考图像进行比较。
它捕捉了文本分析忽略的视觉缺陷:Z格斗、漂浮物体、物理爆炸以及本应自然的网格状布局。在架构上,它运行为两种 Claude Code 技能:一个是负责规划流水线的编排器,另一个是在上下文中实现每个部分的任务执行者:分叉窗口,避免错误和状态累积。
一切都是开源的: 演示视频(真实游戏,非精选截图): 博客文章,完整故事(所有错误的转折)即将发布。
很乐意回答问题。