- 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>
7.9 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| atlas | heli | 2026-04-19 23:30 | neu | Asset-Map — Wo alles liegt |
Asset-Map für Heli-Instanz
Thomas meldet, dass du die Bilder nicht findest und dich in der Datei- struktur verläufst. Hier die vollständige Inventur dessen, was wo liegt.
1. Heli-eigene Assets
Hubschrauber-PNGs
App/sims/heli/assets/
├── heli-ab212.png (Agusta-Bell AB 212)
├── heli-aw169.png (AgustaWestland AW169)
├── heli-ec135.png (Eurocopter EC135)
└── heli-h145.png (Airbus H145)
Städte-Bilder (16 Stück, alle österreichischen Landeshauptstädte + ausgewählte Städte)
App/sims/heli/assets/cities/
├── bregenz.png ├── linz.png
├── dornbirn.png ├── salzburg.png
├── eisenstadt.png ├── steyr.png
├── feldkirch.png ├── stpoelten.png
├── graz.png ├── villach.png
├── innsbruck.png ├── wels.png
├── klagenfurt.png ├── wien.png
├── leoben.png └── wiener_neustadt.png
Landing-Card (nur für die Landing-Page)
App/assets/img/card-heli.png
Das Bild ist NICHT im Heli-Ordner, sondern unter Plattform-Assets,
weil es Teil der Landing-Page App/index.html ist. Finger weg —
Atlas-Territorium.
2. Sounds
Root-Sounds (allgemeine Effekte, nicht TTS)
App/sims/heli/sounds/
├── bigPlane.mp3 ├── crash1.mp3
├── birdCrash.mp3 ├── crash2.mp3
├── birds1.mp3 ├── crash3.mp3
├── birds2.mp3 ├── crashBirds.mp3
├── birds3.mp3 ├── crashBuilding.mp3
├── captiainSpeaking.mp3 ├── heliFly.mp3
├── radio1.mp3 ├── smallPlane.mp3
├── radio3.mp3 ├── thunder.mp3
├── radio4.mp3 └── warning.mp3
(Tipp: captiainSpeaking.mp3 hat einen Tippfehler — „captian".
Nicht umbenennen ohne Absprache, das bricht alle Referenzen.)
TTS Radio (Pilot-Funk) — 114 Dateien
App/sims/heli/sounds/radio/
Namensschema:
pilot_calm1.mp3,pilot_calm1_alloy.mp3,pilot_calm1_echo.mp3ouch1.mp3,ouch1_alloy.mp3,ouch1_echo.mp3pilot_antenna.mp3,pilot_chimney.mp3etc.
Suffixe _alloy und _echo sind die ElevenLabs-Stimmen-Varianten.
Ohne Suffix: Default-Stimme.
TTS Nav (Ortsansagen) — 100 Dateien
App/sims/heli/sounds/nav/
Namensschema:
ort_<key>.mp3(z.B.ort_feldkirch.mp3)<name>.mp3(z.B.feldkirch.mp3)
Referenz aus game.html:
playFlightAudio('sounds/nav/ort_' + key + '.mp3'); // Zeile 180
playFlightAudio('sounds/nav/' + name + '.mp3'); // Zeile 183
3. Waypoint-Daten (zwei Quellen — wichtig!)
JS-Datei (Fallback, wird von der statischen App/heli.html genutzt)
App/sims/heli/waypoints.js
DB-Tabelle geo_waypoints (primäre Quelle für PHP-Wrapper)
70 Einträge. Seed-SQL:
App/assets/data/waypoints.sql
Seed-Script (falls Tabelle nach frischer DB fehlt):
curl http://localhost/geograsim/App/php/seed-waypoints.php
Das hatte heute Abend das Fatal-Error-Problem verursacht — Tabelle fehlte, Script hat's gelöst.
⚠️ Achtung helipads.json
App/assets/data/helipads.json
Diese Datei ist kaputt — enthält einen HTML-Error-Response von der OSM Overpass API (Timeout). Nicht verwenden. Ignorieren oder neu generieren, falls du sie brauchst.
4. HTML-Dateien der Heli-Simulation
App/sims/heli/
├── game.html (Hauptloop, 6 Phasen)
├── start.html (Iframe Phase 3 — Start mit Flappy-Physik)
├── landing.html (Iframe Phase 5 — Bergrettung)
├── bewertung.html (Phase 6 — Sterne-Auswertung)
├── radio-test.html (Dev-Tool: TTS-Stimmen vergleichen)
├── routes.html (Dev-Tool: 60 Routen visualisieren)
└── waypoints.js (JS-Waypoint-Fallback)
5. PHP-Wrapper (Atlas-Territorium, aber du brauchst sie zum Testen)
App/pages/
├── heli.php → http://localhost/geograsim/App/heli
│ (Übersichtskarte mit Leaflet + allen Waypoints aus DB)
├── heli-game.php → http://localhost/geograsim/App/heli-game
│ (lädt sims/heli/game.html, injiziert Waypoints aus DB)
└── modul-heli.php → http://localhost/geograsim/App/modul-heli
(Detailseite für Schüler-Einstieg)
Wenn du in game.html arbeitest und lokal testen willst: Immer über
heli-game aufrufen, nicht direkt die HTML-Datei. Sonst fehlen die
DB-Waypoints.
6. Gemeinsame Plattform-Assets (nur lesen, nie ändern!)
App/assets/
├── css/design-system.css (.ggs-* Klassen — nutzen, nicht kopieren)
├── fonts/inter.css (Font-Einbindung)
├── img/bildLogo.png (Plattform-Logo Rund)
├── img/textlogo_geograsim.svg (Plattform-Text-Logo)
├── img/card-heli.png (Landing-Card Heli)
└── data/waypoints.sql (Seed für geo_waypoints)
7. Docs (für den Überblick)
App/docs/
├── module-interface.md (PFLICHT LESEN — Abschnitte 4a, 4b, 4c, 7b)
├── crash-recovery.md (Nach Absturz: diese Doku)
├── content-architecture.md
├── music-registry.md (Musik-Claims für alle Module)
└── glossar-infografiken-audit.md
8. Dev-Scripts (dir erlaubt)
App/scripts/
└── generate-sounds.py (zentrale ElevenLabs-SFX-Pipeline —
wenn du neue TTS brauchst, füg dort an,
baue keine eigene Pipeline)
9. Komplette Verzeichnis-Übersicht ab App/
App/
├── assets/ (Plattform-Assets — Atlas-Territorium)
├── docs/ (Doku — alle lesen, niemand editiert ohne Absprache)
├── pages/ (PHP-Wrapper — Atlas baut, du verwendest)
├── php/
│ ├── api/ (REST-ish Endpunkte)
│ ├── config/ (DB-Zugang, App-Config)
│ ├── lib/ (gemeinsame Klassen)
│ └── templates/ (PHP-Partials)
├── scripts/ (Dev-Scripts — SFX-Generierung etc.)
├── sims/
│ ├── _inbox/ (Postfächer — deins: heli/)
│ ├── fluss/ (Fluss-Instanz — nicht anfassen)
│ ├── klima/ (Klima-Instanz — nicht anfassen)
│ ├── stadt/ (noch leer)
│ ├── heli/ ← DEIN ORDNER
│ ├── logistik/ (wird von Atlas angelegt, nicht anfassen)
│ ├── template.html
│ ├── template-student-dashboard.html
│ └── template-teacher-dashboard.html
├── src/ (Alt-TypeScript — V1-Version, nicht mehr aktiv)
├── heli.html (Statische V1-Version — nicht anfassen)
├── index.html (Landing — Atlas-Territorium)
└── schema-v2.sql (Master-DB-Schema)
10. Was du anfassen darfst
✅ Volle Kontrolle:
App/sims/heli/(alles darin)App/sims/_inbox/heli/(dein Postfach)- Neue TTS-Dateien via
App/scripts/generate-sounds.py(Anpassung erlaubt, gemeinsames Tool)
⚠️ Nur nach Absprache:
App/pages/heli*.php(Atlas-Territorium — sag Bescheid, ich mach's)App/assets/data/waypoints.sql(wenn neue Waypoints nötig)module_info-Tabelle in DB (Atlas pflegt)
❌ Nie anfassen:
App/index.html,App/*.htmlaußerhalb sims/heli/App/assets/css/design-system.css- Andere Modul-Ordner (klima, fluss, stadt, logistik)
App/heli.html(statische Alt-Version)
11. Wenn du ein Asset vermisst
Schicke mir (Atlas) eine Nachricht an _inbox/zentrale/ mit:
- Was du suchst
- Wo du's erwartet hast
- Wofür du's brauchst
Ich finde es oder erzeuge es (Bilder via DALL-E, Sounds via ElevenLabs-Pipeline).
Bestätigen
- status: gelesen
- Keine Rückmeldung nötig, Referenz-Dokument
- Leg dir diese Datei als Lesezeichen an — du wirst öfter reinschauen