A province sitting at full loyalty and full order should not be revolting, and yet the threads asking why are years old and still unanswered. The short version: the number on the panel is a result, not the input to the rebellion check, and distance from the capital is doing work that the interface never shows you.
The chain, in order
Four layers stack, and each one only reads the layer above it:
- Fulfillment — several categories, each satisfied independently.
- Happiness — derived from how many categories are met, per race.
- Loyalty — derived from happiness, then affected by other factors such as law and administration.
- Rebellion risk — the wiki’s riot entry documents one hard threshold: a riot event may fire once any species’ loyalty drops to 70% or lower. Some of these events are mild strikes, others are violent, and the game’s own death log lumps riot deaths in with unrelated species-housing brawls, which is a common source of confusion when you are trying to diagnose what actually killed someone.
The trap is that the loyalty figure you read on a province panel is often a capital-side figure or a lagging average. In our games a province has displayed a healthy number while unrest still broke out — we have not seen the developer or the wiki document a distance penalty applied at the point of the check rather than to the displayed value, so treat that part as our own observation, not a confirmed rule.
Which lever to pull
| Lever | Moves | Speed | Cost |
|---|---|---|---|
| Garrison size | Rebellion roll directly | Immediate | Ongoing upkeep |
| Administrative buildings | Loyalty floor | Days | Build time, staff |
| Tax rate | Happiness, then loyalty | Days | Direct income loss |
| Race-appropriate food variety | Fulfillment, then happiness | Weeks | Production chains |
| Temples and taverns in range | Fulfillment | Weeks | Build time, staff |
| Decoration score | Fulfillment | Weeks | Materials |
If a province is actively rebelling, only the top two rows arrive in time. Everything below them is a fix for next season, not for this one.
Race is not a modifier, it is a different problem
Each race satisfies fulfillment from different sources. A food set that keeps one race content can leave another permanently short of a category, which caps their happiness no matter how much you spend on decoration. Mixed housing carries its own, separate, documented penalty: the wiki’s brawls entry puts the mechanic at species with less than 100% preference for each other living within 58 tiles of one another, which can lead to brawl deaths that the game’s log attributes the same way it attributes riot deaths. That is a housing-proximity effect, not a fulfillment penalty, and the two are easy to conflate when a death log does not distinguish them. When a single province rebels and its neighbours do not, check the population mix before you check anything else.
V71 changed the ground under all of this
The law, order, slavery and family layers landed together and there is effectively no documentation for how they interact with the older loyalty chain. Ruling by fear and ruling by mercy are now two distinct trees with different failure modes, and guidance written before that update should be treated as unverified rather than wrong.
Sources
- Songs of Syx Wiki, Riot — the 70%-loyalty threshold that triggers riot events, and the shared “brawls” death attribution
- Songs of Syx Wiki, Brawls — the 100%-preference / 58-tile mechanic behind mixed-housing brawl deaths
- V71 - Reign of Terror - Available Now (Steam) — confirms law, order, slavery and family landed together in V71, and the fear-vs-mercy loyalty/happiness trade-off