2000Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] CGDC dinner -->
<!--X-From-R13: X Q Znjerapr <pynjNxnatn.ah> -->
<!--X-Date: Wed, 15 Mar 2000 21:39:58 &#45;0800 -->
<!--X-Message-Id: 27568.953185190#kanga,nu -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: NDBBJNMFMLADGHGILJHEGELLCFAA.joe#andrieu,net -->
<!--X-Reference: 4667.953174764#kanga,nu -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] CGDC dinner</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:claw#kanga,nu">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00619.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00621.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00619.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00630.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00620">Author</A>
&nbsp;|&nbsp;<A HREF="#00620">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00620">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] CGDC dinner</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] CGDC dinner </LI>
<LI><em>From</em>: J C Lawrence &lt;<A HREF="mailto:claw#kanga,nu">claw#kanga,nu</A>&gt;</LI>
<LI><em>Date</em>: Wed, 15 Mar 2000 21:39:50 -0800</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On Wed, 15 Mar 2000 18:46:04 -0800 
J C Lawrence &lt;claw#kanga,nu&gt; wrote:

&gt; Conceptually I look at the two as potential engergy versus kinetic
&gt; energy.  They're both exactly the same thing, measured in exactly
&gt; the same units, it just that one is in the process of moving.
&gt; This has the advantage of also bring in the concept of the
&gt; difference between static and dynamic friction in regards to rates
&gt; of change of energy levels.  If you look at it that way, the
&gt; problems with hoarding degrade into problems with over-charged
&gt; batteries or large weights being held up -- things that the RL
&gt; universe conspires against thru simple decay (unpopular with
&gt; players), and its less obvious osmotic counterpart entropy (things
&gt; leak back towards zero-sum steady-state (ie decay)).

&gt; Entrpoy is a concept that doesn't seem tobe directly dealt with
&gt; much in current game designs (other than the crude level of direct
&gt; object decay).  The Ur/Meta/Instantiated object concept
&gt; potentially provides a model here for gross entropic events (bank
&gt; robberies?, thief silently replaces your mega-sword with a tinfoil
&gt; sham without your noticing?).

Bryce Harrington pointed me at the following WorldForge article.
Its more than a little simplistic, but discusses the sorts of
feedback loops and systems we've discussed here (tho I have a
penchant for more osciallating systems than he does).  

  <A  HREF="http://www.worldforge.org/website/news/newsletters/issues/aug99/economics">http://www.worldforge.org/website/news/newsletters/issues/aug99/economics</A>

&lt;&lt;I wouldn't mind if someone would enter such documents into the
Library&gt;&gt;

He also takes the view of making the feedback systems directly
reactionary to the desired metrics, whereas I've tended towards much
simpler self-correcting (with enough latency to encourage
oscillation) systems that operate on simple resource consumption
feedback loops (usually second order effects of the desired metics).
eg:

  X breeds at a rate (dorectly or exponentially) proportional to the
availability of Y resource.

  The rate of increase of X's breeding behaviour is lagged by X's
gestation period (see the TC thread with particular attention paid
to the spores, or to the king/fighter/breeder/orc scenaio with
attention paid the growth rate of the typed populations for
examples).  This lag is critical to allowing the pendulmn effect to
get swinging such that the state of the system is allowed to
oscillate interestingly.

    The population of Xes at some point exceeds the production rate
of Y, the available Y collapses (usually exponentially) and the Xes
begins to starve, ulimately collapsing their own population.

With a little coarse tuning you can get a system with the wave
function you require.  A couple relevent links from the Library:

  <A  HREF="http://www.ling.ed.ac.uk/~oliphant/gte/">http://www.ling.ed.ac.uk/~oliphant/gte/</A>

--&lt;cut&gt;--
Control of Economics in WorldForge
by Bryce Harrington 

