オフラインモード
ここで「オフライン」が意味するもの
GDLauncher のオフライン挙動は、3 つの異なるネットワーク需要によって変わります:
- Microsoft 認証 (Minecraft 所有を Mojang サーバーに証明)。
- Mod / アセットダウンロード (CurseForge、Modrinth、Mojang ライブラリ CDN)。
- GDL アカウント機能 (インスタンス共有、プロフィール、表示名履歴など)。
各々がオフラインで違う失敗の仕方をし、ランチャーの動作も対応して違います。
インストール済みインスタンスをオフラインで起動
最も一般的なシナリオ: 飛行機の中、山小屋、自宅のネットが落ちている、すでにインストール済みのものを遊びたい。
たいてい動きます、GDLauncher が起動に必要なデータをキャッシュしているため:
- Mojang の認証トークンは有効期限付きでローカル保存。
- Minecraft のライブラリとアセットはすでにディスク上 (runtime path)。
- Mod 入りインスタンスは Mod もローカルにインストール済み。
オフラインで Play を押すと、ランチャーは:
- アクティブな Microsoft アカウントの Minecraft 認証トークンがまだ有効か (期限切れでないか) をチェック。
- 有効ならそのトークンで Minecraft を直接起動。Minecraft 自身はシングルプレイヤーワールドの起動にネットを必要としません。
- アクセストークンは期限切れだがリフレッシュトークンは有効な場合、ランチャーは Microsoft のリフレッシュエンドポイント (オンライン必要) を呼ぼうとします。オフラインだとこの呼び出しが失敗し、Settings → Accounts でそのアカウントのステータスが “expired” になります。
- アカウントが期限切れで Play を押すと、ランチャーは Account Expired モーダルを出します。ボタンは 2 つ: Launch anyway (キャッシュされたトークンで起動。シングルプレイヤーには十分)、Back to login (Microsoft サインインフローへ。インターネット必要)。
つまりシングルプレイヤーなら「Launch anyway」が最後のオンラインから何日経っていても動きます。Minecraft 起動後はトークンの検証が行われないためです。Mojang 経由でアイデンティティ検証を行うマルチプレイヤーサーバーには期限切れでないトークンが必要で、つまり最近オンラインでリフレッシュしている必要があります。
トークンが期限切れになる理由
これは Microsoft と Mojang の認証サーバーで設定されているもので、GDLauncher の選択ではありません。認証チェーンはランチャーに関係する 2 つのトークンを生成します:
- Microsoft OAuth アクセストークン (約 1 時間)。ランチャーが Microsoft / Xbox / Mojang の認証 API と通信するために使います。短命ですがオンラインなら自動的にリフレッシュトークンで更新されるので、ほとんど意識しません。
- Minecraft 認証トークン (約 24 時間)。起動時に Minecraft に渡されるので、これがオフラインプレイを左右します。オンライン中、ランチャーは期限の約 12 時間前にプロアクティブにリフレッシュします。
Microsoft のリフレッシュトークンは数か月持ちますが、パスワード変更、新セキュリティ機能の有効化、Microsoft Web からのサインアウトなどでサーバー側で無効化されることがあります。オフライン中にリフレッシュトークンが無効化されると、オンラインに戻って再認証するまでランチャーには何もできません。
マルチプレイヤーサーバーにオフラインで参加
動きません。マルチプレイヤーサーバーは Mojang のセッションサーバーに対してアイデンティティを検証し、それは両側でインターネットを必要とするため。LAN マルチプレイヤーは、両マシンが最近オンラインで認証していれば同じオフライン LAN 内で動作する可能性があります。
新規インスタンス / Mod / Modpack をオフラインで入れる
動きません。すべてのインストールフローが CDN からダウンロードします:
- Modpack はマニフェストを取得し、その後個別の Mod ファイルを取得。
- Addons タブから Mod を追加すると JAR がダウンロード。
- 持っていない Minecraft バージョン向けのカスタムインスタンスを作成すると、そのバージョンの JSON マニフェスト、バージョン JAR、アセット、Mod ローダーインストーラーをダウンロード。
すべてオフラインでは timeout や DNS エラーで失敗します。ランチャーは無限に再試行せず、インスタンス作成モーダルや Tasks パネルに失敗が表示されます。
オフラインの場所に行くなら、出発前にプレイ予定のインスタンスを事前インストールしておきましょう。
GDL アカウント機能のオフライン
ほとんど動きません。GDL アカウント機能は本質的に「GDL バックエンドと通信すること」だから。具体的には:
- インスタンス共有 (コード生成): 失敗、GDL サービスに到達できない。
- 共有インスタンスのインポート: 同じ理由で失敗。
- GDL プロフィールの編集: 失敗。
- 共有リストの表示: キャッシュ状態を表示、リフレッシュ不可。
ランチャーはオフライン中も GDL にサインインしている状態を記憶しますが、UI には古いデータが表示され、ネット呼び出しを要するアクションは拒否されます。
まとめ
- インストール済みインスタンス、フレッシュなトークン: オフライン起動可。
- インストール済みインスタンス、トークン期限切れ: ランチャーがプロンプト表示、シングルプレイヤーなら「Launch anyway」を選択。
- 期限切れトークンでマルチプレイヤー: リフレッシュのため Microsoft に到達できるまでブロック。
- ダウンロードを要するもの: ブロック。
- GDL バックエンドとの通信を要するもの: ブロック。
- シングルプレイヤーワールド: インスタンスがディスク上にある限り 100% オフライン可。