What's the simplest model for an economy with full price discovery?

I’m incorporating a bit of the same thing. At a minimum, there will be events the player can read about that drive changes in trading. As always I just start coding the simplest thing I can think of and I will see where I end up.

There’s a lot to unpack here. But I want to explain a point.

When you have a currency that is backed by a commodity, every transaction is a kind of barter. The coin or bill that you are exchanging is a placeholder for the commodity you’re trading. You are still bartering goods, you’re just using an abstract representation of the commodity you can redeem the currency for.

If people believe that there is a disconnect between the commodity and the coin, they can redeem one for the other at the rates set by the issuer (essentially a form of arbitrage). This did happen historically, and it also contributed to governments collapsing and the like. Many believe that this disconnect was a major cause of the great depression more recently.

If money is a proxy for a commodity, then all exchanges are barter only with a proxy. It isn’t until we divorce currency from a backing commodity that exchanges become completely untethered to barter. This is a fairly recent invention, only happening in the US in the 1970s. Untethering currency from a backing commodity is a very, very modern invention.

So what’s your question?

I think its mostly solved already. The missing part was backing the currency with a commodity.

That’s by far the simplest way to really do full price discovery. Everything else needs hardcoded values as seeds, or weird contortions.

Price of swords (in grain backed currency) is (soldiers/blacksmiths) / (population/farms). You could use bid/ask system or curve to figure out the exact point - but fundamentally the price is driven off that relationship.

Hardcoded system, you are setting the exchange rate between swords and grain in the base price (a sword is 10g and grain is 2g, then you exchange at one sword for five grain).

Not saying hardcoding is a horrible way to do it, but if you want to have working price discovery, you should really have a market for money - and the easiest way to have a market for money is to use an existing market for a commodity that exists in your world.

Here’s another resource I found today that looks useful: Zero-Intelligence Trading in Markets. It shows that even dumb agents that set their bid/ask prices randomly turn out to pretty quickly settle on an efficient market. And includes a simulation you can download, play with, and hack on the code of, too! :slight_smile:

Hey, that was a really cool video. Well explained and with most adorable blobs. Thanks for pointing it out!

I stopped reading halfway through the thread because to be honest, I think you are wasting valuable dev time on your game for something that adds very little fun and potentially adds hard to predict/debug behaviour that could frustrate players. Imho you’re 100% better off just picking hardcoded start values that you can predict and then multiply them by some curves that vary over time (sine curves or similar, animation curves are great for manual control). Some of which follow seasons, some of which are scaled arbitrarily on the time axis to create a more varied state of economy. Then maybe pick two items per city that are randomly 10 to 20% higher and two that are 10 to 20% lower in price than elsewhere, to create viable trading opportunities. I think these kinds of variations and gameplay choices are what you should think about instead of making it “realistic” and actually modeling anything complex in the background. As long as your random stuff works, players will come up with their own explanations. Like “wine is really expensive here, it must be a region famous for its good wine or other towns are importing from here because they don’t have the means to produce it themselves”. Or write more lore and quests, pretty much everything I can think of would be a better use of your dev time imho.

To answer one question though (that may already have been answered in the posts that I didn’t read): I think in a medieval setting a solid “cost basis” for any good, is the amount of work hours it takes to produce, plus cost of material, plus cost of wearing down tools. That’s why chainmail armor was very expensive. Check this post and replies, it has some example calculations for chainmail and links a list of historic medieval prices for some goods:
https://history.stackexchange.com/questions/18993/is-chain-mail-expensive

3 Likes

Maybe, maybe not. I have a background in finance so this stuff isn’t quite as obscure to me as it is to some others. Also, I personally find stuff like inflation to be fascinating.

In terms of lore, I think that having something like currency backed by a commodity is something that could actually help with world building. Different factions could express their ‘personality’ by choosing different goods - like a no frills, traditionalist faction could use grain to back their currency, a militaristic faction could use salt, a fancy pants wealthy faction could use gold. This kind of detail can actually add a lot of immersion, while also adding some interesting mechanics to otherwise kind of boring trading.

I’m also definitely using taxes, which is another seemingly boring concept - but one that can add some really fun and interesting mechanics.

My barter explanation was meant to be illustrative, and it’s arguable that we can overgeneralized like we overgeneralized conflicts in story, it’s semantic, it’s not very interesting to say the same thing in different way.

