Agent Simulation Framework #5
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description
In order to create a living, breathing village of 500 NPCs that feel alive and autonomous,
as players exploring the world of Aspen,
we need a comprehensive agent simulation framework that enables emergent behavior from simple generic rules.
Business Value:
This is the core of what makes Aspen unique—a village where every inhabitant has their own life, relationships, and routines that continue whether players are watching or not. The baker wakes before dawn, bakes bread, serves customers, and returns home. When she gets sick, her apprentice covers. When her child starts school, her mornings shift. These aren't scripted events—they emerge from the interaction of simple systems.
Success means Dwarf Fortress depth on iPad hardware, with multiplayer synchronization that "just works."
Scope
In Scope:
Out of Scope:
Success Criteria
Metrics:
Features & Tasks
Layer 1: Foundation
Layer 2: Life Arc System
Layer 3: Schedule System
Layer 4: Behavior Tree System
Layer 5: World Substrate
Layer 6: Institutions
Layer 7: Relationships
Layer 8: Conditions
Layer 9: Tools & Capabilities
Layer 10: Production Workflows
Layer 11: Performance Architecture
Layer 12: Networking & Sync
Dependencies & Risks
Dependencies:
Risks:
Additional Context
See RFC 0006 for full architectural details (will be moved to marathon repo).
This epic represents the largest single feature and will likely span multiple months. The implementation should be incremental—each layer should be validated in isolation before adding the next. Start with foundation, add one layer at a time, and continuously test performance and emergent behavior.
The key insight is temporal scale separation: slow-changing state (life arcs) uses different update strategies than fast-changing state (behavior trees). By layering these concerns, we can update slow things slowly and fast things only when necessary.
Philosophy: Generic composition over special cases. Emergence over authorship. Consequences without failure. Existence is cheap; cognition is expensive.