地牢生成器
创建一个程序生成的地牢。包括两种布局:“房间和走廊”和“地牢洞穴”。
作者和贡献者:VictrisGames。
如何使用:
- 在场景开始时运行“生成地牢洞穴”或“生成带有房间的地牢”动作。
提示:
- 保持房间对象使用的空间量少于总地图的 ~25%。如果添加了太多房间,它们将无法正确放置,并可能与其他房间发生碰撞。
- 尝试在玩家和墙对象上结合使用无重力的上下控件和物理行为
- 使用外部布局将预设计的房间放置在随机创建的房间对象上
- 使用“删除未使用的地形”选项以减少资源使用
- 使用“RoomID(object)”表达式确定起始和结束房间
- 使用“NeighborCount(object)”表达式找到放置宝藏的好地方。邻居数量较多意味着该瓷砖是一个角落或小隅。
- 使用“IsRoomEntrance”条件标识与房间相邻的走廊对象
一个示例展示了如何程序生成地牢或洞穴(在线打开项目)。
提示
学习通过按步骤指南安装新扩展。
动作
计算对象周围的网格邻居数量 计算对象周围的网格邻居数量。使用“NeighborCount(Object)”表达式检索此值。
生成地牢洞穴 使用随机行走算法生成地牢洞穴。当走步者触及地图边缘时,将其移回地图中心。
生成带有房间和走廊的地牢 通过在随机位置放置房间并在发生碰撞时移动它们来生成地牢。房间通过走廊相连。
条件
走廊是房间入口 检查走廊是否是房间入口。
表达式
表达式
说明
DungeonGenerator::NeighborCount(object)
对象的网格邻居数。在使用此表达式之前需要运行“CalculateGridNeighbors”动作。
👾 对象
DungeonGenerator::RoomID(object)
创建此房间的编号顺序。(范围:未定义到总房间数)。
👾 对象
本页面是有关 Dungeon generator _扩展的自动生成参考页面,由GDevelop社区制作,这是一个为所有人设计的开源跨平台游戏引擎。