- Konzept/, didaktik_geografie/, didaktik_simulation/, v2-modules/, v2-platform/ - 12 code-workspace-Files - STATUS-*.md - viele M/D/R-Änderungen an bereits getrackten Files - .gitignore verstärkt: **/.humaninput/, **/secret_keys.txt Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
7.1 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| heli | atlas | 2026-04-26 15:00 | neu | Heli-Modul — Sammelbericht der letzten beiden Tage |
Heli — Sammelbericht 2026-04-25 / 2026-04-26
Hier ein Sammelreport, was beim Heli-Modul in den letzten beiden Tagen gelaufen ist. Vieles war Feedback-getrieben durch Thomas-Durchspielrunden, einiges hat zu Konzept-Änderungen geführt.
1. Audio-Architektur — komplett neu
Das alte „jeder ruft, wer zuerst kommt"-Audio-Chaos ist weg. Neue Speech-Pipe in allen drei HTMLs (start, landing, game) mit identischen Regeln:
- Sprach-Audios laufen seriell, nie zwei gleichzeitig
- 400 ms Pause zwischen Clips
- TTL pro Clip 10 s — veraltete Items werden verworfen statt verspätet gespielt
- Prioritäten: 1 (low: Lesson) · 2 (normal: Pilot/Tower) · 3 (crash: Strike/Takeover)
- Crash-Audio bricht laufenden Clip ab und leert die Queue
- Geräusche (Rotor, Vögel, Crash-Sound, Donner) laufen über separate Kanäle und sind unabhängig
- Phase-Wechsel räumt auf (Flight-Pipe geleert beim Wechsel zur Landing,
Landing-Pipe geleert in
silenceAll)
Plus zwei kritische Bugs gefixt:
- Audio-Preload-Bug: alte Code-Pfad fetchte ohne
r_-Präfix, neue Files liegen aber mitr_-Präfix. Fallback-Logik eingebaut (probiert beide). - Phase-Übergang flight→landing: Flight-Audios werden gestoppt, sonst quaken Richtungs-Audios in die Landung rein.
2. Faktentreue durchgesetzt — Heiligtums-Tabelle
Thomas-Direktive: „Erstes didaktisches Gesetz: Nie etwas Falsches sagen. Vereinfachen ist erlaubt, nicht verfälschen." Daraufhin Audit aller Texte:
Korrigierte Falschaussagen:
- C7 Lienz: „Drau entwässert zur Adria" → korrigiert zu „mündet später in die Donau"
- m19 Glockner: „Grenze Salzburg–Kärnten" → „Grenze Tirol–Kärnten"
- m17 Tauerntunnel: „durchsticht die Hauptkette der Alpen" → „die Niederen Tauern"
- m18 Wolfgangsee: „Sole über den See nach Ebensee" → „Name vom Salinen-Eigentum"
- m25 Karawankentunnel: „achtkommacht km" → „knapp acht km"
- m23 Wörthersee: „wärmster Badesee Österreichs" → „einer der wärmsten"
- m8 Gaschurn: „höchstes ganzjährig besiedeltes Dorf" → Aussage entfernt (Partenen ist höher)
- „Bregenz Tower" überall → ist erfunden, gibt es nicht. Korrigiert zu „Innsbruck Tower" (real zuständiger Sektor für Vorarlberg)
- AFIS-Plätze (C2/C3/C14/C16) hatten erfundene Tower → jetzt „Wien Information" (reale FIS-Frequenz)
Stützpunkt-Tabelle als „Heiligtum" etabliert:
- 14 aktive Stützpunkte (alle ÖAMTC-Christophorus 1–16)
- ARA Hohenems aus dem Spielbetrieb raus — ARA ist real in Reutte (Tirol), nicht Vorarlberg. War didaktisch falsch.
- m2 (A14), m5 (Bregenz), m6 (Mellau) jetzt alle bei C8 Nenzing
- Hohenems bleibt als Polizei-POI auf der Plan-Karte (👮-Marker, dunkelblau). Klick öffnet Popup mit EC135-Bild und Erklärung: Polizeihubschrauber Vorarlberg, kein Patiententransport — das ist Aufgabe des Christophorus 8 in Nenzing.
3. Audio neu organisiert
Geo-Lehrinhalte gehören in die Vorbereitung, nicht in den akuten Einsatz. Daher umgebaut:
- Phase 2 (Routenplanung): Beim Briefing-Screen mit den vollständigen
Wegpunkten wird
r_tower_geo_<missionId>gespielt — der ausführliche Geografie-Lernstoff zum Ziel. - Phase 5 (Einsatz): Tower-Antwort beim Anflug ist jetzt knapp und sachlich — keine Lehr-Erklärung während Patientenrettung.
Plus: Audios reduziert im Kartenflug (jedes 2. Segment, Heli-Intro nur einmal pro Flug).
4. Plan-Phase verbessert
- Mission-Waypoints als kleine rote Kreispunkte auf der Karte sichtbar (Orientierungshilfe, keine Lösung)
- 16-teilige Windrose mit fixer Kompassnadel + goldenem Live-Kurspfeil der Maus folgend
- Max 3 Fehler-Hinweise sichtbar, durchnummeriert
- Pilot-Takeover nach 15 Fehlversuchen pro Wegpunkt (Reset bei korrekt) → keine Sterne für die Zielsuche
5. Landing-Phase
- Pad-Y-Toleranzfenster (vy>12, h.y in pad.y±18) verhindert das passive „Durchfliegen wird als Landung erkannt"-Bug
- hover_pickup zweistufig: Phase A klinkt Haken ein, Phase B markiert Patient als gerettet erst wenn Winch oben
- disembark-Duration 4 → 6 s
- Autobahn: 6–8 Gaffer + fahrender Einsatzwagen (Polizei/Rettung mit Blaulicht), Pilot-Warnung bei Naähe, Strike bei Berührung
- Proximity-Vögel mit 15 s Cooldown (statt Dauerkrähen)
6. UX
- iPad-Joystick in start.html und landing.html: Kreis mit gefedertem
grünem Stick, ersetzt die drei Pfeil-Buttons. Diagonal-Steuerung möglich.
Aktiviert per
@media(pointer:coarse). - HUD vereinheitlicht (Speed, Verbrauch, G-Kraft) zwischen start und landing
- Verbrauchsanzeige physikalisch korrekt: Flap + Steigflug = mehr Sprit, Sinkflug = weniger
- Inspect-Modus
?inspect=1in start.html und landing.html — zeigt Konturen aller Objekte, Drag scrollt, Klick öffnet Info-Panel rechts. Hilfsmittel zum Debuggen schwebender Objekte.
7. Mission-Routen
Detour-Routen begradigt: m1, m11, m13, m15, m18, m20, m21. Beispielsweise
m15 A1 Sattledt war vorher linz_c10 → linz → wels → sattledt — der Sprung
nach Linz-Stadt war Detour. Jetzt direkt linz_c10 → wels → sattledt.
8. Integrations-Auftrag (alt) — komplett
Der Auftrag vom 23.04. ist durchgelaufen:
- mode-check im Wrapper (ggs_session → class_modules → forcedLevel)
- Forced-Level-Start (Level 1=easy, 2=medium, 3=hard, Mission random aus Pool)
- Assessment-Calls an drei Hooks (start, 30 s-Ping, completed)
- End-Screen auf
.ggs-endscreen-Komponente
Offen vom alten Auftrag: Pre/Post-Quiz-Hook — wartet auf eine Quiz-UI- Komponente im Design-System. Kein Drama, kann später nachgezogen werden.
9. Briefing-Musik
- Patagonia Stringmap v1 + v2 aus deinem Pool integriert.
- v1 für Auftragswahl + End-Screen, v2 für Briefing-Overlays.
- Audio-Tag mit MutationObserver auf
.overlay.show— Musik startet/stoppt automatisch, fadet 300 ms ein/aus. - Audio-Gate für Funksprüche bei offenem Overlay → Musik und Funk laufen nie gleichzeitig.
10. Tools / Übersichten
Drei interne Werkzeuge gebaut:
- audio-overview.html — alle Audios
pro Mission linear, mit Nummer (z.B.
M17-12) zum Referenzieren - audio-matrix.html — Bundesland → Stützpunkt → Heli → Audios → Missionen, hierarchisch
- Inspect-Modus
?inspect=1in beiden Touch-HTMLs
11. Audio-Stand
Aktuell ca. 360 MP3s im sounds/radio-Ordner. Davon ca. 100 alte Pilot-/Strike-/Ouch-Witze von früher (nicht mehr referenziert, bleiben als Rollback-Option auf Platte). Aktiv genutzt: ca. 260 Clips — personalisiert pro Heli + missionsspezifische Geo-Audios + Lesson-Pool + neue Heli-Flug-Intros.
OpenAI TTS gpt-4o-mini-tts mit Stimme nova und Speed 1.12, alle Pilot-
und Tower-Audios laufen durch den Bandpass-Filter (Walkie-Talkie-Sound).
Status
Bereit für Durchspielrunden — das gröbste Audio-Chaos und die didaktischen Falschaussagen sind raus. Nichts blockiert.
Wenn du die .ggs-quiz-Komponente fertig hast, baue ich Pre/Post-Quiz ein.
— Heli