Assistant
gpt-5.5 | agent=build | finish=stop
**Umsetzungsplan**
Ziel: Aus dem aktuellen LLM-Visual-Novel-Prototyp eine Tokimeki-artige Dating-Sim machen, bei der LLM-Dialoge die Szenen beleben, aber Spielregeln, Gates, Kalender und Endings deterministisch bleiben.
**Phase 1: Zielmodell Festlegen**
1. Kernloop definieren: Woche planen, Stats steigern, Bagger treffen, Date vereinbaren, Beziehung pflegen, Krisen vermeiden, Finale erreichen.
2. Spielzeit festlegen: Entweder 30 Tage beibehalten und dichter machen oder auf Tokimeki-artige Wochenstruktur umbauen.
3. Sichtbarkeit festlegen: Exakte Werte nur im Debug/Status, Spieler sieht im normalen Modus eher grobe Einschätzungen.
4. Siegtypen definieren: `missed`, `bad`, `friendship`, `normal`, `true`, `secret`.
5. LLM-Grenzen definieren: LLM darf Dialog und Stimmung schreiben, aber keine Werte, Flags, Lock/Ending-Entscheidungen bestimmen.
**Phase 2: Regelmodell Neu Balancieren**
1. Stat-Gates pro Route einführen.
2. Aurora: `mechanics`, `focus`, Geduld/ruhige Orte.
3. Brummbert: `patience`, `courage`, Rettungs-/Vertrauensmomente.
4. Mira: `focus`, `mechanics`, präzise Fragen/Beobachtung.
5. Beziehung langsamer wachsen lassen: Bindung darf nicht vor Tag 10 bis 15 auf 100 steigen.
6. Commitment von einfachen romantischen Klicks entkoppeln.
7. Dates begrenzen: maximal bestimmte Slots pro Woche oder nur nach Einladung.
8. Fatigue schärfer machen: hohe Fatigue senkt Date-Erfolg und kann schlechte Szenen triggern.
9. Repair-Druck normalisieren: nicht unter 0 fallen lassen.
10. Neglect-Druck für nicht besuchte Bagger aktivieren.
**Phase 3: Kalender Umbauen**
1. Kalender in Wochenblöcke strukturieren.
2. Feste Spezialtage behalten: Regen, Schrottmarkt, Jahrmarkt, Wartungstag, finale Nacht.
3. Wochenend-/Abenddate-Fenster einführen.
4. Trainingstage von Date-/Event-Tagen unterscheidbar machen.
5. Geburtstags-/Schlüsseltermine für jeden Bagger hinzufügen.
6. Kalender-UI erweitern: kommende bekannte Termine, verdeckte Gerüchte, geplante Dates.
7. Verpasste Termine als Flags speichern und später auswerten.
8. Finale nicht nur “Tag 30 Nacht”, sondern als Ergebnis der vorherigen Kalenderentscheidungen inszenieren.
**Phase 4: Date-System Neu Schreiben**
1. `invite_date` muss echte Zusage/Ablehnung prüfen.
2. Date-Erfolg abhängig machen von Bindung, Mood, Ort, Geschenk, Fatigue, Stats, Wiederholungen.
3. Date-Orte stärker differenzieren: gute, neutrale, schlechte und Schlüsselorte.
4. Wiederholungsstrafen sichtbar machen.
5. Saison-/Tageszeit-Affinitäten stärker gewichten.
6. Date-Ausgänge einführen: super, gut, neutral, schlecht, abgebrochen.
7. Nach Date-Ausgang passende Follow-up-Szene generieren.
8. Geschenke verbrauchen, aber gute Geschenke sollten erinnerbare Flags setzen.
9. Kritische Geschenke nur an bestimmten Tagen/Schwellen voll wirken lassen.
10. Bagger können Dates ablehnen, wenn Krise offen, Fatigue zu hoch, falsche Route oder zu wenig Vertrauen.
**Phase 5: Route-Lock Klären**
1. Lock-Bedingungen explizit als Funktion implementieren.
2. Beispiel: mindestens 3 Dates, Bindung 55+, route-spezifische Stats, Commitment 8+, Repair unter 4, Tag zwischen 10 und 16.
3. `route_lock_ready` und `route_locked` strikt trennen.
4. UI soll erklären: “bereit, aber es fehlt noch ein Abend-Date” oder “bereit, aber offene Krise”.
5. Lock-Szene als exklusives Event erzwingen, nicht zufällig zwischen Daily-Szenen verstecken.
6. Nach Route-Lock andere Routen nicht einfach abschalten, sondern als Nebenkonflikte/Bomben weiter beobachten.
7. Lock zu spät: Friendship oder Missed-Risiko deutlich signalisieren.
8. Lock gar nicht: Missed Route End vorbereiten.
**Phase 6: Bomb-/Neglect-System**
1. Für jeden Bagger `neglect`, `jealousy`, `unresolvedCrisis`, `bomb` einführen.
2. Neglect steigt, wenn über mehrere Tage kein Kontakt stattfindet.
3. Bomben entstehen durch ignorierte Dates, gebrochene Versprechen, schlechte Geschenke, öffentliche Peinlichkeit.
4. Bomben senken Reputation/Trust auch bei anderen Baggern.
5. Spieler bekommt Hinweise über Kalender, Gerüchte oder Status.
6. Bomben können durch Entschuldigung, Date oder passende Hilfe entschärft werden.
7. Nicht entschärfte Bomben können Bad End oder schlechteres Finale verursachen.
8. Bomben dürfen nicht unfair sein: mindestens eine klare Warnung vor Schaden.
**Phase 7: Event-Content Ausbauen**
1. Pro Route mindestens 45 bis 60 Events statt 21 schreiben.
2. Eventtypen: Intro, Daily, Stat-Gate, Date, Bad Date, Crisis, Repair, Lock, Romance, Friendship, Secret, Finale.
3. Für jeden Bagger 3 bis 5 exklusive Date-Ortsvarianten schreiben.
4. Für jeden Bagger 2 bis 3 Krisenketten schreiben.
5. Für jeden Bagger 1 Secret-Route mit klaren Schlüsselbedingungen schreiben.
6. Midgame-Events nach Lock schreiben, damit Tag 17 bis 29 nicht repetitiv wird.
7. Wiederholte Daily-Szenen auf kurze LLM-Filler reduzieren oder seltener machen.
8. Jede Route braucht eigene finale Symbolik, nicht nur andere Namen.
9. Memories/CG-Galerie an echte Meilensteine koppeln.
10. Event-Auswahl so ändern, dass abgeschlossene Szenen nicht ständig wiederholt werden.
**Phase 8: LLM-Integration Präzisieren**
1. Vor dem LLM deterministisch entscheiden: Szene, Route, Sprecher, Ort, Outcome, Wertänderungen.
2. LLM bekommt nur erlaubte Fakten und soll daraus Dialog schreiben.
3. LLM-Antwort muss Schema erfüllen: `reply`, `emotionalRead`, `memoryCandidate`, keine Regeländerungen.
4. Freitext wird separat klassifiziert: ehrlich, romantisch, ausweichend, repair, neugierig, unpassend usw.
5. Klassifikation muss erklärbar in Feedback erscheinen.
6. LLM darf keine Endings vergeben.
7. Fallback-Texte schreiben, falls LLM ausfällt.
8. Safety/Style-Bible härten: Bagger-Persona, Ton, keine generischen Anime-Floskeln.
9. Wiederholungen tracken und dem LLM verbieten: “nicht erneut Regen/Jahrmarkt verwenden, wenn gerade schon benutzt”.
10. Memory-System begrenzen, zusammenfassen und route-spezifisch machen.
**Phase 9: UI/UX Verbessern**
1. Erstes Spiel mit kurzer geführter Einführung starten.
2. Quick-Menü mit Textlabels oder Onboarding-Tooltips versehen.
3. Status-UI in “Spielerfreundlich” und “Details” trennen.
4. Route-Guide konkreter machen: “Es fehlt: 1 Date, Mechanik 8, Repair senken”.
5. Kalender stärker in den Mittelpunkt rücken.
6. Date-Planung klarer zeigen: Erfolgschance, Risiko, bekannte Vorlieben.
7. Nach jeder Aktion eine kompakte Auswertung zeigen.
8. Wichtige Warnungen persistent anzeigen, nicht nur kurz als Feedback.
9. Route-Map mit Silhouetten/Meilenstein-Namen statt nur `???`.
10. Ending-Galerie zeigt Bedingungen grob nach Freischaltung.
**Phase 10: Tokimeki-Gefühl**
1. 90er-Dating-Sim-Ästhetik stärker einsetzen: Kalenderkarten, Statusfenster, Jingles, Album, Icons.
2. Date-Orte mit eigenen Hintergründen/3D-Varianten oder illustrativen Panels versehen.
3. Bagger-Portraits/Modelle mit Posen und Mood-Zuständen versehen.
4. Kleine Routinen einbauen: Morgenhinweis, Wochenrückblick, Anruf/Einladung, Gerücht.
5. Feiertags-/Event-Musik und Musikzimmer tatsächlich mit Tracks/Loops füllen.
6. Finaler Konfessionsmoment pro Route stark inszenieren.
7. Secret-Endings als echte Überraschung gestalten, nicht nur besseres Romance-End.
8. Rivalitäts-/Nebenkonflikte optional einbauen, falls Scope reicht.
**Phase 11: Testing**
1. Automatisierte API-Simulationen schreiben.
2. Testfälle: perfekter Aurora-Run, perfekter Brummbert-Run, perfekter Mira-Run.
3. Testfälle: Missed Route, Bad End durch Bomben, Friendship End, Normal, True, Secret.
4. Testfälle: Date-Ablehnung, schlechte Geschenke, hoher Fatigue, offene Krise.
5. Testfälle: Save/Load mitten in Lock, mitten im Date, vor Finale.
6. Balance-Simulationen laufen lassen: zufällige Spieler, naive Spieler, optimale Spieler.
7. Zielwerte prüfen: gute Spieler erreichen Normal/True, perfekte Spieler Secret, passive Spieler Missed, ignorante Spieler Bad.
8. Manuelle Playtests mit Erstspielern: verstehen sie bis Tag 5, was zu tun ist?
9. Wiederholungsrate messen: keine Daily-Szene häufiger als X-mal pro Route ohne Variation.
10. LLM-Ausfall testen: Spiel muss mit Fallback weiterlaufen.
**Phase 12: Konkrete Reihenfolge**
1. Regel-/Ending-Tests schreiben, damit Änderungen kontrollierbar bleiben.
2. Route-Lock-Funktion neu schreiben und UI-Hinweise verbessern.
3. Balancewerte senken: langsamerer Beziehungsaufbau, härtere Stats, Repair clampen.
4. Date-System mit Zusage/Ablehnung und Outcomes umbauen.
5. Event-Auswahl gegen Wiederholungen härten.
6. Neglect-/Bomb-System implementieren.
7. Kalender-UI erweitern.
8. Pro Route Midgame- und Finale-Events auffüllen.
9. LLM-Prompt/Schema auf deterministische Outcomes umstellen.
10. Visuelles/UX-Polish und Tokimeki-Atmosphäre ergänzen.
**Definition Of Done**
- Ein passiver Spieler verliert nachvollziehbar.
- Ein halbwegs guter Spieler kann Normal oder Friendship erreichen.
- Ein sehr guter Spieler kann True erreichen.
- Secret braucht bewusste Spezialbedingungen.
- Route-Lock passiert verständlich und nicht zufällig.
- Dates fühlen sich wie Entscheidungen an, nicht wie freie Wertgeneratoren.
- Midgame wiederholt sich nicht ständig.
- LLM macht die Szenen charmanter, aber kann das Spielsystem nicht kaputtmachen.