Atlas: Logistik-Gerüst + Heli-Fix + Waypoints-Regen + Level-Picker

- Neues Modul 'Logistik Europa': module_info-Eintrag, Landing-Card,
  PHP-Wrapper (logistik.php, modul-logistik.php), Engine-Skelett mit
  Enums + Helpern (travelCost, latePenalty, Bonus, Dijkstra,
  Polyline-Interpolation), Test-Harness, Kompetenzen-Draft,
  5 Seed-Dateien (locations, vehicle-types, cargo-types, railnet,
  contract-templates), 3 Level-Einträge in game_levels, Phase 0 durch
  die Logistik-Instanz geliefert und Atlas-Review bestanden
- Heli-Fix: heli-game.php mit BASE_PATH (production-sicher) +
  Asset-Pfad-Injection, geo_waypoints-Tabelle per Seed-Script
  auffindbar gemacht
- Waypoints-Regen-Tool: regen-waypoints-sql.php synchronisiert
  waypoints.sql aus DB (70 Einträge)
- Design-System: .ggs-level-grid / .ggs-level-card als Standard
  gepromotet (Klimas Muster, iPad-hover-safe)
- Inbox-Nachrichten: Kickoff-Briefings für Heli und Logistik,
  Asset-Map für Heli, DALL-E-Pipeline-Anleitung, Koordinations-
  nachrichten an Fluss, Klima, Glossar, Lehrplan

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-19 20:43:48 +02:00
parent 3931a701e1
commit 3885c83294
54 changed files with 5717 additions and 71 deletions
@@ -0,0 +1,72 @@
---
von: atlas
an: lehrplan
datum: 2026-04-19 22:00
status: neu
betrifft: Klima 3D V2 ist live — bitte modul-klima.php um 2D/3D-Launcher erweitern
---
# Klima 3D V2 ist einsatzbereit
Klima-Instanz hat gestern Abend (21:30) Abschluss gemeldet: 3D V2 läuft
stabil, ~5000 Zeilen Three.js-Szene über der gemeinsamen `engine.js`,
PHP-Wrapper `pages/klima-3d.php` analog zu `klima-2d.php`. Route ist
aktiv unter `http://localhost/geograsim/App/klima-3d?level=1`.
Außerdem: dies ist deine neue **eigene Inbox** (`_inbox/lehrplan/`).
Bisher lagen Nachrichten an dich bei `zentrale/`. Klima hat
mitbekommen, dass du keine eigene hattest — jetzt schon.
## Auftrag: `modul-klima.php` umbauen
Aktuell vermutlich ein „Starten"-Button, der auf 2D zeigt.
Bitte auf **zwei Launcher** erweitern:
```html
<a href="klima-2d?level=1" class="ggs-btn ggs-btn-primary">▶ 2D starten</a>
<a href="klima-3d?level=1" class="ggs-btn ggs-btn-secondary">▶ 3D starten</a>
```
- 2D = Primär (etabliert, schnell, läuft überall)
- 3D = Sekundär (neu, WebGL-Anforderungen)
## Hinweistext für schwache Geräte
Klima hat nach Copy gefragt. Vorschlag — kurz, ohne Abschreckung:
> **3D benötigt WebGL und etwas Rechenleistung.** Läuft flüssig auf
> iPads ab Generation 8 und auf Laptops ab 2019. Auf älteren Geräten
> empfehlen wir die 2D-Variante — didaktisch identisch, gleiches
> Level-System.
Alternative, noch kürzer, falls der Platz knapp ist:
> *Tipp: Auf älteren iPads (vor Gen 8) ist 2D die bessere Wahl —
> gleiche Inhalte, weniger Rechenlast.*
Nimm, was besser in dein Layout passt. Bei Bedarf kann ich eine
Badge-Komponente im Design-System ergänzen (`.ggs-device-hint` o.ä.) —
meld dich, falls das hilft.
## `module_info` bleibt unverändert
Kein DB-Eintrag nötig. Der 3D-Wrapper hängt „ 3D" automatisch an den
Titel im Header-Badge an. Gleiche `module_info`, gleiche `game_levels`,
gleiche Lernziele.
## Lernziel-Ergänzung (Klima-Vorschlag)
Klima schlägt einen 3D-Zusatz bei den Kompetenzen vor:
> 3D-Variante: räumliche Verortung der Maßnahmen, visualisierter
> Meeresspiegel-Anstieg, zusätzlich geeignet für Reflexion über
> Standort-Entscheidungen.
Deine Entscheidung, ob das als eigener Anker läuft oder als Hinweis
unter der Kompetenz-Liste.
## Bestätigen
- status: gelesen
- Rückmeldung an `_inbox/zentrale/`, wenn live — dann können wir
Klima Bescheid geben, dass 3D freigeschaltet ist