跳到主要内容

如何使用命令

插件版本: 2.0.3+ Minecraft 版本: 1.19.4 - 1.21.10

  • 前往命令页面获取帮助: [命令页面](../Better Structures/commands.md)

检查结构物生成位置

BetterStructures 可在结构物生成时通知管理员:

启用/禁用:

  • 使用 /betterstructures silent 命令切换
  • 或在 config.yml 中设置 warnAdminsAboutNewBuildings: true/false

您将看到:

  • 如果您是服务器管理员且未关闭警告,当结构物出现时您将在聊天中收到通知。
  • 点击聊天消息可传送到该结构物 (基岩版除外)。
  • 使用 /betterstructures silent 开启/关闭警告。

何时禁用:

  • 使用 Chunky 进行世界预生成时 (减少控制台垃圾信息)
  • 在繁忙服务器上,通知过度时
  • 如果您更喜欢自然发现结构物

通知仅向拥有操作员权限的玩家显示。

为什么结构物可能不会出现

  • 通常,结构物不会在已探索区域出现。访问新区域可找到结构物。
更多详情

结构物不会在已探索区域出现,以避免过度填充并破坏玩家建筑。BetterStructures 知道一个区域是否在安装前被探索过,不会在那里放置结构物。如果您的世界在安装 BetterStructures 前已完全探索,您需要重新生成它或创建新世界。

EliteMobs 和 BetterStructures

EliteMobs 提供什么

获取预制 EliteMobs 内容

仅使用 EliteMobs 而无其他功能

  • 您可以关闭其他 EliteMobs 功能。要禁用,请更改以下位置的设置:
    • events.yml: timedEventsEnabled: falseactionEventsEnabled: false 禁用所有事件
    • MobCombatSettings.yml: doNaturalMobSpawning: false 禁用自然精英生成

将 EliteMobs 首领添加到您的结构物

  • 在告示牌的第一行添加 [elitemobs]
  • 在告示牌的第二/三/四行添加首领的文件名,如 test_boss.yml
  • 更多信息 [请点击此处](../Better Structures/creating_structures.md)

WorldEdit 兼容性

BetterStructures 需要 WorldEdit 才能正常工作。

重要: AsyncWorldEdit 与 BetterStructures 不兼容,会破坏结构物生成。

  • 仅使用标准 WorldEdit
  • AsyncWorldEdit 会导致错误并阻止结构物正确放置
  • 如果您遇到结构物生成问题,请验证您使用的是 WorldEdit,而不是 AsyncWorldEdit

BetterStructures 与其他插件

MMOItems

  • 使用 mmoitems=<TYPE>@<ITEM-ID> 在宝藏配置文件中添加 MMOItems。

WorldGuard

BetterStructures 在安装 WorldGuard 时会自动使用 WorldGuard 区域保护结构物。

  • 防止玩家破坏或修改结构物方块
  • 使用自定义标志: betterstructures-protect
  • EliteMobs 首领被击败时,保护会自动移除
  • WorldGuard 是软依赖 (可选但推荐)

禁用保护:

在 config.yml 中设置 protectEliteMobsRegions: false 以禁用自动保护。在以下情况下很有用:

  • 您不使用 WorldGuard
  • 您希望玩家在战斗中修改结构物
  • 您使用不同的保护插件

来自其他插件的自定义物品

使用 lootify 命令将任何物品添加到箱子中。

命令语法:

/betterstructures lootify <generator> <rarity> <minAmount> <maxAmount> <weight>

在手中拿着要添加的物品,然后运行该命令:

  • generator: 宝藏配置名称
  • rarity: 稀有度等级 (common, rare, epic, 等)
  • minAmount/maxAmount: 堆叠大小范围 (1-64)
  • weight: 概率权重 (更高 = 更常见)

示例: /bs lootify basic_treasure rare 1 3 0.5

有关更多详情,请参阅 [命令页面](../Better Structures/commands.md)。

结构物类型和放置

BetterStructures 支持六种不同的结构物类型,每种都针对特定环境设计:

  • Surface: 地面级结构物,适应地形高度
  • Shallow Underground: 近地表地下结构物
  • Deep Underground: 用于地下探索的深洞穴结构物
  • Sky: 空中浮动结构物 (通常 Y: 80-120)
  • Liquid Surface: 在水或岩浆表面生成的结构物
  • Dungeon: 特殊地牢型结构物

每种类型使用专门的地形拟合算法,确保与您的世界自然整合。

您可以使用以下命令手动放置结构物:

/betterstructures place <schematic> <type>

有效类型: SURFACE, SKY, LIQUID_SURFACE, UNDERGROUND_DEEP, UNDERGROUND_SHALLOW

创建您自己的结构物

  • 了解方法: [结构物创建指南](../Better Structures/creating_structures.md)

性能影响和最小化

生成许多结构物会减慢您的服务器速度。以下是最小化性能影响的方法:

预生成

  • 使用 Chunky 预生成您的世界并避免性能问题
  • 在添加玩家前离线预生成世界时可能的话

性能配置

您可以在 BetterStructures 配置文件中调整性能影响:

  • 设置: percentageOfTickUsedForPasting (默认: 0.2 = 20%)
  • 较低的值减少延迟但减慢结构物生成
  • 较高的值加快生成但可能在粘贴期间影响 TPS

后期生成

  • 如果不使用 EliteMobs,可在世界生成后删除 BetterStructures
  • 使用 EliteMobs 时,保持 BetterStructures 用于受保护区域管理,影响最小

结构物位置是如何确定的?

BetterStructures 使用确定性菱形网格放置结构物:

网格计算:

  1. 结合世界种子 + 结构物类型
  2. 根据距离设置将世界分为网格单元
  3. 在每个单元内添加随机偏移
  4. 相同的种子 = 每次相同的结构物位置

这意味着什么:

  • 结构物位置是可重现的 (相同种子 = 相同放置)
  • 重启服务器不会改变结构物位置
  • 不同的世界有不同的模式
  • 对玩家来说看起来随机,但实际上是确定性的

为什么这样设计:

  • 防止利用结构物位置
  • 确保一致的世界生成
  • 允许服务器管理员重现世界
  • 保持均匀的结构物分布

对服务器管理员: 如果您想要不同位置的结构物,必须使用不同种子生成新世界。更改配置值不会移动已确定的结构物位置。

"setupDone" 标志是什么?

在 config.yml 中,您会找到:

setupDone: false

用途: 追踪您是否使用 /bs initialize 完成了首次设置

值:

  • false: 首次设置未完成 (默认)
  • true: 设置向导已运行

效果:

  • 控制首次设置警告和提示
  • 可能影响可用菜单选项

重置: 要重新运行设置向导:

  1. setupDone: true 更改为 setupDone: false
  2. 保存 config.yml
  3. 运行 /bs reload
  4. 运行 /bs initialize