# Falukant: Daemon-Handoff für Ehe und Hausfrieden Dieses Dokument beschreibt den Stand nach Phase A. ## 1. Was im Projekt jetzt vorhanden ist Backend-/API-seitig vorhanden: - `relationship_state.marriage_satisfaction` - `relationship_state.marriage_public_stability` - aktive Liebschaften mit: - `visibility` - `discretion` - `maintenance_level` - `status_fit` - `months_underfunded` - `acknowledged` - `user_house` mit: - `servant_count` - `servant_quality` - `servant_pay_level` - `household_order` - `household_tension_score` - `household_tension_reasons_json` - Family-API liefert jetzt zusätzlich: - `householdTension` - `householdTensionScore` - `householdTensionReasons` Direkte Spieleraktionen vorhanden: - `POST /api/falukant/family/marriage/spend-time` - `POST /api/falukant/family/marriage/gift` - `POST /api/falukant/family/marriage/reconcile` - `POST /api/falukant/houses/order` ## 2. Daily-Input für den externen Daemon Pro betroffenem Falukant-User: - `falukant_user.id` - `user.id` / `user.hashed_id` - aktive Ehe-`relationship` mit `relationship_state` - aktive Liebschaften mit `relationship_state` - Kinder mit: - `birth_context` - `legitimacy` - `public_known` - Haus mit: - `servant_count` - `servant_quality` - `servant_pay_level` - `household_order` - Charakter mit: - `reputation` - `title_of_nobility` ## 3. Was der Daemon täglich berechnen soll ### Ehe - Drift von `marriage_satisfaction` - Drift von `marriage_public_stability` - Einfluss aus: - sichtbaren Liebschaften - unterfinanzierten Liebschaften - Standesunterschieden - Dienerschaft / Haushaltsordnung - zu jungen Liebschaften ### Hausfrieden Der Daemon soll intern einen numerischen Spannungswert pflegen oder berechnen: - `householdTensionScore` `0..100` Einflussfaktoren: - sichtbare Liebschaften - anerkannte Liebschaften - unterfinanzierte Liebschaften - Kinder aus Liebschaften - Haushaltsordnung - Dienerschaft - schwache Ehe UI-Ableitung: - `0..24` => `low` - `25..59` => `medium` - `60..100` => `high` ## 4. Was der Daemon zurückschreiben soll Pflicht: - `relationship_state.marriage_satisfaction` - `relationship_state.marriage_public_stability` - `user_house.household_tension_score` - `user_house.household_tension_reasons_json` - lover-state-Felder bei Änderungen: - `visibility` - `discretion` - `months_underfunded` - optional `notes_json` / `flags_json` ## 5. Socket-/Refresh-Verhalten Wenn Daily-/Monthly-Verarbeitung Ehe oder Hausfrieden betrifft: - `falukantUpdateFamily` mit `reason: "daily"` oder `reason: "monthly"` - danach `falukantUpdateStatus` Wenn ein Sonderereignis entsteht: - `reason: "scandal"` zusätzlich ## 6. Wichtige Phase-A-Regel Die neuen Direktaktionen geben nur Sofortimpulse: - `spend-time` - `gift` - `reconcile` - `house/order` Der Daemon ist weiterhin verantwortlich für: - Rückdrift - Gegenkräfte - Langzeiteffekte - Balancing Kurz: - UI/Backend setzen kleine direkte Impulse - der Daemon bestimmt die dauerhafte Entwicklung