Research — ARPG 地图生成最佳实践(FM-SD-WIKI-MAPGEN-BP-20260828)

来源:Firstmate 转发的船长 pack(2026-08-28)。行业研究,不是产品决策。 不写入 decisions 新锁。不开 bake / room-pool / WFC / identity_seed 实现票。不是 mosaic MAPGEN-1,也不把它解冻。

当前 SideDawn 事实仍以 decisions 为准:工作仓 foxzool/sidedawn;地形 SoT = crates/zonegen + zonegen::generate;可玩 = preview 飞相机;三种形态 ≠ 三个世界;没有 skill / combat crate;demolish_wall 未接 preview;#33 暂时不 bake。

原文:raw/articles/arpg-mapgen-best-practices-2026-08.md。核源(18 条):raw/articles/arpg-mapgen-best-practices-2026-08-verification.md。Pack 里的 about:blank 已换成核源表里的一手 URL。

接受(行业层,不是 SideDawn 锁)

与现有 arpg-terrain-design / 2026-07 terrain raw 同族,收下当行业综述:

  • 现代 ARPG / roguelite 地图生成的共识不是「更随机」,而是手工原子 + 程序化组装(模板 / chunk / 房间池)。一手:Torchlight chunks(Beck / Runic GUTS)、Dead Cells 手工房间 + 图拼接(Bénard)、Hades 房间池(Gorinstein)、D3/D4 tileset。
  • 生成应分层,不是单体生成器。Pack 画的行业管线:种子 → 骨架 → 几何 → 角色 → 填充 → 验证 → 导航。D1 的 predungeon / dungeon 分离是同族思想(BorisTheBrave / Devilution)。
  • 算法按形态选型:BSP / 模板管房间,元胞自动机管洞穴,WFC 管风格。商业游戏几乎不单用一种。
  • 工程口号(行业):种子化确定性、验证失败整图重 roll(不打补丁)、运行时导航异步烘焙。
  • 可读性:地标、环境线索、避免无收益迷宫。L4D Director 的强度曲线是可迁移的刷怪节奏想法,不是 ARPG 事实。

ARPG 地图生成范式光谱

ARPG 程序化地图通用分层生成管线

纠正 / 降级

Pack 说法处置核源
行业共识 = 手工原子 + 程序化组装接受为综述Torchlight / Dead Cells / Hades / D3–D4;不是 SideDawn 选型
七段管线是「最强方法论」降级为行业图wiki 只记 zonegen「四阶段 generate」,不要等同七段
异步 navmesh bake「不可妥协」不接受为 SideDawn 底线#33:暂时不 bake。Kempke 的 700m / 0.8–1.3s 是一台 Unity 机器的数,不是引擎规格
验证失败就无限整图重 roll不改现政策D1 确有整层废弃重试;SideDawn 已上船是 8 次后打日志、不更新 zone
D2「64 位种子开局生成全幕」纠正地图 RNG 约 31–32 bit / act,不是 64。跨幕相关是社区/RE,不是暴雪白皮书
CA「45% 地板 / 55% 墙」纠正(写反了)RogueBasin 规范是 45% 墙
Drunkard N ≈ 面积 × 0.45不当经典常数教程讲的是覆盖率目标,不是这条公式
线性/开放/环形 = BSP / CA / WFC纠正1/2/3 是同一 CurrentZone 的三种形态,不是三个世界、三套生成器
默认答案 = 房间池 / WFC行业推荐,不是树事实几何 = noise + 台地级 + min structure;15 families × 4 variants。mosaic MAPGEN-1 仍跳过
PoE「模板池 + 随机旋转」是 GGG 教义降级手绘 tile + 半随机拼接是 wiki/社区;旋转/镜像是社区观察。Atlas 规则必须标年份(2017 ≠ 现在)
杀戮尖塔 = 地图生成案例降级为比喻原子是卡,不是房间。Dead Cells 才是一手混合案例
N-WFC 已进商业 ARPG不接受SUSTech 2023 论文,不是暗黑/PoE 管线
角色 / 填充 / 遭遇导演是必段行业层今日可玩不是 ARPG;无 player / skill / combat crate
「2025 移动端 PCG 指南」只同步种子降级为常见做法没找到可引用的标准文档
60–70% 时间做白盒 / 「打过补丁的地牢…」金句不入库本轮没有一手

核源成绩:CONFIRMED 13 / PARTIAL 5 / WRONG 0 / UNVERIFIED 0(PARTIAL 里有写错的子数字)。详表见 verification raw。

SideDawn 对照(观察,不是锁)

  1. 整区 generate 已经有。 #33 一次 1 个后台 task,再按相机环挂载。接近「先生成再呈现」,不是每帧 N-chunk。不是说七段管线已实现。
  2. 现在不 bake。 pack 把异步 bake 当底线;#33 明确暂时不 bake。dual nav 已上船。
  3. identity_seed 未用。 pack「进区域才派生」没有游玩路径消费者。
  4. 三种形态不是世界。 不要把 线性/开放/环形 映射成 BSP/CA/WFC。
  5. 树上没有房间池 / WFC。 不要把 15 families 写成哈迪斯房间。
  6. 失败是有界中止,不是无限重 roll。
  7. actors / fill 没落点。 四个环境动词仍未锁(research-skills-terrain)。
  8. 试玩是船长 Mac 的 preview。 不是 Grok,也没有十万种子洪泛验收。
  9. 本页是研究入库,不是 decisions 行,也不是 MAPGEN-1 复活。

相关页面