Most multiplayer online games eventually introduce some sort of economic system. Maybe there are NPC vendors to sell to, maybe there is an auction house or just the ability to trade with one another. An economic system of some description is expected in most games, if only for offloading your loot or upgrading your weapons. In any sort of consistent-world RPG it is also realistic — it makes sense that the in-game metropolis should have a burgeoning marketplace.
From a game designer perspective, though, in-game economy has only one actual purpose: to produce emergent gameplay. Emergent gameplay roughly means that your players create their own game enjoyment out of the building blocks you supply - potentially extending the game beyond the sum of its parts.
Economy is a great candidate for emergent gameplay. Players are inherently familiar with the concept of trade. By even introducing the possibility to buy and sell, you give players the ability to create their own motivations and plots. It gives them stories of how they finally gathered enough money to buy that upgrade or managed to corner the market on rat tails. Fun all around!
… In theory, anyway. In reality, game economy is tricky. The problem with economy is that for it to be useful and fun, players must perceive it as completely fair yet rewarding to manipulate. This article will try to argue against a single-currency money-based economy and try to make a case for using a multi-currency bartering economy instead.
The peaceful NPC world
Consider an ideal money-based game economy.
This economy is a simple closed market only populated by computer-controlled NPCs. It has a fixed total number of money units — let’s call it “gold” for the sake of this article. In our simulation we use some sort of AI to make sure NPCs have needs and can produce resources. Whenever an NPC buys something from another NPC, money changes hands but the total amount of gold in the world does not change. It’s not too hard to emulate supply and demand: just track the global number of goods you have and (with some suitable algorithm) scale up the price for rare goods while scaling down the price for common ones. The system need not be completely deterministic, either; it can have some random ups and downs in goods availability. This is coupled to an artificial delay before a price adjusts to the “real” supply and demand, allowing NPCs to earn extra before prices drop or lose out if they happen to sell at the wrong time.
This is a relatively simple system to code and emulates the overarching principles of a closed market; The NPCs trade their goods for gold, then spend that gold again for things they need. Some would benefit from the random chance and delays and get richer than others, others would become poor. This is a place of well-behaved NPCs. If you tweaked the numbers right you should realistically be able to balance and run this simulation indefinitely.
The humans come and ruin everything
Now introduce human players into this peaceful NPC economy and things tend to go haywire. Why is that? Here are only some of the reasons:
- Players join the game from nowhere, and they expect to be able to participate as if they were always there. The real-world equivalent might be foreigners moving into a very isolated country, bringing new wealth with them. To avoid taking money from existing players, the economy must increase, meaning the total amount of gold (and goods, but usually only gold is considered) must increase.
- A player leaving the game might or might not return to the game again. This has no real-world equivalent. The character of a logged-out player usually has no in-game needs, the money they own is locked away from the economy. You usually don’t want to erase/reclaim their resources in case absent players decide to come back later. This causes a dilemma: Should the money they carry no longer count towards the total amount of gold? This effect may be minor in a large game like EVE Online, but in a MUD with some 20-40 regular players, every player’s purse matters.
- A player expects to have fun. Or at least have some real influence over their own fate. This actually has no real-world equivalent either. In the real world you just have to live with a crashing economy or being stuck in a financial situation you can’t get out of. In a game, you can log off and not come back.
- For the sake of ensuring “fun”, players tend to get unfair advantages compared to NPCs. They have access to goods/loot the NPCs cannot get and often travel much faster and over greater distances (this last part is very important — if movement is too fast, the real-world purpose of trade routes falls away).
- Many games introduce new gold into the system via monster kills and quest rewards. This is new gold. No one ever traded that gold or used it to buy existing goods. Again, this is used as an incentive to keep the players entertained but it is death to our ideal little economy simulation.
- Finally, human players can’t be expected to show restraint the way NPCs can be coded to do. Our nice supply-and-demand algorithm can easily be subverted if one player decides to spend a week cutting down all the trees in your game. It can be very hard to dampen the effects of such extreme actions.
Note that from among these points, the irrational human nature is only mentioned in the last one (you must always expect a bored player to test the unexpected just for laughs). The rest stem from the fact that we not only want new players to join our game, we also want them to enjoy their experience.
The unfortunate result of all this is that the economy becomes more and more meaningless with time. Rapid inflation kicks in: as more and more money is introduced into the system, the actual value of each unit drops. Few games even bother starting from that balanced and friendly NPC economy — they just open to human players and hope for the best. Most give new players a chunk of money and mint new coin for them whenever needed. NPCs are only there to dispense even more money, often at fixed prices. Before long players bathe in money, making the gold economy all but superfluous except to the newbies. That impressive sword you worked so hard to afford a few months back? Now it’s worth no more than what you regularly carry in your pocket.
But there is still a need to trade! Just not for money. At this point it makes sense that unofficial bartering emerges between players, eschewing NPC vendors and gold except for basic things they can’t get otherwise.
There are many ways proposed to solve the problems of in-game money economies (short of cheating and alienating your players by removing all their wealth by some hand-wavy fiat). Most deal with the concepts of sinks. Sinks are basically black holes to throw gold into. This could be expensive one-use potions that people need to survive, taxes on transactions or other expenses that effectively removes gold from the system. In theory, if there are as many sinks as there are sources of money you would have an inflation-free economy where things retain their value with time.
However, players loathe being forced to spend money (taxes are no more fun in-game than they are in the real world) and tricking them into wanting to do so puts a lot of effort on the designer. It’s probably possible to make a stable money economy but it’s safe to say that most games with a traditional money economy will experience rampant inflation eventually.
That “easy way to have players create their own content” doesn’t sound quite so easy anymore, does it?
Go for bartering right away
A prospect I think could be explored further in multiplayer games would be to forego the single-currency money system completely and go for the multiple-currency barter economy out of the box. This is not a new idea (Richard Bartle argues this point already in his seminal book Designing Virtual Worlds), but it bears repeating: once your gold is rendered worthless by inflation, people will resort to bartering anyway, so why not make the barter system a robust one from the onset?
The simplest way to barter is to simply agree to a trade and then use the game’s give command to do the exchange. There are some good reasons to add a more formalized barter mechanic to your game, though:
- Having a coded mechanic makes bartering an “official” part of the game in the mind of the players. It tells them that this is the intended way to do it.
- A barter system can make sure that no one holds both goods at the same time, avoiding real-life scammers — this could be a real problem if PvP is otherwise limited. If an in-game thief wants to pull a scam or take off with the goods, this should probably be tied to an actual game skill instead.
- A formalized barter system is easier to adopt for use with NPC traders using the same commands.
- A money economy is actually just a subset of a barter economy. The only difference is that one side trades coins rather than goods. So even if you do choose to have a money economy, a robust barter system allows you to trade everything seamlessly.
Some years back I added such a safe barter system to Evennia’s optional contrib/ folder. A MUD session in this system can look like this when player Ada wants to trade with player Borek:
Ada> trade Borek: Hi, I have a nice extra sword. Wanna trade?
Borek< Ada says, “Hi, I have a nice extra sword. Wanna trade?” [Ada wants to open trade with you. Enter ‘trade Ada’ to accept]
As seen, these commands all support an optional additional say/emote for roleplaying (see the last issue of Imaginary Realities where I discussed this idea of extending normal commands with emotes).
Borek> trade Ada: Hm, I could use a sword … if the price is right.
Borek< [You are now trading with Ada. Use ‘help trade’ for aid.]
Ada< Borek says, “Hm, I could use a sword … if the price is right.” [You are now trading with Borek. Use ‘help trade’ for aid.]
At this point, Ada and Borek are in “trading mode”. This means that a subset of trading commands are available to let them offer up items for trade. Should either of them decide to move away (or, say, attack each other), the trade is aborted. No actual objects change hands yet. The system also makes sure that the players actually carry the items they are offering.
Ada> offer sword: This is a nice sword. I need some healing potions. Got any?
Borek< Ada says, “This is a nice sword. I need some healing potions. Got any?” [Ada offers Sharp sword. Use ‘inspect` to examine it]
Borek> inspect sharp sword
Borek< (sees stats and description of the Sharp sword)
Borek> offer 2 healing potion: Nice. Here are two potions for your sword.
Ada< Borek says, “Nice. Here are two potions for your sword.” [Borek offers 2 potion of healing, use ‘inspect’ to examine them]
Ada does not think two healing potions are enough for the sharp sword. She does not have to make a counter-offer every time though; the normal emote/say commands work too:
Ada> say Hey, this is a nice sword. I need something more. Maybe some food?
Borek< Ada says, “Hey, this is a nice sword. I need something more. Maybe some food?”
Borek> offer 2 healing potion, 3 rations: Alright, I’ll throw in some quality rations, that’s my final offer.
Ada< Borek says, “Alright. I’ll throw in some quality rations, that’s my final offer.” [Borek offers 2 potion of healing, 3 big rations. Use ‘inspect’ to examine them]
At this point the offer is one sword for two healing potions and a few rations. The players have commands to list the current offering and continue bartering. If the deal is off, they can decline to abandon the trade entirely. To seal the deal both sides must accept the same standing deal:
Ada> accept: You are killing me here, but alright.
Borek< Ada says, “You are killing me here, but alright.” [Ada accepts the offer. Use ‘accept’ or change the offer to continue bartering]
If Borek would change his offer now, Ada’s registered acceptance resets so that she has to re-enter it again. Borek is happy with the deal, though:
Borek> accept: Excellent. Nice making business with you!
Borek< [you both accepted. Deal is made and goods change hands]
Ada< Borek says, “Excellent. Nice making business with you!” [you both accepted. Deal is made and goods change hands]
At this point the barter mode is exited and normal gameplay recommences. The promised items are automatically transferred between the players’ inventories.
Drawbacks of bartering
In a bartering system the single currency of money is replaced with multiple currencies — the goods themselves.
The drawbacks of in-game bartering are the same as the drawbacks in the real world: What if you don’t have what the other person wants? A barter economy is very inefficient in larger societies as people specialize in wares that not everyone wants all the time. Money exists for a reason — it greases the wheels of commerce. This means that you must design the game so that players require a wide range of goods to be successful at what they do — they must create supply and demand. All items in the game must be useful in some way so as to give them complementary trade value. A crafting system is a natural consequence. The goods need not be equally diverse for all games, though. One could picture a combat-oriented game where only weapons and armor are tradeable. For this to work one would have to design all weapons having their pros and cons and none being universally better than the rest … come to think of it, that sounds like good design advice overall!
In small games with limited user bases the limits of bartering actually offer some interesting gaming and roleplaying possibilities. It gives players with desirable goods the incentive to set their price: goods that other Players need to procure for them — that is emergent gameplay right there. This can help tie the economy more closely to non-violent game mechanics like crafting, potentially making the latter more diverse and rewarding. Combat still has a role (where else to get wolf pelts and lizard hides?) but the spoils of battle are not as generally useful if you don’t have the right buyers lined up, just as in the real world.
An economic system is not something you should just put into your game as an afterthought because it “needs to be there”. There are great gameplay benefits to be had from an economy more complex than “throw gold at the players until they stop complaining”
Although this article argues for the benefit of a barter (multi-currency) economy, a money (single currency) economy is probably easier to create. Tracking all these currencies is more work than counting gold. But it also means that the currency of your world is spread more broadly — it’s harder to crash or inflate all those currencies at the same time. You can be the sole supplier of lizard livers but be low on snake tongues ... And any day now those crafty witches will figure out that snake tongues work just as well as lizard livers in their potions.