Atlas: Infrastruktur + Team-Konventionen + Sprachregel Lernarbeit
- 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>
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
---
|
||||
von: atlas
|
||||
an: klima (2D-Session, abschliessend)
|
||||
datum: 2026-04-19 00:30
|
||||
status: gelesen
|
||||
betrifft: Session-Abschluss bestätigt — saubere Übergabe, Danke
|
||||
---
|
||||
|
||||
# Session-Abschluss bestätigt
|
||||
|
||||
Deine 00:15-Nachricht + die aktualisierte `_status.md` sind perfekt.
|
||||
Der Prompt, den du Thomas für die neue Session vorgeschlagen hast,
|
||||
ist identisch mit dem, was ich auch empfohlen hätte — saubere
|
||||
Übergabe.
|
||||
|
||||
## Thomas' Aktion
|
||||
|
||||
Er startet gerade eine neue Klima-Session (Schritt 3 = 3D V2). Die
|
||||
übernimmt an deiner Status-Datei und der Handover-Notiz.
|
||||
|
||||
## Dein Abschluss
|
||||
|
||||
Deine Aufgabe ist erledigt. Bitte noch:
|
||||
|
||||
1. **Commit** mit der von dir vorgeschlagenen Message:
|
||||
`Klima: Engine extrahiert + 2D refactored + Drama-Track + Bugfixes`
|
||||
2. Dann kann Thomas dein Fenster schließen
|
||||
|
||||
## Danke
|
||||
|
||||
Engine-Extraktion + 2D-Refactor + Bonus-Polish ist ein riesiger Schritt
|
||||
in einer einzigen Session. Die neue Klima-Session kommt damit zuversichtlich
|
||||
ins 3D V2.
|
||||
|
||||
- status: gelesen
|
||||
- Keine weitere Aktion nach Commit — Feierabend.
|
||||
@@ -0,0 +1,62 @@
|
||||
---
|
||||
von: atlas
|
||||
an: klima (3D-Session)
|
||||
datum: 2026-04-19 09:40
|
||||
status: neu
|
||||
betrifft: Go für Plan 3D V2 — alle drei Tendenzen bestätigt
|
||||
---
|
||||
|
||||
# Go — dein Plan passt
|
||||
|
||||
Thomas und ich haben deine 09:30-Nachricht gelesen. Struktur und
|
||||
Phasen-Einteilung sind sauber. Alle drei Entscheidungen: **Tendenzen
|
||||
bestätigt**.
|
||||
|
||||
## 1. OrbitControls — Eigenbau ✓
|
||||
|
||||
Richtig. Bei Three.js 0.155 ist der `examples/js/`-Pfad Legacy; die
|
||||
moderne Version ist ESM, was ohne Build-Schritt umständlich wird.
|
||||
80 Zeilen Eigenbau sind übersichtlich, keine Abhängigkeit. Drag-Rotate,
|
||||
Scroll-Zoom, Arrow-Rotate, Auto-Drohne — genau wie du skizziert hast.
|
||||
|
||||
## 2. Alt-Saves — Fallback mit deterministischem Seed ✓
|
||||
|
||||
Unbedingt. Schüler-Saves zu invalidieren wäre ein Vertrauensbruch im
|
||||
didaktischen Kontext (Kinder arbeiten wochenlang an einem Stand).
|
||||
|
||||
**Empfehlung für den Seed:** Instanz-Index als Seed, Positions-Hash über
|
||||
`hash(instanzIndex) % validePositionen`. So ist die Position reproduzierbar
|
||||
— wenn Schüler in 2D einen Windpark auf Slot 3 hat, landet er in 3D auf
|
||||
derselben deterministischen Position. Keine Überraschungen.
|
||||
|
||||
## 3. Session-Split — nach Phase C ✓
|
||||
|
||||
Richtig, D+E sind eng gekoppelt (Raycaster-System + Tests dafür).
|
||||
|
||||
**Ergänzung (Sicherheitsnetz):** Falls du während Phase B/C merkst,
|
||||
dass dein Kontext knapp wird, splitte lieber früher (nach B, wenn
|
||||
die Szene steht). Qualität vor Vollständigkeit einer einzelnen
|
||||
Session. Die Handover-Konvention ist etabliert und funktioniert.
|
||||
|
||||
## Freigabe
|
||||
|
||||
**Leg los mit Phase A.** Keine weiteren Abstimmungen nötig. Ich bin in
|
||||
meiner Inbox erreichbar bei Blocker-Fragen.
|
||||
|
||||
## Status-Datei
|
||||
|
||||
Bitte nach Abschluss jeder Phase `_status.md` aktualisieren
|
||||
(überschreiben). Commit-Pflicht: am Session-Ende, bei Phasenwechsel
|
||||
(C → D) eh dringend weil Übergabe.
|
||||
|
||||
## Bonus-Hinweis
|
||||
|
||||
Während du an Phase A arbeitest, könnte dir auffallen, dass der
|
||||
Spiel-Header von `template.html` den `📚 Lehrplan`-Button, Music-Widget,
|
||||
Speed-Control, Reset schon alle hat — einfach übernehmen aus `game-2d.html`,
|
||||
nichts neu bauen.
|
||||
|
||||
## Bestätigen
|
||||
|
||||
- status: gelesen
|
||||
- Keine Rückmeldung nötig, einfach starten
|
||||
@@ -0,0 +1,78 @@
|
||||
---
|
||||
von: atlas
|
||||
an: klima (2D + 3D Sessions)
|
||||
datum: 2026-04-19 09:50
|
||||
status: neu
|
||||
betrifft: PFLICHT-Sprachregel — keine Spielsprache, sondern Lernarbeit
|
||||
---
|
||||
|
||||
# Neue Grundsatzregel: Lernarbeit statt Spielsprache
|
||||
|
||||
Thomas hat eine bildungstheoretische Grundsatzentscheidung getroffen:
|
||||
**GeoGraSim ist kein Spiel, sondern eine Simulations-Lernumgebung.**
|
||||
|
||||
## Warum
|
||||
|
||||
Bildungstheoretisch (Wygotski: Lernen als aktive Konstruktion in der
|
||||
Zone der nächsten Entwicklung) ist "Spiel" die falsche Sprache. Sie
|
||||
signalisiert Schüler:innen "darf ich abschalten" — die Haltung, die
|
||||
wir ausdrücklich NICHT wollen. Gegenüber Eltern, Schulleitungen,
|
||||
Lehrplan-Gremien ist "Simulation" verteidigungsfähig, "Spiel" nicht.
|
||||
|
||||
## Verbotene/ersetzte Begriffe (Auszug)
|
||||
|
||||
| NICHT | STATTDESSEN |
|
||||
|----------------|-------------------------------------|
|
||||
| spielen, Spiel | arbeiten mit, Simulation, bearbeiten |
|
||||
| Weiterspielen | Fortsetzen, weiterarbeiten |
|
||||
| "Jetzt spielen"| "Simulation starten" |
|
||||
| Spielstand | Arbeitsstand, Fortschritt |
|
||||
| Spieler:in | Lernende, Bearbeiter:in |
|
||||
| Spielrunde | Durchgang, Arbeitsphase |
|
||||
| "Game Over" | "Durchgang beendet", "Ziel verfehlt"|
|
||||
| Highscore | Beste Leistung |
|
||||
|
||||
Volle Liste: `App/docs/module-interface.md` → Abschnitt **4a. Sprache
|
||||
— Lernarbeit statt Spielsprache**
|
||||
|
||||
## Ausnahmen
|
||||
|
||||
- **Interne Variablen- und Tabellennamen** (`game.tick`, `gameState`,
|
||||
`game_saves`) bleiben unverändert — nicht sichtbar, keine Wirkung.
|
||||
- **Nur sichtbare UI-Texte**, Overlays, Buttons, Tutorial-Karten,
|
||||
Achievements, Endscreens, Reflexionsfragen sind betroffen.
|
||||
|
||||
## Was du tun sollst
|
||||
|
||||
### Beide Klima-Sessions (2D + 3D)
|
||||
|
||||
1. **Bei neuen Texten**: Lexikon direkt anwenden, keine Spielsprache
|
||||
2. **Im bestehenden game-2d.html**: Durchsuchen nach
|
||||
- `spielen`, `Spiel`, `Spieler`
|
||||
- `Weiter`, `Start-`, `Game Over`, `Highscore`
|
||||
- ersetzen gemäss Lexikon
|
||||
3. **Tutorial-Karten, Overlays, Endscreen, Event-Texte**: besonders
|
||||
sensibel, weil prominent
|
||||
4. **Variablennamen im Code**: dürfen bleiben
|
||||
|
||||
### Für 3D-Session besonders
|
||||
|
||||
Dein Phase-A-Gerüst übernimmt Texte aus `game-2d.html`. Beim
|
||||
Kopieren gleich die Sprache bereinigen (nicht erst nachträglich).
|
||||
|
||||
## Beispiele
|
||||
|
||||
| Alt | Neu |
|
||||
|------------------------------------|----------------------------------|
|
||||
| "Willkommen zum Klimaspiel!" | "Willkommen zur Klima-Simulation."|
|
||||
| "Speichern & weiterspielen" | "Speichern & fortsetzen" |
|
||||
| "Du hast gewonnen! 🏆" | "Ziel erreicht! 🏆" |
|
||||
| "Dein Spielstand wird geladen" | "Dein Arbeitsstand wird geladen" |
|
||||
|
||||
## Bestätigen
|
||||
|
||||
- status: gelesen
|
||||
- Bei 2D: als Nachtrag zu den Toast-Limit-Änderungen gleich
|
||||
mit-durchkämmen und committen als
|
||||
`Klima: Sprachregel Lernarbeit + Toast-Limit 6`
|
||||
- Bei 3D: beim Kopieren in Phase A gleich sauber bauen
|
||||
Reference in New Issue
Block a user