# Kofferdetektiv · Integrations-ToDo **Datum:** 2026-06-14 **Stand:** 3D-Version komplett fertig geliefert (siehe `.humanInput/Kofferdetektiv/app_to_deploy/INTEGRATION.md`). 2D-Version folgt später. ## Was geliefert ist | Datei | Größe | Inhalt | |---|---|---| | `sims/kofferdetektiv/game.html` | 769 LoC | UI, Header, Overlays | | `sims/kofferdetektiv/engine.js` | 4274 LoC | 3D-Welt + Fall-Logik | | `sims/kofferdetektiv/data.js` | 1867 LoC | 30 Länder, Glossar, Hinweise | | `sims/kofferdetektiv/welt.html` | 147 LoC | Welt-Übersicht aller Länder | | `sims/kofferdetektiv/assets/` | 133 MB | 3D-Modelle, Audio, Bilder, Texturen | | `pages/kofferdetektiv.php` | Wrapper-Vorschlag | | `INTEGRATION.md` | Detailbriefing | ## Plattform-Anbindung von der Sim aus Laut INTEGRATION.md bereits sauber drin: - Header §4.2 mit ℹ → `GGS_TUTORIAL.replay()`, 📚, 🔊, 🔄, 🏠 - `GGS_LIVE_STATE()` mit 12 Feldern - `GGS_TUTORIAL` mit eigenem 5-Schritte-Tutorial - Submit über `/api/progress.php` mit `__GGS_LIVE__.activeMs` - localStorage-Autosave `kofferdetektiv.v1` - Lernarbeit-Sprache - iPad-tauglich (Touch-Joystick + Blick-Drag, ≥36 px, 16px-Inputs) - 30 Fall-Länder in Klassen A/B/C, 3 Stufen mit Hinweisverteilung - 20 Hinweis-Kategorien (Einwohnerzahl, Fläche, BIP, Flagge, Wappen …) - 12 Flughäfen weltweit als Einsatzort - 16 MP3 Hintergrundmusik + 8 SFX + 5 PA-Durchsagen - Länderatlas im Header (gelb/grün-Markierung persistent) ## Atlas-ToDo ### A · Code-Integration (sofort, lokal) - [x] ToDo-Liste schreiben (diese Datei) - [ ] Sim-Files nach `App/sims/kofferdetektiv/` kopieren (133 MB) - [ ] `welt.html` prüfen — was ist das, soll's deployed werden? - [ ] Wrapper an Plattform-Standard angleichen (mode-locked/teacher_started/free, student_modules-Override, easy_language, locked-Page, WIP-Page wenn game.html fehlt) - [ ] Sim-File umbenennen auf `game-3d.html` (Vorbereitung 2D-Slot), Wrapper-Pfad anpassen - [ ] Wrapper `pages/kofferdetektiv-3d.php` aus aktuellem `pages/kofferdetektiv.php` ableiten - [ ] Platzhalter `pages/kofferdetektiv-2d.php` mit WIP-Page anlegen - [ ] Platzhalter `sims/kofferdetektiv/game-2d.html` (leer / WIP) anlegen — wartet auf Sim-Lieferung ### B · Datenbank - [ ] `module_info`-Eintrag (Title „Kofferdetektiv", Icon 🕵️, Status `geplant`, Dauer ~25 min, Alter 11 – 16) - SQL: `App/Don_t_Deploy/2026-06-14-kofferdetektiv-module-info.sql` - [ ] SQL apply auf Prod (WIP-Page wird damit live) - [ ] Status auf `beta` ziehen, sobald Sim deployed und einmal durchgetestet - [ ] modul-detail-Partial: Sonderfall für Kofferdetektiv (zwei Buttons: 3D / 2D — analog Klima) ### C · Glossar (Atlas reicht an Glossar-Instanz weiter) - [ ] 20 Begriffe in `glossar`-Tabelle anlegen mit `module_id='kofferdetektiv'`: Einwohnerzahl · Fläche · Bevölkerungsdichte · BIP pro Kopf · Lebenserwartung · UN-Mitglied · Staatsform · Zeitzone · Kontinent · Region · Amtssprache · Währung · Nachbarstaat · Klima · Exportprodukt · Hauptstadt · Flagge · Länderumriss · Internet-Domain · Wahrzeichen - [ ] Easy-Sprache-Variante für jeden Begriff - [ ] **Kurztexte liegen bereits in `data.js` `KD_GLOSSARY`** — Glossar-Instanz kann sie übernehmen statt neu schreiben ### D · Lehrplan-Anker (Atlas reicht an Lehrplan-Instanz) - [ ] 8 – 12 Anker pro Land (AT/CH/DE/LI) - Mögliche Fachbezüge: - **AT GW Sek I:** Kompetenz 1.x (Räume und Klimazonen weltweit), 3.x (Vielfalt Länder/Kulturen), 4.x (Migration und Mobilität) - **CH RZG Sek I:** RZG.4.x (globale Vernetzung), RZG.5.x (Reisen + Verkehr) - **DE Sek I:** Länder der Welt, globale Mobilität, Kulturkunde - **Politische Bildung:** Internationale Mobilität, Zoll, Datenschutz im Reisekontext - [ ] Verknüpfung in DB `module_kompetenz_map` setzen ### E · Lehrer-Backend - [ ] **admin-modules.html:** Kofferdetektiv als wählbares Modul für Klassen-Freigabe (sollte automatisch funktionieren sobald `module_info` da ist) - [ ] **Live-Cockpit `live.php`:** `case_country` nur für Lehrpersonen-Sicht durchreichen (im Schüler-Heartbeat NICHT zeigen — Sim trennt das schon, Atlas verifiziert) - [ ] **LIVE_PRIMARY_FIELDS['kofferdetektiv']** in `teacher.html` einbauen (Vorlage in INTEGRATION.md §Vorschlag) - [ ] **Ergebnis-Tab `results.php`:** Kofferdetektiv-Submission-Schema (Fall-Liste pro Schüler, Lösungs-Quote pro Land, Hinweis-Effizienz) sichtbar machen - [ ] **Benchmark::scoreKofferdetektiv()** in `App/php/lib/Benchmark.php` (Formel-Vorlage in INTEGRATION.md §Vorschlag) - Base 60 % Lösungsquote + 25 % Erstversuch + 15 % Hinweis-Effizienz − bis 20 % Fehlversuch-Malus - [ ] **Reflexionsfrage** automatisch vor Submit zeigen — Sim macht das schon laut INTEGRATION.md, Atlas verifiziert via Playwright ### F · Mode-Steuerung (Plattform-Standard) - [ ] Wrapper-Hardening: `mode='teacher_started'` mit `forcedLevel` durchreichen (sperrt Stufenwahl in Sim) - [ ] Wrapper-Hardening: `mode='locked'` mit Locked-Page (Plattform-Standard) - [ ] Wrapper-Hardening: `student_modules`-Override pro Schüler:in - [ ] Wrapper-Hardening: `STUDENT_EASY=true` aus `students.easy_language` ableiten ### G · Tests - [ ] `sims/kofferdetektiv/game.html` `.dontDeploy/playwright/tests/stufe1-smoke/routes-static.spec.js` Slug ergänzen - [ ] `sim-platform-context.spec.js`: Slug `kofferdetektiv` für `__GGS__ + live-client + GGS_LIVE_STATE` - [ ] Stufe-2-Flow-Test: Boot → Onboarding → Erster Fall starten → GGS_LIVE_STATE liefert `case_index/cases_total` - [ ] Performance-Check: Boot-Zeit auf iPad-equivalentem Viewport unter ~5s (3D-Modelle sind 1,8 MB + 0,3 MB) ### H · Card-Image + Modul-Detailseite - [ ] `App/assets/img/card-kofferdetektiv.png` generieren (Flat Scandinavian, Atlas) - [ ] Modul-Detailseite `modul-kofferdetektiv` (Plattform-Standard, kommt automatisch durch `modul-.php`-Partial wenn `module_info` da ist) - [ ] DALL-E-Prompt: „Flat scandinavian illustration, airport luggage counter at night, detective with magnifying glass over open suitcase, soft warm palette …" ### I · Deploy-Sequenz - [ ] **Schritt 1 jetzt:** module_info-SQL apply → WIP-Page live unter `geograsim.at/kofferdetektiv-3d` - [ ] **Schritt 2:** Wrapper + Sim-Files lokal vorbereiten + integrieren (Atlas heute) - [ ] **Schritt 3:** Thomas-Test lokal → Feedback - [ ] **Schritt 4:** Deploy Sim-Files + Wrapper auf Prod - [ ] **Schritt 5:** Status `geplant` → `beta` - [ ] **Schritt 6:** Playwright-Suite ergänzen + grün ziehen - [ ] **Schritt 7:** Glossar + Lehrplan-Anker an Schwester-Instanzen ### J · 2D-Version (offen, später) - [ ] Konzept für 2D-Variante mit Thomas klären - Gleiche Mechanik als 2D-Top-Down-Variante? - Vereinfachte iPad-First-Variante ohne 3D-Performance-Anforderungen? - Mini-Spiel-Variante (z. B. einzelner Koffer als Drag-Drop)? - [ ] Sim-Lieferung abwarten - [ ] `sims/kofferdetektiv/game-2d.html` einsetzen - [ ] Wrapper `pages/kofferdetektiv-2d.php` aktivieren - [ ] modul-detail: zweiten Button freischalten ### K · Optional / Folgearbeit - [ ] Glossar-Tooltip-Plattform-Lib mit `KD_GLOSSARY` aus data.js synchronisieren (DB-Single-Source-of-Truth) - [ ] Reise-Plakate in der 3D-Halle: Lehrplan-Verweis pro Land - [ ] Welt-Übersicht (`welt.html`) — eigene Sub-Route oder per Atlas-Header zugänglich machen? - [ ] Audio-Lizenz-Doku: ElevenLabs-Sprachausgaben + Sketchfab-Lizenzen abklären --- **Sofort-Plan:** A (Code), B (DB+SQL+WIP-Deploy) — beides geht heute. **Mittelfrist:** C, D, E, F (Glossar, Lehrplan, Lehrer-Backend, Mode-Hardening) — über die nächsten Sessions. **Nach Thomas-Test:** G (Tests), H (Card-Image), I (Deploy-Sequenz Sim-Files). **Wartend:** J (2D-Version).