Let me try some thought :stuck_out_tongue:

In an institutional sense: yes, money is institution after all.

But I’m going to argue that in the absolute: no.
IMHO, money work because of scarcity, but that scarcity must match the volume of transaction in the market, so the value of money fluctuate based on that volume, that’s how “it work”. That’s why “untethered” money work. Also because example of currency have happen in society where there was no other backing than scarcity (like Cauri), also that’s the idea behind Crypto money.

The problem that a backing commodity solves is basically thrust, or in another way “authoritative validation”. The danger of untethered value is that the volume of currency can be manipulated and create ill effect on the market, backing commodity is a basically security measure, ie if I define money as an abstract distributed ledger (assuming an hospitality reading), it’s equivalent to messing with the ledger, you can’t create fake wealth out of nothing.

It’s also highly contextual, if your backing commodity is gold (which in general don’t have much a practical value aside from being scarce and pretty, it’s a untethered currency in itself) and you have a speculative catastrophe like failed harvest in an isolate society that rely on it to survive, your backing commodity is worthless and you have an economic collapse. But if your backing commodity was grain, well people will survive to restore the market at a later point, as they can withdraw something essential. That’s assuming there isn’t any other society to trade in food to compensate the lack.

1 Like

There is truth to this. The Cauri example is a really great one (I just googled). That shells were used in so many different places as currency (from africa to australia to america) is really interesting. These shells had no backing commodity, and were still used as currency.

Question, did cauri shells have intrinsic demand? Some articles described ceremonial uses, but lacked detail.

I remember reading about cigarettes being used as currency in POW camps in WWII, and in prisons, but these have intrinsic demand (people want to smoke them), did cauri shells?

In modern times, we think of gold as having little ‘intrinsic value’ we see it now as a ‘store of value’ - but originally there was demand - since gold was used in jewelry and ornaments. The use of gold was a symbol of status, and although it didn’t have functional use, we all know people will pay huge amounts for status symbols. I would imagine that cauri was kind of similar in that they were used as jewelry, etc.

This may seem somewhat rambling, but the question is - does the currency have a demand outside of its use as currency? Up until fiat money, I would say that it did. But maybe I’m wrong, the cauri example could go either way.

1 Like

It’s mostly me trying to abstract the mechanism of money, I doubt you can find an exact real match, precisely because it’s an abstraction.

I was curious about how money work, because I have a friend who is really into game like anno, and various economic simulation. Trying to abstract the system for generalization, money canceled itself automatically, instead I had labor (transformation), resources, consumption (sink) and territory (sources) as primitive, with the idea that infrastructure define economy (ie how all of that is linked together in an architecture, culture is infrastructure for example), so I had to worked hard to find why it’s so central to reality, and the result is that money is infrastructure, it’s a validation protocol to be precise.

What makes cauri/shell money interesting is that it wasn’t an isolated incident - the fact that it was independently used in so many places really hints at something meaningful.

Anyway, this is all kind of a tangent – but the key take away (for me) is that having a commodity backing the currency makes most of the calculations I need to do pretty simple. In practice, I can ignore ‘price’ completely and calculate trade by comparing commodity against commodity.

How much grain is wood worth?
Not what is the price of wood.

This is less abstract and easier to calculate, assuming the game has supply/demand of grain and wood modeled.

1 Like

Create 1 base price variable.
Give items properties in the form of booleans and integers/floats.
Create a simple formula around the base price multiplied by your booleans/integers/floats.

As simple as it gets.

Example:
Base price = 1 silver.
Rarity = , ,
isTrash? = [true = 0.1], [false = 1]
isLuxury? = [true = 100], [false = 1]

Final price = (BasePrice + isLuxury) * Rarity * isTrash

Not that hard :stuck_out_tongue:

Inflation is just an invention, not natural state. Is to make sure, you produce and sell new goods, so your economy won’t collapse do to stagnation.

Transport Tycoon has fluctuation on price / demand. Rather simplistic, but also is based on how many resources is available in mines for example. Or how good/bad year/month of resource gathering it was. There was inflation as well. But I didn’t feel it brought anything special to then gameplay. Uptake cost more, but income was grater as well. Selling old vehicles was already cheap % of real value. Nothing that would realm make difference.

