今日速览
- 关卡设计不是「画地图」,而是一条流水线:前期策划 → (战斗设计)→ 布局 → 灰盒 → 脚本 → 灯光 → 美术 → 发布(来自 The Level Design Book)。
- 布局(Layout)先定 parti(核心结构),再画泡泡图(bubble diagram),最后才画俯视平面图;一张涂鸦只要能传达设计就够用。
- 灰盒(Blockout)的价值是「便宜」:一块灰砖删掉几乎零成本,一张精修贴图删掉非常贵。结构不确定时,就让它一直保持便宜。
- 灰盒阶段必须权衡四件事:massing(体量感)、metrics(尺度比例)、wayfinding(寻路引导)、playtesting(试玩验证)。
- 节奏(Pacing)用「beats + 变化」来编排:pulse / accent / rest / motif / variation / syncopation,好关卡像一首歌。
核心学习内容
1. 关卡是「测」出来的,不是「画」出来的
The Level Design Book 把做关卡拆成八个阶段:Pre-production(前期策划)→ Combat(战斗设计,可选)→ Layout(布局)→ Blockout(灰盒)→ Scripting(脚本)→ Lighting(灯光)→ Environment Art(美术)→ Release(发布)。对个人开发者而言可以裁剪,但有一点不能省:布局图不能告诉你关卡好不好玩,只有灰盒 + 试玩能。
初学者最容易犯的错,是跳过灰盒直接上美术。结果是玩法没验证、美术已经做完,任何结构改动都要连累一堆贴图资产,越改越不敢改。正确顺序是先「便宜地错」,再「昂贵地对」。
2. 布局(Layout):先抓住一个 parti
Layout 有两层含义:一是关卡的整体结构,二是用来规划的俯视平面图。绘画流程是:
- 经验目标:写一句「玩家在这关应该学会/感受/做什么」——越具体越好,例如「在科幻下水道里用 5 分钟学会二段跳」。
- parti 缩略图:brainstorm 出核心形状(环形?一条走廊?双分支?)。
- 泡泡图(bubble diagram):只画区域大小与流向,不画墙。
- 俯视平面图(floor plan):细化房间形状。
- 玩法标注(gameplay markup):标出敌人、道具、机关、critical path(通关必经路径)。
关键概念只有两个:flow(玩家移动的体感) 与 typology(常见的布局原型)。不要追求画得好看,要追求「能传达」。
3. 灰盒(Blockout):把结构做得便宜
灰盒是用简单几何体搭的 3D 粗稿,目的是试验、试玩、调整底层形状。四个抓手:
- Massing 体量:这块是厚重巨石还是轻巧木架?它决定了「这是个什么地方」。
- Metrics 尺度:门够不够高、房间会不会太大?参考 Doom/Quake 的经典人体尺度表。
- Wayfinding 寻路:站在任意位置,玩家能不能猜到「该往哪走」?用光线、地标、颜色做引导。
- Playtest 试玩:这才是灰盒存在的全部意义。
搭建手法有五种:primitives(基础几何体)、brushes/modeling、modular kit(模块化套件,像乐高)、sculpting、splines。个人做 2D/小项目,primitives + modular kit 就够:用一堆积木块摆出可玩的空间,先跑通再谈美感。
4. 节奏(Pacing):用 beats 编排强度曲线
一个 beat 是关卡里一小段自足的单元(一个区域、一次遭遇、一个机关)。像音乐一样,把它们编排成:
- pulse:建立固定节奏(比如每关结尾都有一扇显眼的出口门);
- accent:强调某拍(偶尔把出口藏起来);
- rest:留白,让玩家喘口气,下一拍才更响;
- set piece:一个特别华丽、被反复打磨、通常不可跳过的高光桥段(Boss 战、大追逐)。
个人项目预算有限,至少设计一个 set piece 就够了——它往往是玩家记住你游戏的那个瞬间。
🎯 DeepSeek 提示词
以下 4 条覆盖「策划 → 布局 → 灰盒 → 评审」全流程,可直接复制修改。
提示词 1:生成关卡前期策划案(Pre-production + Pacing)
你是一位资深关卡设计师,擅长单机游戏的节奏设计。
【项目背景】2D 横版/俯视(二选一)动作游戏,玩家核心能力:{跳跃/冲刺/攻击}。
【任务】为本作第 {N} 关写一份前期策划案。
【输出格式(Markdown)】
1. 经验目标:一句话,写清"玩家在这关学/感受/做什么",要具体可验证。
2. Beats 序列:按顺序列出 5-7 个 beat,每个 beat 标注:名称 / 类型(pulse|accent|rest|set piece) / 预计时长(秒) / 玩家动作。
3. 强度曲线:用 1-5 分标注每个 beat 的紧张度,并解释为何在低谷后安排高峰。
4. 一个 set piece:描述它的机制、为什么值得玩家记住、大概需要哪些资产。
【约束】总时长 {5-10} 分钟;只能使用题目列出的玩家能力,不要发明新机制;语言简体中文。
提示词 2:生成关卡俯视图布局(Layout)
你是一位关卡设计师,请把一段玩法描述转成俯视图平面布局。
【输入】玩法描述:{粘贴提示词1产出的 beats 序列}
【任务】给出该关卡的 layout。
【输出格式】
1. Parti 一句话:本关的核心结构是什么(环形 / 主线+支线 / 竞技场+走廊…)。
2. 泡泡图:用字符画表示区域大小与连接关系,节点命名如 A/B/C。
3. 俯视网格图:用 20x12 的字符网格绘制房间与走廊(# 墙、. 可通行、S 出生点、E 出口、X 敌人、! 机关)。
4. Critical Path:从 S 到 E 的最短必经节点序列,并标出 1-2 处可选支线。
【约束】确保 critical path 存在且可通过;网格必须是等宽字符;不要输出图片,只输出文本。
提示词 3:让 DeepSeek 写 Godot 4 灰盒生成脚本(Blockout)
你是 Godot 4.x 的 GDScript 专家。
【任务】写一个脚本,把字符网格描述的关卡自动搭成 2D 灰盒。
【输入格式】字符网格:'#'=墙(带碰撞)、'.'=地面、'S'=玩家出生点、'E'=出口、'X'=敌人占位、'!'=机关。
【要求】
1. 用 Node2D 作为根,每格 {32} 像素;墙用 StaticBody2D + CollisionShape2D + ColorRect(灰色)搭建。
2. S/E/X/! 分别实例化占位节点(可用不同颜色的 ColorRect + 简单脚本),并把出生点坐标存为 @export 变量。
3. 提供 @export var level_map: PackedStringArray,默认填一段 10x8 的示例地图,可在检查器里直接改。
4. 代码加中文注释;使用 Godot 4.3 语法(不要 Godot 3 的 yield 等旧写法)。
【输出】完整可运行的 .gd 脚本 + 一段"如何在场景树里挂载"的 3 步说明。
【约束】不引入第三方插件;不修改项目设置;如果某行长度不一致要报错提示。
提示词 4:关卡评审 / 试玩诊断(Playtest 复盘)
你是一位严格的关卡评审员,只根据事实指出问题,不要客套。
【输入】关卡布局(粘贴俯视图网格)+ 玩家试玩反馈:{例如"我走到 B 区就迷路了""到 X 之前没意识到有敌人"}。
【任务】诊断这关的设计问题。
【输出格式】表格,列:问题 / 证据(引用反馈或网格位置) / 所属类别(flow|wayfinding|pacing|balance|metrics) / 严重度(高/中/低) / 一条可落地的修改建议。
【约束】最多 6 行,按严重度排序;每条建议必须能在灰盒阶段低成本验证;不要重画整关,只提最小改动。
学习心得
今天我们跳出了「引擎技术」,进入真正决定游戏好不好玩的关卡设计。对「用 DeepSeek 做一款 Steam 游戏」这个目标来说,这一课的意义在于:DeepSeek 最擅长产出的是结构化文本——beats 序列、俯视图网格、数据驱动的地图描述。而这恰好就是关卡设计的前半段工作。换句话说,我们可以让 DeepSeek 当「策划 + 文本布局师」,自己只负责最后一步:把网格丢进 Godot 灰盒里,跑起来试手感、改数字。这样既省下大量文案与草图时间,又不会让 AI 替你决定「好不好玩」这种只能靠试玩回答的问题。
明日关注
- 用提示词 1 + 2 给自己的游戏做一关完整策划案与俯视布局,存成
levels/level_01.md。 - 把提示词 3 的脚本落地到 Godot,跑出第一个可玩灰盒,并用
CharacterBody2D走一遍 critical path。 - 记录第一次试玩的三个「卡住/迷路」点,用提示词 4 复盘一次,形成最小修改清单。
本文由自动化学习流水线每日生成,坚持即学即记。
评论