生物群系生成主管

生物群系生成主管

按生物群系、海岸线距离、水深、地形位置和其他地理约束直接控制世界和玩家生成点。

Biome Spawn Director

Biome Spawn Director 让 Forge 模组包作者能够使用生物群系选择器和真实的地理约束(而非固定坐标)来控制世界的起始位置。

可用于以下起始场景:

  • 在特定生物群系或生物群系标签中的某处生成;
  • 从生物群系深处开始,而非在其边缘;
  • 从距离海岸线受控距离处开始;
  • 在水下或海床开始,并带有最小水深要求;
  • 要求在选定距离范围内存在另一个生物群系;
  • 避开选定的生物群系或附近的结构;
  • 让每个新玩家拥有各自定向的起始位置,而非共享同一个世界出生点。

功能

  • 精确的生物群系 ID 与 #biome_tag 选择器
  • WORLD 模式用于一个共享的定制世界原点
  • PER_PLAYER 模式用于独立的首次加入放置
  • 放置模式:SURFACE、UNDERWATER、SEABED、CAVE
  • 最小 / 最大生物群系内部距离
  • 最小 / 最大干燥海岸距离
  • 带距离界限的必需相邻生物群系
  • 最小 / 最大水柱深度
  • 最终 Y 轴范围约束
  • 生物群系与结构排除
  • 严格的原版回退或可选的放宽约束回退
  • 持久化的 WORLD 出生点选择
  • 在向已有世界添加模组时保护现有玩家
  • 可选的针对水下起始的呼吸药水到达宽限期
  • 管理员预览、放置、重置与状态命令
  • 针对被拒绝候选位置的搜索诊断
  • 单人模式下在解析 WORLD 原点时显示加载屏幕状态

需求

  • Minecraft 1.20.1
  • Forge 47.4.10 或更高版本
  • Java 17

Biome Spawn Director 的出生逻辑以服务端为准。在专用服务器上,放置由服务器掌控。在单人模式下,请照常将模组包含在客户端/模组包中,以便集成服务器能够解析原点;客户端副本还会提供 Locating origin... 加载屏幕状态。

配置

首次启动后,编辑:

config/biomespawndirector-common.toml

该模组默认禁用,因此仅将 JAR 添加到现有整合包不会移动玩家,直到整合包作者主动启用。

简单生物群系起始

[general]
enabled = true
mode = "WORLD"
placement = "SURFACE"

[biomes]
targets = "minecraft:plains"

带可达海岸的海洋起始

[general]
enabled = true
mode = "WORLD"
placement = "UNDERWATER"
fallback = "VANILLA"
arrivalWaterBreathingSeconds = 30

[biomes]
targets = "#minecraft:is_ocean"
searchAnchors = "#minecraft:is_ocean"
excluded = "minecraft:frozen_ocean,minecraft:deep_frozen_ocean"

[relativePosition]
minShoreDistance = 48
maxShoreDistance = 176
minWaterDepth = 8
underwaterDepthBelowSurface = 6

WORLD 模式解析并持久化一个共享原点。在新的单人世界中,Biome Spawn Director 会在允许玩家进入之前解析该原点、预加载目的地,并在需要额外搜索时间时显示一个小的 Locating origin... 状态。

PER_PLAYER 模式则为每位符合条件的新玩家独立搜索。

选择器语法

生物群系选择器接受逗号分隔的精确 ID 与标签:

targets = "minecraft:plains"
targets = "minecraft:plains,minecraft:forest"
targets = "#minecraft:is_ocean"

目标、搜索锚点、排除、必需相邻及结构选择器字段(如适用)均支持相同的精确 ID / #tag 形式。

回退行为

如果没有候选位置满足配置的规则,VANILLA 会保留正常的出生点。

RELAX_CONSTRAINTS 会保留目标生物群系要求,但在不满足相对位置约束的情况下重试。当到达所请求的生物群系比满足每个距离范围更重要时,这很有用。

搜索是有界的;无法实现的配置不会故意无限搜索。

管理员命令

所有命令都需要权限等级 2。

  • /biomespawn status —— 显示当前生效的配置摘要
  • /biomespawn preview —— 搜索并描述一个候选位置,而不移动玩家
  • /biomespawn place —— 立即解析并放置你自己
  • /biomespawn place <player> —— 解析并放置另一位玩家
  • /biomespawn reset —— 清除你的首次放置标记
  • /biomespawn reset <player> —— 清除另一位玩家的标记
  • /biomespawn resetworld —— 清除持久化的 WORLD 模式原点,以便未来的符合条件的解析可以选择新的原点

整合包作者须知

相对地理条件可能会使首次世界创建比原版耗时更长,因为模组可能需要生成并检查地形后才会接受某个位置。搜索规划器会先使用低成本的生物群系来源信息来避免不必要的生成,然后在接受最终出生点之前验证实际地形。

在单人模式下,当 WORLD 模式的原点解析超过原版出生点生成时间时,加载屏幕会显示 Locating origin...,以便玩家知道游戏仍在运行。

选定的 WORLD 原点会被持久化,因此之后的正常加载不会重复初始搜索。