We're Hiring

Demographics and Wages – Update 9.0

April 18, 2020

Hello Eco citizens, today I’m going to talk about the super-fun world of Demographics.

I bet you didn’t know that demographics are fun. It sounds like a really boring word, probably. One of my favorite things about Eco though is that it connects things you think are boring to a wider system you’re engaged in, and suddenly they become fun. Taxes, for example, probably one of the least fun things there is, is one of our most interesting features. I once saw a server even implement parking tickets, which to me sounds incredibly fun.

Here’s an overview of the Eco 9.0 blogs so far:

  1. New Government system: Constitution
  2. New Government system: Elections and Elected Titles
  3. New Government system: Demographics and Wages (This blog)
  4. New Government system: Laws Part 1: Using the system
  5. New Government system: Laws Part 2: Taxes, Ownership, Property, and Wealth
  6. New Government system: Laws Part 3: Tour of different actions, and Executive Actions
  7. New Government system: Districts
  8. New Crafting: Work Parties
  9. New Crafting: Labor System
  10. New Crafting: Modules and Efficiency Redesign
  11. New Crafting: New Tech Tree
  12. New Building System: Hammer and new Building Styles
  13. New Mining System: Mineral Dispersion and Drill Usage
  14. New Mining System: New Processing Path and Pollution Info
  15. New Animal System: Attacking Animals
  16. New Ecopedia System
  17. New UI
  18. New Audio
  19. New Hosted Worlds System

Demographics and Wages

So what is a demographic anyway? It’s a division of people. IE, ‘People who have played more than 5 hours in the last week’, or ‘People who have more than 500 Eco Bucks currency’ or ‘People who have butchery skill greater than 5’. Turns out these ways of automatically dividing up a populace are really useful for organizing, and we’re expanding a lot on this feature for the 9.0 update. You can setup demographics at the new Census Bureau object:

Each Census Bureau lets you create up to three demographics:

Like all new civics objects, your civic duties and abilities when it comes to demographics are determined by the constitution (see our Constitution blog). In this case, all changes to demographics must be passed via election (see Election blog), so changes are something that citizens must agree on (unless they install a dictatorship of some kind, of course).

Let’s take a look at some things you can do with demographics. Say we want to have a ‘new player bonus’ that goes to citizens just joining a world. First, we can define who is in that group with a demographic:

Here we’ve compared two values: the number of hours played (over the last 0 number of days, which means ALL days), and 10. If hours played is less than 10, they’re a newbie.

From there we can define wages, which is a new addition with 9.0 This will pay them out every civics tick with the value specified. We’ll keep it simple and pay out 10 per hour, counting online hours only:

On a server that has been around for awhile and has a lot of rich players, this can be a good way to give new users a legup. You could do it in a more complex way, too; perhaps incentivizing certain skills that are needed on the world.

Here’s what the demographic looks like when you mouse over:

And you can see the list of active demographics in the government viewer under ‘Population’.

You can also use this demographic anywhere you specify a person, and it will take that group instead. You could set property rights on a truck to be shared among all newbies, for example, making a village vehicle that newbies can use for a period of time:

You can specify it in laws, perhaps designating a certain district to only allow newbies to claim land (see District blog).

You also may have noticed the auto-generated demographics that each world starts with, ActiveAdmins, and Abandoned. ‘Active’ is defined by server properties, defaulting to players who have played more than .05 hours (3 minutes) in the last two days. ‘Abandoned’ contains citizens who haven’t logged in for several days. These are great for dealing with the usual eb-and-flow of citizens coming in and out of your world, handling what happens to their property when they leave, and giving them special privileges when they’re active. In fact, you can detect via laws when a user enters or leaves a demographic. For example, we could make this law that reclaims all property when a user enters the ‘Abandoned’ demographic:

Here the law detects the demographic change event, and reassigns all the property of the abandoned citizen to be owned by ‘Newbies’, the demographic we specified earlier! That means that newbies will be able to get a legup by choosing property from abandoned players, which will be given special permission only to them during their first 10 hours of play. Recycling for the win.

This is of course just one example of how you can design your government in Eco 9, and since we have a dynamic programmable system with lots of connections to the game there are TONS of interesting things that can come out of this, plenty we have not anticipated I’m sure, that’s the fun of it. Will be really interesting to see the kinds of societies players create, and how well they allow them to organize labor and progress to stop the meteor without destroying the ecosystem.

Thanks for following us as always, I’ll do a live stream (John K) this weekend 11am Sunday PST where I’ll demo this for folks that would like to check it out and ask any questions. And as always ping us on discord or me on twitter if you have feedback. Thanks to the awesome community supporting the game as we build out this huge update!

– John K, Eco Designer, CEO Strange Loop Games

The Eco Team is a collection of introverted and sometimes genius programmers/designers based in Seattle and Australia. We all grew up and thrive in the video game culture, so of course making them is our dream job. We look forward to continuing to put out quality games for the community of players.

One thought

Leave a Reply

Your email address will not be published. Required fields are marked *