Friday, July 3, 2009

Gold balancing in MMOs

[Update 2009/07/04 - I've posted an updated version of this post as an article on the Alter Aeon web site.]

All too often, articles talking about gold balance do little more than state simply that 'most MMOs have problems with gold balance'. Rather than waste your time, I'll describe a successful example of a gold economy, and what it took to get there.

Alter Aeon handles its gold economy fairly well, after many years of tweaking. The foundation for this stability is accurate gold tracking:

- All gold sources and sinks are tracked and understood

- Real-time gold stats are available

- Unexpected or 'dangerous' gold changes are logged

- Large gold changes, even valid transactions, trigger notifies just in case

- There's a single global value representing all gold in circulation

Just tracking the flow of gold through the system was useful, but completely ineffective in actually managing the economy. Usually when a game manages to get numbers, they have active immortals adjust things on a continuous basis to keep the economy under control. We decided that this would be a complete waste of time for an immortal; we have computers to do boring tasks like this.

Therefore, we don't bring immortals or builders into the picture at all. Nearly all gold drops are calculated from statistics and game parameters. Adding this helped tremendously, but was still not enough to stabilize the economy on its own. In the long run, we ended up with several layers that each contribute to the whole system:

- Mobs drop gold based on their death or theft rates; object gold is similarly modified with every looting of a treasure object. The purpose of this dynamic feedback is to prevent one source from dominating or becoming the 'easy gold'.

- Large quantities of gold are taxed. Characters holding more than a million gold are taxed on the amount above a million gold, to the tune of about 2% per week. The purpose of the tax is to prevent packrats from accumulating unlimited hoards.

- Clan and guild bank accounts can only hold a limited amount. Since the very existence of the clan indicates that gold is being paid in dues, this limited amount is fairly high (on the order of 50 million gold.)

- Player shops can hold an unlimited amount, but generally shops have high rent rates, so gold turnover has so far not been a problem there.

- Dynamic pricing of items alters the price of items for sale in shops based on how often they are shoplifted. If a particular item is stolen too often, the price is lowered and the theft difficulty is raised to make the price more cost-competitive.


But by far the most critical part of the system is the global offset controller. This control system monitors the total quantity of gold in existence, and subtly tweaks the gold sources based on that value. The short-delay term of the control system looks at local deviations from the long term expectation, and fairly aggressively modifies the global gold sources. This short-delay term can change total gold influx on the order of 50% in a one week period if necessary.

As the total quantity of gold in existence changes, the long-delay term of the control system slowly adjusts the set point for the short-delay calculations. If a large amount of gold is in circulation, the short-delay set point will be lowered, globally lowering the input of gold into the system.

The net result of all this is that we have a system that allows for fairly substantial deviations in the short term, but always returns to long term stability. Total gold in circulation has varied by approximately 10% (peak of 528 million to trough of 482 million) over the last two years, and I no longer hear the once-common complaint that gold is worthless.

No comments: