Some checks failed
Smoke Test / smoke (push) Has been cancelled
Merge PR #613
2.8 KiB
2.8 KiB
Tower Game — Trust and Conflict Mechanics
A narrative emergence game with real consequences. Trust must be maintained or it decays. Conflict has real impact on relationships.
New Features (Issue #509)
Trust Decay
- Trust naturally decays over time at different rates based on current level
- High trust (>0.5): decays slowly (0.003/tick)
- Medium trust (0-0.5): decays normally (0.005/tick)
- Negative trust (<0): decays faster (0.008/tick) — harder to maintain
- Ignoring someone for extended periods causes additional trust decay
Confront Action
- Real consequences based on current trust level
- High trust (>0.5): Productive confrontation, small trust loss (-0.05 to -0.15)
- Medium trust (0-0.5): Risky confrontation, moderate trust loss (-0.1 to -0.3)
- Negative trust (<0): Hostile confrontation, large trust loss (-0.2 to -0.4)
- Creates "trust crisis" when relationship drops below -0.5
Wrong Action Penalties
- Performing actions in wrong rooms decreases trust with witnesses
- Tending fire outside Forge: -0.05 trust
- Writing rules outside Tower: -0.03 trust
- Planting outside Garden: -0.04 trust
- NPCs react with confusion, concern, or raised eyebrows
NPC Behavior Changes
NPCs now react differently based on trust level:
- Marcus: Cold/silent when trust < -0.3, cautious when trust < 0.2, normal otherwise
- Bezalel: Dismissive when trust < -0.2, neutral when trust < 0.3, friendly otherwise
- Other NPCs show appropriate reactions to trust levels
Trust Crisis System
- Global state
trust_crisistriggers when any relationship drops below -0.5 - Creates narrative tension and consequences
- Affects world events and character interactions
Acceptance Criteria Met
- Trust decreases through wrong actions
- At least one character reaches negative trust during gameplay
- Low trust changes NPC behavior
- Confront action has real consequences
Running the Game
cd timmy-world
python3 game.py
Running Tests
cd timmy-world
python3 test_trust_conflict.py
File Structure
game.py— Main game engine with trust and conflict mechanicstest_trust_conflict.py— Tests verifying acceptance criteriaREADME.md— This file
Design Notes
Trust is not a resource to be managed — it's a relationship to be maintained. The decay system ensures that:
- Trust requires active maintenance
- Neglect has consequences
- Conflict is risky but sometimes necessary
- Relationships can break and need repair
- NPC behavior reflects the quality of relationships
This creates meaningful choices: do you tend the fire (productive) or confront Marcus (risky)? Do you help Bezalel (builds trust) or ignore everyone (trust decays)?
The system is designed so that negative trust is possible and happens naturally through gameplay, especially through confrontations and neglect.