用于程序创建重生点的方法

我有一个由stream程化的浮岛组成的世界。 我希望在逻辑上不会掉入空间的重生点产生敌人或玩家。 想法如何做到这一点? 我的想法是这样的:

  1. 放下一堆产卵检查物品,如果它们坠落太久,那就是一个不好的重生点。

  2. 建立随机生成的世界的逻辑,以便区域被预先识别为放置NPC,坏人,玩家等的地方。

如果任何人有链接到一些博客或报告关于这个或你自己的想法在这个请张贴!

号码1将工作,但很多取决于你的世界。 如果它是巨大的,而且这些岛屿相距甚远,你会花费大量的时间和“失误”。 另外,一个岛可以超过另一个? 如果是这样,你可能会在上面的岛屿上产卵,而在较低的岛屿上则没有。

2号是正确的想法。 假设你的岛屿不完全没有特色的空白形状,我猜你会把其他物品放在超出产卵的岛屿上,这导致我的建议在下面…

假设你的世界发生器有一些方法来创建和放置岛上的实体(精灵,NPC,path,触发点,物品,你有什么),你也可以生成一个“重生点”实体。 它只是一个无形的占位符,在你的世界上有一个协调。

当你想放置(产卵)一个敌人或玩家,挑一个,并把它们放在那里。 如果你愿意的话,你可以做一些事情,比如使用一个曾经使用过的重生点,这样两个项目不会相互重叠。 此外,你可以进一步过滤,以规范产卵。 例如,select一个重生点,然后search所有现有的重生点。 如果新的距离比现有距离更近,则拒绝。 这可能就像保持你的产卵者过于拥挤,甚至怪物分布一样简单 – 即不要把大的强壮的敌人靠近在一起,不要把敌人放在玩家的X距离内等等。