我用 Doubao-Seed-Evolving 做了一个我的世界,被成品惊到了......
1. 背景最近呢随着 AI 的发展让原本不会写代码的人都可以通过 Vibe Coding 的方式来尝试自己做一些比较有意思小游戏或者实用的工具然后我就突发奇想能不能使用 AI 来做一个我的世界玩玩说干就干2. 环境准备在开始之前我们先来确定下使用的工具这里我选择的是 Trae 这款 AI 编程 IDE我个人觉得这个工具用的还是比较舒服的大家也可以自己从官网去下载TRAE IDE | TRAE - The Real AI Engineer而选用的模型的话就用最近推出的 Doubao-Seed-Evolving 模型据说这是一款专为编程与智能体时代打造的下一代大模型凭借更强的自主规划和动态自修复能力它非常适用于真实企业研发中的高价值生产任务以及更广泛的经济与社会场景。对于开发者它还提供用于编程、办公及生产力提升场景的 Evolving 版本支持每周更新与持续进化最近也是又做了一次更新能力又得到了提升那接下来就是如何在 IDE 中配置 Doubao-Seed-Evolving 模型了我这边是订阅了这个 Agent Plan里面给的额度还是非常足的不订阅套餐的话也可以按量付费官方这里也提供了对应的接入文档https://ark.volcengine.com/region:cnbeijing/docs/82379/2389869?langzh在 Trae 里面配置好模型之后我们就可以进行 Vibe Coding 了3. 开发阶段3.1. 需求分析我们这里直接一句话让 AI 去做一个我的世界游戏AI 很准确的就理解了需求并且帮我们选定了技术方案用 Three.js 做 3D 渲染并且给出了 PRD 产品需求文档还有架构设计文档里面也给出了项目文件结构game/ ├── index.html # 入口 HTML加载所有模块 ├── css/ │ └── style.css # HUD 样式、UI 布局、像素字体 ├── js/ │ ├── main.js # 游戏主循环初始化和入口 │ ├── world/ │ │ ├── noise.js # Simplex/Perlin 噪声算法 │ │ ├── blocks.js # 方块类型定义、颜色/属性 │ │ ├── worldGen.js # 地形生成逻辑地面、树木、水 │ │ ├── chunk.js # Chunk 类方块存储、网格构建 │ │ └── chunkManager.js # 区块加载/卸载调度 │ ├── player/ │ │ ├── player.js # 玩家状态位置、速度、方向 │ │ ├── controls.js # 第一人称控制WASD、鼠标视角 │ │ └── physics.js # 重力、碰撞检测、跳跃 │ ├── render/ │ │ ├── renderer.js # Three.js 渲染器初始化 │ │ ├── lighting.js # 光源设置、昼夜循环 │ │ └── sky.js # 天空渐变、雾化 │ ├── interaction/ │ │ ├── raycaster.js # 射线检测选中方块 │ │ └── blockInteraction.js # 放置/破坏逻辑 │ └── ui/ │ ├── hud.js # 快捷栏、准星、信息面板 │ └── textures.js # 程序化方块纹理生成3.2. 初步实现确定好需求后AI 就开始按照对应的需求文档和架构文档工作了跑完之后来看下初版的实现有一说一这个效果真的惊到我了进去之后各种地形的元素都存在包括森林沙地湖泊这些方块元素都和官方的游戏没差多少然后我试了下游戏内的操作比如挖方块放置方块跳跃这些只要是上面的操作提示包含的都没有什么问题这个确实令我很震惊原本我还以为我就给 AI 说了一句话就算 AI 能够做出来那成品应该也是会出现各种奇奇怪怪的问题吧然后并没有在编码的过程中AI 一气呵成自己写方案编码测试最后实现的效果真的可以3.3. 添加功能当前第一版的效果也确实有些简单只能够移动挖方块放方块这里可以让游戏内容更加丰富些因为我们现在开发的是创造模式那玩家肯定是可以飞行的我们来让 AI 给游戏加一个飞行的功能再加一个背包功能并且再优化一些操作直接用大白话的方式给 AI 交互1. 添加背包功能和飞行功能 2. 破坏方块时添加方块破碎的效果 3. 破坏方块改为长按鼠标左键的方式不要点击左键去触发然后 AI 就又会开始思考制定待办然后开始一步一步的完成我们给他提的功能点跑完之后再来试一下这次真的可以飞了并且背包功能也加好了不过操作上有一点小 bug双击空格之后飞行不能上升高度再点空格就直接落下来了我们再把这个问题给 AI 说下也是成功解决了那目前这个创造模式简单的一些功能都在了已经有可玩性了创造模式的功能后面再拓展比如再新增一些替他类型的方块加入一些动物之类的接下来再来整个生存模式来玩玩来给 AI 说需求1. 可以再加上一个生存模式玩家进入游戏后可以选择创造模式和生存模式生存模式的玩法你参照原版的简单做下 2. 添加捡取方块的功能每个格子上限64块 3. 添加一些工具箱合成的功能可以看到这里我还是没有给 AI 说特别详细的需求不过 AI 能够根据自己的判断来设计出非常符合游戏官方的设定这次加的功能也比较多还是直接一次让 AI 跑完这里就能够看出 Doubao-Seed-Evolving 模型的上下文是非常足的并且模型能力的稳定性也非常好跑完之后再来看下效果可以看到角色的生命值还有饥饿值都展示出来了并且挖完方块也有靠近自动捡取功能如果不捡的话碎掉的方块会有一个悬停的效果。那既然是生存模式晚上是肯定要有僵尸的我们让 AI 再加入夜晚僵尸的生成让他能够主动攻击玩家给游戏加一些挑战这次生成完之后确实晚上也刷新僵尸了3.4. bug 排查和修复不过这次玩下来是有一些小 bug 的刚好测一下模型的改 bug 能力具体的 bug 是在水中漂浮的时候水的浮力太大了稍微动一点就飘上来了有时候生成的僵尸会莫名其妙消失僵尸遇到方块卡住就不能追玩家了缺少跳跃能力这边直接去问 AIAI 就会自己去查看刚刚自己写的代码哪里有问题很快也是发现了问题所在开始修复修复完之后这些问题已经解决了 Doubao-Seed-Evolving 模型改 bug 也是挺精准的不用和它交互太多次就能够精准的发现并修改问题那么至此呢生存模式的一些简单功能也开发完成了后续也可以再补充一些功能比如推出合成台让玩家能够合成各种工具来更好的生存下去可拓展点还是很多的这些都可以交给 AI 去实现只需要简单的几句话AI 就能很准确的明白你的需求而且很多次交互都是一次对话就能够达到期望的功能这肯定也得益于模型的强大之处4. 部署部署的话我们也可以直接问 AI看 AI 有什么方案AI 这里也是推荐了一些托管平台虽然说我也没听说过这些平台不过就先按照上面给的步骤试试结果还真可以也是生成了一个临时域名能够公网访问BlockCraft — 网页版我的世界不过这个域名是有时效的过段时间就过期了5. 总结本次通过 TRAE AI IDE 与 Doubao-Seed-Evolving 大模型以轻量化 Vibe Coding 的方式仅通过自然语言描述需求就从零完成了 Three.js 版我的世界网页游戏的开发。从刚开始生成基础游戏架构、地形渲染与核心操作功能到逐步添加飞行、背包、方块拾取等拓展玩法同时也排查并修复了各类 bug全程不用手动编写复杂代码这得益于 Doubao-Seed-Evolving 编程大模型强大的自主规划、长上下文理解与精准自修复能力让我们看到 Vibe Coding 模式下人人都能成为创作者的开发趋势大家也都可以尝试去做一些有意思的内容。