Hi all! Today’s dev log is going to focus on demographics and the customization options you’ll have access to. Customization is the single most wanted item in the game, and luckily for you all, that was my plan from the beginning.
However, because of the demand for it, I’ve spent a lot of time thinking about how deep I can go with customization while still depicting an accurate electorate, and ensuring candidates and their positions still make meaningful changes, while also integrating more options into the game’s voting system.
Let’s get into it.
A key feature of the game that I’ve discussed in previous dev logs is the ideology system.
There was recently a discussion about how demographics should impact voting behavior in our Discord (join here if you haven’t already), and I want to take this time to explain why I believe the best way of modeling that is through the ideology system.
In an election, people do not vote because of their race, ethnicity, income, age, or whether they live in a city or not. They vote because those traits, combined, determine their perception and psychology of voting. Ideology is a tool to label the psychology of a voter.
For The Electorate, what that means is demographics are used as a series of inputs that determines a single ideological output. With that output, we’re able to determine who is likely to vote for who, and create our voting shares.
As of right now, there are 19 different demographics in The Electorate, all grouped into six categories. These demographics are based on publicly available data from the US Census. For urbanization, I'm using an equation that calculates the county's population density per square mile.
Gender
Male
Female
Race
White
Black
Hispanic
Asian
Other (includes Native American and other races)
Education
High School
Some College
Bachelors Degree
Advanced Degree
Age
18-35
36-64
65+
Income
>$100K
<$100K
Urbanization
Urban
Suburban
Rural
Additionally, each demographic set varies by region, of which there are currently 17:
New England (MA, CT, NH, etc.)
Metro Atlantic (NYC to DC)
Mid-Atlantic (East PA to East NC)
Southern Metro (Atlanta, Charlotte, Nashville, etc.)
Deep South (AL, GA, SC, Northern FL, etc.)
Florida (everything south of Gainesville)
South (TX, OK, AR)
Appalachia (East TN, West NC, WV, etc.)
Eastern Interior (KY, West TN)
Great Lakes (OH, IN, MI, WI, MN)
Great Lakes Metro (Detroit, Cleveland, Chicago, etc.)
Great Plains (IA, ND, SD, KS, etc.)
Western Interior (ID, MT, parts of CA, OR, WA)
Southwest (AZ, NV)
Mountain West (CO, NM)
Pacific (coasts of CA, OR, WA, and all of HI)
Alaska (just Alaska)
These regions are not set in stone. They have been changing for various needs. The reality is that the US is arguably the most diverse country on Earth and is the 3rd largest country by population. White voters in New England vote very differently than white voters in the Great Plains, and urban voters in Southern Metros are quite democratic, but not as democratic as voters in New York City and San Francisco.
Therefore, there needs to be some level of built-in flexibility.
With each region, you will be able to edit the ideological leans of each demographic. Here’s how it looks in Metro Atlantic.
Lower ideology numbers are more left-leaning, while the higher numbers are conservative. In the game, the ideologies will be labeled with their actual names when you make edits, but the same order will apply.
With these base stats, let’s look at how the region is trending on turn one with a Newsom vs. Rubio race:
Now, let’s make white voters vote overwhelmingly in favor of conservatives and see what changes:
As you can see, suburban counties begin to turn red while the cities get to around 30%+ for Rubio.
There’s a lot of ways you can alter The Electorate, adding infinite replayability to the game.
Additionally, you can edit the weighting for each demographic category and the overall polarization of each ideology. Currently, demographic weights are set to:
Gender = 5
Race = 50
Education = 15
Age = 10
Income = 5
Urbanization = 40
For polarization, you can change the settings so that certain ideologies are dead set on voting for the candidate who most closely matches their values, or create leeway so that there’s more crossover voting. In election scenarios 2012-2028, these values are highly polarized, but in 1992-2008, they are far more lenient.
Additionally, I’ll be adding “county tags” where they apply to enforce differentiation when demographics might not be enough to move the scale. For example, college towns in the US tend to be overwhelmingly democratic, but sometimes the demographics will reflect a more moderate electorate in a college county. Therefore, we’d apply the “College Town” tag to the county to add another layer of demographic weights that reflect a typical college electorate.
Other tags like Exurbs or Rural Coast can also apply. For example, some Pacific coast counties like Del Norte, California tend to vote for republican candidates, which is an outlier on the California coast. Rural Coast would override the demographics in this case by skewing the county to the right.
I’ll point out that in 90% of the counties, tags are unnecessary as the demographics tend to create the right distributions, but there are of course going to be exceptions in a country as large and diverse as the United States. It’s a miracle that we can model this correctly at all.
That’s what I have for customization for now. More options will be coming, and you’ll have access to all of these variables in the game.
If you haven’t already feel free to join our growing Discord server, and if you’re excited about the game, wishlist it on Steam and follow for more updates like this!