---
title: "我用 AI 做了一个游戏，打了 4 次才打过关底 Boss"
description: "用一周从零做了个俯视角像素射击游戏《The 11th Forest》。3 天跑通主流程、4 天搭编辑器，AI 出图、出 BGM、出 SFX，但我打了 4 次才打过关底的 Boss。AI 让程序员的游戏梦从不可能变成可能，但程序不难，美术、策划、音乐才是鸿沟。"
date: "2026-08-06"
url: "https://firetable.tech/the-11th-forest"
image: "https://cdn.firetable.tech/blog/og/the-11th-forest.png?t=1792657860000"
author: "FireTable"
tags: ["🤖 AI 相关", "🏞️ AIGC", "📑 调研报告"]
category: ["💻 程序员"]
---

# 我用 AI 做了一个游戏，打了 4 次才打过关底 Boss

> Date: 2026-08-06 · Category: 💻 程序员 · Tags: 🤖 AI 相关, 🏞️ AIGC, 📑 调研报告

> **摘要**：用一周从零做了个俯视角像素射击游戏《The 11th Forest》。3 天跑通主流程、4 天搭编辑器，AI 出图、出 BGM、出 SFX，但我打了 4 次才打过关底的 Boss。AI 让程序员的游戏梦从不可能变成可能，但程序不难，美术、策划、音乐才是鸿沟。
我用 AI 从 0 到 1，参考《土豆兄弟》和前辈的经验，做了个俯视角像素射击游戏《The 11th Forest》

结局是：我被自己的 Boss 按在地上摩擦了 4 次，才打过

## 起源：我想做一个游戏

想做游戏的念头更早 —— 早在 LangGraph App 之前就有。但冷静下来想想，先把饭碗端稳。LangGraph 是 Agent 框架，练手它对找工作有用

于是我先把 LangGraph App 做完，然后才回来做游戏

## 节奏：3 天主流程 + 4 天 Sidecar

整个项目加起来大概一周左右：

- **Day 1-3：主流程跑通** —— 角色移动、战斗、一个基础场景、可玩、上线
- **Day 4-7：Sidecar 功能** —— 浏览器内可视化关卡编辑器、补充怪物和关卡资源
3 天跑通主流程其实是一个关键信号 —— **对一个有 Node.js 全栈经验的人来说，做一个 2D 俯视角射击游戏的"骨架"是可行的**。

剩下的已经不是程序问题，而是游戏内容问题

在完成所有开发后，我打开了录屏，打算录个视频，打到关底发现：我居然打不过我自己用 AI 做的游戏

最后我花了 4 次，才打过，当然也顺便还做了一些数值调整

