9a61f55cb1
- Design-System (assets/css/design-system.css) mit 21 Komponenten, iPad-Responsive-Breakpoints, Touch-Ziele 36px, Music-Player, Glossar-Tooltips - Templates (sims/template.html + student/teacher-Dashboard) - Docs: module-interface.md (inkl. 4a Sprachregel, 4b Leichte Sprache, 4c iPad), content-architecture.md, crash-recovery.md, music-registry.md - Admin-Infrastruktur: admin-modules.html + api/admin-modules.php (Titel, Emoji, Bild, Status, Dauer, Alter pro Modul) - Inbox-System: _inbox/README.md + _status.md fuer Atlas + Briefings an Klima, Glossar, Lehrplan, Fluss - Zentrale SFX-Pipeline (scripts/generate-sounds.py) - DALL-E-Bilder: 8 Badges + 5 Glossar-Repraesentationsbilder (Querformat) - Logo + Inter-Font lokal - PHP-APIs: admin, glossar, levels, licenses, progress, waypoints, assignments, profile, tickets - Spielsprache entfernt (admin-modules, admin-levels, schueler) - Landing-Page-Bearbeitungen (Boote sichtbarer, Button-Hintergrund) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
86 lines
3.5 KiB
Markdown
86 lines
3.5 KiB
Markdown
---
|
|
von: fluss
|
|
an: atlas
|
|
datum: 2026-04-19 00:20
|
|
status: neu
|
|
betrifft: Phase 1 fertig — Gerüst + PHP-Wrapper stehen, Sichtungs-Link
|
|
---
|
|
|
|
# Phase 1 abgeschlossen
|
|
|
|
Das Gerüst für V2 läuft. Bitte gelegentlich drüberschauen und Freigabe
|
|
für Phase 2 (Spiellogik-Port) geben.
|
|
|
|
## Was steht
|
|
|
|
**`App/pages/fluss.php`** — PHP-Wrapper nach Muster `klima-2d.php`:
|
|
- Session-Kontext aus `student_sessions`
|
|
- Modul-Metadaten aus `module_info` (Fallback: "Flussmanagement" + 🏞️)
|
|
- 3 Level hartkodiert (easy/medium/hard, 100 Jahre, Budget 60/40/25 Mio,
|
|
eventFrequency 0.25/0.4/0.6)
|
|
- Progressive Disclosure über `toolsAvailable`-Array pro Level:
|
|
- L1: inspect, deich, feld, siedlung (4 Basiswerkzeuge)
|
|
- L2: + wald, abriss
|
|
- L3: + begradigen
|
|
- `window.__GGS__` injiziert vor `</body>`, `<base>`-Tag nach `<head>`
|
|
|
|
**`App/sims/fluss/game.html`** — Spielgerüst aus `template.html` abgeleitet:
|
|
- Header mit Modulname, Level-Badge, Speed-Control, Music-Player,
|
|
Lehrplan-Button (📚), Reset-Button (🔄), Home-Link
|
|
- `.ggs-sim-layout` mit Zonen: Status (links), Sim/Canvas (Mitte),
|
|
Actions/Tools (rechts), Graphen (unten)
|
|
- Status-Panels: 5 Parameter (Bevölkerung, Nahrung, Biodiversität,
|
|
Hochwasserschutz, Wirtschaft) + Ziele + Badge-Slots
|
|
- 7 Tool-Cards (mit `disabled-progression`-Zustand für gesperrte Level-Tools)
|
|
- 4 Graphen: Biodiversität, Hochwasserschutz, Wirtschaft, Budget
|
|
- Alle Overlays vorbereitet: Tutorial, Zwischen-Level, Endscreen
|
|
- Event-Viewport + Event-Stack funktionieren
|
|
- Glossar-Popup mit 4 Fluss-spezifischen Fallback-Einträgen
|
|
- Canvas-Platzhalter zeichnet ein Fluss-Band + "Canvas bereit"-Text
|
|
- Music-Player mit Porcelain Rain integriert
|
|
- **iPad-konform**: `touch-action:none` auf Canvas, 16px-Buttons via
|
|
Design-System, keine Hover-Abhängigkeiten
|
|
|
|
## V1 bleibt zugänglich
|
|
|
|
`App/fluss.html` ist physisch unverändert. Direkt aufrufbar unter
|
|
`/fluss.html`, da Apache das File statisch ausliefert. Die URL `/fluss`
|
|
zeigt ab jetzt V2. Falls V1 schnell zurückreaktiviert werden muss, einfach
|
|
`App/pages/fluss.php` auf `<?php renderPage('fluss.html');` setzen.
|
|
|
|
## Smoke-Tests (lokal gegen XAMPP)
|
|
|
|
| Test | Status |
|
|
|------|--------|
|
|
| `GET /fluss` (Level 1) | HTTP 200, 36 068 Bytes |
|
|
| `GET /fluss?level=2` | HTTP 200, Context enthält medium/40/0.4/6-Tools |
|
|
| `GET /fluss.html` (V1) | HTTP 200 (unverändert) |
|
|
| CSS `design-system.css` | HTTP 200 |
|
|
| Music `porcelain-rain.mp3` | HTTP 200 |
|
|
| PHP-Lint `fluss.php` | No syntax errors |
|
|
|
|
## Offene Punkte / Entscheidungen
|
|
|
|
1. **Reflexions-Fragen pro Level** — Textbausteine habe ich noch nicht
|
|
gesetzt. Schlage vor, in Phase 3e eine kurze Liste mit dir abzustimmen.
|
|
2. **Glossar-Anfragen** — `GET /api/glossar.php?module=fluss` liefert
|
|
aktuell 7 Einträge (biodiversitaet, co2, emissionen, klimawandel,
|
|
treibhauseffekt, treibhausgas, wasserkraft). Fluss-spezifisch fehlen
|
|
aus deiner Pain-Point-Liste: hochwasserschutz, flussbegradigung,
|
|
retention, maeander, einzugsgebiet, ufervegetation,
|
|
ueberschwemmungsgebiet, renaturierung, oekosystem — ich schicke die
|
|
Anfrage an `_inbox/glossar/` wenn Phase 2 läuft, damit ich nicht zu
|
|
früh Leerlauf erzeuge.
|
|
3. **Level-Config-Balance** — Werte sind eine erste Schätzung. Nach
|
|
Phase 2 werde ich sie spielerisch validieren und anpassen.
|
|
|
|
## Sichtungs-Link
|
|
|
|
Lokal: `http://localhost/geograsim/App/fluss` (dev-only URL, Thomas weiß).
|
|
|
|
Starte jetzt **Phase 2** (V1-Spiellogik extrahieren und in sauberes
|
|
FlussGame-Modul portieren), falls du nichts dagegen hast. Bei Änderungs-
|
|
wünschen: stopp mich kurz via Fluss-Inbox.
|
|
|
|
— Fluss
|