无需登录 数据私有 本地保存

随机地牢地图生成 - 输出房间与走廊布局

11
0
0
0

随机地牢地图生成器

基于BSP算法 · 房间与走廊自动布局 · 可复现种子

地图参数
50
35
5
11
快捷预设
房间地板 走廊 墙壁 🟢 起始房间 🔴 Boss房间 🟡 宝箱房 🟠 怪物房
房间: 0 走廊长度: 0 总面积: 0 格² 起始: - Boss: -
# 类型 位置 (x, y) 尺寸 (宽×高) 面积 (格²) 中心坐标
点击"生成地牢地图"开始探索...

常见问题与知识点

BSP(Binary Space Partitioning)是一种经典的程序化地牢生成算法,广泛用于Roguelike游戏(如《NetHack》《Dead Cells》等)。其核心思想是:

① 递归分割:将整个地图空间不断二分(水平或垂直切割),直到每个子区域足够小。
② 放置房间:在每个叶子节点(最终子区域)内随机放置一个房间。
③ 连接走廊:从叶子节点向上回溯,用L形走廊连接兄弟节点的房间,确保所有房间连通。

这种算法生成的地图具有自然的分层结构、良好的连通性和可控的密度,非常适合桌游地图和游戏关卡设计。
种子是一个字符串或数字,用于初始化伪随机数生成器(PRNG)。相同的种子 + 相同的参数 = 完全相同的地图

这意味着您可以:
重现喜爱地图:记下种子值,随时重新生成相同布局。
分享给朋友:将种子分享给他人,他们能生成相同的地牢。
用于游戏开发:使用种子系统实现可复现的关卡生成。

本工具使用Mulberry32算法作为PRNG,确保跨平台的确定性输出。
本工具随机分配以下房间类型,丰富地牢的叙事层次:

🟢 起始房间:冒险者的入口,通常靠近地图边缘,是探索的起点。
🔴 Boss房间:地牢的最终挑战,位于距离起始房间最远处。
🟡 宝箱房:隐藏着珍贵战利品的房间(约占10%)。
🟠 怪物房:聚集着敌人的战斗区域(约占15%)。
普通房间:标准探索区域(约占70%)。

在地图上,不同类型房间以彩色边框标识,方便快速识别。
走廊连接是BSP算法的关键步骤。对于每对需要连接的房间:

① 计算路径:从房间A的中心到房间B的中心,随机选择"先水平后垂直""先垂直后水平"的L形路径。
② 挖掘走廊:沿路径将墙壁格转换为走廊地板,形成通道。
③ 宽度控制:走廊宽度可调(1-3格),影响通行便利性和视觉效果。

L形走廊的优势在于简洁高效,避免了复杂路径计算,同时保持了地牢的探索趣味性。在BSP树中逐层连接,确保了所有房间的连通性
生成的地图可以应用于多种场景:

🎲 桌面RPG(D&D、Pathfinder等):作为冒险模组的地牢蓝图,DM可根据房间类型布置遭遇和宝藏。
🎮 独立游戏开发:作为程序化关卡生成的原型参考,快速迭代地牢设计。
📝 写作灵感:为奇幻小说或冒险故事提供地牢场景的视觉参考。
🏗️ Minecraft建造:参考地图布局在游戏中建造地牢结构。

使用导出PNG功能保存地图图像,或记录种子值以便随时重现。