More detailed election results data (work in progress)

Been coding all day…need to go lie down. Here is what I did today (plus some bug fixes).

This is sort-of a tool for me to help debug some voting anomalies, but I think players might like the more in-depth analysis of why people voted how they did.

Colors show which party a voter voted for or supports. each disc is a ‘clickable’ color. Darker colors are members, lighter ones voters, feinter ones are potential voters who didn’t show up.
Already showing me there might be some balance issues… more updates hopefully tommorow.


I and others suggested making approval rate fuzzy not binary indicator of voting for your party.
That is someone with approval rate of 50% would have equal chances of voting for any party.
Approval rate of above/below 50% would mean voter more/less likely to vote for you.
This way single issue voters would be indirectly simulated.

Popularity bar then would be replaced with average approval.
Its color or something else would indicate estimated percentage of voters voting for you.

TBH I’m not sure how adding random fuzziness in that instance is an improvement? Currently someone with support 49% is 100% likely to vote for the opposition (IF they vote), making that slightly fuzzy just slightly randomizes the details of the result?

I’ve found that coding this new UI has exposed a number fo issues, and made it easier for me to visualize if the sim is working as intended. I can see immediately that the impact of voters innate voting chance is way too high. I expected to see the non-voters clustered near the middle (with support hovering around 45-55%) as this is the intent (those with no strong feelings are less likely to turn out), but the weights were wrong.

I have discovered that giving innate vote chance a 40% say in the final should I vote? decision is way too high, and doesnt allow for enough sway of events. I also found that the innate vote chance is just a simple random number up to a max level of apathy for that country, which is wrong…

For example, if a country has 60% turnout, it should have 40% non voters. I currently set the innate vote chance in that country to be from 0-60%.
Actually thats mega-wrong. What it needs to be is at a level, when compensated by other factors, that results in a 60% turnout :smiley:

Currently the decision to vote is
40% X innate value (which was 0-60% in my example) plus
40% X strength of feeling (how happy/sad they are in each direction) plus
20% X a motivator based on the activists in the party they lean towards, who encourage getting out the vote.

I’m currently experimenting with a change to
20% innate, 60% strength of feeling and 20% activist motivation

I havent got my head around the correct math for setting the innate value of each voter to get the hopefully eventual 60% turnout rate in an average scenario yet, but thats because I need some food and a drink now…

…actually realizing this is a vague problem, because we cant be sure of the strength of feeling or the activist motivation. But assume activist motivation (a) is 50% and strength of feeling is 50%.

turnout = (0.2 * i) + (0.6 * 0.5) + (0.2 * 0.5)
turnout = (0.2 * i) + (0.4)

so where turnout should be 60%,
0.6 = (0.2*i) + (0.4) errr…so innate turnout should be 100%? really? arrghhh…so tired.


Yeah, I meant that approval rate shouldn’t be 100% deciding factor (you or one of opposition parties).
Currently its bit weird, that someone with 50.000% approval WILL vote for you, if they vote at all, and someone with 49.999% approval rate WILL vote for opposition, if they vote at all.

Really, people ought to have two things:

  • a separate approval for each party (they’d prefer to vote for the party with the highest approval rating, ties are random)
  • a somewhat fuzzy notion of which party is likeliest to win/how safe the election for that party will be

Together that would allow for far more realistic elections under FPTP. However, to correctly do this I think it would require your opposition to actually propose changes as well! And I can see how that’d be really tough to do in a coherent manner.
Ideally the opposition would automatically try to shift itself around with the Overton window. There could be something like a secret ideal internal state where the party would like to be if it had free reign, and some fuzzy notion of where the population stands, which influences what the opposition actually does.
And many little systems like that. Sometimes they may even go along with changes you propose / propose changes you like too. Because not everything has to be a disagreement.
Often the difference isn’t so much that a policy exists, but to which extent it does, so they might vote to set the slider to a different level than what you want it to be, and that could effectively weigh political power costs.
Like, actually, minimum shouldn’t necessarily be cheaper than maximum or what not. How different your idea is from that of your opposition, vs. how much power the opposition has relative to you should largely dictate how difficult it is to implement something.
This could also lead into having a chance to continue playing even if your party doesn’t win, by switching roles.

But yeah, those would be massive and difficult changes.

I did some experiments…and I’m happy that this is a step in the right direction:

Most notably, there is a clear tendency now towards being more likely to vote if you are really unhappy, or really happy (the top and bottom).
Also those dark red circles in green terriroty are awesome evidence that other systems are working!
They are members of the red party (who then loyally voted for the red party), who actually are being won around to supporting you over time. They are the die-hard loyalists whose membership is all that keeps them clinging on to the idea that they oppose you. They are effectively voting against their own interests…
…but that will fade over time, and the minute they quit the party they will start voting for you.

I think I might need a key along the top to explain the different colors…


Added a key… and a circle to show current highlighted voter…


That’s very good, just center the words with the color a bit more. You could very easily assume that pale is “Voters” normal is “Members” and that dark is nothing. Apart from that, it’s a very cool addition.
Also, an option to sort by category (first the opposition members, then their voters, then the non voters and same thing for you in opposite order) could help to visualize.

First dot could be your party, second and third - two other opposition parties.