![](https://cdn.firetable.tech/blog/i/8bQEgDl6fJ4ZEfvLODu4vz3DbI3XrPNe.webp)

## 哲学：架构是为 AI 服务的

这套项目最不一样的地方不是游戏本身，是**架构是为 AI 服务的**

我用的是：

- Phaser 4（Web 2D 游戏引擎）
- React + Vite + TypeScript
- Matter.js + Zustand + Zod
技术栈看起来很现代，但它不是为性能选的 —— 是为我熟悉选的。我是 Node.js 全栈，2D 游戏性能要求也不高，那就挑熟悉的。

真正的设计哲学在数据层：

- 所有游戏数据（关卡、怪物、武器、角色、掉落物、音效）**100% 由 YAML 驱动**
- 每个模块都有 Zod Schema 严格校验
- 加一个新怪物 = **丢一份 YAML + 一张精灵图**，零代码改动
为什么要这样？

因为 **AI 才是这个项目未来的主要维护者**

我给这个项目写的 `CLAUDE.md` 和 13 篇 `docs/*.md`，里面把所有架构决策都写清楚了

- AI 读完 docs 就能维护起来
- YAML 比 TS 容易理解
- Schema 比代码容易验证
- 编辑器比手工修改更安全
这就是我在 AI 时代做游戏的判断 —— **架构的核心 KPI 是"AI 友好度"**，不是性能、不是代码优雅度

![](https://cdn.firetable.tech/blog/i/3z2dluGABOSH5nJO4W4n95TzWYAEI1LY.webp)

## Editor：AI 时代做游戏的杠杆

我认同，在 AI 时代做游戏，要致富，先撸 Editor 是最好的

游戏资源大多是图片 —— 怪物精灵图、武器贴图、关卡背景、空气墙（碰撞区域）、物料装饰、怪物出生点、传送门等等

如果手工写 YAML 配置文件，一个人根本维护不过来，如果还得改代码，会疯掉

所以我做了一个**浏览器内可视化关卡编辑器**

- 拉取代码，打开本地开发服务器 `http://localhost:8080` 即可启用
- 在画布上直接画多边形空气墙（高墙 / 低墙）
- 拖放怪物出生点、传送门、物料
- 上传精灵图，自动 chroma-key + 切图
- 改完直接写回本地 YAML 文件
这个编辑器背后没什么神秘的 —— 用的是 Vite Dev Plugin API（`vite/plugins/editor-api.mjs`）

本地 Node 端点直读直写 YAML 文件，**完全不上后端服务**

这个设计是**反直觉但正确的**：

- ❌ 传统思路：搭个 Express/Fastify 后端，定义 REST API，写数据库
- ✅ 实际做法：本地开发服务器已经有文件权限，借它的力即可
对单人 / 小团队来说，这舒服的很

![](https://cdn.firetable.tech/blog/i/du9pT3QQa7Awtvk1NYcckwcVTaUTbu1a.webp)

![](https://cdn.firetable.tech/blog/i/JhfOgBVeJu1vEKZGR7ZFmuqnNdVuYBQR.webp)

![](https://cdn.firetable.tech/blog/i/fHuqcOSQTghiMYcxRWlvR4KuzUia2ehe.webp)

## 反思：程序不难，美术 / 策划 / 音乐才是鸿沟

做完一周后，我最大的反思是：

> 

**程序不难，美术、策划（数值 / 文案）、音乐才是鸿沟。**
AI 让"做游戏"从 0 到 0.1，但剩下的 0.9 是审美和策划，这是更加系统的学问

具体来说：

- **美术**：AI 出像素画 OK，但精灵序列图（多帧动画）还差点意思。我得反复调 prompt，再写切图脚本处理 chroma-key + 网格拆分。这一步是"半自动"的 —— AI 出图，调用脚本自己处理
- **策划**：游戏的难度曲线、怪物行为、武器平衡 —— 我现在做的 6 个怪物、6 把武器已经是我的极限，再多就需要专业的数值策划
- **音乐**：BGM 用 MiniMax 出的，氛围感不错，但还不能做到"为关卡定制"。真正的好 BGM 需要人懂游戏节奏、情绪曲线
- **语音**：ElevenLabs 出的 SFX 和受击语音 OK，但要做好"角色配音"还差很远
AI 让一个程序员**能做出一个游戏**，但还不能让一个程序员**做出一个"好"游戏**

![](https://cdn.firetable.tech/blog/i/g5jxocMUwIxuyuiQ3XV8Pp6cs8XB0pqG.webp)

## 浪漫的边界

这是程序员的浪漫 —— 用 AI 实现一个"小梦想"

但浪漫需要承认边界，我走出的 AI 一步是真实的，我做出了一个：

- 有完整战斗循环的俯视角射击
- 4 个关卡（含 Boss 房）
- 3 个可玩角色
- 6 种武器
- 30+ 音效 + 2 首 BGM
- **一个能维护自己内容的编辑器**
但剩下的部分要交给真正懂美术、懂策划、懂音乐的人。这也是为什么我把这个项目定义为 **AI Game Development Research Project** —— 它是研究，不是产品

如果让我给这篇文章一句话总结，我想说：

> 

**AI 不会让你变成游戏开发者，但会让你做一个能做出游戏的人。**
剩下的路，得靠审美、靠策划、靠音乐 —— 那些 AI 暂时还没完全接管的部分

![](https://cdn.firetable.tech/blog/i/cQChvfeA2OLORzYTVhalXMN14GClgPRK.webp)

## 资源链接

- 🎮 **游戏试玩**：[https://forest.firetable.tech](https://forest.firetable.tech/)
- 💻 **开源仓库**：[FireTable/the-11th-forest](https://github.com/FireTable/the-11th-forest)
- 🎥 **B 站视频**：[我居然打不过我自己用 AI 做的游戏](https://www.bilibili.com/video/BV14UM26vE61)
写这篇博文的时候我也在想 —— 下一个想做什么

但这就是后话了