Atlas: Deploy-Buendel vor Staustufen-Sprint

- Logistik: Musik-Player Playlist-Modus (5 Gruppen, 20 Tracks)
- Heli: End-Screen auf .ggs-endscreen, Mission-Bilder, Voice-Lines, Briefing-Audio
- Logistik: Layout-Tausch Auftraege+Fahrzeuge links, Karte rechts
- Logistik: Tier-1-Staedte ausgebaut, Auto-Timescale-Badge
- Logistik: Roadnet/Railnet Dijkstra-Routing, Balance-Updates
- Atlas: 5 Atlas-Inbox-Nachrichten (Cards-Pattern, DALL-E-Key, Musik-Playlists)
- Status-Updates Heli + Logistik

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-26 01:05:13 +02:00
parent f811437a35
commit 79ac9dad84
773 changed files with 17482 additions and 541 deletions
+31 -45
View File
@@ -1,7 +1,7 @@
---
instanz: heli
stand: 2026-04-23 13:00
phase: Integrations-Umbau Schritte 1+2 fertig (Mode + Assessment), wartet auf End-Screen-Komponente
stand: 2026-04-24 20:45
phase: Briefing-Musik integriert, bereit fuer Durchspielrunde
---
# Heli-Instanz — Status
@@ -11,58 +11,44 @@ phase: Integrations-Umbau Schritte 1+2 fertig (Mode + Assessment), wartet auf En
Heli-Rettungs-Modul: Code, TTS, Spielablauf, Waypoints, Routen, Landing.
Plattform-Themen bei Atlas.
## Heute 2026-04-23Integrations-Umbau
## Heute 2026-04-24Sessionsende
### Schritt 1: Mode-Check im Wrapper (Integrations-Vertrag §6.1)
- `App/pages/heli-game.php` prueft Cookie `ggs_session`, liest
`class_modules` + `student_modules`, setzt `mode`, `forcedLevel`, `easy`.
- `locked` → Sperrseite mit Cockpit-Link.
- Frontend-Variablen injiziert: `HELI_SESSION_MODE`, `HELI_FORCED_LEVEL`,
`HELI_SESSION_ID`, `STUDENT_EASY`, `HELI_API_BASE`.
- Pattern 1:1 vom Logistik-Wrapper uebernommen.
### Briefing-Musik integriert (Patagonia Stringmap v1 + v2)
- Atlas-Claim: v1 + v2 aus Pool nach `App/sims/heli/assets/music/`:
`patagonia-stringmap-v1.mp3` (3.4 MB), `patagonia-stringmap-v2.mp3` (3.4 MB).
- **Audio-Player** in allen drei HTMLs via `Audio`-Element + MutationObserver:
- [game.html](App/sims/heli/game.html) — `v1` in Phase `mission` (Auftragswahl) + `results` (End-Screen).
- [start.html](App/sims/heli/start.html) — `v2` solange Briefing-Overlay offen.
- [landing.html](App/sims/heli/landing.html) — `v1` solange Einsatz-Briefing-Overlay offen.
- Lautstaerke 0.35, Fade-in/-out 300 ms.
- Audio-Gate fuer Funksprueche war schon aktiv — Musik und Funk laufen nie zusammen.
### Schritt 2: Forced-Level-Start (Frontend)
- Level-Mapping: 1=easy, 2=medium, 3=hard.
- `initMissionPhase()` waehlt bei `teacher_started` zufaellig eine Mission
aus dem Pool, zeigt Info-Screen 1,8 s, dann automatisch `setPhase('plan')`.
- Auftragswahl mit 3 Karten nur noch im `free`-Modus.
### Inbox-Pfad-Fehler korrigiert
- Atlas' Inbox ist `_inbox/zentrale/` — war faelschlich in `_inbox/atlas/`.
- Alte Mail verschoben, `atlas/`-Verzeichnis entfernt. Ab sofort sauber.
- Bestaetigungsmail an Atlas: [2026-04-24-2030-heli-musik-erhalten.md](App/sims/_inbox/zentrale/2026-04-24-2030-heli-musik-erhalten.md).
### Schritt 3: Assessment-Calls (Integrations-Vertrag §6.3 / §6.4)
- `assessmentStart()` in `selectMission()``phase:"started"`.
- `assessmentPhaseEntered()` in `setPhase()` fuer jede Phase ausser
mission/results + 30-s-Ping mit `phase:"running"`.
- `assessmentComplete()` in `initResultsPhase()``phase:"completed"`
mit Sternen, planPct, dauerMin, failed-Flag.
- Demo-Modus ohne Session-Cookie blockiert gutmuetig: kein Request.
### Vorher heute abgearbeitet
- 10 fehlende Sea-Audios (c6/c9/c10/c11/c16) via OpenAI TTS
- Start-Audios mit realem Stuetzpunkt (15 Helis, ICAO-Protokoll)
- AC-Klimageraete aus Stadt entfernt
- Info-Overlay-Audio-Gate in allen drei HTMLs
- Inspect-Modus in landing.html analog zu start.html
### Heute schon erledigt (voriger Tag + Vormittag):
- **105 OpenAI-TTS-Audios** (Nova, Speed 1.12, Funk-Filter, warmer Ton)
- **25 Mission-Bilder** via DALL-E (auf 1008x576 verkleinert)
- **Zielanflug-Funkprotokoll** (ICAO: Pilot-Call + Tower-Geo-Antwort)
- **16-teilige Windrose** mit fixer Kompassnadel + Live-Kurspfeil
- **Proximity-Voegel** (Geraeusch nur bei Naehe, mehr sichtbare Schwaerme)
- **Audio-Stop** bei Rueckkehr zur Einsatzzentrale (stopAllGameAudio)
## Offen (wartet auf externe Antworten)
## Offene Aufgaben
- **Lehrplan-Anker** — Lehrplan-Instanz uebernimmt.
- **Pre/Post-Quiz-Hook** — wartet auf Design-System-Quiz-Komponente.
- [ ] **End-Screen** (`bewertung.html`) auf `.ggs-endscreen`-Komponente
umstellen — wartet auf Atlas-Build.
- [ ] **Pre/Post-Quiz**-Integration wenn `quizEnabled` aus Mode-API true ist
(in HELI_SESSION als Feld bereits verfuegbar).
- [ ] **`game_saves`-Autosave** — aktuell nicht noetig (Einzel-Einsatz ist
kurz), erst relevant wenn Missions-Ketten eingefuehrt werden.
- [ ] **Sea-Audios** fuer c6/c9/c10/c11/c16 — Fallback auf universelles
approach/extract aktiv, kein Ausfall. Koennten via OpenAI nachgezogen werden.
- [ ] **Lehrplan-Anker** fuer Heli (Atlas-Konzept §7.4) — wartet auf
Lehrplan-Instanz.
- [ ] **captiainSpeaking.mp3**-Tippfehler stehen lassen, keine neuen
Tippfehler einfuehren (Atlas-Note).
## Nicht aktiv geplant
- `game_saves`-Autosave (Missionen sind kurz, kein Bedarf).
- Alte Pilot-Witz-Audios aufraeumen (Rollback-Option).
## Blocker
**Keine.**
## Arbeitsmodus gerade
## Arbeitsmodus
Wartet auf Atlas-End-Screen-Komponente, sonst bereit fuer Durchspielrunde
mit neuer Stimme und Tower-Geografie-Funk.
Stand-by fuer Durchspielrunde.