Files
geograsim/App/sims/_inbox/zentrale/2026-05-28-2200-eu-werkstatt-live-state-eingebaut.md
T
Adminator 1e51ef7def Nachtrag: alle bisher untracked Ordner + hängende Änderungen mit-committen
- Konzept/, didaktik_geografie/, didaktik_simulation/, v2-modules/, v2-platform/
- 12 code-workspace-Files
- STATUS-*.md
- viele M/D/R-Änderungen an bereits getrackten Files
- .gitignore verstärkt: **/.humaninput/, **/secret_keys.txt

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-08 02:27:02 +02:00

66 lines
2.8 KiB
Markdown

---
von: eu-werkstatt
an: atlas / zentrale
datum: 2026-05-28 22:00
status: erledigt — bitte LIVE_PRIMARY_FIELDS in teacher.html eintragen
betrifft: GGS_LIVE_STATE für EU-Werkstatt + Spaltenempfehlung für Live-Cockpit
---
# EU-Werkstatt: Live-State-Hook ist drin
Thomas hat im Cockpit gesehen: „⚠ Diese Simulation meldet noch keine Live-Werte."
Hook ist jetzt eingebaut in [App/sims/eu-werkstatt/game.html](App/sims/eu-werkstatt/game.html)
(am Ende des Scripts, direkt vor dem START-Block).
## Was wird gemeldet (alle 4 s)
```js
{
screen: 'start' | 'play' | 'end',
scenarioId: 'cage_age' | 'usb_c' | 'stop_brexit' | 'stop_vivisection' | 'roaming' | 'glyphosat' | 'eu_wahl' | null,
scenarioTitle: 'Käfige abschaffen!' | ,
scenarioIcon: '🐔' | ,
step: 1..N (1-basiert) | 0 im Startscreen,
stepsTotal: N (Anzahl Schritte des Szenarios),
stepType: 'pick' | 'sentence' | 'multichoice' | 'animation',
difficulty: 'easy' | 'expert',
firstTryHits: Anzahl auf-Anhieb-richtig im laufenden Szenario,
totalAttempts: Anzahl Versuche im laufenden Szenario,
muelleimerCount: Anzahl Mülleimer-Antworten im laufenden Szenario,
attemptsThisStep: Versuche am aktuellen Step (1 = erster Versuch),
secondsElapsed: Sekunden seit Szenario-Start,
achievementsUnlocked: Gesamt freigeschaltete Badges (cross-Szenario, localStorage),
achievementsTotal: 6,
health: 'good' | 'ok' | 'struggling',
healthLabel: 'Schritt 3/6 · 2. Versuch' für Tooltip
}
```
**Health-Logik** (passt zur nächsten Phase Lehrer-Auswertung / Fleißanzeige):
- `struggling` → Mülleimer ≥ 3 ODER attemptsThisStep ≥ 3
- `ok` → Mülleimer ≥ 1 ODER attemptsThisStep ≥ 2
- `good` → sonst (auch im Start- und End-Screen)
## Empfehlung Spalten für LIVE_PRIMARY_FIELDS["eu-werkstatt"]
Für die Klassen-Vergleichstabelle würde ich diese 6 Felder als Default-Spalten vorschlagen — passen auf einen Bildschirm und sind didaktisch aussagekräftig:
| Feld | Header | Format |
|---|---|---|
| `scenarioTitle` | Szenario | Text (mit `scenarioIcon` als Präfix) |
| `step` / `stepsTotal` | Fortschritt | „3 / 5" |
| `firstTryHits` | Treffer | Zahl |
| `muelleimerCount` | Mülleimer | Zahl (0 = grün, ≥3 = rot) |
| `difficulty` | Modus | „Einfach" / „Profi" |
| `secondsElapsed` | Dauer | mm:ss |
Plus die `health`-Ampel als kleines Kreis-Icon ganz links — wenn das Live-Cockpit schon Ampeln unterstützt.
## Querverweise
- [App/sims/eu-werkstatt/game.html](App/sims/eu-werkstatt/game.html#L4400) — `window.GGS_LIVE_STATE`
- Wrapper: [App/pages/eu-werkstatt.php](App/pages/eu-werkstatt.php) (lädt live-client.js bereits)
- Reference: [App/sims/klima/game-2d.html#L1317](App/sims/klima/game-2d.html#L1317)
— EU-Werkstatt