Claude Fable实力碾压:从2D到3D《坦克大战》,零代码AI编程惊艳全场
继完美复现《超级玛丽》之后,我再次给Claude Fable布置了一个新任务:帮我做一个经典的《坦克大战》!

没想到这个任务对它来说过于轻松,于是我立刻提高要求,直接让它做了一款3D版的坦克大战。最终效果如这段演示画面所示:

它居然完整保留了原版的所有玩法机制,同时把像素风格的坦克战场全面升级为现代3D场景。试玩了几关,手感非常流畅,没有任何违和感。
Fable真正令人震撼的地方在于:第一轮直接产出完整成果,第二轮完成版本升级,第三轮继续精细打磨。全程零人工干预,自动校验、自动修复,最终交给你的就是一件可以直接使用的成品。这种能力,确实是代际领先。
接下来,我详细分享一下制作的过程。
在开始之前想问一句:如果你是一名程序员或游戏开发者,从零开始制作这样一款游戏需要多长时间?需要调试多少次,发布多少个迭代版本?
坦白说,我个人是完全做不到的——我是个纯粹的“菜鸟”,根本无法实现。
那么,来看看Claude是如何完成的吧。
这次我使用的是Claude官方桌面版。
一开始,我只输入了一句需求:

我的作用仅仅就是给出一个想法,然后对方就自动开始干活。全程我没有看过一行代码,没有修改过任何一处,更没有参与测试。
可以简要回顾一下它的制作路径。
首先,它开启了“编写一个包含前十关的坦克大战网页游戏完整代码”的任务。
我需要使用 HTML 制作一款包含前十关的坦克大战游戏,因此我要查阅前端设计相关技术文档,了解开发这款网页游戏可使用的工具与实现方法。
随后查阅前端技能文档,梳理了游戏的核心机制:
我正在梳理《坦克大战》的核心玩法:
玩家操控一辆坦克,在 13×13 的网格地图中守卫位于地图底部中央的鹰形基地,基地四周被砖墙环绕。
每个关卡共有 20 辆敌方坦克,它们会从地图上方三个点位分批刷新,画面中最多同时出现 4 辆敌方坦克。
敌方坦克分为多种类型,各自拥有不同特性,比如移动速度更快、装甲更厚等。
.....
接下来,它吃透了经典坦克大战的全部规则和机制,着手编写代码,并利用自动化测试直接验证关卡流程。
最后准备好测试环境(jsdom 用于无头运行游戏逻辑),结果却因为配额耗尽而暂停——本质上是消耗完了当轮额度。
等回蓝之后,我只说了一句“继续”:

于是它依次完成了:
- 决定继续编写游戏文件
- 分析游戏状态转换与计时器机制。
- 调试游戏碰撞逻辑,追踪子弹销毁砖块失败原因。
- 调试堆栈跟踪行号偏差问题
- 验证通过后计划进行稳定性测试。
- 所有 35 项测试都通过了。现在我来进行最后的长时间稳定性测试,然后就可以交付了。
最终的交付说明是这样的:
完成!
单文件网页版坦克大战,下载后双击即可在浏览器中玩,电脑和手机(带虚拟按键)都支持。
经典玩法完整复刻:
13×13 战场、保卫基地老鹰、每关 20 辆敌军(普通/快速/火力/重装四种,重装需 4 发)、第 4/11/18 辆闪红坦克掉道具(★火力升级、头盔护盾、时钟冻结、铁锹钢化基地、手雷全灭、坦克+1 命)、砖墙可逐层打穿、钢墙需 3 星火力、河流挡车不挡弹、森林隐蔽、冰面打滑。共 10 关,地形主题各不相同(砖阵→丛林→水网→钢堡→冰原→迷宫→最终决战)。
操作:
方向键/WASD 移动,空格/J 射击,Enter 开始/暂停,M 静音。
关于质量验证:
我用无头浏览器跑了 40+ 项自动化测试——包括连续推进全部 10 关至通关画面、4 局共 20 多分钟随机操作浸泡测试、毁砖/钢墙/击杀计分/全部 6 种道具/铁锹到期还原/生命耗尽与基地被毁两种失败流程、10 张地图出生点完整性,全部通过。过程中还真抓出并修复了一个会导致捡道具时崩溃的空引用 bug。
至此第一版就宣告完成!

立即上手试玩,没有任何问题。虽然我已经不太记得原版游戏的每一处细节,但整体的界面、机制、手感都十分还原,甚至可能一模一样。
没想到它一次性就达成了目标。这让我怎么评价……必须主动给任务上难度!
于是我又追加了需求:

