跳至主要内容

FreeMinecraftModels 常見問題

如果你的問題未在此處列出,請查看側邊欄,看看 wiki 中是否有專門的頁面!

入門

如何安裝和使用 FreeMinecraftModels?

資訊

安裝:

  1. 下載 FreeMinecraftModels.jar 並放入 plugins 資料夾
  2. 重啟伺服器以生成插件資料夾
  3. 如果需要首次設定流程,執行 /fmm initialize
  4. 如果使用官方內容包,透過 /nightbreaklogin <token> 連結 Nightbreak
  5. 使用 /fmm setup/fmm downloadall 取得 Nightbreak 管理的官方內容
  6. 對於手動內容,將 .bbmodel 檔案放入 ~/plugins/FreeMinecraftModels/imports/ 並執行 /fmm reload
  7. 生成的資源包位於 ~/plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip

資源包分發:

選擇以下方法之一:

  • 選項 A(推薦):安裝 Resource Pack Manager 實現自動分發
  • 選項 B:透過 server.properties 或託管服務手動配置

生成模型:

  • /fmm spawn static <id> - 生成臨時裝飾模型
  • /fmm spawn dynamic <id> - 生成附加到實體的模型
  • /fmm spawn prop <id> - 生成持久性世界模型

管理:

  • /fmm - 顯示設定/說明摘要
  • /fmm initialize - 開啟首次設定選單
  • /fmm setup - 開啟內容管理選單
  • /fmm downloadall - 下載所有可存取的官方內容
  • /fmm updatecontent - 更新過期的官方內容
  • /fmm reload - 重新載入插件並轉換新模型
  • /fmm version - 顯示插件版本
  • /fmm stats - 顯示實體計數統計

玩家功能:

  • /fmm disguise <modelID> - 將外觀變為自訂模型
  • /fmm undisguise - 移除玩家偽裝並恢復正常外觀
  • /fmm itemify <model> <material> - 建立可放置物品以生成指定模型
  • /fmm craftify <modelID> - 開啟互動式配方建構器,為道具建立合成配方
  • /fmm mount <modelID> - 生成偽裝為自訂模型的可騎乘馬(實驗性)

除錯:

  • /fmm hitbox visualize [duration] - 使用粒子視覺化模型碰撞箱(持續時間以 tick 為單位,預設 100)

管理員:

  • /fmm deleteall - 移除所有目前載入的模型實體(謹慎使用 - 無確認提示)

權限:

  • freeminecraftmodels.* - 大多數指令需要(disguise、itemify、mount、hitbox visualize、spawn)
  • freeminecraftmodels.deleteall - /fmm deleteall 指令需要

指令預設僅限 OP 使用。如需要,請向非 OP 玩家授予這些權限。

模型功能與限制

模型的大小和旋轉限制是什麼?

資訊

大小限制:

  • 最大:112x112x112 像素(遊戲內 7x7x7 方塊)
  • FreeMinecraftModels 使用 4 倍內部縮放來實現這些尺寸
  • 標準 Minecraft 資源包限制為更小的尺寸

立方體旋轉限制:

  • 允許的角度:0°、±22.5°、±45° 以及 22.5° 的倍數(自 v2.3.0 起)
  • 僅支援單軸旋轉
  • 範例:[22.5, 0, 0] 有效,但 [22.5, 0, 45] 僅部分旋轉
  • 其他角度將無法正確顯示

骨骼旋轉:

  • 骨骼支援任意旋轉角度
  • 避免使用 90°、-90°、180°、-180° 的預設靜止位置(可能導致意外行為)
  • 支援多軸旋轉
  • 每個骨骼建立一個單獨的實體(效能考量)

效能提示:

盡可能保持骨骼數量最少。每個骨骼在 Minecraft 中產生一個單獨的實體,大規模時可能影響伺服器效能。

支援哪些動畫?

資訊

FreeMinecraftModels 支援以下預設狀態動畫:

標準動畫:

  • Walk
  • Idle
  • Death
  • Attack
  • Spawn

工作原理:

  • 在 BlockBench 中建立動畫
  • 插件從 .bbmodel 檔案讀取動畫關鍵影格
  • 動畫根據實體狀態自動觸發
  • 開發者可以使用 playAnimation(animationName, false, false) 以程式方式觸發動畫

特殊情況:

Evoker 實體偵測附近的 Evoker Fangs 以自動觸發攻擊動畫。

什麼是虛擬骨骼?它們如何運作?

資訊

虛擬骨骼是具有保留名稱的特殊骨骼,為你的模型新增功能:

碰撞箱骨骼:

  • 名稱:hitbox
  • 建立互動區域和碰撞箱
  • 使用匹配的 x/z 值定義實體邊界

