跳到主要内容

创建生成器

生成器

生成器是 BetterStructures 配置系统中最强大的部分。默认情况下有 31 个生成器,它们共同管理着 BetterStructures 当前分发的 200 多个建筑,虽然你可以创建自己的生成器,但你也可以使用现有的生成器作为快捷方式。

生成器告诉插件东西应该在哪里生成,并定义战利品表。默认生成器的命名方式也应该非常容易猜测它们做什么。

生成器唯一的必填字段是 structureType 设置,它告诉插件建筑是否应该在天空、浅层地下、深层地下、地表或地表液体中生成。


isEnabled

设置生成器是否启用。


structureType

设置建筑是什么类型的结构。请注意,你可以指定多个类型的列表!

你可以为单个生成器指定多个结构类型:

structureType:
- SURFACE
- UNDERGROUND_SHALLOW

这允许同一个生成器在多个位置生成结构,例如在地表和浅层地下区域都可以。

以下是有效的结构类型值:


surface

structureType:
- SURFACE

地表结构在世界的地表生成。唯一的例外是地狱环境,它在插件认为足够像地表的地方生成。


sky

structureType:
- SKY

天空结构在空气上方 80 到 120 块之间生成,可在 config.yml 中配置。唯一的例外是地狱环境,它在插件认为足够像空气的地方生成。


underground_shallow

structureType:
- UNDERGROUND_SHALLOW

浅层地下结构在主世界的 y=0 到 y=60 之间、地狱的 y=60 到 y=120 之间以及末地的任何有效地下高度生成。

注意: 你会注意到有两个地下设置。这是因为只有一个设置会导致地下非常稀疏,因为 Minecraft 有大量的地下空间,玩家经常会因为没有挖进它们而错过地下结构。这也保证了在不同深度之间有均匀的分布。


underground_deep

structureType:
- UNDERGROUND_DEEP

深层地下结构在主世界的 y=-64 到 y=0 之间、地狱的 y=0 到 y=60 之间生成,在末地中不生成。


liquid_surface

structureType:
- LIQUID_SURFACE

液体表面结构将在液体上生成。在主世界的情况下,它们将在水上生成,几乎总是在海洋中。在地狱的情况下,它们将在熔岩湖中生成。它们不会在末地生成。


lowestYLevel

设置结构将生成的最低 Y 级别(高度)。默认值:-59


highestYLevel

设置结构将生成的最高 Y 级别(高度)。默认值:320

按维度的默认 Y 级别范围:

结构生成使用每个维度不同的默认高度范围,可在 config.yml 中配置:

  • 主世界/自定义世界: Y=-60 到 Y=320(设置:lowestYNormalCustom / highestYNormalCustom
  • 地狱: Y=4 到 Y=120(设置:lowestYNether / highestYNether
  • 末地: Y=0 到 Y=320(设置:lowestYEnd / highestYEnd
  • 天空结构(主世界): Y=80 到 Y=120(通过 normalCustomAirBuildingMinAltitude / normalCustomAirBuildingMaxAltitude 配置)
  • 天空结构(末地): Y=80 到 Y=120(通过 endAirBuildMinAltitude / endAirBuildMaxAltitude 配置)

这些全局默认值可以使用生成器配置中的 lowestYLevelhighestYLevel 按生成器进行覆盖。


validWorlds

设置结构将生成的世界列表。如果不存在列表,它将使用插件允许的所有世界,除非另有限制(例如通过环境类型或生物群落)。


validWorldEnvironments

设置结构将生成的世界环境列表。如果不存在列表,它将使用插件允许的所有世界环境。有效值:NORMALNETHERTHE_ENDCUSTOM


validBiomes

设置结构将生成的有效生物群落列表。如果未定义列表,它将假定每个生物群落都有效!

这需要使用命名空间:键格式的生物群落(例如 minecraft:plainsminecraft:desert)。你可以找到由 Spigot API 定义的有效生物群落列表。该插件自动包含通过 CustomBiomeCompatibility 系统映射到原版生物群落的自定义生物群落。

自定义生物群落支持:

BetterStructures 自动支持来自 Terralith、Iris、Terra 和 TerraformGenerator 等世界生成器的自定义生物群落。

当你在 validBiomes 中指定原版生物群落时,插件会自动包含兼容的自定义生物群落:

validBiomes:
- minecraft:plains
- minecraft:forest

此配置将在以下位置生成结构:

  • 原版生物群落(minecraft:plains、minecraft:forest
  • 映射到这些原版类型的所有自定义生物群落(例如 terralith:blooming_plains

无需额外配置 - 自定义生物群落支持是自动的。


treasureFilename

设置生成器将使用的财宝文件。这设置了使用此生成器的所有建筑中的箱子里生成什么,除非在 原理图配置的 treasureFile 设置 中设置了不同的值。