BetterStructuresコンテンツパッケージ
BetterStructuresは公式コンテンツを、純粋な手動インポートワークフローではなく、管理されたパッケージとして扱うようになりました。
主要コマンド
| コマンド | 目的 |
|---|---|
/bs initialize | 初回セットアップフロー |
/bs setup | パッケージの状態を閲覧・管理 |
/bs downloadall | プラグインの更新(ある場合)と利用可能なすべてのコンテンツをダウンロードし、リロード |
/bs downloadallcontent | 利用可能なすべてのコンテンツのみをダウンロード(プラグインの更新は行わない) |
/bs updatecontent | 古いコンテンツを更新(エイリアス:/bs updateallcontent) |
/bs forcereinstallcontent <package|all> | インストール済みのバージョンがすでに最新であってもコンテンツを再ダウンロード。破損したり一部削除されたりしたパック向けの修復コマンドです |
/bs recommendedplugins | BetterStructuresと相性の良いコンパニオンプラグインを一覧表示 |
/nightbreaklogin <token> | 共有Nightbreakトークン登録 |
ダウンロードと更新のコマンドは、BetterStructuresに同梱されたMagmaCoreの共有Nightbreakシステムを使い、トークンとアクセス権の確認、ファイルのダウンロードを行います。その後、BetterStructures独自のリロード処理でコンテンツをインポートします。
パッケージタイプ
各パッケージはcontentPackageTypeを宣言し、セットアップメニューはタイプごとに1つのフィルターを提供します:
contentPackageType | セットアップメニューのフィルター | ファイルの配置先 |
|---|---|---|
STRUCTURE(デフォルト) | Structure Packs | plugins/BetterStructures/schematics/<folderNameV2> |
MODULAR | Module Packs | plugins/BetterStructures/modules/<folderNameV2> |
古い静的リストに頼らず、/bs setupを使用してパッケージをフィルタリングおよび検査してください。
パッケージ設定のフィールド
各パッケージはplugins/BetterStructures/content_packages内の設定ファイルで記述されます。これらを手作業で編集する必要はほとんどありません(プラグインに同梱されており、パッケージの状態を追跡する仕組みそのものです)が、各フィールドは次のとおりです:
| キー | デフォルト | 説明 |
|---|---|---|
isEnabled | true | セットアップメニューで変更されるパッケージのインストールフラグ。falseの場合、パッケージのフォルダ内のものは何も読み込まれません。詳しくは下記を参照してください。 |
name | — | セットアップメニューに表示される表示名 |
description | — | セットアップメニューに表示される説明行 |
downloadLink | — | nightbreakSlugがないパッケージで表示される手動ダウンロードリンク。管理されたダウンロードにはslugを使用します |
version | 0 | ローカルのコンテンツバージョン。リモートのバージョンと比較して、パッケージが古いかどうかを判断します |
folderNameV2 | — | タイプに応じてschematicsまたはmodulesの下に置かれる、パッケージのファイルが入るサブフォルダ |
contentPackageType | STRUCTURE | STRUCTUREまたはMODULAR |
nightbreakSlug | — | アクセスチェックとダウンロードに使われ、/bs forcereinstallcontentのセレクタにもなるNightbreak識別子 |
セットアップメニューからパッケージをインストールまたはアンインストールすると、パッケージのisEnabledだけが変更され、その後リロードが実行されます。パッケージ内のスケマティックやモジュールの設定は編集されません。アンインストールしてもディスク上のファイルは残ります。
パッケージがisEnabled: falseの間、スケマティックとモジュールのローダーはそのフォルダ全体(schematics/<folderNameV2>またはmodules/<folderNameV2>)をサブフォルダも含めてスキップします。これはSTRUCTUREパッケージとMODULARパッケージの両方に当てはまります。有効なパッケージの中では、各スケマティックとモジュールの設定がそれぞれ独自のisEnabledを持ちます。
パッケージの内容
BetterStructuresのパッケージは、pack.metaでbetterstructuresを宣言しているzipです。pack.metaのないzipをplugins/BetterStructures/importsに置いた場合も同じように扱われます。トップレベルのフォルダは名前に応じて展開されます:
| パッケージ内のフォルダ | 展開先 |
|---|---|
content_packages、schematics、modules、module_generators、generators、treasures、spawn_pools、components | plugins/BetterStructures内の同名のフォルダ |
custombosses、customitems、customtreasurechests、powers、enchantments | plugins/EliteMobs内の同名のフォルダ |
modelsまたはmodelengine | FreeMinecraftModelsのmodelsフォルダ。ModelEngineだけがインストールされている場合はModelEngineのblueprints |
scripts | plugins/FreeMinecraftModels/scripts |
freeminecraftmodels、elitemobs、betterstructures | そのプラグインのデータフォルダのルート。内部の構成はそのまま保たれます(例:freeminecraftmodels/enchantments) |
worldcontainer | サーバーのワールドコンテナ |
この表にないトップレベルフォルダがあると、インポーターはパッケージ全体を拒否します。共通のインポートルールについては手動インポートとゲーム内管理の比較を参照してください。
パッケージがEliteMobsのコンテンツを追加する場合、BetterStructuresはインポート後にEliteMobsをリロードします。別のプラグインのパッケージがBetterStructuresのフォルダにファイルをインポートした場合、BetterStructuresは自身の起動が完了してからコンテンツのリロードを実行します。
パッケージの状態
パッケージとトークンの状態に応じて、BetterStructuresは以下を区別できます:
- インストール済みコンテンツ
- ダウンロード済みだが有効化されていないコンテンツ
- 古いコンテンツ
- Nightbreakアクセスが必要なコンテンツ
メニューはパッケージのパスが存在すればダウンロード済みと判断し、パッケージのisEnabledと合わせてインストール状態を決定します。これは状態の表示であり、ファイルの整合性確認ではありません。空のフォルダや破損したフォルダでもインストール済みと表示されることがあります。修復には/bs forcereinstallcontent <package|all>を使ってください。allはダウンロード済み、インストール済み、または古いと認識されたパッケージを選びます。パッケージフォルダ全体がなくなっている場合はslugを直接指定してください。
手動インポートフォールバック
手動インポートは引き続き以下を使用します:
plugins/BetterStructures/imports
パッケージのzipをそのまま保持し、必要に応じてBetterStructuresをリロードします。手動インポートはまだサポートされていますが、もはや主要な文書化されたワークフローではありません。