名稱標籤骨骼:

  • 前綴:tag_
  • 在模型上方顯示文字
  • 用於實體命名

頭部旋轉骨骼:

  • 前綴:h_
  • 根據玩家/實體的頭部位置旋轉
  • 自動追蹤頭部移動

用法:

在 BlockBench 中建立具有這些特殊名稱之一的骨骼,插件會自動套用相應的功能。

疑難排解常見問題

我只看到馬鎧而不是自訂模型。

資訊

如果你在遊戲中只看到馬鎧而不是自訂模型,問題很可能是你沒有正確地將 FMM 資源包與現有資源包合併。

MagmaGuy 開發了一個名為 Resource Pack Manager(RSPM)的插件,可以自動為你合併資源包。你可以從 Spigot 這裡 下載。

只需將 RSPM 的 .jar 檔案放入 plugins 資料夾,RSPM 將處理所有事情。它將合併所有資源包,自動託管它們,並在玩家登入伺服器時分發給玩家。

為什麼新增 .bbmodel 檔案後看不到我的模型?

資訊

如果你的模型沒有出現,請檢查以下常見問題:

1. 忘記重新載入

在將 .bbmodel 檔案放入 imports 資料夾後執行 /fmm reload。這會轉換模型並生成資源包。

2. 資源包未套用

玩家必須啟用 FMM 資源包才能看到模型。

  • 檢查 ~/plugins/FreeMinecraftModels/output/FreeMinecraftModels.zip 中的生成包
  • 安裝 Resource Pack Manager 實現自動分發
  • 或透過 server.properties 或託管服務手動分發

3. 檔案位置錯誤

手動匯入的 .bbmodel 檔案必須放在:~/plugins/FreeMinecraftModels/imports/

如果你使用官方內容包,請使用 /fmm setup/fmm downloadall,而不是手動放置檔案。

4. 模型有錯誤

檢查 /fmm reload 期間的主控台日誌是否有錯誤訊息。常見問題包括不支援的旋轉、過大的模型或材質問題。

5. 資源包合併問題

如果你看到馬鎧而不是模型,資源包沒有正確合併。使用 Resource Pack Manager(RSPM)自動處理合併。

ViaVersion 可能導致資源包無法正確顯示。

資訊

ViaVersion 可能導致資源包問題,特別是當伺服器執行低於 1.21.4 的版本時。Minecraft 從 1.21.4 開始引入了資源包處理方式的變更。如果你在 1.21.3 等版本上執行伺服器,並使用 ViaVersion 允許 1.21.4 客戶端連線,這些客戶端可能在顯示某些資源包內容時遇到問題,例如 FMM(FreeMinecraftModels)的自訂模型。

這是因為 Minecraft 的資源包系統在 1.21.4 更新中發生了變化。

注意: 這是 Minecraft 和 ViaVersion 的限制,不是 FreeMinecraftModels 特有的。ViaVersion 的協定轉換在執行低於 1.21.4 的伺服器版本時可能無法完全支援資源包變更。

要解決此問題,請考慮將伺服器更新到 1.21.4 或更高版本,這將確保與現代資源包功能(包括 FMM 自訂模型)的更好相容性。

為什麼我的模型導致延遲或效能問題?

資訊

BlockBench 模型中的每個骨骼都會在 Minecraft 中建立一個單獨的實體。骨骼數量多的模型可能影響伺服器效能。

最佳化建議:

  • 最小化模型中的骨骼數量
  • 限制生成的模型數量
  • 當不需要動畫時,考慮使用靜態模型代替動態模型
  • 避免在彼此附近生成許多高骨骼數的模型

技術說明:

FreeMinecraftModels 將每個骨骼渲染為單獨的 Minecraft 實體。一個有 50 個骨骼的模型會產生 50 個實體。在大規模情況下,這會影響效能。

最佳實踐:

  • 設計骨骼更少的模型
  • 用實際的生成數量測試效能
  • 新增新模型時監控伺服器 TPS

進階功能

我需要 Resource Pack Manager(RSPM)嗎?

資訊

Resource Pack Manager(RSPM)是可選的,但強烈推薦使用

RSPM 的功能:

  • 自動合併來自多個插件的資源包
  • 託管資源包(無需外部託管)
  • 在玩家登入時自動分發資源包
  • 消除手動資源包配置

沒有 RSPM:

你必須手動:

  • 將 FMM 資源包與任何現有的伺服器資源包合併
  • 在外部服務或透過 server.properties 託管合併後的包
  • 配置伺服器向玩家傳送資源包
  • 每次新增新模型時更新資源包

為什麼使用 RSPM:

大多數「馬鎧而不是模型」的問題是由不正確的資源包合併引起的。RSPM 會自動處理此問題。

