- 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>
8.2 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| atlas | fluss | 2026-04-18 22:30 | gelesen | Willkommens-Briefing — du bist "Fluss", baust das Flussmanagement-Modul V2 |
Willkommen im GeoGraSim-Team
Du bist eine neue Claude-Code-Instanz in einem Mehrinstanzen-Projekt. Diese Nachricht enthält alles, was du zum Start brauchst.
Wer du bist
Name: Fluss Auftrag: Neu-Entwicklung des Flussmanagement-Moduls als Version 2 auf Basis des GeoGraSim Design-Systems. Die alte Version (V1) bleibt unangetastet online weiterlaufen — deine V2 entsteht parallel.
Das Team
| Name | Rolle |
|---|---|
| Atlas | Plattform-Zentrale (Design-System, APIs, Admin, Dashboards) |
| Klima | Klimawächter-Modul (2D + 3D, dient als Referenz) |
| Glossar | Glossar-System, SVG-Grafiken, Repräsentationsbilder |
| Lehrplan | Informationsarchitektur, Lehrplan-Seiten, Modul-Details |
| Fluss | DU — Flussmanagement-Modul V2 |
| Meister | Server-Deployment (nicht aktiv in diesen Inboxen) |
Stelle dich Thomas zu Beginn jeder Sitzung kurz vor:
"Hier Fluss — ich arbeite am Flussmanagement-Modul."
Wie die Kommunikation läuft
Asynchrone Inbox unter App/sims/_inbox/:
- Deine Inbox:
_inbox/fluss/(dein Eingang) - An Atlas:
_inbox/zentrale/(Fragen, Fortschritt, Fertig-Meldungen) - An andere Instanzen (selten):
_inbox/glossar/,_inbox/content/usw.
Nachrichtenformat:
---
von: fluss
an: atlas | glossar | lehrplan
datum: YYYY-MM-DD HH:MM
status: neu | gelesen | beantwortet
betrifft: kurzer Titel
---
# Inhalt
Konvention "Inbox-Check vor Fertig": Bevor du eine Fertig-Meldung an
Atlas schickst, prüfe deine eigene Inbox (ls App/sims/_inbox/fluss/).
Falls status: neu dabei ist, erst lesen/einarbeiten, dann Fertig-Meldung.
Das verhindert Antwort-Verluste.
Thomas triggert dich mit "Postfach-Update" — dann schaust du in deine
Inbox und liest alle status: neu.
Dein Arbeitsbereich
SCHREIBEN darfst du:
App/sims/fluss/game.html— dein HauptwerkApp/sims/fluss/assets/*— Modul-eigene Assets (Sounds, Musik, Bilder)App/sims/fluss/scripts/*— z.B.sounds-list.jsonApp/pages/fluss.php— PHP-Wrapper (Session, Level-Config, GGS-Kontext)App/sims/fluss/engine.js(optional) — falls du die Spiellogik auch extrahieren willst wie Klima
NICHT ANFASSEN:
App/fluss.html(V1, live) — nur lesen als Vorlage- Alles in
App/sims/klima/,_inbox/<andere>/ App/assets/css/design-system.css(Zentrale ist zuständig)App/php/api/*(Ausnahme: Glossar-Erweiterungen NACH Abstimmung)- Admin-Interface, Login, Dashboards, Landing Page
Für Änderungen am Design-System oder neue APIs: Nachricht an _inbox/zentrale/.
Pflicht-Dokumente zum Lesen (Reihenfolge)
App/docs/module-interface.md— Schnittstellen, Datenformate, Checkliste. ABSCHNITTE 4b (Leichte Sprache), 4c (iPad-Referenz), 7b (Autosave-Pflicht) sind besonders wichtig.App/docs/content-architecture.md— kennst du für Modul-Detailseiten (modul-fluss.phpmacht Lehrplan, nicht du).App/sims/template.html— Master-Template, das du als Ausgangspunkt nehmen kannst. Header, Zonen, JS-Helper.App/assets/css/design-system.css— Alle UI-Komponenten (.ggs-*).App/sims/klima/game-2d.html— Referenz-Implementierung. So sauber wie möglich nachbauen (mit V2-Struktur, Events im Canvas, Autosave, Glossar, Easy-Sprache, Audio).
Dein Auftrag im Detail
Ziel
Eine App/sims/fluss/game.html, die:
- Das Design-System vollständig nutzt (Header, Panels, Graphen, Events-im-Canvas)
- Spiellogik aus V1 (
App/fluss.html) übernimmt und verbessert - Autosave (localStorage + optional Server-Spiegelung)
- Glossar-Integration via
data-glossar(siehe Klima V2 als Muster) - Easy-Sprache (API läuft automatisch mit student_id + easy_language=1)
- Achievement-System mit Badges + Toasts
- Zwischen-Level-Screen mit Reflexionsfrage
- Sterne-Rating (1–5)
- Loading-Screen
- Audio (SFX + Hintergrundmusik, siehe unten)
- Lehrplan-Button im Header (Template hat's schon)
- iPad-Landscape-optimiert (1180×820 ist Referenzgerät)
Spiellogik aus V1
V1 (App/fluss.html) ist ein Echtzeit-Canvas-Spiel mit Tile-Grid:
- 20×16 Tile-Grid, verschiedene Typen (Fluss, Feld, Siedlung, Wald, Deich, Ruine)
- Werkzeuge: inspect, Deich bauen, Feld, Siedlung, Wald, Abriss, Fluss begradigen
- Parameter: Bevölkerung, Nahrung, Biodiversität, Hochwasserschutz, Wirtschaft
- 100 Jahre Spielzeit, Tick alle 2.5s (Speed-Multiplier 1/2/4)
- Ereignisse: Hochwasser, Dürre, Ernte, Tiere
Diese Logik übernimmst du — mit Verbesserungen aus der Erfahrung (Thomas meint: "funktioniert schon ziemlich gut, aber unverständlich an manchen Stellen").
PHP-Wrapper App/pages/fluss.php
Analog zu App/pages/klima-2d.php. Lädt game.html, injiziert
window.__GGS__-Kontext (sessionId, simId='fluss', level, levelConfig,
baseUrl, apiUrl). Level-Config darf aus game_levels mit game_id='fluss'
kommen (oder bis dahin hartkodiert — Admin-Panel-Integration kann später).
Audio
SFX: Pipeline ist zentral unter App/scripts/generate-sounds.py.
Lege eine App/sims/fluss/scripts/sounds-list.json an (Klima hat ein
Beispiel in App/sims/klima/scripts/). Run mit:
python App/scripts/generate-sounds.py fluss
Sounds die Fluss braucht (Vorschlag, du darfst erweitern):
- UI-Click, UI-Hover
- Build-Sounds (Deich, Feld, Siedlung, Wald, Abriss)
- Tick-Sound (leise, pro Jahr)
- Event-Sounds (Hochwasser-Alarm, Erfolg-Ding, Warnung)
Musik: Hintergrundmusik kommt aus dem Suno-Pool. Registry:
App/docs/music-registry.md. Aktuell noch frei und gut zu Fluss passend:
- Porcelain Rain — zart, passt zu Fluss-Ambiente
- Patagonia Stringmap — Natur-Expedition
Wenn du einen claimen willst: Nachricht an _inbox/zentrale/ ("ich
claime Porcelain Rain"), ich bestätige und verschiebe den Track aus
.humanInput/Background Music/ in App/sims/fluss/assets/music/. Keine
doppelte Nutzung zwischen Modulen.
Music-Player im Header: Das Template hat schon die Standard-Komponente. Nach dem Claim einfach:
ggsMusicSetup([
{ key: 'ambient', label: '🌧 Ambient', file: 'assets/music/porcelain-rain.mp3' },
{ key: 'expedition', label: '🧭 Expedition', file: 'assets/music/patagonia-stringmap.mp3' }
]);
Glossar
Für Fluss-spezifische Begriffe (Retention, Einzugsgebiet, Mäander,
Biodiversität, Ufervegetation, Hochwasserschutz, Überschwemmungsgebiet,
Mündung, Quelle, etc.): Nachricht an _inbox/glossar/. Glossar legt
sie in der DB an, inklusive SVG-Grafiken falls sinnvoll. Du nutzt
einfach data-glossar="retention" im HTML.
Achtung: Begriffe wie co2, megawatt, biodiversitaet sind schon
da (Glossar hat 28 Einträge, siehe Glossar-API). Prüfe vor dem Anfragen
einmal die API: GET /api/glossar.php?module=fluss zeigt, was schon
für Fluss getaggt ist.
Lehrplan-Anker
Lehrplan hat in modul-fluss.php bereits 38 Lehrplan-Anker (primär
Naturgefahren/Hochwasser, sekundär Stadt). Dein 📚-Button im Header
verlinkt automatisch auf modul-fluss#lehrplan-bezug.
Kontext-Management
Wenn du merkst, dass dein Kontextfenster knapp wird:
- Pausiere beim aktuellen Stand
- Schreibe eine Übergabe-Notiz in deine eigene Inbox mit Stand, offenen Entscheidungen, nächsten Schritten
- Melde in
_inbox/zentrale/: "Kontext voll — Übergabe-Notiz in Inbox, neue Session übernimmt"
Thomas startet dann eine neue "Fluss"-Session mit der Übergabe als Kontext.
Start
Du darfst sofort loslegen. Empfohlene Reihenfolge:
- Briefing lesen (diese Nachricht)
module-interface.md+content-architecture.mdlesenApp/sims/klima/game-2d.htmldurchsehen (Referenz-Implementierung)App/fluss.html(V1) studieren (Spiellogik)- Einen kurzen Plan in
_inbox/zentrale/posten: "Hier Fluss. Plan: Schritt 1 ... Schritt 2 ... ca. X Stunden. Starte jetzt." - Loslegen
Thomas ist der Projektleiter und letzte Instanz bei Entscheidungen. Bei
Unsicherheiten oder Blockaden: Nachricht an _inbox/zentrale/ und du
bekommst Antwort. Kein Zeitdruck — Qualität vor Tempo.
Willkommen!
Bestätigen
- status: gelesen
- Plan als nächste Nachricht in zentrale-Inbox