Forums » Suggestions

Trading economy (long, and involves math)

Feb 07, 2005 Furious link
Here are some thoughts I've had recently on how to get the trading economy working properly.

Problems as I see them now (possibly incorrect).
* Sale prices don't change
* you get trade xp for doing runs that loose you money and very little that make you a ton.
* certain trade route can become exploitable
* there isn't much incentive to do deep trading

Here's the system I propose, and this is probably very different from the way it works now in some respects.

* For Each commodity at each base:
-define a maximum and minimum sale and purchase prices
-track the amount of that item in stock
-define the stock levels that the max/min prices are at
-define the item production/consumption rate
-define min/max stock levels for consumption/production

Price calculations:

sale price = MAX[maxsale - (maxsale - minsale)/(maxstock-minstock)*(stock-minstock),minsale]

buyprice = MAX[minbuy, saleprice*(1-margin)]

EXAMPLE:
* at base A:
-Widgets sell from between 100-1000
-they are bought at a 10% margin, so if sold at 500, they are bought at 450.
-min sale price occurs when 1000+ cu of this item is in stock
-max sale price occurs when there are less than 100 cu in stock
-production/stable supply runs provide +50 cu per hour, if there more than 800 available, production stops
- There are currently 500 units in stock
- sale price = 1000-((1000-100)/(1000-100))*(500-100) = $600
- purchase price = $600*(1-0.1)=$540

*at base B:
- same stats as base a, but only 200 in stock.
-sale price = 1000-((1000-100)/(1000-100))*(200-100) = $900
-purchase price = $810

net profit = $210 / cu

If someone moves 100 units from a to b, the prices become:

A: stock = 400, sale = $700, buy = $630
B: stock = 300, sale = $800, buy = $720

net profit = $20 / cu

if A produces widgets at 100 / hour and B consumes them at 100 / hour then the prices will return to their starting point in one hour.

----------
When a player buys a commodity, it reduces the local stock by that amount. If they try to buy more than are in stock, then that commodity becomes unavailable for purchase until some can be produced/delivered. By scaling the prices between the two extremes based on the local stockpile, you get dynamic fluctuations in purchase and sale prices.

If you repeatedly run between two stations, the one selling it cheaper will raise its prices and the one buying will lower what it pays to buy them until supply=demand.

Now all commodities in stock should be for sale, but ones with a net consumption will only be there if someone has delivered some. As that commodity is consumed, the purchase price the base is willing to pay will increase.

---Trade XP

Now trade XP should be paid out for making money at trading (outside of missions anyway). Right now that doesn't work very well. My suggestion is this:

* when you purchase a commodity, you lose trade XP (-1/10 per $)
* when you sell a commodity, you gain trade XP (+1/10 per $).
* you can't lose a license level even if your trade xp falls below the minimum for that level

This way if you make a bunch of bad deals, it will become much harder for you to level up. Similarly, if you get pirated, you also lose the trade Xp you might have gained from selling it. This also makes cargo a bit more valuable to the pirates as they also gain trade XP for selling their booty.

If someone buys an item and then resells it again immediately, they will end up losing trade xp points because of the station margin (stations always buy commodities for less than they sell them).

Some other side effects of this system... you can create spot shortages of items. You can't keep trading the same item all the time or it will get depleted (this will make trading the less profitable items worthwhile occasionally).

This could also be set up so that short runs just don't pay that well. In theory the Devs could have the NPC traders affect this system directly by having them affect stock levels as well, but this may be unnecessary if the production/consumption numbers are set properly.

I would also like to see some sort of ticker or news story that advertises items. For example, there could be a 'for sale list' that lists items at bases that are overstocked, and another one that lists items in demand. I wouldn't define the trade route as the current trade report does. This list should also be nation specific. Itani stations only report prices at itani/uit bases, serco only report serco/uit bases, uit only lists uit and itani/serco border stations, and you are on your own in greyspace.

That should about cover it.
Any obvious exploits I haven't covered?

Now all we have to do is figure out a way to do contraband smuggling (pointless without the ability for local law enforcement to catch you) and otherwise make trading dangerous.
Feb 07, 2005 Spellcast link
http://www.vendetta-online.com/x/msgboard/3/6631
http://www.vendetta-online.com/x/msgboard/3/7350

2 of the many threads we have had on this topic in the past.

The economy needs a re-work, but its functional at the moment and other more interesting content has been made something of a priority.
Feb 07, 2005 Furious link
Sorry to rehash an old topic, and glad to bring it up again. ;)

Lots of good stuff back there. One thing I note is that while lots of people talk about the features they want to see, few people give specifics of how it would actually be implemented.

I also not that a lot of the proposals are needlessly complex. Supply chains, while neat, would not be apparent to the player and thus need not be modelled. Honestly, developing a real simulation of an economy would be a PhD thesis. Really what we want is something that is 1) easy to implement, and 2) gives the illusion of being a dynamic economy.

In all likelyhood, all economy models will have unforseen and unintended consequences, so even my proposal would require tweaking.

I understand that Devs have their own priorities and I certainly don't expect them to fix it overnight, but at least the outlines of a workable system are there for them to mess with. Of course they may have thought of something similar.

BTW, it's amazing what you can find with the search function if you know what keywords to use...('it's "economy" stupid'). Sometimes it is a good idea to NOT read the old posts, that way you get a completely new take on the problem. Oh well.
Feb 07, 2005 a1k0n link
Aside from the experience idea, what you describe is pretty much exactly how it works now except that it never runs out of items even if they're bought at the maximum price. The margins are fixed except I think they can vary if your faction rating with the station is good. It even makes random newsposts about item shortfalls and overstocks, but such shortfalls and overstocks aren't ever very significant.
Feb 07, 2005 Tyrdium link
Hmmm, it'd be neat if stations stopped selling various outfits if they lacked the proper supplies. Of course, then there would need to be bot traders, but (AFAIK), most of the framework for that is already in place. Now all you need is someone who modelled a trade-based economy for their PhD thesis to help. :P
Feb 07, 2005 Furious link
Ah, well nevermind then.

I suppose the part that bugged me the most was the disconnect between profits and trade xp. Perhaps my suggestion might help in that department.

I now see why you might want to fix the sale prices... If you bought up 100 units of a commodity, it would drive the local price up. You could then turn around and sell that item back at a small profit without ever leaving the station.

You could set it up to have spot outages of various commodities just to limit the amount of a particular item people could buy at one time, but that doesn't seem like too much of a problem.