メインコンテンツまでスキップ

Nightbreakセットアップとコンテンツ管理

このページは、Nightbreak管理プラグインの共有セットアップガイドです。

以下のプラグインに直接適用されます:

  • EliteMobs
  • BetterStructures
  • FreeMinecraftModels
  • EternalTD
  • ResurrectionChest
  • WorldCannon

これらのプラグインは、同じ全体的なライフサイクルを共有するようになりました:

  1. プラグインと必須の依存関係をインストールします。
  2. ファイルとメニューが生成されるように、サーバーを一度起動します。
  3. プラグインに初回セットアップコマンドがある場合は実行します。
  4. /nightbreaklogin <token> でNightbreakトークンをリンクします。
  5. プラグインのセットアップメニューを使用して、コンテンツの閲覧、インストール、有効化、無効化、更新を行います。
  6. より速い初期ブートストラップが必要な場合は、プラグインの一括ダウンロード/更新コマンドを使用します。

MagmaCoreが実際に共有するもの

MagmaCoreは、Nightbreak管理フローの背後にある共有レイヤーです。以下を提供します:

  • 共有コマンド /nightbreaklogin <token>(権限 nightbreak.login、デフォルトはOP)
  • サーバーとNightbreakアカウントの接続を解除する共有コマンド /nightbreaklogout(権限 nightbreak.login、デフォルトはOP)
  • 現在のサーバーログを mclo.gs にアップロードする共有コマンド /logify(権限 logify.*、デフォルトはOP)
  • Nightbreakプラグインカタログを閲覧する共有コマンド /nightbreak plugins(権限 nightbreak.plugins、デフォルトはOP)
  • plugins/MagmaCore/nightbreak.yml での共有トークン保存
  • プラグインセットアップメニューで使用される共有セットアップメニュープリミティブ
  • 共有のNightbreakアクセス、バージョン、ダウンロードチェック
  • 所有プラグインの imports フォルダにファイルをダウンロードする共有一括ダウンロードロジック
  • プラグインまたはインストール済みコンテンツパッケージに未読のリリースノートがあることをゲーム内で管理者に伝える共有変更履歴インボックス(Nightbreak変更履歴通知を参照)
  • すべてのNightbreak管理プラグインが自身のルートコマンド配下に登録する標準サブコマンドセット(下記参照)

/nightbreaklogin/nightbreaklogout/logify/nightbreak は、MagmaCoreを最初にロードするNightbreak管理プラグインによってサーバーごとに一度だけ登録されるため、ランタイムでどのプラグインがそれらを「所有」しているかに関係なく利用できます。

共有される標準サブコマンド

以下のサブコマンドは、各プラグインが個別に実装しているものではありません。MagmaCoreが、プラグインの宣言するルートコマンド(/em/bs/fmm/etd など)の下に同じ実装を登録します。どこでも同じ挙動になるのはこのためです。

サブコマンド動作権限
setupプラグインのセットアップメニューを開きます。プレイヤー専用。プラグインのsetup権限
initializeプラグインが初回設定フローを登録している場合に、プレイヤー向けの初回セットアップメニューを開きます。プリセットモードは必須ではなく、FreeMinecraftModels も登録しています。各プラグインのコマンドページを確認してください。プラグインのinitialize権限
recommendedplugins推奨される連携プラグインを表示します(ゲーム内ではメニュー、コンソールからはチャットの一覧)。プラグインのsetup権限
downloadpluginupdateプラグインのアップデートjarのみをダウンロードします。コンテンツは対象外です。プラグインのadmin権限
downloadallプラグインのアップデートをダウンロードし、続いて利用可能なすべてのコンテンツをダウンロードします。プラグインのadmin権限
downloadallcontent利用可能なすべてのコンテンツをダウンロードします。プラグインのアップデートは対象外です。コンテンツパッケージを同梱するプラグインでのみ登録されます。プラグインのsetup権限
updatecontent(エイリアス updateallcontent)既に古くなっているコンテンツのアップデートのみをダウンロードします。コンテンツパッケージを同梱するプラグインでのみ登録されます。プラグインのsetup権限
forcereinstallcontent <package|all>インストール済みのバージョンが最新であっても、通常の認証付きインポートおよびリロード経路を通じてコンテンツを再ダウンロードします。all はダウンロード済み・インストール済み・古くなっているすべてのパッケージを対象とします。ファイルが完全に失われている場合は、そのパッケージのスラッグを直接指定してください。コンテンツパッケージを同梱するプラグインでのみ登録されます。プラグインのadmin権限

各列の背後にある正確な権限ノードはプラグインが選択するため、ノード名についてはそのプラグイン自身のページを確認してください。initialize は初回ガイダンスフローであり、セットアップメニューやコンテンツ管理コマンドを置き換えるものではありません。

downloadall はプラグインのアップデートから始まるため、アカウントにトークンがない場合や、トークンの認証に失敗した場合は、コンテンツのステップに進む前に停止します。まずトークンを修正してから再実行してください。

MagmaCoreにはプラグイン起動時の別の初期化システムもありますが、ここで説明されているプレイヤー向けの initialize コマンドとは異なります。

自動アップデート

すべてのNightbreak管理プラグインは、自身の config.yml に共通のキーを1つ書き込みます:

nightbreak:
autoDownloadPluginUpdates: false

