跳至主要内容

如何使用指令

插件版本: 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

安裝 WorldGuard 後,BetterStructures 會自動使用 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>

有效類型:SURFACESKYLIQUID_SURFACEUNDERGROUND_DEEPUNDERGROUND_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