这次让它把所有像素视觉升级为2.5D或3D风格,并希望整个战场可以拖动、自由切换视角。
为了实现这一目标,它引入了Three.js库,这个选择毫无问题,如果还要完全手搓那就太夸张了。
太好了,参考图的质感方向很明确:橙砖、铆钉钢块、茂密树丛、像素水面。我的方案是保留整套已验证的 2D 棋盘逻辑(规则一字不动),把渲染层整体换成 Three.js 3D 立体棋盘——可旋转/缩放/平移视角,砖墙、钢墙、树丛、河流全部立体化 + 程序化纹理贴图,坦克做成 3D 模型。开写:
随后又一次用光了配额。回蓝后再次输入“继续”,然后就可以验收成果了。交付报告如下:
3D 版完成。规则引擎与 2D 版逐字节一致(同一套已验证逻辑),渲染层整体重写为 Three.js 立体棋盘。
**棋盘视角(你要的核心)**:整个战场是一块带黄铜包边的立体棋盘,底面 13×13 棋盘格,四周是雾中废墟剪影。鼠标左键拖动旋转、右键拖动平移、滚轮缩放,触屏单指旋转/双指捏合;键盘 Q/E 旋转、+/- 缩放、V 一键切换顶视(接近经典 2D 视角)/斜视、R 复位。
**场景质感(对照参考图)**:砖墙是错缝橙砖纹理立方体,钢墙是带四角铆钉和高光的钢块,树丛是树干+茂密树冠(坦克可以从树冠下穿过被遮挡,比 2D 的"盖一层"更立体),河流是滚动波纹的下沉水面,冰面是高反光亮面。暖色主光带实时阴影 + 冷色轮廓光。
**角色与道具升级**:坦克是完整 3D 模型——双履带、轮毂、车体、炮塔、舱盖、炮管,转向带平滑过渡,开火有炮口火光+炮管后坐;重装坦克按剩余血量变色、奖励坦克闪红、冻结的敌人罩冰晶、护盾是脉动能量半球。子弹带光晕拖影,爆炸是火焰+白闪+上升烟雾的粒子系统,道具变成悬浮旋转的发光卡片,击杀分数在 3D 空间中飘起。基地老鹰立在石座上、被毁后变灰升起白旗。HUD/菜单/关卡幕布全部改为清晰的 DOM 覆盖层。
**验证**:原 38 项断言全部通过(这次通过 THREE 桩件把 3D 同步层代码也纳入了执行路径),外加 24 分钟单双人浸泡测试和相机交互专项测试,零错误。
唯一注意点:文件通过 CDN 加载 three.js,**首次打开需要联网**;若加载失败屏幕会给出提示。操作方式与 2D 版完全相同,双人规则、35 关、难度曲线原样保留。
38项断言全部通过,再加上24分钟的单双人浸泡测试和相机交互专项测试,零错误。
让人很是放心。这哪里只是请了一位程序员,连美术和测试都一并送了。
这才是真正的一人成军!
看一下效果:

一个字:稳!
已经完全是3D效果,快速试了一下没有碰到任何瑕疵。
但我认为还能做得更好。于是又提出了第三个需求:

这个需求我实际上是随口说的,连语句的通顺和错别字都没检查,反正就用最原始的语言表达自己的意思就好了。
然后又是熟悉的配额耗尽加上“继续”大法的循环。
结果如下:

交付报告说:
一次性搞定,全部 42 项断言 + 相机交互 + 24 分钟浸泡测试零错误。这次升级对照你提的每一条:
钢铁猛兽坦克:车体全面换装程序化装甲贴图——钢板分块、焊缝、铆钉、划痕、底部泥渍,配凹凸贴图有立体浮雕感。模型彻底重做:倾斜首上装甲、侧裙板、翼子板、5 对负重轮、防盾、炮塔尾舱、带制退器的长身管主炮、指挥塔、天线、双排气管。履带是滚动的——行驶时履带纹理真实转动,车尾冒尾气、履带卷起扬尘,开火炮管后坐。
战火纷飞的特效:大爆炸现在是六层合成——白炽核心闪光、翻腾火球群、高速飞溅火花、翻滚弹跳的金属碎片、缓缓上升的烟柱、地面扩散的冲击波光环,并在地上留下焦黑弹痕(战斗越久战场越满目疮痍)。爆炸伴随屏幕震动和真实点光源照亮周围建筑。砖墙被打碎会迸出砖块碎片+尘土,钢墙溅射金色火星,子弹拖曳光弹尾迹,基地失守后老鹰废墟持续燃烧冒烟。
音频系统:全程序化合成——战斗中是底鼓+军鼓+踩镲+贝斯线的驱动型战斗鼓点(后半段加入旋律声部),标题界面是低缓琶音;坦克移动时有引擎低鸣。音效全部重做:开炮是噪声炮口波+低频冲击,爆炸是次声波闷响+碎裂声+延迟轰鸣余韵,砖墙碎裂、钢墙金属铮鸣、装甲弹开的"铛"声各不相同。M 键总静音。
经典结算界面:每关清场后弹出战果面板——四种敌人逐行逐辆滴答计数(带计数音效),显示击杀数和得分,双人模式左右分列、歼敌多的一方获得经典的 BONUS 1000 奖励,Enter 可跳过。
老鹰纪念碑:换成三层石质基座+鎏金包边上的黄金雄鹰雕像——展翅三段式翼羽、利喙、尾羽,金属质感反光;被摧毁后变为焦黑垂翼残骸并升起白旗,遗址持续燃烧。
外加:夜空穹顶(星空+地平线战火余光)、出生点红色警示灯脉动、暗角滤镜。打开即玩(需联网加载 three.js),规则与原版分毫不差。
真的是太稳了,细节拉满,没有一个字是多余的,也没有少一个字。
这才是名副其实的“人工智能”。那些疯狂敲键盘、唾沫横飞的才能使用的,只能叫人工智障。
无需更多总结,一切尽在过程之中。
我估计,目前还没人如此详尽地分享过Fable的实际效果与制作流程。
即便从来没有用过Claude,你也能通过这里清晰地感受到它的工作模式——那就是“纯自然语言编程”,也是编程的终极形态。
我把成品上传到了网上,地址:
后续我还会用同样的需求去测试其他模型,统一更新到TOPAI上,可以预见各种意想不到的效果会非常精彩。

收工,收工。