很好——“迷你克隆”是简称。它更接近于一个立方体动作角色扮演游戏:你看到远方的东西,你走过去,你打架,你背回家,建造它。 但是它有块状结构,你挖掘它们,你放置它们,所以我们不要装糊涂了。

我已经在它上面工作了大约 一周。它被称为 Fernweh(暂时的工作标题——这是德语中远方的痛苦的意思)。它是基于 Godot 4.7 构建的,没错,大部分代码都是由一个AI代理写的。我稍后会详细说明这意味着什么,因为我认为这部分比噱头更有趣。

我posting 这个帖子是因为我认为它的基础是真正好的了,我想开始发布更新,因为它在成长。 我计划很快发布一个可玩的版本

其中一个想法

我正在建造的一切都是看到远方的东西并决定去那里。

这让人惊讶地容易失去。如果你的标志是随机生成的,它们会重复出现,十分钟后它们就不会再吸引你了——你已经看到了一座塔了,另一座塔在那边,谁在乎呢。所以这里是颠倒的: 地形是生成的,去哪里是有目的的。 无限世界,但它里的地方是被故意放置的,并且数量是有限的。

现在实际上在里面的是什么

战斗。 巡逻避免伤害,击中停止,输入缓冲,滚动取消。 九把武器,包括空拳——从匕首(14点伤害,4击连锁,跳跃)到战锤(70点伤害,1.3秒锁定,两次挥击和有人倒下)。类别实际上表现得不同:斧子击中三个目标,长矛在剑击中的东西上挥动,匕首从后面做双倍伤害。 十种敌人类型基于六个躯体计划,使用A*路径规划在可行的柱子上。

世界。 无法看到的块流式传输。八个生态环境软过渡——而不是“两次随机噪声值,查找生态环境”,每个生态环境在每个点上都有一个 权重,地形高度是所有八个的加权和。测量跨越六公里, 0.02% 的所有步骤都比三块高。还有巨大的山脉,峡谷和洞穴。

世界反应。 块落下。树木倒下作为一个刚体而不是消失。幼苗重新生长。水流动并反射。还有一个我很满意的规则: 你放置的东西是由手工材料制成的,它支持自己;生长在那里的是服从重力。 建造一堵用泥土建造的墙壁,看着它坍塌;建造一堵用木板建造的墙壁,你会得到一个阳台。

制作和建造。 195块类型,202个物品,89个菜单项,分成四个站点(手 / 营火 / 工作台 / 炉子)。五个工具级别从木头到晶体。门,梯子,箱子,玻璃有自己的渲染通道,和一个帐篷你可以在里面睡觉。

技术。 Godot 4.7 (Forward+),纯 GDScript。 342个.gd文件,大约105,000行,8个着色器。手写的立方体网格生成器。看到的每个东西都是由代码生成的—— 没有任何导入的资产,没有纹理,没有模型,不管是标题屏幕还是什么。每个形状都是一个盒子或一个三角形,所有颜色都是一个颜色表中的数字。

关于“vibecoded”部分

使用 Claude (Claude Code),但设置比模型更重要。有一个 MCP服务器,直接与引擎连接,AI可以启动游戏,读取场景树,模拟输入,读取控制台——并且 捕获正在运行的游戏的截图并自己看它们

这是它不再是高级自动完成的部分。例如,我的角色在击中闪烁时变成了一个纯白色球,失去了所有内部细节。没有单个测试捕捉到了它——每个数字都是正确的。它只在一个捕获脚本捕获了截图并有人实际看过时才显示出来。同样的故事是关于建造中的洞和一个营火坐在地板上一个块太深。

所以现在有 42个自动化无头测试 在仓库里,另外 190个自动生成的截图,因为它们捕捉了完全不同的错误类别。一个测试告诉你击中盒是正确大小。只有图片才能告诉你从二十米远的地方能不能看出谁在向你进攻。

诚实的说法:它非常擅长在整个决策过程中运用决策,包括测试和文档。它在你让它做决定时是无用的。架构,约束, “我故意 建造什么”列表——这是设计工作,任何提示都无法代替它。

这是在一周后的状态。随着它的发展,我会发布更新,并且一个可玩的版本很快就会发布。

如果你有问题,问吧——乐意进入立方体网格生成器,生态环境融合,保存格式,或者在一个Godot项目中使用AI代理的实际工作。 :)