下載 RSPM:https://www.spigotmc.org/resources/resource-pack-manager.118574/

由 MagmaGuy 開發,與 FreeMinecraftModels 的作者相同。

我可以在自己的插件中使用 FreeMinecraftModels 嗎?

資訊

是的,FreeMinecraftModels 為開發者提供了 API。

Maven/Gradle 整合:

儲存庫:https://repo.magmaguy.com/releases

構件:

  • GroupId:com.magmaguy
  • ArtifactId:FreeMinecraftModels
  • Scope:provided(必須在伺服器上安裝,不要 shade)

主要 API 類別:

  • ModeledEntity(基底類別)
  • StaticEntity
  • DynamicEntity
  • PropEntity

使用範例:

StaticEntity staticEntity = StaticEntity.create(id, location);
if (staticEntity == null) {
Bukkit.getLogger().warning("Failed to create model");
return;
}
staticEntity.setRightClickCallback(...);
staticEntity.remove();

重要:

不要將 FreeMinecraftModels shade 到你的插件中。它必須在伺服器上單獨安裝。

詳細的 API 文件請參見官方 README

如何將玩家偽裝為自訂模型?

資訊

/fmm disguise 指令將玩家的外觀轉變為任何自訂模型。

指令:

/fmm disguise <modelID>

工作原理:

  • 使玩家對其他玩家不可見
  • 在玩家位置覆蓋自訂模型
  • 模型跟隨玩家的移動
  • 非常適合角色扮演伺服器或特別活動

範例:

/fmm disguise dragon

移除偽裝:

/fmm undisguise

要求:

  • 權限:freeminecraftmodels.*
  • modelID 必須是 models 資料夾中有效的已轉換模型

注意:

  • 玩家碰撞箱保持不變(相同的碰撞箱)
  • 其他玩家看到的是自訂模型而不是你的玩家外觀
  • 隱身效果在取消偽裝前永久存在

如何建立可放置的模型物品?

資訊

/fmm itemify 指令建立特殊物品,玩家可以使用它們在世界中放置模型。

指令:

/fmm itemify <model> <material>

參數:

  • model - models 資料夾中任何有效的模型 ID
  • material - 任何 Minecraft 材質(STICK、PAPER、DIAMOND 等)

範例:

/fmm itemify lamp_post STICK

建立內容:

  • 一個帶有金色裝飾顯示名稱的自訂物品(例如「✦ Wolf ✦」)
  • 描述性說明文字
  • 物品直接新增到你的物品欄
  • 右鍵點擊以將模型作為道具放置

使用場景:

  • 給玩家提供裝飾建築的物品
  • 建立傢俱的自訂「生成蛋」
  • 在不給予建築權限的情況下分發模型
  • 準備創意建築套件

要求:

  • 權限:freeminecraftmodels.*
  • 玩家必須在遊戲中(非主控台)

如何除錯模型碰撞箱?

資訊

/fmm hitbox visualize 指令使用粒子視覺化模型碰撞箱。

指令:

/fmm hitbox visualize [duration]

參數:

  • duration(可選)- 顯示碰撞箱的時間,以 tick 為單位(預設:100,最大:1200)
  • 20 tick = 1 秒

範例:

/fmm hitbox visualize          # 顯示 5 秒
/fmm hitbox visualize 200 # 顯示 10 秒

工作原理:

  • 搜尋你周圍 10 個方塊內的模型
  • 用粒子顯示定向包圍盒(OBB)邊界
  • 同時顯示模型及其碰撞邊界
  • 用於驗證碰撞箱大小和旋轉

何時使用:

  • 測試碰撞箱是否與視覺模型匹配
  • 除錯互動問題
  • 驗證碰撞箱旋轉
  • 排查點擊偵測問題

要求:

  • 權限:freeminecraftmodels.*

注意: FMM 中的碰撞箱會隨模型旋轉,不同於標準 Minecraft AABB。

我可以建立可騎乘的自訂模型嗎?

資訊

是的,使用 /fmm mount 指令建立可騎乘的自訂模型(實驗性功能)。

指令:

/fmm mount <modelID>

功能:

  • 在你的位置生成一匹馬
  • 將馬偽裝為你的自訂模型
  • 自動馴服馬並新增鞍
  • 讓你立即騎上馬

範例:

/fmm mount dragon

要求:

  • 權限:freeminecraftmodels.*
  • 有效的模型 ID

重要提示:

  • 此功能標記為實驗性
  • 移動速度和行為與標準馬相同
  • 馬的碰撞箱保持不變
  • 最適合為坐騎設計的模型

使用場景:

  • 角色扮演伺服器的自訂坐騎
  • VIP 玩家的特殊交通工具
  • 冒險地圖的獨特可騎乘生物