Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1380207 Posts in 65795 Topics- by 58187 Members - Latest Member: rarbgproxys

August 05, 2020, 05:27:15 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsShadows Behind the Throne: Open source Lovecraftian Grand-Strategy/Political-Sim
Pages: [1]
Print
Author Topic: Shadows Behind the Throne: Open source Lovecraftian Grand-Strategy/Political-Sim  (Read 177 times)
bobbytwohands
Level 0
*


View Profile
« on: July 31, 2020, 08:08:41 AM »

Many years ago, a game called “That Which Sleeps” was kickstarted. Despite nearly 100 grand being raised, it was never produced. A shame to me, as it combined all my favourite things: Lovecraftian Horror, simulated world-wide apocalypse, and politics. So since then a friend and I have been working on an opensource game which combines these elements, in a similar-but-different framework.

Core design elements are:
-Agent-based political simulator, where you can play as a member of the society you're attacking
-Dynamic living world, in which NPC societies engage in activity without you, with the world always in motion (no empire lasts forever, no end-point of history)
-Broad range of scale for player interaction. You can be voting on a minor village appointment to replace a dead noble; killed by a civil war you started by exploiting changing circumstances; caused by the player-caused climate change which removed half the map's habitable region.



It's essentially a game of deception, in which you constantly exploit the political landscape of the various nations to prevent them from defending themselves. Against any of your tools the NPC societies have a defence. If you spread shadow into their souls they can clean themselves and execute those too contaminated. If you build an army of Deep Ones in the ocean they can send their fleets to destroy your cities. If you get your noble elected to the sovreign of a major Queendom you can be removed by civil war.

But all this requires the NPCs to firstly realise that there's a problem, and secondly vote to fix the issue. And the NPCs (like real politicians) are all acting to help themselves first and their nations second. If you constantly benefit the iron workers, they may well overlook certain transgressions, and any alliance can be shattered by planting the suspicion that the leader of the forces of good is himself in league with the shadow.



By making the game open source and free there's far less requirement to keep the game static, or following a timetable. As we develop we find new directions, and can explore these for a few version releases.

I'll post a few devlog posts in case anyone here is interested in reading about the challenges and concepts we've encountered over the years.

Itch.io link to the game here, if you're interested. Link to github and Let's play video tutorials also on this page:
https://bobbytwohands.itch.io/shadows-behind-the-throne-2
Logged
bobbytwohands
Level 0
*


View Profile
« Reply #1 on: August 01, 2020, 02:20:46 PM »

The first system: politics

All societal actions in the game are handled by voting. These cover: the election of nobles to the various positions (king, duke, count); the nation's military stance (offensive, defensive, introspective); the criminal justice system (voting to rule a noble or unit guilty or innocent); and the economics (benefiting one or more groups of nobles while harming others).



Keeping everything in one system has major advantages. The player can easily interact with this, as it's just a set of options each noble can choose from, so the UI remains constant for all decisions. The NPCs' social AI can also easily navigate this system. If someone voted for one economic reform, they can then vote against them in the next election or even against them in a trial. All they need to do is remember who voted for stuff they like, and who voted for stuff they dislike. This already leads to my favourite type of gameplay: political disfunction. If an NPC has upset another, they can accuse them of witchcraft, and a sufficiently disliked noble can be executed despite being absolutely innocent. This gives good leeway for the player to tip this system into complete chaos.

The system depends on very simple fundamentals:
-All nobles in a society can vote in all elections. This means the player is always involved in all decision making processes for their society.
-For every decision, every vote assigns a numeric value, its “utility”. This is simple to calculate, as it is the sum of a set of weighted factors, including how much they like one another.
-The player can see every NPCs reasoning process. This allows them to plan and understand why an NPC or society is acting the way it is, and figure out how easily they could influence it.
-Every NPC gains or loses liking towards everyone else based on how they vote. This allows the player to see who wants what, and who will like them or hate them based on how they vote.

The voting is designed to create natural alliances. The NPCs live in provinces, of between 2 to 6 nobles, who will share an economic interest. Any economic vote harms one economic interest and benefits another. The nobles hate being harmed, more than they like being benefited. This means you have to choose who your allies are, amongst other provinces. The nation will then form into two teams, of roughly equal size, who dislike each other.

This subdivision is designed to create an easy environment for the player to influence. The leader of the society will probably only have a slight majority, and the player can angle to get them unseated, and take their position. It also means foreign nations can be driven into civil war, as every nation naturally has deep political divisions. Supply enough military support to the opposition, and they may decide to take non-political actions to address the political grievances they feel.

Noted downsides to the design:

-This system is sadly still hard to perfectly understand, especially as a new player, as the sheer amount of information is hard to convey at speed. Multiple separate UI elements had to be designed, to give the player many ways to access the information they need in the form they desire.

-The number of votes is sometimes excessive. Giving the player full involvement in every decision can be irritating, as they often don't care about the minor ones.

-Players are not readily aware of how voting will be useful. They assume that if they don't care about a vote they can select any option, when in fact these decisions are how allies are made.
Logged
bobbytwohands
Level 0
*


View Profile
« Reply #2 on: August 04, 2020, 01:48:41 PM »

World stability

As mentioned, the world is designed to continuously change. The nations should rise and fall, even without player intervention.
There are two main reasons for this:
-The player can exploit these dynamics for their own ends
-The world feels more real and alive, increasing immersion in the political landscape

The problem is that the nations must also be, nearly all the time, in a state which is conducive to good gameplay. The game is designed to assume there will be a number of nations, of reasonable size. This allows both internal and external politics. This is a difficult feature to balance with the dynamic world, which could easily result in either a single giant empire or a constant state of collapse into micro-nations.

To achieve this state, a set of systems are in place:

Procedural History: World generation randomly creates a map, and places starting nations, then plays forward time for 150 to 200 turns. This allows nations to stabilise, and gives the player a world with a fleshed out history. NPCs have relationships to one another based on how they behaved in this historical simulation, and the monarchs of the various nations are far more likely to be ones with better leadership traits than simple random chance. This force acts against immediate collapse and civil war, as these have already occurred and reached an end state.

Non-linear militaries: If a nations can invade one another and absorb their military capabilities, the largest will be able to constantly absorb weaker ones, until only one nation is left. The NPCs would vote for this, because they see their neighbours as weaker. To avoid this behaviour, we scaled the military strength by raising it to the 0.75th power. This means that the larger nations only gain a small amount of growth from invading their neighbours. As such, the nations become more similar in military capability, so are less able to invade each other.

Province Politics: The NPCs share industrial concerns with the others in their province. If a given area produces wine, all noble NPCs in that area will have an interest in the nation benefiting wine-makers. The neighbouring province might make silver or iron, however. A single province nation therefore has low conflict, but nations which grow will experience greater than greater internal strife as they gain more industries, all opposed to one another.

War aversion in times of political instability: The nobles would prefer to avoid war if they were already at risk of civil war, instead setting their nation's foreign policy to “introverted”, and instead focusing on internal issues. This would mean that once a previous mechanism had introduced instability into a large nation, it would focus on itself, rather than its neighbours.

Ultimately, however, these systems still only reduced the problem, and it was routine for the map generation to produce a map with only tiny nations, or just one huge one. As a result, the last mechanic rather removed the elegant balancing acts, and instead simply introduced a maximum desired empire size. Past this point, the nobles would have a strong aversion to wars of conquest, to keep nations at the maximum desired size. This mechanic is a bit inelegant, as it is forcing the behaviour to a large degree, rather than having it arise organically, but it allows for the desired outcome.
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic