World Dimension Loader (WDL) 1.3.0
Minecraft 1.20.1 / Forge 47.4.22 / Java 17
Mod ID: worlddimensionloader

============================================================
1. WDLとは
============================================================
既存Minecraftワールドの「コピー」をWDL管理Dimensionとして読み込み、設定可能なGateで行き来できるMODです。

重要:
- 元ワールドは必ず別途バックアップしてください。
- WDL_custom_dimensionsには必ずコピーを置いてください。
- 既存Configは自動上書きされません。
- Reset対象Dimensionは、次の世代をインポート元コピーから作り直すため、プレイ中に加えた変更がResetで失われる場合があります。

============================================================
2. 初めて使う場合
============================================================
1) サーバーと接続クライアントにWDLを導入します。シングルプレイでは通常どおりクライアントmodsへ入れます。
2) 一度起動し、config/worlddimensionloader/ を生成します。
3) ワールドのコピーを置きます:
   WDL_custom_dimensions/test_world_01/level.dat
4) dimensions.toml:

[[dimensions]]
id = "test_world_01"

5) gates.toml:

[[gates]]
id = "test_world_01_gate"
dimensions = ["test_world_01"]

6) /wdl scan を実行するか再起動します。

この最小Gateは通常の黒曜石設定を使い、test_world_01だけを対象にします。

別途、WDLにはデフォルトOverworld Gateもあります。
石レンガの枠、エメラルドブロックの角、常時開放、エメラルド1個のコストです。

============================================================
3. Config
============================================================
config/worlddimensionloader/
  common.toml
  dimensions.toml
  gates.toml

生成Configは次のゾーンに分かれます。
- ALL OPTIONS: 全オプション、初期値/継承、簡単な説明
- MINIMAL/PRACTICAL EXAMPLE: コピーして使える最小例
- LEGACY COMPATIBILITY: 新規設定では使わない旧互換キー

アップデート後に最新コメントを確認したい場合は、Configをバックアップして旧ファイルを退避し、一度起動して再生成したあと、必要な変更だけ移してください。既存Configは自動書換えされません。

============================================================
4. Gateの行先
============================================================
新しい基本動作:
- dimensions=[...]あり、selection_mode省略 -> LIST
- selection_mode="LIST" -> LIST
- selection_mode="ALL" -> READYなWDLインポートDimension全体
- modeもdimensionsも省略 -> 旧Config互換としてALL

ALLにOverworldは自動で含まれません。Overworldはminecraft:overworldをLISTで明示します。

複数Gateが、枠/角ブロック、サイズ範囲、利用可能Igniterの条件で重複すると、WDLは曖昧なGate定義を安全側で無効化します。行先IDが違うだけでは物理Gateを区別できません。

============================================================
5. Runtime Resetと容量
============================================================
Dimension Resetは初期状態では無効です。

reset_on_empty=trueの場合、安全に無人になったあと、インポート元コピーから新しい物理世代を作ります。

注意:
- 建築やブロック変更など、Runtime Dimension内の変更はResetで失われる場合があります。
- インポート元コピー自体は変更しません。
- 論理Dimension IDは同じまま、内部の物理世代だけが切り替わります。

内部保存例:
dimensions/wdl/test_world_01/20260822123000/

安全側の初期設定:
defer_dimension_cleanup_until_restart = true

旧世代はゲーム/サーバーの次回起動まで残り、Startup GCで安全確認後に削除されます。再起動前にResetを繰り返すと、一時的にディスク容量を大量に使う場合があります。

falseでゲーム中削除も可能ですが、他MODがDimensionを参照している可能性があるため推奨しません。Valkyrien Skiesを検知すると安全のため再起動時削除方式が強制されます。

Resident GCバックアップは任意で、初期値はfalseです。

============================================================
6. 主な機能
============================================================
- Dimensional Anchor
- Return Scroll
- Inventory import/export policy
- Travel import/export policy
- Dimensionごとのゲームモード、固定時刻、難易度、リスポーン、ベッド設定
- Timed SessionとPREVIOUS/OVERWORLD Forced Exit
- Gateコスト、再開Cooldown、rarity/weight抽選、Igniter制限
- Gate Travel History

============================================================
7. 互換性
============================================================
現在の安全対策はValkyrien Skies 2.4.11の挙動を中心に実機検証しています。VS検知時はdeferred cleanupを強制します。
Distant HorizonsはDH 3.2.0-bの挙動を中心に互換対応・検証しています。

将来の未知バージョンまで互換性を保証するものではありません。

============================================================
8. よく使うコマンド
============================================================
/wdl scan
/wdl list
/wdl status
/wdl loaded
/wdl probe <id>

STARTUP ONLY設定は再起動が必要です。/wdl scanだけでは実行中プロセスの方式は切り替わりません。

詳細:
- WDL_TUTORIAL_JA_1.3.0.txt
- WDL_CONFIG_GUIDE_JA_1.3.0.txt
- WDL_EXAMPLES_AND_PLAY_IDEAS_JA_1.3.0.txt
- WDL_TROUBLESHOOTING_JA_1.3.0.txt
