Roguelike
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/roguelike-sh-8put15。
技能介绍
先厘清:roguelike 不等于「随机生成的地牢」
很多人以为给地图撒上随机房间、加一点死亡重来,就算 roguelike。技能开篇就把这条线划清:社区参考标准是 Berlin Interpretation(RogueBasin, IRDC 2008),它给出的是「roguelikeness」因子而非验收清单。高价值项是真正的设计目标:随机环境生成、永久死亡、回合制、网格化、非模态、复杂度(道具/怪物交互多)、资源管理、砍杀战斗、探索与发现。你可以有意识地取舍——Roguelite 通常就用 meta-progression 放宽了永久死亡这一条。
它如何工作:定义循环,而不是重教 API
这是一个组合式技能:它不重新教你 noise、RNG 或 tilemap API,而是定义一次 run 的循环,以及支撑循环的系统:
- 回合调度器——能量/先手系统,让快速角色行动更多(Pattern 2)
- 网格地图与移动——tile 坐标、
bump-to-attack、blocked/walkable 查询 - 程序化地下城——房间+走廊,或 BSP/元胞自动机;生成后必须做连通性验证
- 视野与已探索记忆——用 shadowcasting,不做逐格射线
- 战斗与实体——HP、攻防、状态;怪物与玩家遵守同一套规则
- 掉落与权重表——按深度加权的道具/怪物生成
- 永久死亡——擦除 run,只保留解锁与分数
- 消息日志与 UI——玩家从文本与状态中推理决策
核心循环是:走一步(移动/战斗/使用)→ 世界结算回合 → 看到新状态 → 下潜/拾荒/求生 → 死亡并以全新地牢重开。可重玩性来自世界每次不同,而不是玩家背下固定布局。技能还给出一组设计旋钮:地下城大小与房间数、怪物密度与深度曲线、掉落稀有度权重、FOV 半径、资源稀缺度、永久死亡 vs meta-progression、未鉴定道具、可种子化 RNG。
适用边界与常见失败模式
不要用在:披着 roguelike 皮的实时动作游戏(去做平台/射击,再叠程序生成);没有永久死亡的深度数值/任务/对话(去做 RPG);开放世界建造生存。
典型陷阱:生成后不做 flood-fill 导致不可达房间;用 naive FOV 导致视野闪烁、不对称(「你看见它,它看不见你」);伪回合制——输入竞态导致双移动,应一次只结算一个离散回合并排队输入;平坦难度没有下潜压力;永久死亡顺带抹掉 meta 解锁造成挫败;允许存档刷 run(应在加载时让 run 存档失效);状态不可读导致玩家无法规划。
使用场景
- 正在开发一款回合制、网格化的地下城爬行游戏,需要确定核心循环与必须实现的系统清单
- 在设计程序化地下城生成时,需要保证房间连通性并选择合适的算法,如 BSP 或元胞自动机
- 为 Roguelike 实现视野与已探索记忆系统,需要选用 shadowcasting 而非逐格射线以避免不对称视野
- 需要设计按深度加权的掉落表,以及永久死亡与 meta-progression 的存档分离策略
适合人员
- 独立游戏开发者,正在从零搭建一款 Roguelike,需要理清核心循环和系统优先级
- 游戏客户端工程师,需要实现回合调度器、视野算法与永久死亡的存档状态分离
- 系统策划,正在设计地下城生成与掉落表的数值曲线,需要按深度加权的参考实现
- 小型游戏团队的技术负责人,需要为 Roguelite 项目决定永久死亡与 meta-progression 的取舍