Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC] Post Cataclysm economics #27447

Closed
mlangsdorf opened this issue Jan 5, 2019 · 12 comments
Closed

[RFC] Post Cataclysm economics #27447

mlangsdorf opened this issue Jan 5, 2019 · 12 comments
Labels
Items / Item Actions / Item Qualities Items and how they work and interact NPC / Factions NPCs, AI, Speech, Factions, Ownership stale Closed for lack of activity, but still valid. <Suggestion / Discussion> Talk it out before implementing

Comments

@mlangsdorf
Copy link
Contributor

Items in CDDA have two prices: a pre-Cataclysm price that is the nominal cost before the Cataclysm, and an optional post-Cataclysm price that is supposed to represent some combination of utility, rarity, and difficulty to acquire after the end of the world. The pre-Cataclysm prices can be looked up, but there aren't any guidelines for setting post-Cataclysm price.

We should add some guidelines for post-Cataclysm prices and then make sure that all items have reasonable prices.

Post Cataclysm price guidelines

The Free Merchants and Tacoma Commune already have some implicit price guidelines:

  • Unskilled but reasonably safe labor is $8/hour
  • Semi-skilled labor is $12/hour
  • Unskilled but risky work is $18/hour
  • Tasty, reasonably long lasting food is $3/150 kCal, or about 50 kCal/$1. It costs $20-25/day for a worker at the Tacoma Commune to feed themselves, or $150-$200/week.

If the average Commune worker spends about 40% of their cost of living on food (which isn't crazy for a food scarcity situation though it's high for pre-Cataclysm America), then they need to spend $400-$500/week to survive, with the balance covering shelter, clothing, medicine, and the like. If that Commune worker is working 10 hours/day, 6 days/week - again, a fairly common work-load in pre-Industrial societies - then a menial laborer is just barely scraping by and a carpenter has a fair bit of surplus that might be getting spent on better food or whatever.

Common manufactured goods

Goods that can be made post-Cataclysm should sell for at least $8 per hour it took to create them assuming the most efficient possible batch crafting. 60 units of meat jerky can be batch crafted in about 5 hours, so the current price of $3 is appropriate. Price should include the cost of components (meat, salt, and firewood for jerky) and increase somewhat as the required skills and equipment go up.

Rare salvaged goods

Salvage goods are things that can't be made post-Cataclysm, like mini-reactors. They need to be priced on utility, rarity, and difficulty of acquisition. Mini-reactors are fairly rare, difficult to acquire, but fairly useful as power sources and would have high value. .700 NE elephant rifles are extremely rare, difficult to acquire, but less useful because of their equally rare ammo and should be worth much less.

@mlangsdorf mlangsdorf added NPC / Factions NPCs, AI, Speech, Factions, Ownership <Suggestion / Discussion> Talk it out before implementing Items / Item Actions / Item Qualities Items and how they work and interact labels Jan 5, 2019
@CoroNaut
Copy link

CoroNaut commented Jan 5, 2019

Any survivor npc's that spawn and find these specific compounds: towns/evac center/bandit camp, could be attached or become an enemy to that specific compound, and work for them or be hunted respectively. This could be used to attach this issue to #27226.

@mlangsdorf
Copy link
Contributor Author

I want to focus on developing guidelines for setting price_post. Tasty, durable, medium duration food is roughly $1/50 kCal. How much should cooked meat (or other low skill, low duration food) be worth? $1/200 kCals?

Alternately, how much should an MRE be worth? It's a semi-common find, but it's basically a replacement for meat jerky. Is it worth twice as much as meat jerky?

There should be things that are literally not worth scrounging for, and ironically, MREs might be in that category. Which is fine - there can be things that are valuable to pick up as an incidental while you're scrounging for something else, but that other people will trade to you at a reasonable price, but that you can't really make a living by selling to the refugee center.

@Profugo-Barbatus
Copy link

Some of an MRE's value would be from the additional utility items in it. You might not particularly value the Vomlette menu item in it, but the chocolates, water purification tabs, and matches would be decently worthwhile items.

