# Port-Status · Champions of Luneraria in Unity Stand: 30. September 2026. Referenz ist der Godot-Stand `luneraria/g3` (`1b540f2`) in `../saumwacht-godot`; er wird nicht mehr verändert. Engine: Unity 6.3 LTS (6000.3.20f1), Renderer URP. HDRP ist ausgeschlossen, bis ein Vergleich mit einer echten Szene etwas anderes nahelegt. Zielplattformen sind Fedora 44 und Windows 11; macOS ist die Entwicklungsplattform. | Meilenstein | Zustand | Nachweis | | --- | --- | --- | | U1 · C#-Simulation | **fertig** (Referenzmeilenstein, `luneraria/u1` = `4d6ed17`): 402/402 Prüfungen, Golden-Parität mit Godot | [U1-RULES.md](U1-RULES.md) | | U1.5 · Unity-Integrationsprüfung | **fertig**: Kern im Unity-Editor 402/402 (Release und Debug), Golden bitgleich nach expliziter float32-Rundung in `Vec2`, Editor-Benchmark | [U1.5-UNITY.md](U1.5-UNITY.md) | | U2 · Unity-Spielwelt | nächster Schritt | [U2-WORLD.md](U2-WORLD.md) | | U3 · G3-HUD portieren | nicht begonnen | [U3-UI.md](U3-UI.md) | | U4 · Netzwerk | nicht begonnen; M4-Umfang ist erfasst | [U4-NETWORK.md](U4-NETWORK.md) | | U5 · Visuelle Neuausrichtung (Vertical Slice Mid-Lane) | nicht begonnen | [U5-VISUAL.md](U5-VISUAL.md) | QA je Meilenstein: [PORT-QA.md](PORT-QA.md). Bekannte Verhaltensunterschiede, auch die bewusst übernommenen Referenzfehler: [KNOWN-BEHAVIOR-DIFFERENCES.md](KNOWN-BEHAVIOR-DIFFERENCES.md). ## Offene Voraussetzungen - **Build-Module für die Zielplattformen fehlen:** Windows Build Support (Mono) und Linux Build Support (Mono), optional Linux IL2CPP und Linux Dedicated Server. Installation nur nach Freigabe (Details in U1.5-UNITY.md). - Kerntests und Player auf Windows 11 und Fedora 44 stehen deshalb aus. ## Entscheidungen - **Regelkern ohne Unity** (`Luneraria.Core`, `noEngineReferences`). Unity wird Adapter und Präsentation. - **Verhaltensgleichheit statt Bitgleichheit.** Verglichen wird mit dokumentierten Toleranzen; gemessen wurde auf dem Mac trotzdem Abweichung 0, in .NET 8 und im Unity-Editor. - **Explizite float32-Rundung in `Vec2` (U1.5).** Unitys Mono rechnet float32-Zwischenwerte doppelt genau. Das änderte in einem Szenario eine Zielentscheidung, deshalb ist eine Toleranz hier nicht begründbar. Die Casts erzwingen Godots float32-Semantik auf jeder Laufzeit; Regeln und .NET-Ergebnisse bleiben unverändert. - **Tabellen** einmal aus Godot erzeugt (`tools/port/gen_content.py`); danach ist `ContentData.cs` die gepflegte Quelle. - **Referenzfehler R1** im Bot-Gedächtnis ist bewusst übernommen (Parität) und für eine spätere Bot-Phase vorgemerkt. - **Geplante Helden** (Lucy, Ghaliga, Siegfried, Feena) stehen im Datenmodell, sind aber inaktiv, bis eine Heldenphase ihre Regeln umsetzt. - **Assets:** Blender-Quellen und Generatoren sind die Quelle. Ein zentraler, reproduzierbarer Blender-Export erzeugt FBX für Unity; GLB nur, wo keine bessere Quelle existiert (U2). ## Arbeitsweise - Ein Zweig je Meilenstein: `luneraria/u1`, `luneraria/u1.5`, `luneraria/u2`, … Nach jedem Meilenstein kommen Tests, Bild, Leistung, bekannte Unterschiede und ein Commit. - Werkzeuge: - `tools/run_core_tests.sh` (Kern mit .NET). - Unity Test Runner (EditMode) und `CoreBatch` im Batchmodus (Kern im Editor). - `tools/godot-golden/run_godot.sh` (Godot-Referenz). - `tools/dotnet/Luneraria.Core.Bench` und `CoreBatch.Benchmark` (Leistung).