跳至主要内容

CannonRTP 保護整合

CannonRTP 可以在將降落候選位置加入佇列之前,對多個保護外掛進行驗證。

支援的整合

當前的軟依賴為:

  • WorldGuard
  • Towny
  • Lands
  • GriefPrevention
  • HuskTowns
  • HuskClaims

這些在 plugin.yml 中聲明為 softdepend。CannonRTP 在沒有安裝任何保護外掛的情況下也能正常運作。

保護檢查運作原理

  • 適配器按固定順序檢查:WorldGuard、Towny、Lands、GriefPrevention、HuskTowns、HuskClaims。
  • 第一個阻止位置的適配器會停止檢查並成為報告的原因。
  • 如果適配器在設定中已停用或外掛不存在,則跳過。
  • 如果保護 API 拋出錯誤,CannonRTP 預設阻止該降落。

API 錯誤的全域安全開關為:

  • landing.failOpenOnProtectionErrors

預設:false

設定為 true 時,當保護外掛無法安全查詢時,CannonRTP 將允許降落繼續。

/wc probe 命令

管理員可以站在任何位置執行 /wc probe 來測試該位置是否通過所有保護檢查。結果會報告哪個外掛阻止了該位置及原因,或確認該位置有效。

設定路徑

所有保護開關位於 plugins/CannonRTP/config.yml 中的 protection.* 下。

每外掛行為

WorldGuard

設定鍵:

  • protection.worldGuard.enabled
  • protection.worldGuard.allowGlobalRegionOnly
  • protection.worldGuard.allowBuildAllowedRegions
  • protection.worldGuard.allowPassthroughRegions

預設行為:

  • 預設啟用
  • 僅被 __global__ 覆蓋的位置預設允許
  • build=ALLOW 的區域預設允許
  • passthrough=ALLOW 的區域預設允許
  • 其他匹配的受保護區域被阻止

Towny

設定鍵:

  • protection.towny.enabled
  • protection.towny.allowWilderness
  • protection.towny.allowNationZones
  • protection.towny.allowClaimedTownBlocks

預設行為:

  • 預設啟用
  • 荒野允許
  • 國家區域被阻止
  • 已認領的城鎮方塊被阻止

Lands

設定鍵:

  • protection.lands.enabled
  • protection.lands.allowUnclaimedAreas
  • protection.lands.allowClaimedAreas

預設行為:

  • 預設啟用
  • 未認領區域允許
  • 已認領區域被阻止

GriefPrevention

設定鍵:

  • protection.griefPrevention.enabled
  • protection.griefPrevention.allowWilderness
  • protection.griefPrevention.allowAdminClaims
  • protection.griefPrevention.allowPlayerClaims

預設行為:

  • 預設啟用
  • 荒野允許
  • 管理員認領被阻止
  • 玩家認領被阻止

HuskTowns

設定鍵:

  • protection.huskTowns.enabled
  • protection.huskTowns.allowWilderness
  • protection.huskTowns.allowAdminClaims
  • protection.huskTowns.allowRegularClaims
  • protection.huskTowns.allowFarmClaims
  • protection.huskTowns.allowPlotClaims

預設行為:

  • 預設啟用
  • 荒野允許
  • 管理員認領被阻止
  • 普通城鎮認領被阻止
  • 農場認領被阻止
  • 地塊認領被阻止

HuskClaims

設定鍵:

  • protection.huskClaims.enabled
  • protection.huskClaims.allowWilderness
  • protection.huskClaims.allowAdminClaims
  • protection.huskClaims.allowPlayerClaims

預設行為:

  • 預設啟用
  • 荒野允許
  • 管理員認領被阻止
  • 玩家認領被阻止

非保護驗證仍然適用

保護整合只是降落驗證的一部分。位置仍可能因以下原因被拒絕:

  • 在世界邊界之外
  • 不存在安全表面
  • 腳部或頭部空間被堵塞
  • 地形與設定的不安全材料清單匹配

失敗報告

當炮台耗盡時(在搜尋逾時前找不到足夠的有效位置),狀態輸出和玩家訊息會包含常見拒絕原因的分解。如果大多數拒絕來自受保護的土地,這會被報告。這有助於管理員診斷保護設定是否對其伺服器過於嚴格。