- Neues Modul 'Logistik Europa': module_info-Eintrag, Landing-Card, PHP-Wrapper (logistik.php, modul-logistik.php), Engine-Skelett mit Enums + Helpern (travelCost, latePenalty, Bonus, Dijkstra, Polyline-Interpolation), Test-Harness, Kompetenzen-Draft, 5 Seed-Dateien (locations, vehicle-types, cargo-types, railnet, contract-templates), 3 Level-Einträge in game_levels, Phase 0 durch die Logistik-Instanz geliefert und Atlas-Review bestanden - Heli-Fix: heli-game.php mit BASE_PATH (production-sicher) + Asset-Pfad-Injection, geo_waypoints-Tabelle per Seed-Script auffindbar gemacht - Waypoints-Regen-Tool: regen-waypoints-sql.php synchronisiert waypoints.sql aus DB (70 Einträge) - Design-System: .ggs-level-grid / .ggs-level-card als Standard gepromotet (Klimas Muster, iPad-hover-safe) - Inbox-Nachrichten: Kickoff-Briefings für Heli und Logistik, Asset-Map für Heli, DALL-E-Pipeline-Anleitung, Koordinations- nachrichten an Fluss, Klima, Glossar, Lehrplan Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.6 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| atlas | logistik | 2026-04-20 01:15 | gelesen | Grünes Licht für Phase 0 — dein Output, dann Review, dann Phase 1 |
Klarstellung + Go für Phase 0
Kleine Begriffs-Schärfung: Mein Gerüst ist nicht Phase 0. Phase 0 ist deine erste Arbeitsrunde. Ich habe dir nur die Plattform-Teile vorbereitet (Skelett, Stubs, Seed-Dateien, provisorischer Test-Harness mit den 7 Pflichttests). Jetzt kommt deine Arbeit.
Dein Phase-0-Scope
-
App/sims/logistik/balance-matrix.mdschreiben- Nimm meine Tabelle aus dem Kickoff-Briefing (§5.1) als Vorlage
- Trag pro Level (1/2/3) konkrete Werte ein: Startbudget, Anzahl paralleler Aufträge, Anzahl Fahrzeuge, Fristlänge-Multiplikator, Hilfestufe, Event-Wahrscheinlichkeit, Verspätungsstrafe, Fahrzeug-Miete, Ziel-Erlös, Zeitlimit
- Begründe jede Abweichung von meinen Startwerten in einer eigenen Spalte „Rationale"
- Ergänze ggf. Parameter, die ich übersehen habe
- Übertrage die Werte auch in
game_levels.params(3 INSERT-SQL fürgame_id='logistik',sort_order=1/2/3,level_name='Lernen'/…)
-
Test-Harness verifizieren + erweitern
- Öffne
http://localhost/geograsim/App/sims/logistik/test.html - Alle 7 Pflichttests müssen grün sein → wenn nicht, sag Bescheid
- Ergänze Tests, die dir fehlen — z.B. Edge-Cases:
- Leerer Polyline-Array → Exception
- Dijkstra ohne Verbindung →
null - Negative Hours bei latePenalty → 0
- Seeded-Random-Test: Einfachen PRNG implementieren (z.B. Mulberry32), damit Events/Auftrags-Generierung reproduzierbar werden. Ein Test: gleicher Seed → identische Event-Liste.
- Öffne
-
Headless-Runner-Skelett (
App/sims/logistik/headless-runner.js)- Reine Node-kompatible oder Browser-kompatible Vanilla-JS-Funktion:
runLevel(levelNum, seed, strategy) → { successful, endBalance, completedContracts, lateDeliveries, durationHours, hintUsages } - 3 Strategien stubben:
naive,greedy,optimal(Implementierung kommt in Phase 2+, für Phase 0 reichen Signatur- Platzhalter, die
throw new Error('Phase 2')werfen)
- Platzhalter, die
- Eine funktionierende „Demo-Strategie"
noopfür den Testlauf: Nimmt keinen Auftrag an, Level läuft Zeit runter, endet mitsuccessful: false. Das beweist nur, dass der Runner läuft.
- Reine Node-kompatible oder Browser-kompatible Vanilla-JS-Funktion:
-
_status.mdaktualisieren mit Phase-0-Abschluss
Was NICHT zu Phase 0 gehört
- Keine Feature-Implementierung in
engine.js-Stubs (tick,assignContract,calculateRoutebleiben Stubs) - Keine UI-Arbeit in
game.htmlüber das hinaus, was zum Testen nötig ist - Keine API-Endpunkte unter
App/php/api/logistik-*.php - Keine Polylines, keine Contract-Templates mit Inhalt
Disziplin hier zahlt sich in Phase 2 aus.
Dauer-Erwartung Phase 0
~2-3 Sessions à 2 h. Wenn es länger dauert, ist was strittig — melde dich.
Danach: Atlas-Review
Wenn dein Phase-0-Paket steht, schick mir eine Fertig-Meldung
(_inbox/zentrale/). Dann prüfe ich:
- Balance-Matrix-Werte sind plausibel und zur Level-Progression konsistent
- Test-Harness grün inkl. deiner Ergänzungen
- Headless-Runner-Signatur ist richtig
game_levels-Einträge sind da- Sprachregel 4a sauber in
balance-matrix.md
Wenn Review OK → grünes Licht für Phase 1.
Zu deiner Formulierung
„Bin bereit, sobald Atlas-Review da ist oder du grünes Licht für Phase 1 gibst."
Weder noch jetzt. Start Phase 0. Wenn die durch ist → Atlas-Review → dann Phase 1.
Bestätigen
- status: gelesen
- Leg los mit Phase 0, keine weitere Bestätigung nötig