Hi, I’m currently Seeking architectural feedback on a multiplayer social reputation prototype and prototyping a small-scale persistent multiplayer system focused on social consequence rather than combat progression.
I’m still early in implementation (learning programming and starting with text-based simulation), and I’d appreciate feedback on the system architecture before I move further.
The core idea is a distributed reputation model where NPCs interpret actions rather than recording a global morality score.
Core Principles
- No global reputation bar
- Reputation is local to each town (cluster-based belief model)
- Actions generate rumor objects
- Rumors influence a town’s belief state over time
- Identity states use asymmetric thresholds (hysteresis) to prevent flip-flopping
Rumor Model (Current Structure)
Each action generates a Rumor Object containing:
1. Base Impact
2. Echo (short-term propagation velocity, decays quickly)
3. Inertia (long-term persistence affecting behavioral bias, decays slowly)
4. Propagation is bounded (O(nk) style — capped connections per NPC to avoid full mesh explosion).
For MVP:
- 1 town
- ~20 NPCs
- Cluster-level belief state per town
- NPC-level reaction differences via job relevance + personality bias (not full per-NPC belief storage)
Town Belief State
Each town maintains:
1. Dominant Narrative State (e.g., Trusted / Unstable / Distrusted)
2. Stress Level
3. Entry and Exit Thresholds (asymmetric to prevent oscillation)
4. External Pressure (from traveling NPC rumor carriers)
5. Rumors increase stress. When stress crosses thresholds, identity state shifts.
Reaction Layer
Cluster belief influences NPC behavior through:
- Pricing changes
- Access restrictions
- Guard behavior
- Dialogue tone shifts
- Personality and job relevance weight reactions, but narrative state remains cluster-level.
What I’m Looking For
I’d appreciate feedback on:
Would you store belief strictly at cluster level for scalability, or hybrid with selective per-NPC belief?
Event-driven vs tick-based decay for Echo/Inertia — which would scale cleaner?
Any obvious failure points in stress/threshold modeling?
Is separating short-term propagation (Echo) and long-term persistence (Inertia) architecturally sound, or would you merge them?
I’m not building a full MMO at this stage — just validating whether this social consequence engine is structurally sound before expanding.
Thanks in advance for any architectural or scalability feedback.