跳至主要內容

FreeMinecraftModels 內容包

官方 FMM 內容現在以受管理的 Nightbreak 套件形式提供。

當前官方套件

當前的外掛定義了五個預製官方套件,混合了道具與物品內容:

套件類型配置檔名資料夾名稱Nightbreak slug
Basic Furniture Pack道具basic_furniture_packBasic Furniture Packbasic-furniture-pack
BetterStructures Prop Pack道具betterstructures_prop_packbs prop packbetterstructures-prop-pack
EliteMobs Prop Pack道具elitemobs_prop_packem_dungeon_prop_packelitemobs-prop-pack
Craftenmine's Weapons Item Pack自訂物品craftenmines_weapons_item_packfmm_craftenmine_weapons_items_packcraftenmines-weapons-item-pack
Craftenmine Tools Item Pack自訂物品craftenmine_tools_item_packfmm_craftenmine_tools_items_packcraftenmine-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/

下載的內容可以存在於磁碟上而未啟用。安裝或解除安裝會移動符合的模型、腳本及附魔項目,儲存啟用狀態,再要求重新載入。這些移動依序進行,並非不可分割的交易:移動或狀態儲存失敗可能留下部分修改。重試前請檢查主控台及兩處目錄。兩項操作都要求來源目錄中存在受管理的模型項目;僅含腳本或附魔的檔案可算作已下載,卻不一定能透過該操作安裝套件。

舊安裝可能使用 ModelsModels_disabled。作用中的模型路徑優先使用小寫 models,停用路徑則優先使用已存在的 Models_disabled。合併區分大小寫的目錄前,請閱讀模型製作說明

檔案前綴

套件設定包含 contentFilePrefixesscriptFilePrefixes。五個內建定義將這兩個清單初始化為空,不會自動以 folderName 作為前綴。請查看已安裝設定提供的值。

對於模型及附魔,FMM 選取精確的 folderName 項目,以及根目錄下名稱以 contentFilePrefixes 中某個值開頭的項目。對於腳本,只選取根目錄下符合 scriptFilePrefixes 的項目,不額外依資料夾名稱比對。前綴比對忽略大小寫,可選取檔案或整個目錄;不會在無關目錄內遞迴搜尋符合的檔案。請使用不同的前綴,並將參照的檔案保留在選取的項目內。

下載與安裝生命週期

這是兩個不同的步驟:

  1. 下載套件內容。 下載儲存至 plugins/FreeMinecraftModels/imports。受管理的下載成功後,會先儲存啟用狀態,再要求重新載入及匯入。
  2. 保持套件啟用或停用。 設定選單透過在 modelsmodels_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-packbetterstructures-prop-packelitemobs-prop-packcraftenmines-weapons-item-packcraftenmine-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/。選取遵循上述資料夾名稱及內容前綴規則,請將提供者定義和參照的腳本保留在選取的項目內。已停用的物品腳本執行環境不能取代缺少的附魔提供者。