FreeMinecraftModelsのコンテンツパッケージ
公式FMMコンテンツは、管理されたNightbreakパッケージとして公開されるようになりました。
現在の公式パッケージ
現在のプラグインは、プロップとアイテムのコンテンツを混在させた5つの既製公式パッケージを定義しています:
| パック | タイプ | 設定ファイル名 | フォルダ名 | Nightbreakスラッグ |
|---|---|---|---|---|
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スラッグ、バージョンフィールド、content_packages内の有効/無効状態を持っています。Craftenmineの2つのアイテムパックは、Luaアイテムスクリプトサーフェス全体で動作するカスタムアイテム(material:が設定されたモデル)を同梱しています。
セットアップメニューが管理するもの
/fmm setupは、現在のパッケージ状態の信頼できる情報源です。メニューは以下を区別できます:
- インストール済みパッケージ
- ダウンロード済みだが現在は無効のパッケージ
- 古くなったパッケージ
- Nightbreakアクセスが必要なパッケージ
セットアップメニューは、パッケージのバージョンとアクセスチェックのバックグラウンドリフレッシュもトリガーするため、現在のパッケージ状態を確認するにはメニューが適切な場所です。
フォルダの挙動
プラグインは、有効/無効コンテンツに対してパッケージ状態のフォルダ移動を使用します:
- 有効なモデルフォルダは
models/<folderName>にあります - 無効なモデルフォルダは
models_disabled/<folderName>にあります - 有効なスクリプトファイルは
scripts/にあります - 無効なスクリプトファイルは
scripts_disabled/にあります
これは、ランタイムモデルリストでアクティブでなくても、ディスク上にパッケージが完全にダウンロードされている可能性があることを意味します。パッケージがインストール/アンインストールされると、そのモデルフォルダと一致するスクリプトファイルが一緒に移動します。
ファイル接頭辞
各コンテンツパッケージ設定にはcontentFilePrefixesフィールドとscriptFilePrefixesフィールド(両方ともデフォルトはパッケージのfolderName)があります。名前がcontentFilePrefixesのいずれかで始まるコンテンツファイル、およびscripts/フォルダ内で名前がscriptFilePrefixesのいずれかで始まるスクリプトファイルは、パッケージの一部と見なされ、インストール/アンインストール時に一緒に移動されます。
ダウンロードとインストールのライフサイクル
明確な2つのステップがあります:
- パッケージコンテンツをダウンロードします。
ダウンロードは
plugins/FreeMinecraftModels/importsに入り、reload/importパスをトリガーします。 - パッケージを有効または無効に保ちます。
セットアップメニューは、フォルダを
modelsとmodels_disabledの間で移動することによって、パッケージをインストール・アンインストールします。
一括操作も同じモデルに従います:
/fmm downloadallは、プラグインjarの更新をダウンロードしたうえで、欠落しているまたは古くなっているアクセス可能なすべてのパッケージをダウンロードします。コンテンツはFMMの後続のリロードで適用できますが、プラグインjar自体は依然としてサーバーの再起動が必要です/fmm downloadallcontentは、プラグインjarの更新なしで同じコンテンツの一括処理を行います/fmm updatecontent(エイリアス/fmm updateallcontent)は、古くなったパッケージのみを更新します
これら3つの一括コンテンツ処理はいずれも、パッケージのダウンロード成功後にFreeMinecraftModelsを自動的にリロードするため、新しくダウンロードされたコンテンツが利用可能になります。リロードが実行されるのは、少なくとも1つのパッケージが実際にダウンロードされたときだけです。何もすることがなかった実行は No new content to download! と報告してリロードをスキップします。
一括操作は多重実行に対して保護されています。1つが進行中の間、2つ目の一括コマンドは並行して開始されるのではなく拒否されます。また、リンクされたNightbreakトークンを必要とし、認証に失敗した場合は早期に中止します。
パッケージの修復
通常のダウンロードコマンドはバージョン番号を比較するため、ファイルが破損したり一部削除されたりしたパッケージも「最新」に見えてスキップされてしまいます。/fmm forcereinstallcontent <package|all>はそのためのコマンドで、バージョンに関係なく選択したコンテンツを再ダウンロードし、その後リロードします。
- タブ補完では
allに加えて各パッケージのNightbreakスラッグ(basic-furniture-pack、betterstructures-prop-pack、elitemobs-prop-pack、craftenmines-weapons-item-pack、craftenmine-tools-item-pack)が提示されます。 allが対象とするのは、FMMがダウンロード済みと検出したパッケージのみです。あるパックのファイルが完全に欠落している場合は、No downloaded content was detected. Specify a package slug directly if its files are completely missing.と報告されます。その場合はスラッグを直接指定してください。- 不明な指定子は
Unknown Nightbreak content package: <name>と報告されます。 - 他の一括操作と同じ多重実行ガードを共有し、
freeminecraftmodels.*を必要とします。
管理者コンテンツブラウザ
/fmm adminは、管理者がインストール済みのすべてのコンテンツを一目で閲覧できるゲーム内インベントリGUIを開きます。ブラウザには以下が表示されます:
- すべてのインストール済みパッケージ(プロップ数とアイテム数を分けて表示)
- 未パッケージモデルフォルダ(プロップ数とアイテム数を分けて表示)
- 個別のプロップ(YML設定に
material:がないモデル) - カスタムアイテム(YML設定に
material:が設定されたモデル)
プロップとアイテムは区別して表示されます。プロップは黄色のスタイルと紙のアイコンを使い、カスタムアイテムは紫色のスタイルと設定されたマテリアルを表示します。YML設定にmaterial:が設定されたモデルはカスタムアイテムとしてのみ表示され、プロップとアイテムの両方として表示されることはありません。
管理者ブラウザのエントリをクリックすると、プレイヤーはそのアイテムのコピーを取得します。カスタムアイテムの場合、付与されるアイテムには設定されたマテリアル、エンチャント、ロア、fmm_item_id PDCタグが含まれます。これは、正確なモデルIDやコマンド構文を知らなくても、テストや建築のためにプロップ、カスタムアイテム、モデルアイテムを取得する最速の方法です。