With the Eco 9.2 and 9.3 Updates, we’re adding new features of residency and rental properties, connecting individual skill gain deeper to the economy.
Residency
In Eco, the quality of your housing (along with your food) determines your skill rate. Previously, housing bonuses were calculated from all the property plots you personally owned. This meant that you couldn’t share residency, and you could have houses that gave you points scattered all over the world. We wanted to address both of these, and so introduced the concept of Residency.
With this addition, you will only gain skill points from a single property which you have chosen as your Residence on the deed. Typically, you’ll want this to be whatever residence gives you the most housing points.
Roommates
You can also have multiple residents on a deed, which means roommates can share the same housing value! Like real life though, the more people you cram into a house the less livable it becomes, and we’ve added an occupancy penalty based on how many people are residents of a given home. Importantly, however, this penalty is not linear; it’s barely punishing at all for the first roommate, slightly more for the second, and then ramps up from there to become very punishing.
This was added to make sharing a home with a single person a very small penalty, making it advantageous to pool your efforts with one person. On the other hand, we don’t want a single house crammed full of hundreds of players, so we made that a high penalty.
Note that the penalty here applies before the caps, meaning furniture will give you less points, but you can still make more rooms and reach the same total points as you would in a house where you’re the sole resident. This makes sense, as more rooms and more furniture makes a house full of a lot of people more accommodating.
Difference in penalty between 2 and 5 residents.
Since the penalty is so light for 2 and 3 person homes, I expect to see a lot of players combining houses, either with their friends or strangers they meet on the server. This can lead to lots of interesting collaborations among players, as they’ll need to more closely interact and communicate compared to solo houses, and they’ll get more bang for their buck (ie, if you have two people in a house you have twice the effort to build it, but only 10% penalty! That’s a big gain in efficiency overall).
You can specifically invite who you want to be roommates by setting an invitation on the deed. This can be specific, like a single user, or it can be a group invite, like a demographic such as ‘New Players’ or ‘Everyone’. You can also set the max occupants, which will limit how many people are allowed to crowd in. Thus, you could setup free public housing in your world by inviting ‘Everyone’ but having a max occupant of 2 or 3. Since players can only be a resident of one property at a time, they’ll space out efficiently, and new citizens could get a great residence right away if the citizens of a world have the resources to provide that sort of thing. This also takes advantage of the asynchronous nature of the game: you can create a residence that invites everyone to join, and then even if someone joins the server while you’re offline they can hop in, so you never have to be online together to set it up.
Also note that the ‘max occupants’ is a Game Value, meaning you can determine it with a plain old number or a calculation, same as the laws system (in fact it’s the exact same code! With our engine getting more mature its becoming easier an easier to add rich features). So you could have the max occupancy depend on the total server population, for example. Similarly, you could have special demographics for the invitation section, perhaps a demographic like ‘Is Eligible for Public Housing’ which looks at the player’s age, skill, wealth, etc.
Example of a ‘Calculated’ Max Occupants value that increasing occupancy allowance as world ages.
Rent
Taking this a step further to connect it to the economy, we’ve also added the ability to charge rent to tenants. Owners of a property can set a specific daily rental fee and/or move-in fee and anyone who becomes a resident will have to pay it. If they stop being able to pay it, they will be evicted (and as I mentioned in my twitter this is one of my fav features, because it’s so un-fun in reality and yet really interesting when implemented in a game, because you see it in a wider system perspective).
Just like the ‘max occupants’ value, rent and move-in can be determined by a Game Value, meaning they can rely on any calculation you like. You can make rent dependent on the renter’s total wealth or skill, or on the amount of total citizens needing residency, or the number of tortoises killed yesterday, whatever you like. Lots of potential for programming this fee to suit a given society.
Like residency, rent respects the asynchronous nature of the game: if the player is invited and can afford rent, they can take residency even if the owner is offline. This should make it very easy for citizens to setup additional houses that they can rent out for reasonable prices, and newer citizens can begin renting them to get immediate skill bonuses. Win-win for both parties. We’ve added visibility to make this easier: you can see any ‘recurring payments’ in the economy viewer now (rent, but also wages will show here), and there’s a new tab showing properties for rent.
The owner can also remove residents at will, unless of course the government gets involved…
Property Law
This being Eco, we’ve of course connected all this with the legal system. All the various actions involved in taking residency and paying rent go through the law system, which can prevent, tax, or modify them as will. For example, when a player leaves residency, an action is generated, and if this is a forced eviction it could fine the landlord or even prevent it.
This should have the effect of creating a big new opportunity in the form of the housing market, and the government can regulate and use it to finance other works as well. More connections in our web of systems!
Resident Rights
We wanted to make sure this feature would still be useful in a low-trust environment, IE you want to make sure your renters don’t trash the place. To aid this, we introduced Resident’s Rights. This is a special set of rights that a citizen will automatically get if they become a resident on a property, even if they’re not listed as an owner or as someone who ‘can modify’ the property. These rights will allow the following:
Residents can use any world object on the property even if they don’t own it, accessing its contents and functions, but not pick it up (so you can use the storage on property, but can’t steal it).
Residents can place their own world objects, and pick up any world objects that they placed down (so you can move your stuff in).
Residents cannot place down or pick up blocks (can’t modify the property, this requires more elevated permissions).
Of course, you’re welcome to also give your renters full access to the property through the usual interface on the deed, but then they’ve got free reign. Resident’s Rights gives the opportunity for a middle ground, that you can allow even for total strangers: you can sell benefits to a citizen without risk of them ruining your property. This makes it a lot easier for that collaboration to happen.
These rights apply to any vehicle on the deed as well, meaning you can easily make rental vehicles with this same system. This can have a huge impact on the transport system, creating a new type of economy-connected collaboration.
The Big Picture
One of the core design philosophies with Eco is building lots of interesting systems, and then connecting them together. The more connections, the more meaningful interactions are built, forming a network of ideas that are all meshed together, looping back on one another (which hints at why our company name is what it is). With the feature of residency connected to the economy (through rent) and government (through property law), this adds a ton more interesting connections that can emerge in rich and collaborative ways, creating many ways for a society to organize and regulate.
Also really exciting to note: most of these features here are all a byproduct of the huge refactor we did to the law system for Eco 9: the ability to have game values everywhere, law integration with game actions, economy integration, etc. Because those features were made in an agnostic way (they were added to the engine itself, not just tied to laws exclusively) we can get really unique new possibilities with very little work, which is why we’re able to add this pretty large feature in a minor update, residency in Eco 9.2 and rent in Eco 9.3. You can expect to see accelerated progress on Eco as these investments we made in our tech start to pay off.
And finally, this is a step to a much wider feature set and expansion of the game we’re calling Eco Infinite, in which there is much gameplay after the meteor as people build public-good projects like universities, museums, research labs, and cultural items, to create a growing utopia. Much more on this later, but residency and property law is one of the first steps.
Thanks for reading all and let us know on the Eco Tree what you think!
We're happy to announce the release of Update 9.1 containing lots of improvements and bugfixes. We've been monitoring your feedback on Update 9.0 closely since release and have already begun work on Update 9.2, introducing a few cool new additions to the game and expected to be released in December. Stay tuned for hints in the coming weeks.
You can find all changes in this version in the following changelog. We wish you lots of fun with this release, stay safe!
Features:
Elections can now contain multiple provisions. IE: add a law, remove a demographic, and update an election, process, etc in a single election.
A special privilege is granted during a new constitution election, allowing any civic object addition to be attached to that election. Allows the founding constitution to configure multiple aspects of government at once.
Added new properties to Election Processes to instant-finish with success/fail if the percent of total voters reaches a given value of yes/no.
When a world object with attached civic objects is removed, those objects become orphaned, and can be reclaimed by anyone who puts down a matching type. IE, if someone picks up the court to kill the laws, someone else can put down another court and reclaim them.
Pollute Air laws can now reference the location of the pollution source
Added new building forms for Ashlar Stone, Framed Glass, Reinforced Concrete, Corrugated Steel
Art improvements for Flat Steel and Reinforced Concrete
Added new roof forms for Hewn Logs, Mortared Stone, Lumber, Corrugated Steel, Flat Steel, and Reinforced Concrete
New art for Wooden Elevator Call Post
Added new variants for Mortared Stone Doors
Stores owned by titles can now sell items
Ladders now have an option to climb over the top with a new animation
Fishing animations now viewable for other players in third person
The Steam Tractor Harvester now has a down/up animation when activating
Added "lock" mode for tooltips when "Ctrl" is pressed
New icon for Deep Crust when using Rock drill at bedrock
Admins can now globally /mute players in chat
Admins can now add and remove global map markers
Optimization
Optimized texture memory usage, which will help with some GPU crashes when running out of memory
Optimized trade tracker to reduce performance degradation over time
Optimized stats querying in laws
Optimized calculations for accessing storage when multiple containers are in the same area
Optimized calculations when entering and leaving a large room
Optimized calculations for adjusting text width in UI
Optimization for memory use in Linux servers
Synced physics with freshly created rubble
Quality of Life:
Revising civic objects (laws and such) will keep the old name, unless you change it
Election voting doesn't start until 'Start Election' is clicked in the side panel
Laws will now execute all sections even if it's the same trigger, unless 'prevent' is reached
Anyone can now claim abandoned projects from unowned tables
“Collect” button for work orders now updates correctly when changing owners. New owners can see it, but old owners cannot
Added option to select payment account for transactions on a public crafting table
Pressing escape no longer closes backpack
The fishing lure will now be cast towards where the camera is pointing
Added additional visual feedback for animal attacks
Special accounts rewards (alpha, beta bakers etc) now added to Void Storage on login and don't occupy backpack space
Improved global illumination
Added drop down menu to select input device for voice chat
Voice chat radius is now displayed in settings
Creating a world through the client now automatically adjusts crafting cost and time modifiers based on collaboration settings
Tool break sound now happens as soon as tool breaks
Footstep sounds in first-person are now more precise and volume was tweaked
Added more power to Dev Tool to bypass authority
Voting through the election website no longer refreshes the page
Starting a server is prohibited if Web Server Url is invalid
Clarified chat notification for taxes
Clarifies description of work clothes to indicate only using tools benefits from calorie reduction
Added “Reset to Defaults” button for audio settings
Added confirmation popup for reset to defaults button for Audio, Graphics, and Controls
Added error notification when trying to place a block in a doorway
Added error message to Mint if it can not be used to explain why
Balance
Steam Engine now pollutes and requires water
Solar Generator now requires water
Road Tools now give Basic Engineering experience
Bonus hunting experience is now granted for headshots
Stove is now crafted by Mechanics
Rock Drills now benefit from Mining specialty
Huckleberry Extract is now crafted by Milling
Flour cost decreased
Yeast cost decreased
Bear Claw skill requirement decreased
Elk Wellington nutrients increased and cost increased
Fruit Tart nutrients increased and skill requirement decreased
Macaroons cost changed and nutrients increased
Pirozhok skill requirement decreased
Stuffed Turkey nutrients increased and weight decreased
Baked Vegetables calories increased
Baked Meat calories increased
Flatbread nutrients increased
Fruit Muffin nutrients increased and cost decreased
Huckleberry Pie nutrients increased
Meat Pie nutrients increased
Excavator movement speed now fully benefits from roads
Decreased experience for Machete & Sickle
Adjusted recipe for Hewn Log Chair to match variations
Reduced default Hewn Log recipe labor cost
Adjusted Coyote Carcass weight to match similar carcasses
User Interface
Law notification popups can now be disabled
Removed chat notification when adding ingredients to a work order (still appears for work parties)
Changed Constitution font to more appropriate style
Work Party list is now sorted alphabetically
Sorting by price in the economy viewer now always puts blank prices last
Minted currencies are now displayed above player credits when viewing account balances
Changing the item filter now saves settings when closing the window
Stores no longer highlight red in Economy Viewer when they should not
Changed highlight colors in title screen to improve readability
Minimap colors for property and districts are not as opaque
Resources from different work orders are no longer combined into a single work party marker
Improvements to election website so it is more clear who won an election
Improvements to difficulty settings UI when creating world through the client
Improvements to server password UI for ease of use
Improvements to control settings UI
New status bars in crafting UI
Polished the escape menu UI
Visual improvements to Work Party UI
Improvements to UI for selecting block forms
Fixed alignment for nested clauses in contract UI
Improved position of election speech textbox when entering election
Visual improvements to show/hide animation for dialog boxes
Added scroll bar to in-game bug reporting tool
Shortcut for Push to Talk is now displayed in voice settings
Continue button for rejoining a server from main menu now expands with long server names
Text on Ratify button for constitution now fits correctly in button
Fixed text overlap in edit property window with very long property names
Fixed text overlap in election website when using collapse/expand function
Many UI fixes for Mac
Modkit:
Added reference assemblies to the modkit for compiling mods. No more extracting them!
Fixed issue with chat icon sprites for mods
Bug Fixes
Fixed a number of cases of civics objects not having references auto-update when they change.
Fixed bug with disappearing civic objects
Fixed crash when deleting a civic object that had a draft referenced in another civic
Fixed ignore-auth not working for property actions in laws. Now you can ignore-auth on claiming and unclaiming.
Fixed property owner not being selectable as context in laws.
Fixed exception when quickly changing law triggers
Fixed how values update with custom statistics in laws
Using a direct tax from the Treasury object now works again
Fixed bug with animals getting stuck and teleporting
Fixed bug with teleporting animal corpses
Fixed crash and exceptions related to animal pathing
Fixed animals not knowing how to move on ramps
Fixed strange animation with Alligator dying
Fixed crash when a store owned by a title had no one assigned to the title
Fixed server crash with “Stack Overflow” in specific situations with large mines
Fixed exception when leaving and rejoining the same work party
Fixed issue with room calculation where an object touching a wall at a 90 degree angle was treated as an open space
Fixed ability to pay loans without enough currency
Fixed title holders not able to unclaim property owned by the title
Tool efficiency talents now work correctly
Icons on signs now respect borders
Fixed exception when rubble or logs were removed after being shot with an arrow
Fixed world object UI not closing when the player moves away, allowing them to be accessed from unlimited distance
Fixed salmon being unable to be hit with arrows
Fixed strange behavior with picking up a bed while someone is sleeping
Fixed bug with property name displaying incorrect color
Fixed crash when setting Skill Gain Multiplier to 0
Fixed chat message when receiving 0 payment from a work party
Ecko Statue is now hidden from Housing Tag
Fixed server Discord link in tutorial not linking correctly
Reaped and potted plants will no longer have ghost-highlights after removal of the plant.
Fixed some laws being able to prevent play despite server disabling this option
Fixed footsteps sound occasionally getting stuck
Fixed glass plates not merging together when building
Fixed craft button for sub-recipes
Fixed admin command for assigning titles.
Fixed Fast-forward command not allowing fastwording to stop
Fixed /AToB admin command to not fail when player A isn't online.
Fixed /TargetTo admin command to not fail when the player isn't online.
Fixed issues with vehicles duplicating when there is extreme server lag
Fixed occupancy for Mortared Stone Signs
Fixed Cancel button in server password UI being inactive when “Remember Me” is checked
Fixed issue with work party UI not updating immediately
Fixed law names not being escaped from code in election website
Fixed text wrapping problems with long tooltip titles
Fixed issue with resizing objectives window
Fixed exception when editing visible layers in minimap
Fixed duplicate notifications when using Pick Up law trigger
Fixed plow action not working with laws
Fied bug when making law with missing strings
Fixed transparency issues with potted plants
Fixed unowned world objects missing info about who placed it
Disallowed players to only have a space as a name
Fixed meteor timer showing in welcome text despite being disabled
Fixed wrong icon item displaying in tooltip title
Forage for Food tutorial now always shows 3 different types of food
Fixed stockpile tutorial to accept Saguaro Rib
Crafting Tutorial now correctly points to default Hewn Log recipe
Fixed bug with being unable to skip the tutorial when tasks are already completed
Fixed description for Charred Fireweed and Advanced Smelting Upgrade
Server setting Specialty Experience Divisor has been removed from server configs
Fixed plural names for Rugs & Mortared Stone variant