Trade provides an alternate means of involvement in the virtual
world beyond combat. Crafts will have profit motivations and,
theoretically, practicing a craft could be as profitable (or even
moreso) than killing monsters and raiding ancient vaults. The
economy is set up in a manner that allows society to take care of
itself, independent of all the adventurers galavanting
about. Moreover, it needs to be designed in such a way that strong
pertubations don't upset the economic balance, throwing it off
spiraling into inflation or depression.

The economy, including of trade and craft, needs to be set up as a
steady flow. Input equals output. Input into the economy comes in
several forms: Unearthed treasures (that were not in the economy
previously), labor input (through spell casting or skill use, a
low-value set of ingredients becomes a more valuable product), and
raw materials (trees, peat moss, stone, etc.) Keep in mind that
possessions (or even the fleshy bodies) of new characters introduced
into the game, need to be included to balance the equation. Output
from the economy results in the reduction of the total value of the
virtual world, and can come about in several different ways:
Character death (any paid-for improvements to the character are
removed from the game on death), automated disintegration/rot of
valuable items (wear and tear on tools and other gear), tapping
(direct removal of excess wealth through taxation, thievery, etc.),
destruction (fire burning valuable buildings and their goods, etc.),
and consumption (food that is eaten equals value removed from the
game).

The goal is to seek an equilibrium balance - inflation is kept in
check, wealth is circulated sufficiently to minimize
blackmarketeering, and prices do not increase out of control. There
are several ways to reach and maintain this state. First is through
direct manipulation. The admin actively applies the above mentioned
means to infuse the economy or apply the break to it, watching the
overall situation through internal gages and such. This is
undesireable because it rests responsibility on one person who could
possibly fail in their duty. The second is through careful
balance. Input and output mechanisms are arranged to equal each
other, and over time the admin simply adjusts the parameters to tune
the economy as needed. This is a better approach but requires much
skill and effort to achieve and maintain. As well, in a dynamic
environment like this, the rates of input and output would vary with
the changing player loads, making balancing hard. The third method
is feedback loops. In this approach, mechanisms are created that
come into play if the economy strays too far in one direction or the
other, and apply the appropriate measures to push the system back
towardsneutrality. This last approach is obviously the most
desireable since it requires little effort beyond the initial set
up, and ideally, should require little or no tuning.

So how is a negative feedback loop designed into an online economy?
There are several characteristics to be taken into account. The
first is the rate of increase or decrease of the economy. Slow
increases will need a different mechanism than moderate or fast
increases. Second is type of increase or decrease. Increased wealth
represented by development of property is different and requires
different treatment than hoarding or market capitalization. Third is
sustainability. Increases or decreases due to random fluctuations of
the world are less in need of serious correction than steady
changes, or positive feedback loops. We will need a feedback loop
for situations described by each combination of the above
characteristics.

How is the feedback loop itself designed? The first requirement is
that it be unpreventable. If the loop can be disabled or subverted,
then it will no longer serve as a safety valve. Second, it needs to
shut off when its trigger level is reached (else it will be a
positive feedback loop, which will destroy the economy). Third, it
needs to be hidden; if the players are always aware of it, it could
harm gameplay. Trigger levels should be adjustable in-game by the
admin, or perhaps tied to something the players could influence for
experimentation. For instance, the control levels could be set to
slowly rise over time, thus simulating the historical trend of
increasing agregation of wealth. Since these feedback loops would
damp out economic effects of inventions, allowances could be made to
"raise the bar" as invention changes society's productivity rates.

Example Feedback Loops


Externally supplied consumables: Items with infinite demand and
minimal permanence are supplied and priced in a manner proportional
with the excess wealth in the economy. For example, superior healing
potions that decay within a week of purchase, exotic drugs that
allow a character to remain awake for a full night, herbs that
temporarily increase strength a number of points (but require
expensive co-ingredients and decay within a few days). These are
supplied into the economy via infrequent auctions, and the frequency
of these auctions is inversely proportional to the final bid price -
the higher the sale price, the sooner the next auction will
occur. This feedback loop provides a fine tuning of the economy's
growth - if there is too much disposable wealth and ready cash in
the economy, money will be diverted into sale of these consumables
to take out the excess. Note that these things enter the virtual
world from the outside (in the form of NPC caravans or ships, for
instance.)

