StrangeLoopGames / EcoSuggestions

Repo for storing Eco game suggestions, separate from EcoIssues
34 stars 1 forks source link

Add contracts as a subset of laws #1432

Open ThePiachu opened 3 years ago

ThePiachu commented 3 years ago

Awhile back we ran into a situation like this - miners were mining in a desert next to a grassland that was being farmed. Everyone was strapped for steel because it was a White Tiger game. Then it turned out that the grassland next to the desert had really big and really convenient deposits of limestone and coal for the miners. We wanted to be able to lease the mining rights from the farmer, but that would force them to either give us full access, or create some really specific law. It would be nicer if we had something like laws, but for a more private use.

Basically, we would have "contracts" - something that works like laws, but cover only the property of the parties in the agreement. You would be able to specify much of the same things, except with limited triggers, accounts, actions, etc. The "elections" would also work differently, where you would just need the parties to the contract sign the contract without going to the 24 hour election.

So in our case, it would be something like "If MINING GROUP uses pickaxe or picks up ROCKS, ORE on FARMER PROPERTY, then pay FARMER $0.5 and ignore auth, prevent if unable". Then the farmer and the miners would have to sign the contract (through the election screen only they can participate in) and it would allow them to mine under the property without being able to steal the crops, dump tailings, etc. on that property.

This feature would fill a nice niche between a full law affecting everyone and the limited property system that is mostly all-or-nothing.

ThePiachu commented 3 years ago

Maybe calling this "contracts" was a bad idea since the game already has contracts, but those seem to be more for hiring someone for a job, rather than making some agreements between people / groups without involving the whole server. Things like "if you let me mine on your area you can farm on my area", etc.

You could also have some open-ended contracts that are opt-in, like "anyone can hunt on my area for a fee" (you'd want it to be opt-in since otherwise someone might get charged a lot of money by shooting something on accident).

ThePiachu commented 3 years ago

Also also, this might be a really neat system for having "jobs" (in contrast to everyone running a business with a store) - you would set some open-ended contract where anyone could sign up and get access to labour at machines in a given area. The contract would have a clause paying X money per unit of labour and boom - you can have people running large factories that produce stuff continuosly without requiring to have a lot of one-off work parties. Might work neatly with the future collaboration settings where labour will be limited.

ThePiachu commented 3 years ago

This would also be a neat way to do contracts between corporations, or corporations and people.