Politics & Factions

Faction relations, polity stability, diplomacy modelling, and reputation mechanics grounded in simulation state.

What this uses

src/sim/world.ts src/sim/morale.ts src/sim/formation.ts src/sim/team.ts src/sim/collective-activities.ts

Faction and polity mechanics are host-level concerns. Ananke provides the physics substrate — morale, casualties, supply pressure — from which faction stability and diplomatic pressure naturally emerge. The host tracks polity objects and uses simulation outputs as inputs to political state transitions.

Tier 3 — planned A formal polity/faction API is not yet implemented. These previews show the design direction.

Faction browser — static preview

static preview
Empire of Karath
monarchy · large
stability
military
Merchant Guild
oligarchy · medium
stability
military
Hill Tribes
tribal · small
stability
military

Relation matrix — static preview

static preview

Diplomatic stance between faction pairs. Derived from simulation outputs: battle casualties, trade volume, proximity pressure.

Empire Guild Hill Tribes Church Corsairs
Empire — friendly war allied war
Guild friendly — neutral neutral rival
Hill Tribes war neutral — rival friendly
Church allied neutral rival — war
Corsairs war rival friendly war —
allied friendly neutral rival war

Try this

  1. Track faction stability as a Q value updated each session step: large battle casualties → stability_Q decreases.
  2. Use src/sim/morale.ts outputs (fear, rout) as inputs to faction morale — army rout events shift diplomatic stance toward desperation or capitulation.
  3. Model reputation as a cumulative sum of event scores — KILL events weight negatively, TRADE events positively.
  4. Use src/sim/team.ts to associate entities with factions and aggregate faction-level vitals.
  5. See src/sim/collective-activities.ts for ritual and caravan mechanics that affect inter-faction relations.