true に設定すると、そのプラグインは起動から数分後に以下を自動的にダウンロードします:

  • 利用可能なプラグインのアップデートjar
  • そのプラグインが管理する、古くなったコンテンツパッケージのアップデートファイル

ダウンロードされたプラグインおよびコンテンツのアップデートは、サーバーの再起動後に適用されます — 稼働中のサーバーにホットスワップされることはありません。この設定のデフォルトは false なので、初期状態ではゲーム内のアップデートボタンを使う運用のままです。

プラグインjarの自動ダウンロードには、有効なアカウントトークンと、連携済みNightbreakアカウントでの有効なサポーターPatreonメンバーシップの両方が必要です。それらがない場合、ダウンロードは拒否され、プラグインが理由をログに出力します。ダウンロードは検証も行われます。jarはチェックサムで検証され、実際のプラグイン成果物であることを確認したうえでサーバーの update フォルダに置かれます。検証に失敗した場合は、インストールせずにファイルを破棄します。

自動ダウンロード設定とは別に、各プラグインはおよそ1時間に1回、新しいバージョンがないかを静かに再チェックします。これによりセットアップメニューが正確なアップデート状態を表示できます。このチェック自体が何かをダウンロードすることはありません。

サーバーオーナー向け推奨フロー

1. まずプラグインをインストールする

プラグインのjarファイルと必要な必須依存関係を plugins/ に配置し、サーバーを一度起動します。

2. 初回セットアップフローを実行する

プラグインが initialize コマンドを提供している場合は、最初に使用してください。現在のメニューは以下のように設計されています:

  • 初回セットアップを完了済みとしてマークする
  • Nightbreakアカウント連携を案内する
  • 現在のセットアップメニューに誘導する
  • 手動インポートがまだ有効な場合を明確にする

プラグインが初回設定フローを登録している場合に、プレイヤー向けの初回セットアップメニューを開きます。プリセットモードは必須ではなく、FreeMinecraftModels も登録しています。各プラグインのコマンドページを確認してください。

3. Nightbreakアカウントをリンクする

Nightbreakアカウントページにアクセスし、サーバートークンを取得して、以下を実行します:

/nightbreaklogin <token>

トークンはMagmaCoreを通じて共有されるため、リンクされた1つのトークンを、そのサーバー上のすべての互換性のあるMagmaGuyプラグインで再利用できます。

4. 日常のコンテンツ管理にはセットアップメニューを使用する

セットアップメニューは、以下の現在の正式なソースです:

  • パッケージの状態
  • アクセスの状態
  • インストール済み vs ダウンロード済みのコンテンツ
  • 修復が必要な部分的にインストールされたコンテンツ
  • 古くなったコンテンツ
  • カテゴリ別のコンテンツフィルター

リンクされたトークンがある場合、セットアップメニューはコンテンツのインストールと更新に推奨される場所です。

5. 速度が必要な場合は一括インストール/更新を使用する

サーバーを素早くブートストラップしたい場合は downloadall コマンドを、古くなったすべてのコンテンツを更新したい場合は updatecontent コマンドを使用します。

共有一括ダウンローダーは、以下のNightbreak管理パッケージのみを試行します:

  • Nightbreakスラッグを持つ
  • リンクされたトークンでアクセス可能
  • まだダウンロードされていない、または古いとマークされている

対話的な一括コマンドは、少なくとも1件のダウンロードが成功した後、所有プラグインにリロードを要求します。起動時の自動コンテンツダウンロードは意図的にプラグインをリロードしません。これらはサーバーの再起動後に反映されます。

共有コンセプト

ダウンロード済み vs インストール済み

パッケージは、有効化されていなくてもローカルに存在できます。正確な意味はプラグインによってわずかに異なりますが、imports にzipが存在するかどうかよりも、セットアップメニューの状態が重要です。

一括ダウンロードも、プラグイン固有のインポート/リロードステップが完了する前に、手動インポートで使用されるのと同じプラグインの imports フォルダに保存されます。

アクセス対応コンテンツ

セットアップメニューは、以下のコンテンツを区別できるようになりました:

  • トークンで利用可能
  • 購入またはアンロックが必要
  • インストール済み
  • 部分的にのみインストール済み
  • ダウンロード済みだが無効
  • 古くなっている

手動インポートは引き続き有効

Nightbreak管理プラグインは、手動インポートワークフローを引き続きサポートしています。手動インポートは現在、デフォルトパスではなくフォールバックパスです。手動インポートとゲーム内管理の比較を参照してください。

このフローを使用しないプラグイン

このWikiのすべてのプラグインがNightbreak管理のダウンロード可能なコンテンツを使用するわけではありません。

  • BetterFoodはNightbreakパッケージ管理を使用しません
  • ResourcePackManagerはリソースパックを管理し、Nightbreak DLCパッケージは管理しません

これら2つのプラグインも、共有セットアップシェルと、共有のプラグインアップデートコマンドおよび 変更履歴コマンドは登録します。持っていないのはNightbreakコンテンツパッケージだけです。

ResurrectionChestとWorldCannonは例外ではありません。どちらもコンテンツパッケージを宣言し、 共有コンテンツサブコマンドを登録し、共有インポーターを実行するため、手動で配置したパッケージzipも 受け付けます。 手動インポートとゲーム内管理の比較を参照してください。