@nexusmrsep
Copy link
Contributor

nexusmrsep commented Jan 5, 2019

Why recalculate it to $? If one needs to eat 2000 calories to live that (s)he needs to earn at least 250 kcal / 8h work, assuming 8h free time and 8h of sleep. Everything over that would need to cover all other needs that one can supply off local society. This sets calories as a good currency for post-apocalypse world. It might be represented by something else, coins, oyster shells, zombie teeth, etc. but in the end it all ends up in the answering how to stuff your belly. Money is needed to prioritize and specialize. If you are self sufficient and can provide for yourself you don't need money, but as soon as a group of survivors discover that one of them is a medic, another a hunter, and third one a tailor, they need a form of currency to freely swap goods in a fluent manner. Other groups might decide on other form of money. If anything is chosen as local money, the rest is up to the market, that would calculate the effort for producing a good. If you'd find 5 t-shirts / day they would be cheap. If 1 / week, the price would be high. Rarity of good or service, effort and risk, are three most important factors here. Supply and demand is second. Wild veggies are common, and almost effortless excluding time needed to forage, but in high zombie density areas the risk would up the price, etc.

@mlangsdorf
Copy link
Contributor Author

not all calories are equal: you can live off a chunk of fat, some scraps of meat, and a vitamin pill, but do you really want to eat raw fat?

We've got to deal with a couple of concepts here:

  • an item's cost of production, which is time spent + materials used + some percentage of the cost of any tools used. different people's time is valued differently - a survivor with Fabrication 10 can make pointy sticks, just like the survivor with Fabrication 0, but you'd rather the Fab 10 guy made diamond coated katanas so the production cost of his sticks is really high.
  • an item's value to others, which is based on utility and rarity and the value of the next best substitute. smoked fish might be rarer than smoked meat, but smoked meat can basically substitute for smoked fish in almost all circumstances, so the value of smoked fish is going to about the same as smoked meat.

Some people are going to be able to produce items with a cost of production that is more than the item's value, like the Fabrication 10 guy making pointy sticks (or me IRL trying to make a living as a professional painter). So they're not going to make those things, and that's fine.

Rarity, effort, and risk determine cost, but supply and demand determine value. We should be focused on estimating value, because we're mostly dealing with people selling stuff to each other. We only want to deal with cost to make sure that the values are somewhat internally consistent: NPCs should be able to support themselves, etc.

It's reasonable and acceptable for some activities to be unprofitable and other activities to wildly profitable. A player survivor might not bother trying to sell cooked wild vegetables to the Free Merchants but might get "rich" by selling them survivor armor. It's even okay if (for instance) rapiers aren't valuable enough to justify making them as trade goods (because most people are perfectly happy to get a crude sword that takes 1/8th the time of a less skilled smith).

I am still uncertain how to provide a cost for salvaged and scavenged goods. A rapier takes 7 hours for a master smith to build, plus 450 charcoal, plus a forge and forging gear. It may not be worth much more than a crude sword, but we can estimate the cost at $700 or whatever. But scavenged goods are tricky. Even if a survivor spends 70 hours fighting zombies and driving hither and yon to find 5 plutonium cells, he presumably picked up other salvage in the process and the cost of plutonium should be much less than that 70 hours would suggest. Anyone have any suggestions for figuring that out?

@kevingranade
Copy link
Member

kevingranade commented Jan 6, 2019 via email

@Toothspit
Copy link
Contributor

Just skimmed the paper. Doesn't this solution still boil down to us making a design decision about what is 'important' to the agents involved, and the relative value of things?

If agents derive values for stuff from item characteristics (i.e. food is weighted on kcal and joy vs. time to produce and ingredient value?), why not just assign a derived inherent value from the get go, weight faction currencies, and bypass the simulation?

If agents derive values for stuff from other agents' supply/demand 'orders,' doesn't that open the door to player market manipulation? Only non-player agents are playing by the rules of the simulation.

@kevingranade
Copy link
Member

kevingranade commented Jan 6, 2019

