02 March 2008

MMORPGs Economy (part one)

A lot of people e-mailed me about my other MMO related articles, and expressed their wish to do a follow up with an article about setting a MMO economy, and here you have it.
But first a disclaimer:
This article is for your information only, and you should not trust everything you read here. Some advice might work for you, and some might not, therefore it is up to you to decide which, if any, methods you want to implement in your game. Many people complain about Eternal Lands economy, so please be advised that, although I do have years of experience in this field, I, like any other human, make mistakes.

Now that we are done with the disclaimer, let's focus on the real thing.

In most MMOs, regardless of the genre and type (text only, browser based, independent client), we have resources (items, money) coming in and going out of the game. Ideally, the ratio should be 1/1, that is, for every resource coming in the game, something of equal value must go out. Obviously, a perfect 1/1 balance is often impossible to achieve, but there are some tips that can help.

Tools to use
The carpenter has the hammer, the navigator has the compass (or satellite assisted navigation system), and the chef has the stove and pots. It is obvious that each profession requires, or can be facilitated by some tools. Designing a MMO economy is no different. Here are your tools:
a. An office suite such as OpenOffice, which is a free, multiplatform alternative to Microsoft Office. A document editor is important for writing your design document and formulas. A spreadsheet can be useful for quickly testing formulas, and determining the ingredients price, experience gained and so on.

b. A program to draw diagrams and UMLs. Dia is a free, multiplatform program that is relatively easy to use. Making diagrams of how your economy is supposed to work can be very productive both for you and for those who work with you. Sometimes you can also show it to the players so that they will have a better idea on how the economy works.

c. A note taking program. I am using Evernote, which is a shareware Windows program. The reason why a note taking program is can help is because it just sits quietly in the system tray, waiting for you to use it. If you quickly come up with some idea while doing something else, you just click on it, write down whatever you need to remember, then return to what you were doing, knowing that the information will stay there, ready for when you need it.

d. A text (ASCII) editor. If you plan to store your economy related files in a text format (such as XML), a document editor such as Word will not do, because such programs do not usually output a pure text file. I use Textpad, a Windows only shareware program. You can of course use Notepad, or various other free or non free programs, but for me Textpad is the be-all-end-all text editor.

e. An 'in house' tool made by someone in your team that can digest economy related information, and give you a quick look on how one change in a formula affects another. While making such a program is by no means trivial, it can be very helpful in the long run. What this program would do depends on what kind of MMO you plan to make, and how much time your programmers have. One example of a task where it would help is determining how much time it would take a player to make a sword, if he does everything by himself (mining the ore, smelting it, molding the sword, etc.). The program would take into account factors like the time needed to harvest each ore, the time to smelt the ore, make the sword, let it cool..
One other task could be to determine how many monsters of a certain type some player must kill in order to advance to some level. Or, perhaps, simulate a fight between two players where you manually introduce the data (skill, racial modifiers if any, weapons, armor). This way it is easier to test new weapons and armors.

Ins and outs
Before we start with the economy, we need to determine how the resources come in the game, and how they leave the game. Note that we will focus only on the items that actually enter and leave the game, not on the items that a player loses or gains. For example, if two players barter, they will both lose and gain some items, but no new item entered the game, and no old item exited the game. If a player drops an item when he dies, the item is still in the game; it can be picked by some other player.
Please keep in mind that this list is not exhaustive, and obviously, depending on the game mechanics, some methods of entry and exit will not apply. In the second part of the article, I will elaborate on some of them.

Points of Entry:
a. Monster drops. Perhaps the most common, it includes both the normal drops (such as bones, meat, some gold coins) and the rare or very rare drops.
b. Collecting resources from the environment. Mining would be one example. Usually the resources are infinite, but a cap can sometimes be placed so only a limited quantity can be extracted per day, or perhaps per player.
c. Player made items. Those items are usually made by combining two or more items.
d. Daily allowance. Some games give every player a certain number of resources every day or turn. The number of resources given to each player can be the same for everyone, or it can depend based on various factors such as experience, items the player has, virtual estate and so on.
e. Quests. Once a player completes a quest, there is usually some reward. This is not to say that the only possible reward is some money or some item.
f. NPCs. That is usually the case with the merchant NPCs, where the player sells or buys items. Generally, some item is lost and another item is gained.
g. Real life. A few games officially sell in-game items for real money. If a player sells gold to some other player for real money (gold farming), there is no new item entering the game, it is just transferred from a player to another. Therefore, if the game is properly designed, gold farming shouldn't be a big issue.
h. Contests. The contests are different than the Quests because they are usually a one time event with a limited number of winners. The prizes are often given directly by the developers/game masters by using 'artificial' means (some admin command). Sometimes players can organize contests, and give their own possessions as prizes, so no new item enters or leaves the game.
i. Hand of God. This includes every item that artificially arrives in the game via an admin command, and is not a contest prize or bought for real money. Examples can include holidays (where the developers give gifts), a reward for finding a bug, an item meant for testing purposes, and the list goes on.