Natural disasters: Periodic disasters such as floods, fires,
tornados, and so forth occasionally scour the game world, destroying
developed property and thus removing wealth from it. The frequency
of these occurances is constant - it is the rate of growth of
developed property that varies. The frequency and size of loss to
disasters is proportional to how widespread development has reached;
as wealth grows, this checks and curbs it.

Externally supplied luxuries: These tap away large sums by providing
overpriced valuables (chandeliers, jewelry, etc.) that can be resold
but only at lower price. These items are only made available when
the state of the economy allows sale of these items at above their
"true" value. This works by tracking when resale of the luxuries
occurs - if the sale price is higher than the price for the external
supplies, then external supplies are increased to drive prices back
down.

External development: These serve to correct overabundance of wealth
by moving it into development of land or person. This will be a
natural occurance - people will build homes, buildings for
businesses, and walls around cities. The materials (or labor)
required to create these things drains off-stage, thus providing a
money sink. Of course, the developed land retains value, so the
overall balance of value in the world remains unchanged.

War: This feedback loop is arranged to be triggered only when the
economy reaches a certain height.  Unstoppable invaders are
"attracted" to the source of wealth, desiring to destroy it
completely. This serves to reset both property development and
character development. The players can drive off or defeat the
invaders, but only at great cost. And if they are completely driven
off, another set will arise and try again.

External demand for omnipresent items: This loop prevents complete
economic collapse. Some omnipresent, internally low-value material -
grass, sand, dirt, labor - is desired by external customers.  The
income is slight, and in a normally balanced economy too low to
bother with. But if the bottom drops out of the economy, this low
income will provide a base for the economy. This is a slow and
steady force that rectifies lack of cash.

External investment: This feedback loop seeks to correct lack of
developed property. Materials are provided from off-stage (via a far
away emperor, for instance) to build structures and businesses in
the form of grants or subsidies. For instance, the king could
provide funds for creation of walls around cities, or digging canals
and dams for flood protection and irrigation. These investments are
triggered by certain economic disasters - threat of invasion, rapid
loss of property value, etc. Once the world begins to develop, this
feedback system would cease being important.

Cash Circulation

All the feedback loops in the world won't make a difference if
everyone hoards. Hoarding is okay in moderation - it buffers
excessive wealth, taking it out of the system and slowing the growth
of the economy. But if hoarding is the norm, then wealth will
gravitate to the few - those with the most ability to amass the
wealth. The rest of the population will be without. Which is
somewhat realistic with medieval fantasy, but not much fun. Money
expenditures should be continually required for the life of the
character, regardless of his economic position.

The way to keep the economy moving is consumption. There must be
items that every player character needs, and on a regular
basis. Food will be the primary consumed item, and will serve as the
basis for the entire economy. Clothing, housing, furniture, and
tools will also play a part. Adventurers will have a number of
needed items to be outfitted: Horses, weapons and armor, herbs,
drugs, potions, single use magic items, hirelings, and
rations. These items should be considerably more expensive than the
basic economic units of the world.

Spending is needed at higher levels as well, thus permitting Ye Olde
Tryckle Downe. By and large, this will be via employees and
servants. The more wealthy will need to pay bankers to manage their
money, servants to care for their needs, guards to guard their
homes, etc. This will probably be insufficient to recirculate from
the highest levels, so taxes, theft, and "encouraged" charity would
need to be employed.  Further research and brainstorming will be
needed to find good ways to divest the rich of their riches. ;-)

Economy Initialization

It'll be most interesting if we let the economy "grow" into place,
rather than implement the game such that it pops into its economic
equilibrium immediately. The world will be set up with an initial
(empty) town, and populated by monsters and teasures. Tools,
weapons, and such will be scattered about. The first characters will
emerge in a "safe" but useless area of the world, where there will
be some rocks and clubs.  These characters will need to work
together to retake the town from the monsters that occupy it. Then
they will either continue adventuring around, or set up
shop. They'll want to collect the tools for sale to future
characters. They'll also need to organize some defense against the
remaining wandering monsters and hunting parties to go gather the
herds and collect meat. Setting up some farms will also be an
important first step.

The initial focus of the game world will be simply staying alive and
staying fed. Ideally, this will remain a driving concern for the
life of the game world. Gradually, as characters get better at
farming and herding, more food will be available and players will be
able to start mines, become blacksmiths, make weapons, etc.

Over time there will remain a division between characters who stay
in town and build the trades, and those who venture out, risking
life and limb, to collect treasures. For players who prefer
adventuring over mercantile operations, there will be suitable
employment as guards, rangers, and mercenary groups.
--&lt;cut&gt;--

-- 
J C Lawrence                                 Home: claw#kanga,nu
----------(*)                              Other: coder#kanga,nu
--=| A man is as sane as he is dangerous to his environment |=--


_______________________________________________
MUD-Dev mailing list
MUD-Dev#kanga,nu
<A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>

</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00584" HREF="msg00584.html">RE: [MUD-Dev] CGDC dinner</A></STRONG>
<UL><LI><EM>From:</EM> "Joe Andrieu" &lt;joe#andrieu,net&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00619" HREF="msg00619.html">Re: [MUD-Dev] CGDC dinner</A></STRONG>
<UL><LI><EM>From:</EM> J C Lawrence &lt;claw#kanga,nu&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00619.html">Re: [MUD-Dev] CGDC dinner</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00621.html">Re: [MUD-Dev] Open Source Online Gaming</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00619.html">Re: [MUD-Dev] CGDC dinner</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00630.html">RE: [MUD-Dev] CGDC dinner</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00620"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00620"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><strong><A NAME="00577" HREF="msg00577.html">[MUD-Dev] CGDC dinner</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sat 11 Mar 2000, 18:36 GMT
<UL>
<LI><strong><A NAME="00584" HREF="msg00584.html">RE: [MUD-Dev] CGDC dinner</A></strong>, 
Joe Andrieu <a href="mailto:joe#andrieu,net">joe#andrieu,net</a>, Mon 13 Mar 2000, 07:00 GMT
<UL>
<LI><strong><A NAME="00592" HREF="msg00592.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
Ryan Palacio <a href="mailto:rpalacio#verant,com">rpalacio#verant,com</a>, Mon 13 Mar 2000, 17:24 GMT
</LI>
<LI><strong><A NAME="00619" HREF="msg00619.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Thu 16 Mar 2000, 02:46 GMT
<UL>
<LI><strong><A NAME="00620" HREF="msg00620.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Thu 16 Mar 2000, 05:39 GMT
</LI>
<LI><strong><A NAME="00630" HREF="msg00630.html">RE: [MUD-Dev] CGDC dinner</A></strong>, 
Joe Andrieu <a href="mailto:joe#andrieu,net">joe#andrieu,net</a>, Thu 16 Mar 2000, 17:39 GMT
</LI>
<LI><strong><A NAME="00639" HREF="msg00639.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
Derek Snider <a href="mailto:derek#idirect,com">derek#idirect,com</a>, Thu 16 Mar 2000, 22:26 GMT
<UL>
<LI><strong><A NAME="00645" HREF="msg00645.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Fri 17 Mar 2000, 06:29 GMT
<UL>
<LI><strong><A NAME="00653" HREF="msg00653.html">Re: [MUD-Dev] CGDC dinner</A></strong>, 
Wes Connell <a href="mailto:wconnell#skotos,net">wconnell#skotos,net</a>, Fri 17 Mar 2000, 19:28 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>