============================================================
Hxwi1Structures - Anleitung
============================================================

Diese Mod generiert Strukturen basierend auf JSON-Konfiguration
und NBT-Dateien. Es sind keine Strukturen fest eingebaut.

============================================================
Dateiablage
============================================================

  Konfig:   .minecraft/config/hxwi1structures/structure_rules.json
  Einstellungen: .minecraft/config/hxwi1structures/mod_settings.json
  NBT:      .minecraft/config/hxwi1structures/structures/
  Anleitung: .minecraft/config/hxwi1structures/readme.txt

Beim ersten Start werden automatisch erstellt:
  - mod_settings.json
  - structure_rules.json (3 Beispielregeln)
  - structures/example.nbt (Steinziegelhaus)
  - structures/dock_example.nbt (Holzsteg)
  - structures/forest_cabin.nbt (Blockhütte)
  - readme.txt (diese Datei)

Die Sprache der Anleitung folgt der Spielsprache
(erkannt aus options.txt).

============================================================
Regelfelder
============================================================

biomes (erforderlich)
  Array von Biom-IDs. Vanilla- und Mod-Biome.
  Beispiel: "minecraft:plains", "terralith:highlands"

dimensions (optional, Standard: alle)
  Array von Dimensions-IDs.
  Vanilla: "minecraft:overworld", "minecraft:the_nether",
           "minecraft:the_end"

nbt_file (erforderlich)
  Relativer Pfad zur .nbt-Datei ab config/hxwi1structures/.

chance (erforderlich)
  Dezimalzahl 0.0–1.0. Wahrscheinlichkeit pro Chunk.

min_y / max_y (erforderlich)
  Höhenbereich (Y-Koordinate).
  Nur verwendet wenn snap_to_surface false ist.

snap_to_surface (optional, Standard: false)
  Platziert die Struktur auf der Geländeoberfläche.

allowed_rotations (optional, Standard: [0,90,180,270])
  Erlaubte Rotationswinkel. Nur 0,90,180,270 gültig.
  Ungültige Werte werden als 0° behandelt.

max_conflict_ratio (optional, Standard: 0.2)
  Konflikttoleranz bei Platzierung.
  0.0 = keine Konflikte, 1.0 = Platzierung erzwingen.

place_on_water (optional, Standard: false)
  Erlaubt Generierung auf Wasseroberflächen.

dock_mode (optional, Standard: false)
  Erkennt Land-Wasser-Grenzen und richtet automatisch aus.
  Ideal für Stege und Piers.

y_offset (optional, Standard: 0)
  Vertikaler Versatz. Negativ = absenken.

underwater_mode (optional, Standard: false)
  Nur unter Wasser generieren.

clear_trees (optional, Standard: false)
  Entfernt Stämme und Blätter im Platzierungsbereich.

loot_table (optional, Standard: leer)
  Beutetabelle für Kisten und Behälter.
  Bsp: "minecraft:chests/simple_dungeon"

============================================================
Tipps
============================================================

- Waldbauten (automatische Baumfällung):
    "clear_trees": true
- Steg (Auto-Ausrichtung zum Wasser):
    "dock_mode": true, "place_on_water": true
- Boot (teilweise im Wasser):
    "place_on_water": true, "y_offset": -1
- Unterwasserruinen:
    "underwater_mode": true
- Unterirdische Verliese:
    "snap_to_surface": false, "max_conflict_ratio": 1.0

============================================================
Fehlersuche
============================================================

"debug_logging": true in mod_settings.json setzen
und die [hxwi1structures]-Ausgabe im Spielprotokoll prüfen.

============================================================
NBT-Dateien erstellen
============================================================

Im Kreativmodus mit Strukturblock:
  1. Strukturblock platzieren
  2. Bauwerk innerhalb der Grenzen errichten
  3. Auf "SAVE" klicken
  4. .nbt aus .minecraft/saves/<Welt>/generated/<namespace>/structures/
     nach config/hxwi1structures/structures/ kopieren

Unterverzeichnisse möglich:
  structures/overworld/houses/cottage.nbt

============================================================
Generierungsablauf
============================================================

1. Chunk-Ladung: grid_interval-Prüfung
2. Geeignete Chunks sofort in Warteschlange (nicht blockierend)
3. Abarbeitung in folgenden Ticks (max. 2 pro Tick)
4. Jeder Chunk nur einmal (SavedData-Persistenz)
5. Regeln der Reihe nach, erste erfolgreiche Regel stoppt
6. Pro Regel: Dimension→XZ→Biom→Zufall→Y→Rotation
   →Baumfällung→Kollision→Chunk-Grenzen→Platzierung→Beute

============================================================
mod_settings.json
============================================================

{
  "grid_interval": 2,
  "debug_logging": false
}

grid_interval (Standard: 2)
  Chunk-Abtastdichte: 1=100%, 2=~25%, 3=~11%, 4=~6%

debug_logging (Standard: false)
  DEBUG-Protokollierung ein/aus