Points of Exit:
a. Items used for mining/gathering resources. A player can be required to use some pickax each time they mine iron ore (the pickax breaks). Other items such as flowers can be mined without spending anything.
b. Player made items. Resources need to be spent in order to create items. Furthermore, you can make it so that sometimes the player loses the ingredients while failing to create the item.
c. Taxes. A virtual taxation system can be imposed in a game, where a player will have to pay a tax for each virtual estate they have, maintenance fees for the player based factories, salaries..
d. Quests. Not all the quests will give you a reward in resources. Sometimes you will have to spend some money or items in a quest, in order to get something greater (experience, unlocking of a secret area, the possibility to start some other quest, etc.)
e. NPCs. No matter if you buy or sell something to an NPC, some item will exit the game. If you buy, the money will exit, if you sell the item you sell will exit. Other NPCs can charge you a fee to restore your health, give you a blessing, let you cross a bridge..
f. Broken items. Stuff breaks. We are talking about weapons, armors, ammo (if you can't reuse it after being fired). An 'natural disaster' system can be incorporated in the game as well, but more about it in the second part.
g. Natural decay. Some items have a limited life span: the food getting stale or items that are left unattended for a while being stolen by some virtual thief (that is, the server just destroying it).
h. Used items. A very common exit 'destination', it includes potions that are drunk, magic rings that are used, books that are read.
i. Fines. Sometimes, when a player is caught doing something wrong, part of the punishment depending on the circumstances can include an in-game items fine. You curse in a public channel, you need to pay 1000 gold coins, or else you get banned for a day. This can be a pretty effective deterrent, no one likes spending their hard earned money because they have a 'dirty mouth'.

Know thy items
Something you should do is have your server log each and every item that comes in and leaves the game.
All this information should be logged every day (or hour, turn, whatever is easier for you), and the information should look something like this:

Gold coins
Entry - 100000, Exit 120000

Entry method:
NPC: 10000
Monster drops: 80000
Other: 10000

Exit method:
NPC: 100000
Other: 20000

This way, not only you can keep track of the total amount of items that are in the game, but you can also see where most of the items come and go. If you game has a manufacturing system, you can even go as far to log where the resources go during the manufacturing process. Something like:

Iron ore spent on manufacturing: 1000000
Spent on
Short sword: 5000
Long sword: 100000
Chain mail armor: 90000

Based on those logs, you can determine the following things:
a. What items are the most used.
b. What items are the least used.
c. What items are rare (not enough of them in the game).

Once you determine which items have problems, you can adjust all kind of factors, like the monster drops, manufacturing formulas, the cost from an NPC, and so on.
If an item is not used too much, for example some magic ring, you can change it's price, or perhaps make it more powerful. If an item is used too much, you can increase the price, the resource cost, or make it weaker. Asking for player feedback is very useful as well in determining why an item is overused, or not used enough. But more on player feedback later on.
One final word of advice before we move to the next section is that you should wait for a few days or weeks before you jump to conclusions, because the number of items in the game varies from day to day, so you will want to have at least a week of data before you take some decisive action. And, of course, you should correlate the number of daily items with the number of players that played during that day. During the weekends there are usually more players in the game. Therefore, more items will enter and exit the game than during the week days. In-game events can cause great fluctuations too, as the players prepare for that event (producing or consuming more resources). New items sometimes are underused for a while, until all the players know about it and incorporate it in their strategy.

Make your currency strong
Different games have different currencies. A medieval game typically uses the omnipresent "gold coin", while a futuristic game has something else, such as "credits". But they all represent the same thing: the 'official' currency.
So what makes a gold coin valuable? Why would people trade in gold coins, rather than, say.. chain armor or sea shells?
Long time ago, people used to barter for goods and services. A fisher would go to the marketplace with 10 fish, and buy vegetables. Or a blacksmith would trade his sword for a sheep. This system went on since the man started to form communities, and only recently (a few thousands years ago) they started to use 'money'. The advantage of using money, as opposed to bartering, is obvious. It is more lightweight, it can be stored indefinitely without spoiling, it's easier to conceal, can be traded for anything, and the value of a coin is relatively small, so you can buy only one fish if you want, rather than having to buy 50 fish in exchange for your sheep.

An interesting question is, when and how did people accept the concept of a coin? Why would someone trade their sheep for 10 coins? After all, you can't eat the coins, and they have no inherent value. The coins by themselves are useless, and you need to find someone willing to sell you stuff in exchange for those coins. In this day and age, the gold does have an inherent value: a lot of products require gold as an ingredient. But thousands of years ago, you could only make jewelry, statues and coins with it, and all those items are not necessary for survival, or even for wealth.

In a MMO, people are not so willing to accept the official currency unless if they have some use for it. If no NPC accepts it in exchange for items, and if no game functionality needs the gold coin, then you might as well not implement it, because the players are not going to use it.
If an NPC requires 1000 gold coins to sell you some armor, but you can get that armor from a player for 100 flowers, then the gold coin will lose it's value and all the other prices will increase.
Preventing this is relatively simple. Implement some rare and expensive items that can NOT be obtained by any other way except by paying an NPC with gold coins. Implement game services (creating a guild, buying a house, solve a quest) that require gold coins. And do NOT make the gold coin too common! (see the next paragraph).

Managing a player based economy
As previously explained, a system without a 'state controlled' economy is not good. You need some NPCs to buy and sell your currency.
But a system without a player based economy is equally 'ungood'.
There are multiple reasons why you will want the players to buy and sell items to each other, rather than buy the from the shops.
a. It encourages player interaction, which strengthens the community.
b. It creates some sort of self policing game; few people would buy or sell from someone who is constantly causing trouble, or is known as being a bad person.
c. Allows all kind of interesting cool things, such as price dumping, monopolies, protection fees, sabotages, theft, etc. While those things are not so desirable in the real life, I think they are great in a game; they are the salt and pepper.

Implementing such a system is very hard, because you are dealing with humans, which are very unpredictable creatures. You might design the game assuming that people will play only a few hours a day, but in reality many will be playing for much longer, sometimes up to 18+ hours. Or you might expect to take someone 10 months until they can get to a certain level so they can kill a monster, mine a resources, or make an item, only to notice that someone did some 'mad leveling' and they are there in 3 months. And of course, there will be some macroers as well, which will pump a lot of items in the game until they get caught, and perhaps some exploits that allow faster production of items.
While those issues can not be completely avoided, the 5P rules applies (proper planning prevents poor performance). Here are a few tips:
a. Make it so one skill is dependent on another. For example, have some items required for mining or producing other items be available only as monster drops, that only the fighters can get them. Similarly, the fighters will need items they can't make (swords, potions, magic ingredients). This will encourage players of different trades to cooperate.
b. Have some NPCs sell most of the common, non rare items for a high price in order to prevent people in manufacturing related trades from overcharging other players (if they charge too much, people would buy from the NPC instead).
c. Since most of the games work on the principle that the player has to create a lot of items in order to level up in some skill, there will be a lot of excess items flooding the marketplace. This problem is very difficult to avoid, but what you can do is create some quests where the NPC will need a high quantity of those items, so at least some of them will be removed from the game. You can also make it so that some higher level items will require low level items as ingredients.
d. High level items that can be manufactured should require at least one relatively rare ingredient. This is so that the end product will still be rare, or else even the newbies would afford it, due to the fact that the item is mass produced. Think for example of the computers, in the real life. In the beginning they were so expensive that only a few companies in the world had one. Then 50 years later, we are running out of IPs (4 billions of them) because everyone and their grandmother can buy a computer for 300 USD or even less. While in the real life this is a good thing, you do not want that to happen with your 'rare' items.
e. You can combine c. and d. and have the rare items require a LOT of low level items, this would also make them rare and expensive.

This is the end of the first part of the article. In the second part we will focus on the following aspects:
Tips on the ins and outs of the resources, what mistakes to avoid.
How the economy interacts with other game subsystems (networking and graphics).
Getting feedback from the players.
Proper testing of the economy while in the Beta stage.

Radu Privantu
The author can be contacted at: radu.prv at gmail.com


Anonymous Anonymous said...

The input/output statistics should be taken with care.

As many players quit, their items remain ingame, though not available. Hence those items equal "output", but they do not appear in any statistic.

The assumption that an input/output ratio of 1/1 is wrong. As in any society people tend to accumulate goods and money. While it might be true that for some items etc a ratio of 1/1 is desired, for various reasons such as keeping them rare, etc. For others it is pretty irrelevant, e.g. flowers with almost no value etc.

EL has a very complex economic system in comparrison with other games and that's one of the features that attracts many players to the game. However other players believe it's far more enjoyable if you have to do less work and obtain items more easily, e.g. through drops, quests, such as in WoW.

You should always remember that the more complex the economy becomes, the more complex the game will be.

5/3/08 08:03  
Blogger The Editor said...

A 1/1 ratio may seem like a good idea initially, but I have a few reasons why it is not.

First, more powerful characters will usually accumulate more stuff. If you have a game where you have 100 players that all started at the same time and there is 100,000 gp of value to go around, you can assume that each character will probably have around 1,000 gp value of goods. On the other hand, if 50 have been playing for 6 months when the other 50 start, the first 50 will probably have around 2,000 gp value each, and there will be almost nothing for the 50 new players. The result is that the new players are going to have a very difficult time progressing and most of them will probably eventually quit.

Second, let's say we had those 100 characters with around 1,000 gp each, and 100 new players enter the game. Now the world only has 500 gp per character to go around (not to mention the issue with the older players having all of the money). Now, let's say you hit some really good growth and add another 200 characters in the next year. Now there is only 250 gp per character.

A better method would be to allow the game world to have a value based in the number of characters and the level of those characters. Each character might provide an allowance of 500 gp per level. Also, it would probably be wise to reduce the value of characters that are not active.

Changing NPC prices, quest rewards, and contest awards could all be used to add or subtract value from the world, as new characters were created and old ones quit playing.

Economies are dynamic, even in games. A good game economy should be able to compensate for unknowns and should be able to keep gameplay from changing so dramatically that players quit playing. In a game that tries to keep the total value of the world static, all it takes is a bunch of new players, or a bunch of players quitting to disrupt the system.

Lord Rybec

13/7/10 20:30  

Post a Comment

<< Home