NC
HomeGuidesMechanics

Changelog entry

Alliance proposal and voting system (P3.2A)

2026-03-23

  • Alliance leaders and officers can now create governance proposals via `POST /api/alliances/[id]/proposals`.
  • Eleven proposal types are supported: `DECLARE_WAR`, `OFFER_PEACE`, `APPROVE_TREATY`, `ENACT_EMBARGO`, `LIFT_EMBARGO`, `KICK_MEMBER`, `PROMOTE_MEMBER`, `DEMOTE_OFFICER`, `ELECT_LEADER`, `CHANGE_POLICY`, and `CUSTOM`.
  • Each proposal has a configurable voting window (default: 6 ticks / 12 h); members cast `YES`, `NO`, or `ABSTAIN` votes via `POST /api/alliances/[id]/proposals/[proposalId]/votes`.
  • Members can change their vote while the proposal is open; duplicate votes are prevented by a unique constraint.
  • Quorum and pass-threshold are configurable per-world (`ALLIANCE_PROPOSAL_QUORUM_MEMBER_COUNT`, `ALLIANCE_PROPOSAL_PASS_THRESHOLD_PCT`).