Doesn't this solution still boil down to us making a design decision about what is 'important' to the agents involved, and the relative value of things?

It explicitly does not require us to make decisions about the relative value of anything. All we have to do is say something like, "npcs eat x calories of food and y litres of water a day, and prefer higher fun if they can afford it". Then the various food sources will compete based on available resources and settle on some price.

If agents derive values for stuff from item characteristics

That's not how it works, prices are driven by supply and demand, if an area happens to have easy access to a raw material, the cost would drop. We won't necessarally enumerate all the raw materials at first, but it makes it possible to add.

If agents derive values for stuff from other agents' supply/demand 'orders,' doesn't that open the door to player market manipulation?

Yes, that's a good thing.

Only non-player agents are playing by the rules of the simulation.

The "rules" are:

  • estimate how much various goods/activities are worth.
  • pick an activity.
  • buy and sell stuff.

The player is not operating outside the system, they just have options that NPCs are less likely to pursue, like tackling a zombie-infested town head-on.

@nexusmrsep
Copy link
Contributor

Also, a thing that I think is a must, is a player supply & demand simulation. Market reacts to two things mostly: supply and demand. So even if there would be some behind the curtain simulation of supply and demand regarding invisible hands of traders, survivors, and other factions trading between themselves, the immediate actions of player buying and selling objects should be also taken into account, and in serious manner since player is an impactful figure in the game, and since player is wat we care mostly here.

If you drive-by a survivor camp with a year's worth of (lets say non-perishable) food, if they even buy it off you in that quantity, the price would fall drastically. It might be possibly be adjusted even during the trade itself, as the buying party would offset the fact that by the law of the diminishing returns, they only need as much food, and the extra food beyond it they wouldn't be willing to buy for the initial price. In the more advanced models, where nearby settlements would be trading, and player would sell off only to one of them, this settlement might as well start to trade the meat with another settlements using priced difference as a trade leverage, thus in the long run impacting their price.

Turning that around, if the player would be interested in buying ammo off the site, it's price would go higher. That might be an incentive for the behind the curtain trade to push trade caravans towards the site with ammo to sell, at a greater prices, since its obviously the place where there is much demand for it, and it sells for higher.

Including those effects also adds a self-balancing effect to the in-game market, preventing player from:
[1] earning infinite money by selling off same items (especially easily obtainable ones) to one faction, (while doing so in a less obtrusive manner then just cutting down trader's pocket money that most games do), and
[2] preventing player from buying up shop to the bottom, while keeping up some supply (thus preventing another obtrusive effect of short supply used in some games: "you buy crate of ammo, you will never buy more ammo from here" or other effect "wait 24h and buy at the same price, because the traded is a dumbwit that can't see trade opportunity when it presents itself while sitting on a military bunker that only spews out 10 bullets per day, no more no less." You get the idea.

@mlangsdorf
Copy link
Contributor Author

Individual traders already discount buying prices based on how much they have; see src/npctrade.cpp. We'd need to hook that back into the faction code and the economic model. Then the trader would have an idea how much a good was worth and how much of that good his faction already had. Goods being a broad classification and we'll need to experiment a bit - it shouldn't be possible to sell so much leather armor to the Free Merchants that they'll decide to sell off their only suit of Power Armor on the cheap. But it should also be possible to sell them so much survivor armor that it's not worth it to sell them leather armor.

@stale
Copy link

stale bot commented Aug 11, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not 'bump' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

@stale stale bot added the stale Closed for lack of activity, but still valid. label Aug 11, 2019
@stale
Copy link

stale bot commented Sep 10, 2019

This issue has been automatically closed due to lack of activity. This does not mean that we do not value the issue. Feel free to request that it be re-opened if you are going to actively work on it

@stale stale bot closed this as completed Sep 10, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Items / Item Actions / Item Qualities Items and how they work and interact NPC / Factions NPCs, AI, Speech, Factions, Ownership stale Closed for lack of activity, but still valid. <Suggestion / Discussion> Talk it out before implementing
Projects
None yet
Development

No branches or pull requests

6 participants