FreeMinecraftModels 內容包
官方 FMM 內容現在以受管理的 Nightbreak 套件形式提供。
當前官方套件
當前的外掛定義了五個預製官方套件,混合了道具與物品內容:
| 套件 | 類型 | 配置檔名 | 資料夾名稱 | Nightbreak slug |
|---|---|---|---|---|
Basic Furniture Pack | 道具 | basic_furniture_pack | Basic Furniture Pack | basic-furniture-pack |
BetterStructures Prop Pack | 道具 | betterstructures_prop_pack | bs prop pack | betterstructures-prop-pack |
EliteMobs Prop Pack | 道具 | elitemobs_prop_pack | em_dungeon_prop_pack | elitemobs-prop-pack |
Craftenmine's Weapons Item Pack | 自訂物品 | craftenmines_weapons_item_pack | fmm_craftenmine_weapons_items_pack | craftenmines-weapons-item-pack |
Craftenmine Tools Item Pack | 自訂物品 | craftenmine_tools_item_pack | fmm_craftenmine_tools_items_pack | craftenmine-tools-item-pack |
配置檔名指定 plugins/FreeMinecraftModels/content_packages/ 下的 .yml 項目。資料夾名稱指定 models/ 或 models_disabled/ 中的套件模型目錄。前綴依下文說明另外設定。
每個套件都有本機資料夾名稱、Nightbreak slug、版本欄位以及 content_packages 中的啟用或停用狀態。兩個 Craftenmine 物品包提供帶有 material: 定義與命名空間附魔的手持物品。含有裝備物品 scripts: 的舊副本需要更新內容;這些定義會被略過。
設定選單管理的內容
/fmm setup 根據本機設定、偵測到的檔案和快取的 Nightbreak 資訊顯示套件狀態。選單可以區分:
- 已安裝的套件
- 已下載但目前停用的套件
- 過時的套件
- 需要 Nightbreak 存取權的套件
選單會在背景更新版本和存取權資訊,更新冷卻時間為五分鐘。版本檢查適用於偵測為已安裝的套件。已安裝標記表示套件已啟用且存在受管理的模型項目,並不證明所有模型已載入或客戶端已收到資源包。也應檢查 /fmm admin、主控台及客戶端接收情況。
資料夾行為
外掛對已啟用和已停用的內容使用基於套件狀態的資料夾移動:
- 已啟用的模型資料夾位於
models/<folderName> - 已停用的模型資料夾位於
models_disabled/<folderName> - 已啟用的腳本檔案位於
scripts/ - 已停用的腳本檔案位於
scripts_disabled/
下載的內容可以存在於磁碟上而未啟用。安裝或解除安裝會移動符合的模型、腳本及附魔項目,儲存啟用狀態,再要求重新載入。這些移動依序進行,並非不可分割的交易:移動或狀態儲存失敗可能留下部分修改。重試前請檢查主控台及兩處目錄。兩項操作都要求來源目錄中存在受管理的模型項目;僅含腳本或附魔的檔案可算作已下載,卻不一定能透過該操作安裝套件。
舊安裝可能使用 Models 或 Models_disabled。作用中的模型路徑優先使用小寫 models,停用路徑則優先使用已存在的 Models_disabled。合併區分大小寫的目錄前,請閱讀模型製作說明。
檔案前綴
套件設定包含 contentFilePrefixes 和 scriptFilePrefixes。五個內建定義將這兩個清單初始化為空,不會自動以 folderName 作為前綴。請查看已安裝設定提供的值。
對於模型及附魔,FMM 選取精確的 folderName 項目,以及根目錄下名稱以 contentFilePrefixes 中某個值開頭的項目。對於腳本,只選取根目錄下符合 scriptFilePrefixes 的項目,不額外依資料夾名稱比對。前綴比對忽略大小寫,可選取檔案或整個目錄;不會在無關目錄內遞迴搜尋符合的檔案。請使用不同的前綴,並將參照的檔案保留在選取的項目內。
下載與安裝生命週期
這是兩個不同的步驟:
- 下載套件內容。
下載儲存至
plugins/FreeMinecraftModels/imports。受管理的下載成功後,會先儲存啟用狀態,再要求重新載入及匯入。 - 保持套件啟用或停用。
設定選單透過在
models與models_disabled之間移動套件資料夾來安裝與卸載套件。
批次操作遵循相同的模式:
/fmm downloadall會下載外掛 jar 更新,接著下載每個可存取且缺失或過時的套件。內容可以透過 FMM 隨後的重新載入套用;外掛 jar 本身仍然需要重啟伺服器/fmm downloadallcontent做同樣的內容掃描,但不包含外掛 jar 更新/fmm updatecontent(別名/fmm updateallcontent)更新版本和存取權資訊,再更新標記為過時的套件;版本檢查目前涵蓋已安裝的套件
批次操作依序處理各套件,分別回報下載與準備成功的套件及失敗的套件。只要至少一個成功完成,即使其他套件失敗,也會安排在 20 tick 後重新載入。沒有成功的套件就不會重新載入;空的安裝操作回報沒有新內容,空的更新操作回報沒有待更新內容。下載成功不證明後續匯入、模型載入或客戶端接收成功。
批次內容操作共用一項保護,在第一次操作完成或開始後續重新載入前阻止第二次內容操作。它們要求已連結的 Nightbreak 權杖,並在驗證失敗時停止。一般套件錯誤會被回報,其餘套件繼續處理。發起玩家登出後,操作仍繼續並改為向主控台回報。外掛關閉會使該生命週期中待完成的下載發布和回呼失效。
修復套件
一般下載選擇依據偵測到的檔案及版本狀態,不做檔案完整性檢查。部分損毀的套件可能仍顯示為最新並被略過。/fmm forcereinstallcontent <package|all> 不論版本重新下載所選內容,在下載成功後要求重新載入。此流程不會強制啟用已停用的套件。
- Tab 補完會提供
all以及每個套件的 Nightbreak slug(basic-furniture-pack、betterstructures-prop-pack、elitemobs-prop-pack、craftenmines-weapons-item-pack、craftenmine-tools-item-pack)。 all選取偵測為已下載、已安裝或標記為過時的套件。若沒有符合條件的套件,會回報No downloaded content was detected. Specify a package slug directly if its files are completely missing.對完全遺失的套件,請直接指定 slug。- 未知的選擇器會回報
Unknown Nightbreak content package: <name>。 - 它與其他批次操作共用同一個防重疊執行的保護機制,並且需要
freeminecraftmodels.*。
管理員內容瀏覽器
/fmm admin 開啟遊戲內瀏覽器,顯示已載入模型及已註冊自訂物品,包括:
- 含已載入內容的啟用套件(分別顯示道具與物品數量)
- 未打包的模型資料夾(分別顯示道具與物品數量)
- 個別道具模型
- 成功註冊的自訂物品
道具使用黃色樣式與紙張圖示。自訂物品使用設定的材料與名稱,備用名稱為紫色。是否列出取決於物品是否成功註冊,而非僅有 material: 欄位;遭拒的定義不會作為可用的自訂物品列出。
套件和資料夾項目會開啟各自的內容清單。點擊個別道具或物品會向物品欄加入一份副本。自訂物品包含設定的材料、附魔、物品說明及 fmm_item_id 標籤;道具給予紙製放置物品。請保留物品欄空間:這些管理員處理常式不會將溢出物品丟到地上。建立物品的錯誤會在聊天中回報。註冊成功與選單項目可見,不能證明客戶端繪製正確。
附魔內容
套件的啟用和停用同時處理受管理的附魔 YAML/Lua、模型及道具腳本。啟用內容位於 enchantments/,停用內容移至 enchantments_disabled/。選取遵循上述資料夾名稱及內容前綴規則,請將提供者定義和參照的腳本保留在選取的項目內。已停用的物品腳本執行環境不能取代缺少的附魔提供者。