In reality, inflation leads to the point, people can afford less over the time. And reacher, get reacher.

However, as already discussed in precious posts, I would look at demand and priorities functions in respect to available resources of raw resources (product of previous production chain). Then all weight based on base food type availability.

Given chainmail example, I think is really good here.
Having war → demand on armour → available production rate → demand on iron/steel → available production rate → food demand → available production rate.

And cost of goods will sky rocket high, if suddenly food production/storage is lower than consumption.

So, in conclusion, to me for best automated pricing setup, is knowing what is required for production specific goods, propagate through whole production chain down to food production, and apply additional factors for each supply step in chain.

Chain maker spending month making one armour, need be able to pay for raw resources, and make living for a minimum a month. That will be lowest price, that can be viable to business to exist. But demand for such business creation would be very low. For more, business would high likely get closed. That allow the competitor to increase the price. Unless also decide to close business.

So instead of fixed pricing per goods, you would need fixed base raw product + maintenance + minimum time to survive, till next product can be sold. However, each part can be affected by various factor. For example productivity time can be improved by upgrade. Price can be reduced by negotiations skills etc.

Now you should have fairly complex supply / demand chain.

Allow population to grow. Then you will have a demand. Stop growing / expanding and you risk go into stagnation.
War of course is one of the factors. Other can be epidemic. Etc.

And of course, trading factor. But I would only consider implementing such, not before economy mechanics is proved to be stable.

No, it’s an emergent property of supply and demand

https://www.youtube.com/watch?v=USj52Vlvd5M

2 Likes

@neoshaman 's video does an alright job explaining inflation, but I think it can be understood more simply like this:

Imagine our money is backed by grain. Every coin you have can be exchanged for 1 grain or you could go to the bank and trade 1 grain for 1 coin.

Now imagine that one year, everyone decides to be a farmer - and the weather is perfect. There’s now tons and tons of grain. If you wanted to buy wood with your coins, they’d demand way more coins than they did last year.

In reverse, imagine that there is a major drought. The harvest is ruined, and grain is rare. If you wanted to buy wood with coin, it’d take fewer coins since grain is rare. Prices for everything go down.

Thats basic inflation and deflation. Prices fluctuate based on the supply and demand for the coins. It can get way more complicated than that, but that’s the core idea.

And yet we have more oil access than ever, with more discoveries of new resources, oil dropped prices few years back, and prices for goods still at rocket high, with some marginal decrease in comparison. Like when oil suppose to be one of most stable, ever increasing commodity. Dong.

Yeah, sounds like “real none artificially pumped” economy. Cough.
I observed its behavior quite well past 10 years, plus previous 50 years.

And printing money, that is exactly point of artificial inflation.
Is not organic. Is controlled from the some top chair.
Starting from taking debt, which never normally suppose be allowed to be taken, as having no asset to backup debts.
In fact, country assets should be sold / taken over, to keep economical balance, rather drive inflation.

Crisis also is cyclic predictable behavior.

Wanted to comment on the FF thread but it’s closed and this topic here fits well enough imho because it could be implemented too for @frosted 's game:

@frosted @Billy4184 @TonyLi : I’m not sure if displaying the “cost basis” of your wares in the buy/sell menu actually adds to the game. Isn’t keeping that part in your head or on a piece of paper the equivalent of “aiming your gun yourself” in a shooter? If you make that overly convenient I could see that making feel trading too trivial for players. Are there any games that display the cost basis? I’m not aware of any (and only skimmed the other thread), and usually there’s a reason for stuff like that and in most cases it isn’t “no one tried to implement it yet”.

Just for reference ** Feedback Friday #88 - November 15-18, 2019 **

Unless you make game super casual for few hours at most, than it is fine.

But I allow quote myself.

Also, if you start adding event and other factors (war/pirates/accidents), game is getting beyond simple trading. Meaning, trading is not only the focus of the game.

In past few games I played, I wrote cities with prices of goods on paper. Tracking is not really fun, is not challenge either. Specially when prices constantly are changing.

Allow player to focus on events, and deduct, which city could be suitable for selling relevant goods. Not on calculus :slight_smile:

Fun side, now try play such game in car/bus/train/ship/plane, with a paper next to you. :slight_smile:

Iirc the game that @Billy4184 cited as inspiration is so hardcore that it has an export function for excel spreadsheets.