Grand Strategy Games; Simulating population growth, workforce, etc

Heya!
I’m Azimuth, and for the past few weeks I have been working on a grand strategy game akin to Victoria 3, except it’s set in a world that is a caricature of the cold war in the roblox universe (The game will not portray any real-life events, religions, cultures, wars, or even be on planet earth);
So far, I think I have been doing decently, as I was really just doing the basic structure of the game before proper gameplay. Everything is calculated through the server, as I don’t think I should trust clients to calculate possibly the most important things in the game. The performance is fine (only 5 provinces are being used); I did some stress testing, and there are some mediocre lag spikes when it gets to the hundreds.

The issue is, I am not certain whether my ways of structuring, and/or handling the game are the best, as frankly, this is my first time doing anything remotely similar to this.

At the moment, I do monthly population ticks which go like this:

  1. loop through all provinces, get all their populations

I do wish to implement housing, and housing types somehow (i.e. rental, ownership, mansions) but after brainstorming a lot I still have no clue what would be the best option, my current idea is either a whole seperate system for them, or consider them market goods produced by the urban centre in each province.

I do also wish to redo the literacy thing, as at the moment, I think it is not sufficient enough to really show how education impacts people, I also think that at the moment, I also am not educated enough on the topic to really understand how does education impact people other than the bare basics.

  1. It loops through the age brackets, and depending on laws, tries assign them a job, based on their education, etc.
  2. Then I check for their monthly income based on the building and position they occupy, then based on that, they will try to spend money on essentials, like food (and probably housing). This is also where they would be taxed, based on your laws.
  3. If they are unable to live an average life (i.e. they’re homeless, starving or have no job,). They will try to move to a different province OR to a different country. If they are unable to, then I apply a starving modifier to the pop group, and they will eventually starve, unless you have some sort of welfare.
  4. After all this, I calculate the birthrates, and move pops further in the age bracket.
    If there are some conflicting values, it will create a new value with all the right stats, or join one that does fit the statistics (religion, culture, literacy, etc), as I cannot simulate every individual person, they’re divided to as little groups, as I can.

At this point in time, I have not yet done political-groups for pops, but my current idea is to make them procedural; if your country has elections, then there will naturally pop up parties, depending on various movements, mostly based on people wanting more better working conditions, rights, lower taxes, more representation in the government, or the like.

The reason I do also calculate age and gender brackets is so I can simulate mostly aging population graphs, but I am certain it will directly be affected based on laws, wars, etc.


Thank you for listening to my rant, any and all feedback, thoughts, or suggestions are appreciated!

2 Likes

This game looks epic and very in depth, and i love the job assigning based on the education and them starving and then moving to another province or country. I think a cool thing would be to add space agency’s for nations. They could have satellites for gps or reconnassiance nations could gather info about other nations and stuff. Overally very cool game!

1 Like

Yes! Those are ideas that will definitely be a thing, since it’s a cold war game, it’ll have an arms race, as well as a space one! One thing to note is, that instead of most research systems in games, this one will be more natural; you won’t really get to pick what you want to research, you will, however, be able to fund different agencies for research, to increase your chances of acquiring certain technologies!

1 Like

This is peak bro, good luck with development

1 Like