<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://opensimulator.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://opensimulator.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Karen+Palen</id>
		<title>OpenSimulator - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://opensimulator.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Karen+Palen"/>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Special:Contributions/Karen_Palen"/>
		<updated>2026-05-06T12:17:48Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.9</generator>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:35:12Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Protect Yourself */ emphasis&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
'''But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business''' and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. &lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, your auto insurance is voided, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
I exaggerate only for emphasis - and not very much!&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Mr. Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
'''ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything you would ever own!&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:31:23Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Are you running a &amp;quot;business&amp;quot;? */  add emphasis&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
'''But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business''' and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. &lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, your auto insurance is voided, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
I exaggerate only for emphasis - and not very much!&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Mr. Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:13:47Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Protect Yourself */  typo (yes I know I can't type so sue me ...)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. &lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, your auto insurance is voided, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
I exaggerate only for emphasis - and not very much!&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Mr. Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:12:41Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Consumer Protections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. &lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, your auto insurance is voided, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
I exaggerate only for emphasis - and not very much!&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:11:26Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Consumer Protections */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. I exaggerate only a little!&lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, your auto insurance is voided, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T23:10:38Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Are you running a &amp;quot;business&amp;quot;? */  add Consumer Protection comments&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Consumer Protections ===&lt;br /&gt;
&lt;br /&gt;
There are all kinds of laws in every jurisdiction concerning protection of &amp;quot;Consumers&amp;quot; from all kinds of legal hazards and scams. The basic idea is to protect the legendary &amp;quot;widows and orphans&amp;quot; from evil criminals who are intent on stealing their meagre pensions. I exaggerate only a little!&lt;br /&gt;
&lt;br /&gt;
NONE ('''NONE!''') of the &amp;quot;Consumer Protection&amp;quot; laws apply the '''instant you accept money''' (or &amp;quot;value&amp;quot;) in a &amp;quot;business&amp;quot; transaction! You are no longer a &amp;quot;Consumer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Your &amp;quot;Home-owners&amp;quot; insurance no longer applies, and in they eyes of many you are now merely a &amp;quot;RICH evil capitalist&amp;quot; (all for selling a US$1 virtual hat online!)&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
It should not be a surprise that you are not the first to have this problem :-) and there are ways to &amp;quot;minimise&amp;quot; the risks and hazards. All the same '''NEVER''' forget that it is a different world!&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T17:28:50Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Are you running a &amp;quot;business&amp;quot;? */ typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and your local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Mr. Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T17:27:47Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* A Different Idea */ fix typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and you local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Dividend'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a dividend. If users earn a dividend just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a dividend will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a dividend would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a dividend. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
The Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Money</id>
		<title>Money</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Money"/>
				<updated>2011-09-14T17:23:24Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* OpenSim, Applications and Money */  add comments on setting up a &amp;quot;business&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{proposal}}&lt;br /&gt;
This page is intended as an open discussion board for ideas regarding an in-world financial system - Ezekiel.&lt;br /&gt;
&lt;br /&gt;
== OpenSim, Applications and Money ==&lt;br /&gt;
The OpenSim project does not consider providing any kind of functioning monetary system within its scope. Doing so is entirely up to the service provider, as that provider has to be the source of the trust associated with monetary transactions.&lt;br /&gt;
&lt;br /&gt;
The OpenSim platform will provide whatever protocol hooks necessary to implement a monetary system, and reference implementations for demonstration purposes, but not actual implementations of functioning monetary systems. It is essential to understand this when discussing what OpenSim can do with respect to monetary systems.&lt;br /&gt;
&lt;br /&gt;
== Are you running a &amp;quot;business&amp;quot;? ==&lt;br /&gt;
&lt;br /&gt;
The answer is simple: '''If you accept &amp;quot;real world&amp;quot; money or &amp;quot;something of value&amp;quot; IN ANY WAY for doing something then you are operating a business'''!&lt;br /&gt;
&lt;br /&gt;
The fact that everything is &amp;quot;virtual&amp;quot; and it is all run from a computer in your bedroom makes no difference.&lt;br /&gt;
&lt;br /&gt;
A simple standalone grid which you pay for yourself and run out of your home is likely a &amp;quot;hobby&amp;quot; not a business (but there are exceptions), even if you have hundreds of visitors every day.&lt;br /&gt;
&lt;br /&gt;
Your grid may or may not be a business (depending on local law) if it is run ONLY by donations. &lt;br /&gt;
&lt;br /&gt;
But if you rent &amp;quot;virtual land&amp;quot;, charge for uploads, or sell &amp;quot;cute hats&amp;quot; in world then you ARE running a business and a whole new set of rules and laws apply! The details differ everywhere, but that distinction is universal.&lt;br /&gt;
&lt;br /&gt;
In addition there are all kinds of licenses, safety laws, taxes, and often other requirements that apply to ALL businesses.&lt;br /&gt;
&lt;br /&gt;
You need to research this before you start. This is not as hard as it sounds, the local Chamber of Commerce and you local city/town government offices will have all kinds of information.&lt;br /&gt;
&lt;br /&gt;
=== Protect Yourself ===&lt;br /&gt;
&lt;br /&gt;
If you are planning on something that deals in real life transactions IN ANY WAY, then look into setting up a business entity (Corporation, LLC, or whatever) to run it.&lt;br /&gt;
&lt;br /&gt;
See http://www.keytlaw.com/ for &amp;quot;Information &amp;amp; Articles about Arizona and United States Law&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Keyt is an Arizona/US lawyer, but the issues he raises are universal. I highly recommend studying his website and especially his section on Internet Law.&lt;br /&gt;
&lt;br /&gt;
As Keyt says in one of his articles, the day the process server knocks on your door is one day too late!&lt;br /&gt;
&lt;br /&gt;
ONE disgruntled user who lost real life money (or &amp;quot;value&amp;quot;) to a crook on your sim can cost you everything you own and everything will ever own!&lt;br /&gt;
&lt;br /&gt;
== Motivation ==&lt;br /&gt;
In order to be successful, any new world simulator needs to allow for financial transactions. While many residents enjoy the creative and social aspects of virtual life, others are there to provide them with the necessary means - and usually intend to be compensated.&lt;br /&gt;
Metaverses without a business component (allowing residents to make money) depend largely on the creativity of the makers and tend to fall into disuse as soon as competitive simulators with better graphics and better entertainment come along (e.g. Active Worlds).&lt;br /&gt;
&lt;br /&gt;
== Play Money vs. Serious Money ==&lt;br /&gt;
There are two types of financial systems and currencies: one is purely an in-world affair (play money) and supports roleplay, the other is convertible into hard currencies (serious money).&lt;br /&gt;
While it is commonly agreed that implementing a serious in-world currency system (with all the security implications) is out of scope at least for the current phase of the OpenSim development project, there are still some functional decisions to be made.&lt;br /&gt;
&lt;br /&gt;
There are several possible ways of handling money in a grid:&lt;br /&gt;
* no money support&lt;br /&gt;
* in-world play money for roleplay&lt;br /&gt;
* in-world currency supported, protected and converted by the grid owner (like SL)&lt;br /&gt;
* off-world payment implementation, no in-world currency&lt;br /&gt;
* in-world play money plus off-world payment capabilities (might be confusing)&lt;br /&gt;
&lt;br /&gt;
OpenSim should allow for an implementation of any of those alternatives.&lt;br /&gt;
&lt;br /&gt;
== Off-World Implementation ==&lt;br /&gt;
These are crucial in-world functions for off-world financial transactions:&lt;br /&gt;
* put a price tag on a prim, specifying amount and currency&lt;br /&gt;
* notification event (LSL) that resident X agrees to buy item / pay amount Y.&lt;br /&gt;
&lt;br /&gt;
These functions are not crucial, since they may be implemented off-world:&lt;br /&gt;
* an in-world currency (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* avatar account (use an internet payment provider or an e-currency instead)&lt;br /&gt;
* receive payment (can be handled off-world through osLoadURL - for most providers)&lt;br /&gt;
* give money (can be handled off-world through osHTTPRequest - for some providers)&lt;br /&gt;
* notify avatar of payment (can be done through IM or e-Mail)&lt;br /&gt;
&lt;br /&gt;
== Wallet Plugin ==&lt;br /&gt;
It occurs to me that perhaps it isn't the job of the grid to keep track of every avatars financial transactions.  Perhaps this should be left to banks and other financial organizations.  I'm thinking that perhaps OpenSim should pull the money out of the grid and develop an independent bank server.  Avatars could choose which &amp;quot;wallet&amp;quot; or &amp;quot;bank&amp;quot; to use for a transaction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== A Different Idea == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A Currency that Pays a Divident'''&lt;br /&gt;
 &lt;br /&gt;
The OpenSim project should have a currency that pays a divident. If users earn a divident just by using the game currency this will be a great incentive not only to participate in the game but also to use the currency in real life. Thus this increases the possibility that a market of things of value will develop in the game and maybe the currency will be used for real life transactions as well. A currency that pays a divident will prevail over any other form of virtual currency by means of the strategic advantage of directly benefiting the user. Convertibility to real currencies will depend solely on free market ability of the currency to provide goods and services and not some convertibility obligation undertaken by the company that hosts the server.&lt;br /&gt;
&lt;br /&gt;
Implementing a currency that produces a divident would require suitable financial institutions, capital markets, and a mechanism to liquidate a part of current value of financial instruments. Through liquidating a sustainable part of current value of financial instruments the company that hosts the server would earn the game money funds which when converted to real currency would pay for its operational costs plus the funds needed to pay a divident. It would be in the best interest of the company that hosts the server to ensure that the financial structure operates efficiently for the benefit of the users so that the game currency has maximum value of convertibility to real life currencies.&lt;br /&gt;
&lt;br /&gt;
The financial structure required could be as follows:&lt;br /&gt;
&lt;br /&gt;
'''1. Central Bank'''&lt;br /&gt;
&lt;br /&gt;
THe Central Bank would oversee the monetary volume, the amount to be liquidated and the keeping of individual money accounts of users free of charge but free of interest as well.&lt;br /&gt;
&lt;br /&gt;
- All users would be shareholders to the Central Bank, owning no more and no less than one share each&lt;br /&gt;
&lt;br /&gt;
- The monetary volume would be a fixed amount of currency for each share, say 100.000 units, which would be the nominal value of the Central Bank share.&lt;br /&gt;
&lt;br /&gt;
- All financial transactions of users, Investment Banks and Capital Markets would be processed through the Central Bank's server software and console&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of Investment Bank's current stock value must be held in liquid reserves&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will determine how much of those liquid reserves will be contributed to the Special Account in order to be distributed to the users as divident and to the company that hosts the server&lt;br /&gt;
&lt;br /&gt;
- The Central Bank will have the power to dispense payments through the Special Account to the company that hosts the server, to shareholders and to in-game political institutions such as elected moderators &lt;br /&gt;
&lt;br /&gt;
- Ideally the Central Bank management would be ellected by users, even better by Invesment Bank managers  &lt;br /&gt;
&lt;br /&gt;
- Any increase or decrease in monetary volume would be achieved solely by depositing or withdrawing funds to/from each user's account &lt;br /&gt;
&lt;br /&gt;
'''2. Investment Banks'''&lt;br /&gt;
&lt;br /&gt;
The Investment Banks would be the main user operated financial institution. &lt;br /&gt;
&lt;br /&gt;
- They would be the only financial instrument users would be able to directly buy shares of. &lt;br /&gt;
&lt;br /&gt;
- They would be the only vehicle available for investment in Capital Markets. &lt;br /&gt;
&lt;br /&gt;
- They would be able to structure and trade financial instruments through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be able to lend money for projects&lt;br /&gt;
&lt;br /&gt;
- Any user or group of users would able to open an Investment Bank through a console provided by the Central Bank if they provide capital equal to say 10 Central Bank Shares worth  &lt;br /&gt;
&lt;br /&gt;
- An individual who wants to trade the financial markets with his own money, should come up with enough capital to open an Investment Bank&lt;br /&gt;
&lt;br /&gt;
- Investment Banks would freely be able to raise capital by issuing shares&lt;br /&gt;
&lt;br /&gt;
- Their shares would be floated and traded in a separate market than Capital Markets through the Central Bank console&lt;br /&gt;
&lt;br /&gt;
- They would be under obligation to keep a part of their investment portfolio in cash so the Central Bank can deduct a contribution to the Special Account&lt;br /&gt;
&lt;br /&gt;
- The holdings in their investment portfolio would be open for every interested investor to audit&lt;br /&gt;
&lt;br /&gt;
'''3. Capital markets'''&lt;br /&gt;
&lt;br /&gt;
These would be the Exchanges where financial instruments are traded&lt;br /&gt;
&lt;br /&gt;
- The Central Bank would provide the console for the Exchanges and handle the payments&lt;br /&gt;
&lt;br /&gt;
- Anything of value could be traded on the Exchanges&lt;br /&gt;
&lt;br /&gt;
- The financial instruments would be structured freely by the Investment Banks&lt;br /&gt;
&lt;br /&gt;
- Individual loans would be structured as financial instruments and traded freely&lt;br /&gt;
&lt;br /&gt;
- The coding of financial instruments would be open for everyone to audit&lt;br /&gt;
&lt;br /&gt;
- An Exchange would be a user-managed institution, the user-managers would be able to charge a commision on transactions as compensation for managing the exchange&lt;br /&gt;
&lt;br /&gt;
- The Exchanges would all be interconected, so the most efficient ones get the most business&lt;br /&gt;
&lt;br /&gt;
'''Supporting Environment'''&lt;br /&gt;
&lt;br /&gt;
The financial structure's legitimacy and effectiveness would benefit the most by a functional political proccess within the game and the development of legal and political institutions that would oversee its implementation. In this way the company that hosts the server would have relegated most of the work too the user community. In a maybe utopian scenario the company itself could be owned by the users. A lot of reated economic activity could evolve alongside the main structure such as auditing companies, programmers etc&lt;br /&gt;
&lt;br /&gt;
'''Kickstarting a Project'''&lt;br /&gt;
&lt;br /&gt;
Once the software is implemented as above this could evolve as essentially a game where the collective purpose of the users would be to develop and increase the value of the game currency and spread its use. A group of people willing to kickstart such a project would need to set up a server and a rudimentary mechanism to buy and sell shares to the Central Bank and thus opening user accounts. Integration with a payment system such as Paypal would help. A new user would be able to either:&lt;br /&gt;
&lt;br /&gt;
- use real money to buy enough in-game currency from other users or the central bank as a provider of last resort to purchase his share to the Central Bank and so be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
- or start free and offer services or anything of value in-game so as to accumulate enough in-game currency to buy his share in the Central Bank and then be entitled to a divident&lt;br /&gt;
&lt;br /&gt;
When a new user opens an account and purchases his share to the Central Bank, new in-game money is created up to the value of one Central Bank share. If he buys his share, the money is deposited in his account. If he does not buy a share and starts free the money is deposited to the Special Account for the benefit of all users. In this way the monetary volume is increased as new users come in and all all users benefit from attracting new users. A de facto mechanism for the convertibility of the in-game currency would thus be achieved and setting up a server for the game could prove profitable. Ideally various groups would be able to start different projects but all grids should be interconnected and maybe their currencies floated on a common exchange&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Simplest In-Grid Money ==&lt;br /&gt;
&lt;br /&gt;
A unique avatar creates objects that may not be copied, may not be modified, but may be transferred.  The object permission, and asset storage code of OpenSimulator must be very robust and dependable.  The names of the objects are something like &amp;quot;1-gazoon,&amp;quot; &amp;quot;2-gazoons,&amp;quot; &amp;quot;5-gazoons,&amp;quot; &amp;quot;10-gazoons,&amp;quot; &amp;quot;20-gazoons,&amp;quot; etc.  Players agree to treat these objects as money and trade them.  Making change will be a pain at times.  The reason that the unique avatar gives &amp;quot;gazoon&amp;quot; objects to other avatars is left as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
== Web Transactions ==&lt;br /&gt;
&lt;br /&gt;
We could also simply use external websites to sell objects in real world money (dollars, euros etc.). With the current advances in the in-world web browser, it shouldn't be too difficult and shouldn't take up too much time. Theres also the advantage of a decrease in fraud and there would no longer be a concern for the rise and dropping of L$ prices. Of course, the website would be the responsibility of the grid-owner. In terms of &amp;quot;fake currency&amp;quot;, we would use the current implemented system (the L$ functions) and use it as fake/roleplaying money on a simulator level (meaning that it would be functional in only some sims and the sim owner would have control over the name of the currency and how it is distributed).&lt;br /&gt;
&lt;br /&gt;
== Reference Implementations ==&lt;br /&gt;
&lt;br /&gt;
See [[Feature_Matrix#Other_Simulation_Features]] for various currency options.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Scripting_Documentation</id>
		<title>Scripting Documentation</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Scripting_Documentation"/>
				<updated>2010-09-01T05:05:55Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Add troubleshooting reference&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
*[[ScriptEngines|Scripting Engine]] - Xengine Script Engine Transition (By Melanie_T) &lt;br /&gt;
*[[Scripting Languages]] - Supported Scripting Languages &lt;br /&gt;
*[[LSL_Status|LSL/OSSL Status]] - Status and news about LSL and OSSL&lt;br /&gt;
*[[Non-LSL scripting]] - Information on C# and scripting in OpenSim with other languages&lt;br /&gt;
&lt;br /&gt;
==About OpenSim scripting==&lt;br /&gt;
An important ingredient in Second Life is scripting. It is the engine that drives it all. In SL [http://wiki.secondlife.com/wiki/LSL_Portal LSL (Linden Scripting Language)] is the language you have to use. This language has its limitations, and is executed very slowly. But nevertheless it works and it gets the job done. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
OpenSim today supports LSL,OSL and C# scripts. But with limitations:&lt;br /&gt;
* Not all commands and events have been implemented. See [[LSL Status | LSL/OSSL Status]] for details on what commands work and which don't.&lt;br /&gt;
* The OpenSim script engine compiles the LSL code down to .Net code that is JIT'ed to CPU native code. In effect this means that a LSL script in OpenSim should run faster than in Second Life. Stability and security: see [[Script_Sandbox | Script Execution Sandbox]].&lt;br /&gt;
&lt;br /&gt;
==How to use scripts in OpenSim==&lt;br /&gt;
Have a look at the [http://wiki.secondlife.com/wiki/LSL_Portal LSL wiki] to learn LSL. The current procedure to get a script working in OpenSim is:&lt;br /&gt;
* Create a new script in inventory. (Inventory -&amp;gt; Create -&amp;gt; New Script)&lt;br /&gt;
* Write whatever script you want there, or copy the script contents of another script in the pre-existing OpenSim library. Check [[LSL Status]] for what commands that are supported.&lt;br /&gt;
* Drag the script over to the contents of an object.&lt;br /&gt;
* If there is an error in the script when saving or when dropped into an object an error alert is displayed for a short time. Click on the alert to display the Debug Window and the script error. &lt;br /&gt;
* To deactivate a script, edit the script and uncheck 'Running'. This also stops error alerts when saving scripts.&lt;br /&gt;
* Deleting the script from the object will not always deactivate a script. If a script is running in a prim and the script is deleted, the script may persist in the prim - which can be useful. Be sure scripts are not running when you wish to delete them.&lt;br /&gt;
&lt;br /&gt;
There are still some defects:&lt;br /&gt;
* Line numbers in error messages may miss by 1 or 2 lines.&lt;br /&gt;
&lt;br /&gt;
* Linux/Mac users may need to upgrade the default mono to include &amp;quot;mono-complete&amp;quot; for some scripts. See http://opensimulator.org/mantis/view.php?id=5007 for details.&lt;br /&gt;
&lt;br /&gt;
== How to contribute ==&lt;br /&gt;
The ScriptEngine is being developed by many developers. New developers are always welcome. If you want to contribute, even just a tiny little bit, have a look at the [[OpenSim.Region.ScriptEngine]] page. There is a lot of developer activity on IRC ([[Support]]), feel free to drop in.&lt;br /&gt;
&lt;br /&gt;
== Additional Resources for Scripting (LSL)==&lt;br /&gt;
There have been many questions regarding scripts and tools for scripting lately. Presented here are a variety of Links to Resources which will help most people with Scripting LSL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''OspenSimulator Specific Materials:'''&lt;br /&gt;
&lt;br /&gt;
* [[LSL_Status|LSL/OSSL Status]]&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Be sure to check the Discussion Pages which is on the tabs at the top.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Suggested Links for LSL wikis:'''&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.secondlife.com/wiki/LSL_Portal  wiki.secondlife.com]&lt;br /&gt;
&lt;br /&gt;
* [http://www.lslwiki.net/lslwiki/wakka.php?wakka=HomePage  lslwiki.net]&lt;br /&gt;
&lt;br /&gt;
* [http://rpgstats.com/wiki/index.php?title=Main_Page  rpgstats.com]&lt;br /&gt;
&lt;br /&gt;
* [http://www.lsleditor.org/  LSLeditor]&lt;br /&gt;
&lt;br /&gt;
* [http://www.cheesefactory.us/slwm/LSL_Portal.html  cheesefactory.us]&lt;br /&gt;
&lt;br /&gt;
Note the Tutorials, Examples &amp;amp; Script Libraries&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Off-World Local LSL Editing Tools (note they do not support osFunctions)'''&lt;br /&gt;
&lt;br /&gt;
''LSL EDITOR''&lt;br /&gt;
* [http://sourceforge.net/projects/lsleditor/  LSLeditor SourceForge]&lt;br /&gt;
* [http://www.lsleditor.org/  Original Author's website with his latest LSLeditor version]&lt;br /&gt;
Now an Open Source project. New release is 17th May 2010 (Ver.2.4). A valuable tool and easy install.&lt;br /&gt;
&lt;br /&gt;
''LSL Plus''&lt;br /&gt;
* [http://lslplus.sourceforge.net/  LSLplus]&lt;br /&gt;
Open source. Regualar updates. Not quite as quick to get installed as LSLEditor, but very good tool.&lt;br /&gt;
&lt;br /&gt;
Others are listed here: http://wiki.secondlife.com/wiki/LSL_Alternate_Editors&lt;br /&gt;
&lt;br /&gt;
'''Miscelaneous:'''&lt;br /&gt;
&lt;br /&gt;
* [http://www.hilarymason.com/blog/secondlife/autoscript-creates-lsl-scripts-without-code/  AutoScript, Simple &amp;amp; Quick Code generator for simple things (ONLINE)]&lt;br /&gt;
&lt;br /&gt;
* [http://code.google.com/p/lslsnippets/  lslsnippets ]&lt;br /&gt;
&lt;br /&gt;
* [http://www.vtoreality.com/2006/free-offsite-storage-for-lsl-scripts-up-to-250k/186/  Free offsite storage for LSL scripts up to 250k ]&lt;br /&gt;
&lt;br /&gt;
* [http://www.freeslscripts.gendersquare.org/index.php  Free SL Scripts (library)]&lt;br /&gt;
&lt;br /&gt;
* [http://s4sl.blogspot.com/  Scratch for SecondLife (Script Code generator with Nice Interface - UPDATED JUL.09.2009)]&lt;br /&gt;
&lt;br /&gt;
* [http://www.peregrinesalon.com/2009/01/05/major-upgrade-to-animated-gif-to-animated-sl-texture-conversion-tool-v04/  Second Life Animated Texture Creator v0.4 - brought to you by Peregrine Salon]&lt;br /&gt;
&lt;br /&gt;
== Additional Resources for Scripting (OSSL)==&lt;br /&gt;
There have been many questions regarding scripts and tools for scripting lately. Presented here are a variety of Links to Resources which will help most people with Scripting OSSL.&lt;br /&gt;
* [[OSSL_Implemented | OSSL Functions with examples]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
[[Category:Scripting]]&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Performance</id>
		<title>Performance</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Performance"/>
				<updated>2010-08-27T07:22:54Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Add comment on home users&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
OpenSim performance is a very complex issue.  Performance can be affected by any number of things, including the number of prims on a region, number of regions, number of avatars, network quality between server and viewer, network quality between simulator and grid services, etc.&lt;br /&gt;
&lt;br /&gt;
==Hardware Requirements==&lt;br /&gt;
&lt;br /&gt;
Unfortunately, this is a very difficult question in light of all the factors mentioned above.  Below are some examples of hardware people use/have used.  Please feel free to add to the list, or to add any reports to the performance studies and blog posts section.  '''These are examples to help you in your selection, not necessarily recommendations.'''&lt;br /&gt;
&lt;br /&gt;
Object Parts ~= # prim&lt;br /&gt;
&lt;br /&gt;
Sensors and Timers are generally more intensive then regular scripts, so please specify quantity of each.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Operating System (please add Mono version if appropriate)&lt;br /&gt;
!OpenSim version&lt;br /&gt;
!RAM/AVG_USE_%&lt;br /&gt;
!CPU&lt;br /&gt;
!#/type of regions&lt;br /&gt;
!# simultaneous avs&lt;br /&gt;
!#scripts/timers/Sensors&lt;br /&gt;
!Location&lt;br /&gt;
!#objectparts&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Intrepid (8.10)&lt;br /&gt;
|Unknown&lt;br /&gt;
|540MB/?&lt;br /&gt;
|1x quad-core 2.5GHz Xeon (L5420)&lt;br /&gt;
|1 region + 9 voids&lt;br /&gt;
|generally 1-2&lt;br /&gt;
|few&lt;br /&gt;
|Knifejaw Atoll &amp;amp; surrounding on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Jaunty (9.04)&lt;br /&gt;
|Unknown&lt;br /&gt;
|360MB/?&lt;br /&gt;
|2x dual-core 2.0GHz Xeon (5130)&lt;br /&gt;
|1 void&lt;br /&gt;
|generally 1-2 &lt;br /&gt;
|none&lt;br /&gt;
|Knifejaw Road on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from A+&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1 Meg&lt;br /&gt;
|1x single-core 2.8GHz Celeron&lt;br /&gt;
|2regions per server&lt;br /&gt;
|6 at once with no issues&lt;br /&gt;
|Waterfalls, texture anims, window texture switchers, lots of sound loops&lt;br /&gt;
|Pleasure Planet Welcome center &amp;amp; Region Pleasure Planet in OSGrid&lt;br /&gt;
|20000 prims per region&lt;br /&gt;
|-&lt;br /&gt;
|Amazon EC2 &amp;quot;high-CPU medium instance&amp;quot; (Xen VM)&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1.7GB&lt;br /&gt;
|1x dual-core 2.3GHz (Intel E5345)&lt;br /&gt;
|1 region with sailing race course&lt;br /&gt;
|7 avs, 4 in boats&lt;br /&gt;
|scripted start line&lt;br /&gt;
|Castle Rock, OSGrid&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from simhost.com&lt;br /&gt;
|SuSe 11.2 x64&lt;br /&gt;
|Unknown&lt;br /&gt;
|8gb / 50%&lt;br /&gt;
|4x Core2Quad Q9300 2.6ghz&lt;br /&gt;
|1 region (Wright Plaza) uses approx 4gb ram&lt;br /&gt;
|20-25 users&lt;br /&gt;
|Freebie Stores / Meeting Center / Video Theater&lt;br /&gt;
|@osgrid.org Heavy Use Sim&lt;br /&gt;
|17500 prims aprox 1500 scripts&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Windows XP SP3&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|3GB / 15-40% incl. Opensim and MySQL&lt;br /&gt;
|4x Core2Quad Q6600 2.4 GHz. Use: generally, 0-10%&lt;br /&gt;
|11 regions&lt;br /&gt;
|1-6 users&lt;br /&gt;
|Many scripted objects (1934 scripts)&lt;br /&gt;
|[http://zonjacapalini.wordpress.com/2010/08/25/condensation-land-a-status-report/ Condensation Land]&lt;br /&gt;
|38,065 prims&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Ubuntu Lucid 10.04 (32 bit pae)&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|160Mb no users, add 5Mb/user incl Opensim and MySQL&lt;br /&gt;
|I7-920 (dual threaded quad core), 3.8Ghz, 6Gb RAM, 0-10% Load&lt;br /&gt;
|4 regions (Diva default config)&lt;br /&gt;
|1-4 users (approx 20Kb/sec bandwidth/user)&lt;br /&gt;
|Few scripted objects (&amp;lt;10)&lt;br /&gt;
|[http://mars-simulator.hobby-site.org:9000/wifi Mars Simulation]- Based on [http://metatek.blogspot.com/2010/06/mars-simulation-for-distribution.html Erik Nauman's Open Blackboard]&lt;br /&gt;
|158 prims&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Performance studies and blog posts==&lt;br /&gt;
&lt;br /&gt;
These provide some interesting data on the performance limitations of OpenSim at various points in time.&lt;br /&gt;
&lt;br /&gt;
* [https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html] - Some interesting information from Mr Blue.  Physical objects and max avatars are limited by single thread performance in OpenSim.&lt;br /&gt;
* [http://www.sciencesim.com/wiki/doku.php/vwperf/start http://www.sciencesim.com/wiki/doku.php/vwperf/start] - Links to ScienceSim performance studies, including some very recent ones.&lt;br /&gt;
* [[Improving Performance]] - An old page from July 2009 detailing some performance issues on OpenSim.  Some of these issues are still valid (e.g. ODE issues).&lt;br /&gt;
* [[NHibernate Performance Testing]] &amp;amp;mdash; SQLite and MySQL performance tests with NHibernate.&lt;br /&gt;
* [[LibSecondLife performance problems]] - Another old page from November 2007 detailing issues with libsecondlife (now called libopenmetaverse).&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=71 Experiences from Operating a 3D Region Server in OSGrid - Part 1]&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=104 Experiences from Operating a 3D Region Server in OSGrid - Part 2]&lt;br /&gt;
&lt;br /&gt;
==Performance hints==&lt;br /&gt;
&lt;br /&gt;
Here are some specific things you might be able to do to improve performance&lt;br /&gt;
&lt;br /&gt;
===Home Based systems===&lt;br /&gt;
&lt;br /&gt;
The most obvious performance difference between a home based cable/dsl system and a &amp;quot;commercial&amp;quot; server is the upload bandwidth. A typical home system allows 100Kb/s upload with 12Mb/s download, a &amp;quot;commercial&amp;quot; system typically has a &amp;quot;symmetrical&amp;quot; bandwidth of say 12Mb/s UP AND DOWN! &amp;quot;Commercial&amp;quot; systems can essentially buy unlimited bandwidth as needed, but it does get expensive to buy bandwidth that you don't need!&lt;br /&gt;
&lt;br /&gt;
In practice this limits the number of &amp;quot;external&amp;quot; users on a &amp;quot;home system&amp;quot; to 4 or 5, but LAN users (NPCs/bots etc.) are essentially unlimited.&lt;br /&gt;
&lt;br /&gt;
A reasonable strategy (i.e. MY strategy) is to use the home system for experimentation and then move the entire sim to a &amp;quot;commercial&amp;quot; VPS service if the sim gets popular (and produces enough $$$ to pay the freight!) &lt;br /&gt;
&lt;br /&gt;
===Running Squid on your region server as a reverse proxy to the asset server===&lt;br /&gt;
1. Download and install the Squid Proxy from: http://www.squid-cache.org/Download/&amp;lt;br&amp;gt;&lt;br /&gt;
2. Create your [[squid.conf]] configuration file.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Change your asset_server configuration in your OpenSim.ini to point to http://localhost:3128/&amp;lt;br&amp;gt;&lt;br /&gt;
4. Start everything up!&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now assets will be cached in the squid cache on the region server, and will be served up much faster, especially on region restart.&lt;br /&gt;
&lt;br /&gt;
=== GC_NO_EXPLICIT ===&lt;br /&gt;
&lt;br /&gt;
Sometimes this patch applied to mono-svn has helped my sim run a lot faster and not slowly get bogged down.&lt;br /&gt;
&lt;br /&gt;
$mono-svn-root$/mono&lt;br /&gt;
  mono/metadata/boehm-gc.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: boehm-gc.c&lt;br /&gt;
===================================================================&lt;br /&gt;
--- boehm-gc.c	(revision 105684)&lt;br /&gt;
+++ boehm-gc.c	(working copy)&lt;br /&gt;
@@ -107,6 +107,10 @@&lt;br /&gt;
 void&lt;br /&gt;
 mono_gc_collect (int generation)&lt;br /&gt;
 {&lt;br /&gt;
+	static int no_explicite_gc = 0; if (no_explicite_gc==0) {if (getenv(&amp;quot;GC_NO_EXPLICIT&amp;quot;)) {no_explicite_gc = 1;return;} else {no_explicite_gc = 2;}} else if (no_explicite_gc==1) {&lt;br /&gt;
+		g_print(&amp;quot;\n --------GC_NO_EXPLICIT \n&amp;quot;);&lt;br /&gt;
+		return;&lt;br /&gt;
+		}&lt;br /&gt;
 	MONO_PROBE_GC_BEGIN (generation);&lt;br /&gt;
 	&lt;br /&gt;
 	GC_gcollect ();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not only this, but I recompile the mono runtime:&lt;br /&gt;
&amp;lt;pre&amp;gt;--with-large-heap=yes&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, the Sim is limited to 3GB RAM.  Probably, this second peice is more important.  But still, afterwards it's worth a shot to test with both to see if there is a difference in performance:&lt;br /&gt;
&lt;br /&gt;
 export GC_NO_EXPLICIT=1&lt;br /&gt;
and&lt;br /&gt;
 unset GC_NO_EXPLICIT&lt;br /&gt;
&lt;br /&gt;
What I think, (only a guess) is that Mono starts internally GC thrashing in fishing expeditions to gaining maybe 1k of RAM at time. And by having a large heap (&amp;gt;3GB), it is possible might keep mono less apt to do stop world complete collections as often.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Performance</id>
		<title>Performance</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Performance"/>
				<updated>2010-08-26T18:31:21Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Hardware Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
OpenSim performance is a very complex issue.  Performance can be affected by any number of things, including the number of prims on a region, number of regions, number of avatars, network quality between server and viewer, network quality between simulator and grid services, etc.&lt;br /&gt;
&lt;br /&gt;
==Hardware Requirements==&lt;br /&gt;
&lt;br /&gt;
Unfortunately, this is a very difficult question in light of all the factors mentioned above.  Below are some examples of hardware people use/have used.  Please feel free to add to the list, or to add any reports to the performance studies and blog posts section.  '''These are examples to help you in your selection, not necessarily recommendations.'''&lt;br /&gt;
&lt;br /&gt;
Object Parts ~= # prim&lt;br /&gt;
&lt;br /&gt;
Sensors and Timers are generally more intensive then regular scripts, so please specify quantity of each.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Operating System (please add Mono version if appropriate)&lt;br /&gt;
!OpenSim version&lt;br /&gt;
!RAM/AVG_USE_%&lt;br /&gt;
!CPU&lt;br /&gt;
!#/type of regions&lt;br /&gt;
!# simultaneous avs&lt;br /&gt;
!#scripts/timers/Sensors&lt;br /&gt;
!Location&lt;br /&gt;
!#objectparts&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Intrepid (8.10)&lt;br /&gt;
|Unknown&lt;br /&gt;
|540MB/?&lt;br /&gt;
|1x quad-core 2.5GHz Xeon (L5420)&lt;br /&gt;
|1 region + 9 voids&lt;br /&gt;
|generally 1-2&lt;br /&gt;
|few&lt;br /&gt;
|Knifejaw Atoll &amp;amp; surrounding on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Jaunty (9.04)&lt;br /&gt;
|Unknown&lt;br /&gt;
|360MB/?&lt;br /&gt;
|2x dual-core 2.0GHz Xeon (5130)&lt;br /&gt;
|1 void&lt;br /&gt;
|generally 1-2 &lt;br /&gt;
|none&lt;br /&gt;
|Knifejaw Road on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from A+&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1 Meg&lt;br /&gt;
|1x single-core 2.8GHz Celeron&lt;br /&gt;
|2regions per server&lt;br /&gt;
|6 at once with no issues&lt;br /&gt;
|Waterfalls, texture anims, window texture switchers, lots of sound loops&lt;br /&gt;
|Pleasure Planet Welcome center &amp;amp; Region Pleasure Planet in OSGrid&lt;br /&gt;
|20000 prims per region&lt;br /&gt;
|-&lt;br /&gt;
|Amazon EC2 &amp;quot;high-CPU medium instance&amp;quot; (Xen VM)&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1.7GB&lt;br /&gt;
|1x dual-core 2.3GHz (Intel E5345)&lt;br /&gt;
|1 region with sailing race course&lt;br /&gt;
|7 avs, 4 in boats&lt;br /&gt;
|scripted start line&lt;br /&gt;
|Castle Rock, OSGrid&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from simhost.com&lt;br /&gt;
|SuSe 11.2 x64&lt;br /&gt;
|Unknown&lt;br /&gt;
|8gb / 50%&lt;br /&gt;
|4x Core2Quad Q9300 2.6ghz&lt;br /&gt;
|1 region (Wright Plaza) uses approx 4gb ram&lt;br /&gt;
|20-25 users&lt;br /&gt;
|Freebie Stores / Meeting Center / Video Theater&lt;br /&gt;
|@osgrid.org Heavy Use Sim&lt;br /&gt;
|17500 prims aprox 1500 scripts&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Windows XP SP3&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|3GB / 15-40% incl. Opensim and MySQL&lt;br /&gt;
|4x Core2Quad Q6600 2.4 GHz. Use: generally, 0-10%&lt;br /&gt;
|11 regions&lt;br /&gt;
|1-6 users&lt;br /&gt;
|Many scripted objects (1934 scripts)&lt;br /&gt;
|[http://zonjacapalini.wordpress.com/2010/08/25/condensation-land-a-status-report/ Condensation Land]&lt;br /&gt;
|38,065 prims&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Ubuntu Lucid 10.04 (32 bit pae)&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|160Mb no users, add 5Mb/user incl Opensim and MySQL&lt;br /&gt;
|I7-920 (dual threaded quad core), 3.8Ghz, 6Gb RAM, 0-10% Load&lt;br /&gt;
|4 regions (Diva default config)&lt;br /&gt;
|1-4 users (approx 20Kb/sec bandwidth/user)&lt;br /&gt;
|Few scripted objects (&amp;lt;10)&lt;br /&gt;
|[http://mars-simulator.hobby-site.org:9000/wifi Mars Simulation]- Based on [http://metatek.blogspot.com/2010/06/mars-simulation-for-distribution.html Erik Nauman's Open Blackboard]&lt;br /&gt;
|158 prims&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Performance studies and blog posts==&lt;br /&gt;
&lt;br /&gt;
These provide some interesting data on the performance limitations of OpenSim at various points in time.&lt;br /&gt;
&lt;br /&gt;
* [https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html] - Some interesting information from Mr Blue.  Physical objects and max avatars are limited by single thread performance in OpenSim.&lt;br /&gt;
* [http://www.sciencesim.com/wiki/doku.php/vwperf/start http://www.sciencesim.com/wiki/doku.php/vwperf/start] - Links to ScienceSim performance studies, including some very recent ones.&lt;br /&gt;
* [[Improving Performance]] - An old page from July 2009 detailing some performance issues on OpenSim.  Some of these issues are still valid (e.g. ODE issues).&lt;br /&gt;
* [[NHibernate Performance Testing]] &amp;amp;mdash; SQLite and MySQL performance tests with NHibernate.&lt;br /&gt;
* [[LibSecondLife performance problems]] - Another old page from November 2007 detailing issues with libsecondlife (now called libopenmetaverse).&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=71 Experiences from Operating a 3D Region Server in OSGrid - Part 1]&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=104 Experiences from Operating a 3D Region Server in OSGrid - Part 2]&lt;br /&gt;
&lt;br /&gt;
==Performance hints==&lt;br /&gt;
&lt;br /&gt;
Here are some specific things you might be able to do to improve performance&lt;br /&gt;
&lt;br /&gt;
===Running Squid on your region server as a reverse proxy to the asset server===&lt;br /&gt;
1. Download and install the Squid Proxy from: http://www.squid-cache.org/Download/&amp;lt;br&amp;gt;&lt;br /&gt;
2. Create your [[squid.conf]] configuration file.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Change your asset_server configuration in your OpenSim.ini to point to http://localhost:3128/&amp;lt;br&amp;gt;&lt;br /&gt;
4. Start everything up!&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now assets will be cached in the squid cache on the region server, and will be served up much faster, especially on region restart.&lt;br /&gt;
&lt;br /&gt;
=== GC_NO_EXPLICIT ===&lt;br /&gt;
&lt;br /&gt;
Sometimes this patch applied to mono-svn has helped my sim run a lot faster and not slowly get bogged down.&lt;br /&gt;
&lt;br /&gt;
$mono-svn-root$/mono&lt;br /&gt;
  mono/metadata/boehm-gc.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: boehm-gc.c&lt;br /&gt;
===================================================================&lt;br /&gt;
--- boehm-gc.c	(revision 105684)&lt;br /&gt;
+++ boehm-gc.c	(working copy)&lt;br /&gt;
@@ -107,6 +107,10 @@&lt;br /&gt;
 void&lt;br /&gt;
 mono_gc_collect (int generation)&lt;br /&gt;
 {&lt;br /&gt;
+	static int no_explicite_gc = 0; if (no_explicite_gc==0) {if (getenv(&amp;quot;GC_NO_EXPLICIT&amp;quot;)) {no_explicite_gc = 1;return;} else {no_explicite_gc = 2;}} else if (no_explicite_gc==1) {&lt;br /&gt;
+		g_print(&amp;quot;\n --------GC_NO_EXPLICIT \n&amp;quot;);&lt;br /&gt;
+		return;&lt;br /&gt;
+		}&lt;br /&gt;
 	MONO_PROBE_GC_BEGIN (generation);&lt;br /&gt;
 	&lt;br /&gt;
 	GC_gcollect ();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not only this, but I recompile the mono runtime:&lt;br /&gt;
&amp;lt;pre&amp;gt;--with-large-heap=yes&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, the Sim is limited to 3GB RAM.  Probably, this second peice is more important.  But still, afterwards it's worth a shot to test with both to see if there is a difference in performance:&lt;br /&gt;
&lt;br /&gt;
 export GC_NO_EXPLICIT=1&lt;br /&gt;
and&lt;br /&gt;
 unset GC_NO_EXPLICIT&lt;br /&gt;
&lt;br /&gt;
What I think, (only a guess) is that Mono starts internally GC thrashing in fishing expeditions to gaining maybe 1k of RAM at time. And by having a large heap (&amp;gt;3GB), it is possible might keep mono less apt to do stop world complete collections as often.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Performance</id>
		<title>Performance</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Performance"/>
				<updated>2010-08-26T18:23:00Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Hardware Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
OpenSim performance is a very complex issue.  Performance can be affected by any number of things, including the number of prims on a region, number of regions, number of avatars, network quality between server and viewer, network quality between simulator and grid services, etc.&lt;br /&gt;
&lt;br /&gt;
==Hardware Requirements==&lt;br /&gt;
&lt;br /&gt;
Unfortunately, this is a very difficult question in light of all the factors mentioned above.  Below are some examples of hardware people use/have used.  Please feel free to add to the list, or to add any reports to the performance studies and blog posts section.  '''These are examples to help you in your selection, not necessarily recommendations.'''&lt;br /&gt;
&lt;br /&gt;
Object Parts ~= # prim&lt;br /&gt;
&lt;br /&gt;
Sensors and Timers are generally more intensive then regular scripts, so please specify quantity of each.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Operating System (please add Mono version if appropriate)&lt;br /&gt;
!OpenSim version&lt;br /&gt;
!RAM/AVG_USE_%&lt;br /&gt;
!CPU&lt;br /&gt;
!#/type of regions&lt;br /&gt;
!# simultaneous avs&lt;br /&gt;
!#scripts/timers/Sensors&lt;br /&gt;
!Location&lt;br /&gt;
!#objectparts&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Intrepid (8.10)&lt;br /&gt;
|Unknown&lt;br /&gt;
|540MB/?&lt;br /&gt;
|1x quad-core 2.5GHz Xeon (L5420)&lt;br /&gt;
|1 region + 9 voids&lt;br /&gt;
|generally 1-2&lt;br /&gt;
|few&lt;br /&gt;
|Knifejaw Atoll &amp;amp; surrounding on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Jaunty (9.04)&lt;br /&gt;
|Unknown&lt;br /&gt;
|360MB/?&lt;br /&gt;
|2x dual-core 2.0GHz Xeon (5130)&lt;br /&gt;
|1 void&lt;br /&gt;
|generally 1-2 &lt;br /&gt;
|none&lt;br /&gt;
|Knifejaw Road on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from A+&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1 Meg&lt;br /&gt;
|1x single-core 2.8GHz Celeron&lt;br /&gt;
|2regions per server&lt;br /&gt;
|6 at once with no issues&lt;br /&gt;
|Waterfalls, texture anims, window texture switchers, lots of sound loops&lt;br /&gt;
|Pleasure Planet Welcome center &amp;amp; Region Pleasure Planet in OSGrid&lt;br /&gt;
|20000 prims per region&lt;br /&gt;
|-&lt;br /&gt;
|Amazon EC2 &amp;quot;high-CPU medium instance&amp;quot; (Xen VM)&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1.7GB&lt;br /&gt;
|1x dual-core 2.3GHz (Intel E5345)&lt;br /&gt;
|1 region with sailing race course&lt;br /&gt;
|7 avs, 4 in boats&lt;br /&gt;
|scripted start line&lt;br /&gt;
|Castle Rock, OSGrid&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from simhost.com&lt;br /&gt;
|SuSe 11.2 x64&lt;br /&gt;
|Unknown&lt;br /&gt;
|8gb / 50%&lt;br /&gt;
|4x Core2Quad Q9300 2.6ghz&lt;br /&gt;
|1 region (Wright Plaza) uses approx 4gb ram&lt;br /&gt;
|20-25 users&lt;br /&gt;
|Freebie Stores / Meeting Center / Video Theater&lt;br /&gt;
|@osgrid.org Heavy Use Sim&lt;br /&gt;
|17500 prims aprox 1500 scripts&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Windows XP SP3&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|3GB / 15-40% incl. Opensim and MySQL&lt;br /&gt;
|4x Core2Quad Q6600 2.4 GHz. Use: generally, 0-10%&lt;br /&gt;
|11 regions&lt;br /&gt;
|1-6 users&lt;br /&gt;
|Many scripted objects (1934 scripts)&lt;br /&gt;
|[http://zonjacapalini.wordpress.com/2010/08/25/condensation-land-a-status-report/ Condensation Land]&lt;br /&gt;
|38,065 prims&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Ubuntu Lucid 10.04 (32 bit pae)&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|160Mb no users, add 5Mb/user incl Opensim and MySQL&lt;br /&gt;
|I7-920 (dual threaded quad core), 3.8Ghz, 6Gb RAM, 0-10% Load&lt;br /&gt;
|4 regions (Diva default config)&lt;br /&gt;
|1-4 users&lt;br /&gt;
|Few scripted objects (&amp;lt;10)&lt;br /&gt;
|[http://mars-simulator.hobby-site.org:9000/wifi Mars Simulation]- Based on [http://metatek.blogspot.com/2010/06/mars-simulation-for-distribution.html Erik Nauman's Open Blackboard]&lt;br /&gt;
|158 prims&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Performance studies and blog posts==&lt;br /&gt;
&lt;br /&gt;
These provide some interesting data on the performance limitations of OpenSim at various points in time.&lt;br /&gt;
&lt;br /&gt;
* [https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html] - Some interesting information from Mr Blue.  Physical objects and max avatars are limited by single thread performance in OpenSim.&lt;br /&gt;
* [http://www.sciencesim.com/wiki/doku.php/vwperf/start http://www.sciencesim.com/wiki/doku.php/vwperf/start] - Links to ScienceSim performance studies, including some very recent ones.&lt;br /&gt;
* [[Improving Performance]] - An old page from July 2009 detailing some performance issues on OpenSim.  Some of these issues are still valid (e.g. ODE issues).&lt;br /&gt;
* [[NHibernate Performance Testing]] &amp;amp;mdash; SQLite and MySQL performance tests with NHibernate.&lt;br /&gt;
* [[LibSecondLife performance problems]] - Another old page from November 2007 detailing issues with libsecondlife (now called libopenmetaverse).&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=71 Experiences from Operating a 3D Region Server in OSGrid - Part 1]&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=104 Experiences from Operating a 3D Region Server in OSGrid - Part 2]&lt;br /&gt;
&lt;br /&gt;
==Performance hints==&lt;br /&gt;
&lt;br /&gt;
Here are some specific things you might be able to do to improve performance&lt;br /&gt;
&lt;br /&gt;
===Running Squid on your region server as a reverse proxy to the asset server===&lt;br /&gt;
1. Download and install the Squid Proxy from: http://www.squid-cache.org/Download/&amp;lt;br&amp;gt;&lt;br /&gt;
2. Create your [[squid.conf]] configuration file.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Change your asset_server configuration in your OpenSim.ini to point to http://localhost:3128/&amp;lt;br&amp;gt;&lt;br /&gt;
4. Start everything up!&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now assets will be cached in the squid cache on the region server, and will be served up much faster, especially on region restart.&lt;br /&gt;
&lt;br /&gt;
=== GC_NO_EXPLICIT ===&lt;br /&gt;
&lt;br /&gt;
Sometimes this patch applied to mono-svn has helped my sim run a lot faster and not slowly get bogged down.&lt;br /&gt;
&lt;br /&gt;
$mono-svn-root$/mono&lt;br /&gt;
  mono/metadata/boehm-gc.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: boehm-gc.c&lt;br /&gt;
===================================================================&lt;br /&gt;
--- boehm-gc.c	(revision 105684)&lt;br /&gt;
+++ boehm-gc.c	(working copy)&lt;br /&gt;
@@ -107,6 +107,10 @@&lt;br /&gt;
 void&lt;br /&gt;
 mono_gc_collect (int generation)&lt;br /&gt;
 {&lt;br /&gt;
+	static int no_explicite_gc = 0; if (no_explicite_gc==0) {if (getenv(&amp;quot;GC_NO_EXPLICIT&amp;quot;)) {no_explicite_gc = 1;return;} else {no_explicite_gc = 2;}} else if (no_explicite_gc==1) {&lt;br /&gt;
+		g_print(&amp;quot;\n --------GC_NO_EXPLICIT \n&amp;quot;);&lt;br /&gt;
+		return;&lt;br /&gt;
+		}&lt;br /&gt;
 	MONO_PROBE_GC_BEGIN (generation);&lt;br /&gt;
 	&lt;br /&gt;
 	GC_gcollect ();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not only this, but I recompile the mono runtime:&lt;br /&gt;
&amp;lt;pre&amp;gt;--with-large-heap=yes&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, the Sim is limited to 3GB RAM.  Probably, this second peice is more important.  But still, afterwards it's worth a shot to test with both to see if there is a difference in performance:&lt;br /&gt;
&lt;br /&gt;
 export GC_NO_EXPLICIT=1&lt;br /&gt;
and&lt;br /&gt;
 unset GC_NO_EXPLICIT&lt;br /&gt;
&lt;br /&gt;
What I think, (only a guess) is that Mono starts internally GC thrashing in fishing expeditions to gaining maybe 1k of RAM at time. And by having a large heap (&amp;gt;3GB), it is possible might keep mono less apt to do stop world complete collections as often.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Performance</id>
		<title>Performance</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Performance"/>
				<updated>2010-08-26T18:21:39Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Hardware Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
OpenSim performance is a very complex issue.  Performance can be affected by any number of things, including the number of prims on a region, number of regions, number of avatars, network quality between server and viewer, network quality between simulator and grid services, etc.&lt;br /&gt;
&lt;br /&gt;
==Hardware Requirements==&lt;br /&gt;
&lt;br /&gt;
Unfortunately, this is a very difficult question in light of all the factors mentioned above.  Below are some examples of hardware people use/have used.  Please feel free to add to the list, or to add any reports to the performance studies and blog posts section.  '''These are examples to help you in your selection, not necessarily recommendations.'''&lt;br /&gt;
&lt;br /&gt;
Object Parts ~= # prim&lt;br /&gt;
&lt;br /&gt;
Sensors and Timers are generally more intensive then regular scripts, so please specify quantity of each.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Operating System (please add Mono version if appropriate)&lt;br /&gt;
!OpenSim version&lt;br /&gt;
!RAM/AVG_USE_%&lt;br /&gt;
!CPU&lt;br /&gt;
!#/type of regions&lt;br /&gt;
!# simultaneous avs&lt;br /&gt;
!#scripts/timers/Sensors&lt;br /&gt;
!Location&lt;br /&gt;
!#objectparts&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Intrepid (8.10)&lt;br /&gt;
|Unknown&lt;br /&gt;
|540MB/?&lt;br /&gt;
|1x quad-core 2.5GHz Xeon (L5420)&lt;br /&gt;
|1 region + 9 voids&lt;br /&gt;
|generally 1-2&lt;br /&gt;
|few&lt;br /&gt;
|Knifejaw Atoll &amp;amp; surrounding on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Jaunty (9.04)&lt;br /&gt;
|Unknown&lt;br /&gt;
|360MB/?&lt;br /&gt;
|2x dual-core 2.0GHz Xeon (5130)&lt;br /&gt;
|1 void&lt;br /&gt;
|generally 1-2 &lt;br /&gt;
|none&lt;br /&gt;
|Knifejaw Road on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from A+&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1 Meg&lt;br /&gt;
|1x single-core 2.8GHz Celeron&lt;br /&gt;
|2regions per server&lt;br /&gt;
|6 at once with no issues&lt;br /&gt;
|Waterfalls, texture anims, window texture switchers, lots of sound loops&lt;br /&gt;
|Pleasure Planet Welcome center &amp;amp; Region Pleasure Planet in OSGrid&lt;br /&gt;
|20000 prims per region&lt;br /&gt;
|-&lt;br /&gt;
|Amazon EC2 &amp;quot;high-CPU medium instance&amp;quot; (Xen VM)&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1.7GB&lt;br /&gt;
|1x dual-core 2.3GHz (Intel E5345)&lt;br /&gt;
|1 region with sailing race course&lt;br /&gt;
|7 avs, 4 in boats&lt;br /&gt;
|scripted start line&lt;br /&gt;
|Castle Rock, OSGrid&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from simhost.com&lt;br /&gt;
|SuSe 11.2 x64&lt;br /&gt;
|Unknown&lt;br /&gt;
|8gb / 50%&lt;br /&gt;
|4x Core2Quad Q9300 2.6ghz&lt;br /&gt;
|1 region (Wright Plaza) uses approx 4gb ram&lt;br /&gt;
|20-25 users&lt;br /&gt;
|Freebie Stores / Meeting Center / Video Theater&lt;br /&gt;
|@osgrid.org Heavy Use Sim&lt;br /&gt;
|17500 prims aprox 1500 scripts&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Windows XP SP3&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|3GB / 15-40% incl. Opensim and MySQL&lt;br /&gt;
|4x Core2Quad Q6600 2.4 GHz. Use: generally, 0-10%&lt;br /&gt;
|11 regions&lt;br /&gt;
|1-6 users&lt;br /&gt;
|Many scripted objects (1934 scripts)&lt;br /&gt;
|[http://zonjacapalini.wordpress.com/2010/08/25/condensation-land-a-status-report/ Condensation Land]&lt;br /&gt;
|38,065 prims&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Ubuntu 10.04 Lucid pae&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|160Mb no users, add 5Mb/user incl Opensim and MySQL&lt;br /&gt;
|I7-920 (dual threaded quad core), 3.8Ghz, 6Gb RAM, 0-10% Load&lt;br /&gt;
|4 regions (Diva default config)&lt;br /&gt;
|1-4 users&lt;br /&gt;
|Few scripted objects (&amp;lt;10)&lt;br /&gt;
|[http://mars-simulator.hobby-site.org:9000/wifi Mars Simulation]- Based on [http://metatek.blogspot.com/2010/06/mars-simulation-for-distribution.html Erik Nauman's Open Blackboard]&lt;br /&gt;
|158 prims&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Performance studies and blog posts==&lt;br /&gt;
&lt;br /&gt;
These provide some interesting data on the performance limitations of OpenSim at various points in time.&lt;br /&gt;
&lt;br /&gt;
* [https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html] - Some interesting information from Mr Blue.  Physical objects and max avatars are limited by single thread performance in OpenSim.&lt;br /&gt;
* [http://www.sciencesim.com/wiki/doku.php/vwperf/start http://www.sciencesim.com/wiki/doku.php/vwperf/start] - Links to ScienceSim performance studies, including some very recent ones.&lt;br /&gt;
* [[Improving Performance]] - An old page from July 2009 detailing some performance issues on OpenSim.  Some of these issues are still valid (e.g. ODE issues).&lt;br /&gt;
* [[NHibernate Performance Testing]] &amp;amp;mdash; SQLite and MySQL performance tests with NHibernate.&lt;br /&gt;
* [[LibSecondLife performance problems]] - Another old page from November 2007 detailing issues with libsecondlife (now called libopenmetaverse).&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=71 Experiences from Operating a 3D Region Server in OSGrid - Part 1]&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=104 Experiences from Operating a 3D Region Server in OSGrid - Part 2]&lt;br /&gt;
&lt;br /&gt;
==Performance hints==&lt;br /&gt;
&lt;br /&gt;
Here are some specific things you might be able to do to improve performance&lt;br /&gt;
&lt;br /&gt;
===Running Squid on your region server as a reverse proxy to the asset server===&lt;br /&gt;
1. Download and install the Squid Proxy from: http://www.squid-cache.org/Download/&amp;lt;br&amp;gt;&lt;br /&gt;
2. Create your [[squid.conf]] configuration file.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Change your asset_server configuration in your OpenSim.ini to point to http://localhost:3128/&amp;lt;br&amp;gt;&lt;br /&gt;
4. Start everything up!&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now assets will be cached in the squid cache on the region server, and will be served up much faster, especially on region restart.&lt;br /&gt;
&lt;br /&gt;
=== GC_NO_EXPLICIT ===&lt;br /&gt;
&lt;br /&gt;
Sometimes this patch applied to mono-svn has helped my sim run a lot faster and not slowly get bogged down.&lt;br /&gt;
&lt;br /&gt;
$mono-svn-root$/mono&lt;br /&gt;
  mono/metadata/boehm-gc.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: boehm-gc.c&lt;br /&gt;
===================================================================&lt;br /&gt;
--- boehm-gc.c	(revision 105684)&lt;br /&gt;
+++ boehm-gc.c	(working copy)&lt;br /&gt;
@@ -107,6 +107,10 @@&lt;br /&gt;
 void&lt;br /&gt;
 mono_gc_collect (int generation)&lt;br /&gt;
 {&lt;br /&gt;
+	static int no_explicite_gc = 0; if (no_explicite_gc==0) {if (getenv(&amp;quot;GC_NO_EXPLICIT&amp;quot;)) {no_explicite_gc = 1;return;} else {no_explicite_gc = 2;}} else if (no_explicite_gc==1) {&lt;br /&gt;
+		g_print(&amp;quot;\n --------GC_NO_EXPLICIT \n&amp;quot;);&lt;br /&gt;
+		return;&lt;br /&gt;
+		}&lt;br /&gt;
 	MONO_PROBE_GC_BEGIN (generation);&lt;br /&gt;
 	&lt;br /&gt;
 	GC_gcollect ();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not only this, but I recompile the mono runtime:&lt;br /&gt;
&amp;lt;pre&amp;gt;--with-large-heap=yes&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, the Sim is limited to 3GB RAM.  Probably, this second peice is more important.  But still, afterwards it's worth a shot to test with both to see if there is a difference in performance:&lt;br /&gt;
&lt;br /&gt;
 export GC_NO_EXPLICIT=1&lt;br /&gt;
and&lt;br /&gt;
 unset GC_NO_EXPLICIT&lt;br /&gt;
&lt;br /&gt;
What I think, (only a guess) is that Mono starts internally GC thrashing in fishing expeditions to gaining maybe 1k of RAM at time. And by having a large heap (&amp;gt;3GB), it is possible might keep mono less apt to do stop world complete collections as often.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Performance</id>
		<title>Performance</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Performance"/>
				<updated>2010-08-26T18:19:58Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Add small sim data point for Mars Simulation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
OpenSim performance is a very complex issue.  Performance can be affected by any number of things, including the number of prims on a region, number of regions, number of avatars, network quality between server and viewer, network quality between simulator and grid services, etc.&lt;br /&gt;
&lt;br /&gt;
==Hardware Requirements==&lt;br /&gt;
&lt;br /&gt;
Unfortunately, this is a very difficult question in light of all the factors mentioned above.  Below are some examples of hardware people use/have used.  Please feel free to add to the list, or to add any reports to the performance studies and blog posts section.  '''These are examples to help you in your selection, not necessarily recommendations.'''&lt;br /&gt;
&lt;br /&gt;
Object Parts ~= # prim&lt;br /&gt;
&lt;br /&gt;
Sensors and Timers are generally more intensive then regular scripts, so please specify quantity of each.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!Description&lt;br /&gt;
!Operating System (please add Mono version if appropriate)&lt;br /&gt;
!OpenSim version&lt;br /&gt;
!RAM/AVG_USE_%&lt;br /&gt;
!CPU&lt;br /&gt;
!#/type of regions&lt;br /&gt;
!# simultaneous avs&lt;br /&gt;
!#scripts/timers/Sensors&lt;br /&gt;
!Location&lt;br /&gt;
!#objectparts&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Intrepid (8.10)&lt;br /&gt;
|Unknown&lt;br /&gt;
|540MB/?&lt;br /&gt;
|1x quad-core 2.5GHz Xeon (L5420)&lt;br /&gt;
|1 region + 9 voids&lt;br /&gt;
|generally 1-2&lt;br /&gt;
|few&lt;br /&gt;
|Knifejaw Atoll &amp;amp; surrounding on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|hosted Xen VPS&lt;br /&gt;
|Ubuntu Jaunty (9.04)&lt;br /&gt;
|Unknown&lt;br /&gt;
|360MB/?&lt;br /&gt;
|2x dual-core 2.0GHz Xeon (5130)&lt;br /&gt;
|1 void&lt;br /&gt;
|generally 1-2 &lt;br /&gt;
|none&lt;br /&gt;
|Knifejaw Road on OSGrid&lt;br /&gt;
|?&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from A+&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1 Meg&lt;br /&gt;
|1x single-core 2.8GHz Celeron&lt;br /&gt;
|2regions per server&lt;br /&gt;
|6 at once with no issues&lt;br /&gt;
|Waterfalls, texture anims, window texture switchers, lots of sound loops&lt;br /&gt;
|Pleasure Planet Welcome center &amp;amp; Region Pleasure Planet in OSGrid&lt;br /&gt;
|20000 prims per region&lt;br /&gt;
|-&lt;br /&gt;
|Amazon EC2 &amp;quot;high-CPU medium instance&amp;quot; (Xen VM)&lt;br /&gt;
|Windows Server 2003&lt;br /&gt;
|Unknown&lt;br /&gt;
|1.7GB&lt;br /&gt;
|1x dual-core 2.3GHz (Intel E5345)&lt;br /&gt;
|1 region with sailing race course&lt;br /&gt;
|7 avs, 4 in boats&lt;br /&gt;
|scripted start line&lt;br /&gt;
|Castle Rock, OSGrid&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Dedicated Server from simhost.com&lt;br /&gt;
|SuSe 11.2 x64&lt;br /&gt;
|Unknown&lt;br /&gt;
|8gb / 50%&lt;br /&gt;
|4x Core2Quad Q9300 2.6ghz&lt;br /&gt;
|1 region (Wright Plaza) uses approx 4gb ram&lt;br /&gt;
|20-25 users&lt;br /&gt;
|Freebie Stores / Meeting Center / Video Theater&lt;br /&gt;
|@osgrid.org Heavy Use Sim&lt;br /&gt;
|17500 prims aprox 1500 scripts&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Windows XP SP3&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|3GB / 15-40% incl. Opensim and MySQL&lt;br /&gt;
|4x Core2Quad Q6600 2.4 GHz. Use: generally, 0-10%&lt;br /&gt;
|11 regions&lt;br /&gt;
|1-6 users&lt;br /&gt;
|Many scripted objects (1934 scripts)&lt;br /&gt;
|[http://zonjacapalini.wordpress.com/2010/08/25/condensation-land-a-status-report/ Condensation Land]&lt;br /&gt;
|38,065 prims&lt;br /&gt;
|-&lt;br /&gt;
|Home machine&lt;br /&gt;
|Ubuntu 10.04 Lucid pae&lt;br /&gt;
|0.7.0.1 (Diva r13558)&lt;br /&gt;
|160Mb no users, add 5Mb/user incl Opensim and MySQL&lt;br /&gt;
|I7-920, 3.8Ghz, 6Gb RAM, 0-10% Load&lt;br /&gt;
|4 regions (Diva default config)&lt;br /&gt;
|1-4 users&lt;br /&gt;
|Few scripted objects (&amp;lt;10)&lt;br /&gt;
|[http://mars-simulator.hobby-site.org:9000/wifi Mars Simulation]- Based on [http://metatek.blogspot.com/2010/06/mars-simulation-for-distribution.html Erik Nauman's Open Blackboard]&lt;br /&gt;
|158 prims&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Performance studies and blog posts==&lt;br /&gt;
&lt;br /&gt;
These provide some interesting data on the performance limitations of OpenSim at various points in time.&lt;br /&gt;
&lt;br /&gt;
* [https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html https://lists.berlios.de/pipermail/opensim-users/2010-August/005189.html] - Some interesting information from Mr Blue.  Physical objects and max avatars are limited by single thread performance in OpenSim.&lt;br /&gt;
* [http://www.sciencesim.com/wiki/doku.php/vwperf/start http://www.sciencesim.com/wiki/doku.php/vwperf/start] - Links to ScienceSim performance studies, including some very recent ones.&lt;br /&gt;
* [[Improving Performance]] - An old page from July 2009 detailing some performance issues on OpenSim.  Some of these issues are still valid (e.g. ODE issues).&lt;br /&gt;
* [[NHibernate Performance Testing]] &amp;amp;mdash; SQLite and MySQL performance tests with NHibernate.&lt;br /&gt;
* [[LibSecondLife performance problems]] - Another old page from November 2007 detailing issues with libsecondlife (now called libopenmetaverse).&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=71 Experiences from Operating a 3D Region Server in OSGrid - Part 1]&lt;br /&gt;
* [http://opensim.cybertechnews.org/?p=104 Experiences from Operating a 3D Region Server in OSGrid - Part 2]&lt;br /&gt;
&lt;br /&gt;
==Performance hints==&lt;br /&gt;
&lt;br /&gt;
Here are some specific things you might be able to do to improve performance&lt;br /&gt;
&lt;br /&gt;
===Running Squid on your region server as a reverse proxy to the asset server===&lt;br /&gt;
1. Download and install the Squid Proxy from: http://www.squid-cache.org/Download/&amp;lt;br&amp;gt;&lt;br /&gt;
2. Create your [[squid.conf]] configuration file.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Change your asset_server configuration in your OpenSim.ini to point to http://localhost:3128/&amp;lt;br&amp;gt;&lt;br /&gt;
4. Start everything up!&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now assets will be cached in the squid cache on the region server, and will be served up much faster, especially on region restart.&lt;br /&gt;
&lt;br /&gt;
=== GC_NO_EXPLICIT ===&lt;br /&gt;
&lt;br /&gt;
Sometimes this patch applied to mono-svn has helped my sim run a lot faster and not slowly get bogged down.&lt;br /&gt;
&lt;br /&gt;
$mono-svn-root$/mono&lt;br /&gt;
  mono/metadata/boehm-gc.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: boehm-gc.c&lt;br /&gt;
===================================================================&lt;br /&gt;
--- boehm-gc.c	(revision 105684)&lt;br /&gt;
+++ boehm-gc.c	(working copy)&lt;br /&gt;
@@ -107,6 +107,10 @@&lt;br /&gt;
 void&lt;br /&gt;
 mono_gc_collect (int generation)&lt;br /&gt;
 {&lt;br /&gt;
+	static int no_explicite_gc = 0; if (no_explicite_gc==0) {if (getenv(&amp;quot;GC_NO_EXPLICIT&amp;quot;)) {no_explicite_gc = 1;return;} else {no_explicite_gc = 2;}} else if (no_explicite_gc==1) {&lt;br /&gt;
+		g_print(&amp;quot;\n --------GC_NO_EXPLICIT \n&amp;quot;);&lt;br /&gt;
+		return;&lt;br /&gt;
+		}&lt;br /&gt;
 	MONO_PROBE_GC_BEGIN (generation);&lt;br /&gt;
 	&lt;br /&gt;
 	GC_gcollect ();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Not only this, but I recompile the mono runtime:&lt;br /&gt;
&amp;lt;pre&amp;gt;--with-large-heap=yes&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otherwise, the Sim is limited to 3GB RAM.  Probably, this second peice is more important.  But still, afterwards it's worth a shot to test with both to see if there is a difference in performance:&lt;br /&gt;
&lt;br /&gt;
 export GC_NO_EXPLICIT=1&lt;br /&gt;
and&lt;br /&gt;
 unset GC_NO_EXPLICIT&lt;br /&gt;
&lt;br /&gt;
What I think, (only a guess) is that Mono starts internally GC thrashing in fishing expeditions to gaining maybe 1k of RAM at time. And by having a large heap (&amp;gt;3GB), it is possible might keep mono less apt to do stop world complete collections as often.&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Installing_and_Running_Hypergrid</id>
		<title>Installing and Running Hypergrid</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Installing_and_Running_Hypergrid"/>
				<updated>2010-08-19T04:40:04Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
== Installing &amp;amp; Running OpenSim in Hypergrid Mode ==&lt;br /&gt;
The setup for hypergrid differs depending on whether you run OpenSim as a standalone or as a grid. There also came considerable changes with version 0.7. If you are using an older version 0.6.x of OpenSimulator, then refer to [[Configuration for OpenSimulator 0.6.x]] further down this page.&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
In order for OpenSimulator to be accessible in the hypergrid, you must use an externally visible IP address or domain name. You also may need to set up port forwarding for all ports (TCP and UDP) that OpenSimulator and the regions use. Typically, these are port 8002 for an installation running in grid mode and port 9000 for standalones. Regions typically use ports starting at 9000. For more information, see [[Network Settings]].&lt;br /&gt;
&lt;br /&gt;
=== Standalone ===&lt;br /&gt;
The configuration for hypergrid is activated in section [Architecture] in file OpenSim.ini. Ensure that the line for Include-HGStandalone is the only one that is uncommented in this section:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Architecture]&lt;br /&gt;
    ;Include-Standalone    = &amp;quot;config-include/Standalone.ini&amp;quot;&lt;br /&gt;
    Include-HGStandalone = &amp;quot;config-include/StandaloneHypergrid.ini&amp;quot;&lt;br /&gt;
    ;Include-Grid         = &amp;quot;config-include/Grid.ini&amp;quot;&lt;br /&gt;
    ;Include-HGGrid       = &amp;quot;config-include/GridHypergrid.ini&amp;quot;&lt;br /&gt;
    ;Include-SimianGrid   = &amp;quot;config-include/SimianGrid.ini&amp;quot;&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In StandaloneCommon.ini the network addresses in sections [LoginService] and [GatekeeperService] must be changed to your external network address:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[LoginService]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    HomeURI = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
    GatekeeperURI = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
    InventoryServerURI = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
    AssetServerURI = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 [GatekeeperService]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    ExternalName = &amp;quot;http://example.com:9000&amp;quot;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
If you want to use a different port with these addresses, then you must adjust the HTTP listener port in section [Network] in OpenSim.ini, too:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Network]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    http_listener_port = 9000&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a last step, the regions must be configured according to the previous changes. See [[#Region Setup for both Grid and Standalone]].&lt;br /&gt;
&lt;br /&gt;
=== Grid ===&lt;br /&gt;
To enable hypergrid for a grid, both the Robust server and the region servers (simulators) must be configured approprietly.&lt;br /&gt;
&lt;br /&gt;
==== Robust Server ====&lt;br /&gt;
The Robust server is started with configuration file Robust.HG.ini instead of Robust.ini. If this file does not yet exist in your installation, create it by making a copy of Robust.HG.ini.example. Make the changes appropriate for your environment (e.g. adjust the database connection string). For hypergrid, the following settings are relevant:&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[LoginService]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    HomeURI = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
    GatekeeperURI = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
    InventoryServerURI = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
    AssetServerURI = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[GatekeeperService]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    ExternalName = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to change the port(s) used with these addresses, you will also need to adjust the ports in parameter ''''ServiceConnectors'''' in section [Startup] and probably the port configured in section [Network] as well.&lt;br /&gt;
&lt;br /&gt;
After these adjustments, the Robust server can be started. On Windows/.NET:&lt;br /&gt;
 Robust -inifile=Robust.HG.ini&lt;br /&gt;
Or, with Mono (e.g. on Linux or OSX):&lt;br /&gt;
 mono Robust.exe -inifile=Robust.HG.ini&lt;br /&gt;
&lt;br /&gt;
==== Simulator ====&lt;br /&gt;
The region servers (simulators) that connect to the Robust server read their configuration from file OpenSim.ini. To activate hypergrid for them, the line for Include-HGGrid in section [Architecture] must be uncommented:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Architecture]&lt;br /&gt;
    ;Include-Standalone    = &amp;quot;config-include/Standalone.ini&amp;quot;&lt;br /&gt;
    ;Include-HGStandalone = &amp;quot;config-include/StandaloneHypergrid.ini&amp;quot;&lt;br /&gt;
    ;Include-Grid         = &amp;quot;config-include/Grid.ini&amp;quot;&lt;br /&gt;
    Include-HGGrid       = &amp;quot;config-include/GridHypergrid.ini&amp;quot;&lt;br /&gt;
    ;Include-SimianGrid   = &amp;quot;config-include/SimianGrid.ini&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
=== Region Setup for both Grid and Standalone ===&lt;br /&gt;
Finally, all your regions must use the same external address that is set for GatekeeperService, for example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Region One]&lt;br /&gt;
    ; ... (other settings in this section) ...&lt;br /&gt;
    ExternalHostName = &amp;quot;example.com&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
For the ports which are used by your regions, TCP and UDP requests must be forwarded through any firewall that is securing your network.&lt;br /&gt;
&lt;br /&gt;
== Configuration for OpenSimulator 0.6.x ==&lt;br /&gt;
&lt;br /&gt;
=== Installing ===&lt;br /&gt;
&lt;br /&gt;
Checkout OpenSim, prebuild and build as normal or Download and install Binary Packages from the [[Main Page|MAIN&amp;amp;nbsp;Page ]]&amp;lt;br&amp;gt;If you're running your opensim in '''Grid Mode''' mode with&amp;amp;nbsp;servers on other machines, you&amp;amp;nbsp;only need to modify your OpenSim.ini to enable HyperGrid. &lt;br /&gt;
&lt;br /&gt;
If you're running in standalone and you want it to be network-able, or if you have your grid on loopback (127.0.0.1) change all the [Network] server addresses to. See below. &lt;br /&gt;
&lt;br /&gt;
=== EXAMPLE Network Sections ===&lt;br /&gt;
&lt;br /&gt;
==== Default Example, Network Settings for a Stand Alone:  ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Network]&lt;br /&gt;
http_listener_port = 9000&lt;br /&gt;
&lt;br /&gt;
grid_server_url = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
grid_send_key = null&lt;br /&gt;
grid_recv_key = null&lt;br /&gt;
&lt;br /&gt;
user_server_url = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
user_send_key = null&lt;br /&gt;
user_recv_key = null&lt;br /&gt;
&lt;br /&gt;
asset_server_url = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
inventory_server_url = &amp;quot;http://example.com:9000&amp;quot;&lt;br /&gt;
messaging_server_url = &amp;quot;http://example.com:9000&amp;quot;&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== Default Example, Network Settings for a Grided Server:  ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Network]&lt;br /&gt;
http_listener_port = 9000&lt;br /&gt;
&lt;br /&gt;
grid_server_url = &amp;quot;http://example.com:8001&amp;quot;&lt;br /&gt;
grid_send_key = null&lt;br /&gt;
grid_recv_key = null&lt;br /&gt;
&lt;br /&gt;
user_server_url = &amp;quot;http://example.com:8002&amp;quot;&lt;br /&gt;
user_send_key = null&lt;br /&gt;
user_recv_key = null&lt;br /&gt;
&lt;br /&gt;
asset_server_url = &amp;quot;http://example.com:8003&amp;quot;&lt;br /&gt;
inventory_server_url = &amp;quot;http://example.com:8003&amp;quot;&lt;br /&gt;
messaging_server_url = &amp;quot;http://example.com:8006&amp;quot;&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== Network Settings&amp;amp;nbsp;for OSGrid Attched Servers:  ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Network]&lt;br /&gt;
http_listener_port = 9000&lt;br /&gt;
grid_server_url = &amp;quot;http://osgrid.org:8001&amp;quot; ;default 8003&lt;br /&gt;
grid_send_key = &amp;quot;1234&amp;quot;&lt;br /&gt;
grid_recv_key = &amp;quot;1234&amp;quot;&lt;br /&gt;
&lt;br /&gt;
user_server_url = &amp;quot;http://osgrid.org:8002&amp;quot; &lt;br /&gt;
user_send_key = &amp;quot;1234&amp;quot;&lt;br /&gt;
user_recv_key = &amp;quot;1234&amp;quot;&lt;br /&gt;
&lt;br /&gt;
asset_server_url = &amp;quot;http://assets.osgrid.org:8003&amp;quot; &lt;br /&gt;
inventory_server_url = &amp;quot;http://osgrid.org:8004&amp;quot; ;default 8003&lt;br /&gt;
messaging_server_url = &amp;quot;http://osgrid.org:8006&amp;quot;&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== Modifications needed to be applied to OpenSim.ini to enable Hypergrid  ====&lt;br /&gt;
&lt;br /&gt;
- Change the following line at the top of the OpenSim.ini &lt;br /&gt;
&amp;lt;pre&amp;gt;hypergrid = false to true&amp;lt;/pre&amp;gt;&lt;br /&gt;
- NEXT, Add or Modify the ### WORLD MAP Section as shown &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;; ##&lt;br /&gt;
; ## WORLD MAP&lt;br /&gt;
; ##&lt;br /&gt;
&lt;br /&gt;
WorldMapModule = &amp;quot;WorldMap&amp;quot;&lt;br /&gt;
MapImageModule = &amp;quot;MapImageModule&amp;quot;&lt;br /&gt;
WorldMapModule = &amp;quot;HGWorldMapModule&amp;quot; ;NOT INCLUDED IN DEFAULT OpenSim.ini.EXAMPLE&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
''Information: HGWorldMapModule will, after teleporting to another grid, clean up tiles in your map left over from the grid on which you were previously.'' &lt;br /&gt;
&lt;br /&gt;
- NEXT, Modify the [Archictecture] Section at the bottom &lt;br /&gt;
&lt;br /&gt;
Uncomment the appropriate Include-HG* = line by removing the semi colon and making sure that is the only ONE uncommented. (example shows for a Stand Alone HG enabled installation) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;[Architecture]&lt;br /&gt;
;Include-Standalone = &amp;quot;config-include/Standalone.ini&amp;quot; ; DEFAULT UNCOMMENTED&lt;br /&gt;
Include-HGStandalone = &amp;quot;config-include/StandaloneHypergrid.ini&amp;quot;&lt;br /&gt;
;Include-Grid = &amp;quot;config-include/Grid.ini&amp;quot;&lt;br /&gt;
;Include-HGGrid = &amp;quot;config-include/GridHypergrid.ini&amp;quot;&amp;lt;/source&amp;gt;&amp;amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
Your OpenSimulator instance should now be ready for inbound &amp;amp;amp; outbound Hypergrid use &lt;br /&gt;
&lt;br /&gt;
== The 4096 Regions Limit  ==&lt;br /&gt;
Due to a viewer issue, teleports to destinations that are more than 4096 regions away in any direction will not work as expected. Most viewers will do the teleport but the destination region will not be rendered and thus remain invisible to you. What this means in practice is that if you wish to teleport from a region located at cell coordinates (1000, 1000) you cannot go beyond (5095, 5095). To reach destinations that are placed at farer locations, you should either place your own region closer to the destination, or use some intermediate region that is reachable from both your region and the destination region.&lt;br /&gt;
&lt;br /&gt;
Refer to [[Public Hypergrid Nodes]] to see some known grids and standalones and where they are located. &lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
Make sure you have a 'home' set. If your home region doesn't exist, the hyperlink TPs may not work. To set your home, go to one of your local regions and &amp;quot;Set Home&amp;quot; from the viewer. &lt;br /&gt;
&lt;br /&gt;
To Enable scripted Teleporting between regions, standalone, HyperGrid etc, you can use osTeleportAgent function, Example here: [[OsTeleportAgent|OsTeleportAgent]]&lt;br /&gt;
&lt;br /&gt;
== Linking regions (Optional)  ==&lt;br /&gt;
&lt;br /&gt;
=== Method 1  ===&lt;br /&gt;
&lt;br /&gt;
On the console, type for example: &lt;br /&gt;
&amp;lt;pre&amp;gt;link-region &amp;amp;lt;Xloc&amp;amp;gt; &amp;amp;lt;Yloc&amp;amp;gt; osl2.nac.uci.edu:9006&amp;lt;/pre&amp;gt;&lt;br /&gt;
Use Xloc and Yloc that make sense to your world, i.e. close to your regions, but not adjacent. &amp;lt;br&amp;gt;replace osl2.nac.uci.edu and 9006 with the domain name / ip address and the http_listener_port of the simulator where the region is running you want to link to.&lt;br /&gt;
You can link to a specific region within an instance, by using the name of the region at the end, for example: &lt;br /&gt;
&amp;lt;pre&amp;gt;link-region 997 997 osl2.nac.uci.edu:9006:UCI Welcome&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Method 2  ===&lt;br /&gt;
&lt;br /&gt;
There is also some initial support for reading the links from a xml file. &lt;br /&gt;
&lt;br /&gt;
Use the console command: link-region &amp;amp;lt;URI&amp;amp;gt; [&amp;amp;lt;excludeList&amp;amp;gt;] &lt;br /&gt;
&lt;br /&gt;
The uri can be either the path of a local xml file or a xml document on a http server. &lt;br /&gt;
&lt;br /&gt;
The format of the xml file is: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;Nini&amp;gt;&lt;br /&gt;
&amp;lt;Section Name=&amp;quot;Region1&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;Key Name=&amp;quot;xloc&amp;quot; Value=&amp;quot;1002&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;yloc&amp;quot; Value=&amp;quot;1006&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;externalPort&amp;quot; Value=&amp;quot;9006&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;externalHostName&amp;quot; Value=&amp;quot;osl2.nac.uci.edu&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;localName&amp;quot; Value=&amp;quot;OSGrid-Gateway&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;real-xloc&amp;quot; Value=&amp;quot;10222&amp;quot;/&amp;gt; //optional field that gives the region's real location on its home grid&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;real-yloc&amp;quot; Value=&amp;quot;10265&amp;quot; /&amp;gt; //optional field that gives the region's real location on its home grid&lt;br /&gt;
&amp;lt;/Section&amp;gt;&lt;br /&gt;
&amp;lt;Section Name=&amp;quot;Region2&amp;quot;&amp;gt; &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/Section&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/Nini&amp;gt;&amp;lt;/source&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[Note] The section names can be anything you want, but they all should be different and have no spaces in the name. &lt;br /&gt;
&lt;br /&gt;
==== ExcludeList:  ====&lt;br /&gt;
&lt;br /&gt;
The exclude list is a single string paramater with the format: excludeList:&amp;amp;lt;SectionName&amp;amp;gt;[;&amp;amp;lt;SectionName&amp;amp;gt;] &lt;br /&gt;
&lt;br /&gt;
This means that while reading from the xml file any sections that are listed in the excludeList will be ignored and no HyperGrid link created for them. &lt;br /&gt;
&lt;br /&gt;
This could allow, link lists to be created on a webserver that everyone could add their own regions to, and then they just make sure they add their own section name(s) to the exclude list on their own region(s). &lt;br /&gt;
&lt;br /&gt;
So for example, someone might create a editable online list for the up coming OpenSimulator's 2nd birthday. Which might look something like: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;Nini&amp;gt;&lt;br /&gt;
&amp;lt;Section Name=&amp;quot;OSGrid-Party&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;Key Name=&amp;quot;xloc&amp;quot; Value=&amp;quot;1002&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;yloc&amp;quot; Value=&amp;quot;1006&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;externalPort&amp;quot; Value=&amp;quot;9006&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;externalHostName&amp;quot; Value=&amp;quot;osl2.nac.uci.edu&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;Key Name=&amp;quot;localName&amp;quot; Value=&amp;quot;OSGrid-Gateway&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/Section&amp;gt;&lt;br /&gt;
&amp;lt;Section Name=&amp;quot;UCIGrid-Party&amp;quot;&amp;gt; &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/Section&amp;gt;&lt;br /&gt;
&amp;lt;/Nini&amp;gt;&amp;lt;/source&amp;gt; I could then add my own region to the list with the section name &amp;quot;MW-Party&amp;quot;. Then when I startup that region that I want to be part of this hypergrid, I use the command: &lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;link-region &amp;amp;lt;URI of xml file&amp;amp;gt; excludeList:MW-Party&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
This is so that my region doesn't try to create a hyper link to itself. &lt;br /&gt;
&lt;br /&gt;
=== Method 3 (dynamic)  ===&lt;br /&gt;
&lt;br /&gt;
Starting in r8193, if you're in an HG-enabled region, you'll be able to dynamically link sims, and TP there, in any one of these ways (and probably more). All you need to know is the target address, e.g. from the list below. &lt;br /&gt;
&lt;br /&gt;
1) Type for example secondlife://ucigrid04.nacs.uci.edu:9007/ in the chat box, pull up the chat history and click on that link &lt;br /&gt;
&lt;br /&gt;
2) Pull up the map and search for things like ucigrid04.nacs.uci.edu:9007 &lt;br /&gt;
&lt;br /&gt;
3) Using the embedded browser visit pages that have links like '''secondlife://ucigrid04.nacs.uci.edu:9007'''/ (there's one up at http://www.ics.uci.edu/~lopes/hypergrid/test.html) &lt;br /&gt;
&lt;br /&gt;
Again, you can link to a specific region within an instance by adding the name of that region at the end, like this: '''secondlife://ucigrid04.nacs.uci.edu:9007:Gateway 7000/''' &lt;br /&gt;
&lt;br /&gt;
=== Checking the 4096 Regions Limit ===&lt;br /&gt;
Due to the [[Installing and Running Hypergrid#The 4096 Regions Limit|4096 Regions Limit]], there is a check in OpenSimulator since version 0.7.0.1 which verifies that the intended link will be within reach of one of your regions. If none of the regions in your grid or standalone is located within a distance radius of 4096 regions from the region to be linked, then the link will be rejected. You can disable this check in StandaloneCommon.ini (for standalones) or Robust.HG.ini (for grids) with&lt;br /&gt;
 [GridService]&lt;br /&gt;
      Check4096 = false&lt;br /&gt;
      &lt;br /&gt;
=== Persistent Linked Regions ===&lt;br /&gt;
With grid mode, methods 1 and 2 will work on both the Robust console and the region console. On the region console, linked regions will not be stored in the database and will vanish when the region is shut down. Regions that are linked on the Robust console will be persistent over restarts until they are explicitly removed with unlink-region.&lt;br /&gt;
&lt;br /&gt;
== Listing linked regions ==&lt;br /&gt;
&lt;br /&gt;
To see a list of all linked regions, use the following command on the console (available since 0.7.1 r/13457, also in 0.7-post-fixes):&lt;br /&gt;
&amp;lt;pre&amp;gt;show hyperlinks&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unlinking regions ==&lt;br /&gt;
&lt;br /&gt;
On the console, type for example: &lt;br /&gt;
&amp;lt;pre&amp;gt;unlink-region osl2.nac.uci.edu:9006&amp;lt;/pre&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;pre&amp;gt;unlink-region &amp;amp;lt;local region name&amp;amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that region names can only have a maximum length of 32 characters when using MySQL as a database. If a linked region has a longer name, it will be truncated. The unlink-region command will only find a region, if the name is also truncated to a maximum length of 32 characters.&lt;br /&gt;
&lt;br /&gt;
== Additional References ==&lt;br /&gt;
&lt;br /&gt;
Implemented osFunctions: [[OSSL Implemented|OSSL Implemented]] &lt;br /&gt;
&lt;br /&gt;
Enabling osFunctions: [[OSSL Enabling Functions|OSSL Enabling Functions]] &lt;br /&gt;
&lt;br /&gt;
HyperGrid Security: [[Hypergrid Security|Hypergrid Security]] &lt;br /&gt;
&lt;br /&gt;
Banning Foreign Users in Hypergrid: [[Banning Foreign Users in Hypergrid|Banning Foreign Users in Hypergrid]] &lt;br /&gt;
&lt;br /&gt;
Public HyperGrid Nodes Listing: [[Public Hypergrid Nodes|Public Hypergrid Nodes]] &lt;br /&gt;
&lt;br /&gt;
Hypergrid Inventory Access: [[Hypergrid Inventory Access|Hypergrid Inventory Access (proposal)]] &lt;br /&gt;
&lt;br /&gt;
CATEGORY: [[Hypergrid|Hypergrid ]]&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/OsNpcCreate</id>
		<title>OsNpcCreate</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/OsNpcCreate"/>
				<updated>2010-08-19T03:38:20Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Clarify username parameters per coding source&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Function Syntax:''' osNpcCreate(string firstname, string lastname, vector position, key cloneFrom);&amp;lt;br&amp;gt;'''Returns:'''&amp;amp;nbsp; key&lt;br /&gt;
&lt;br /&gt;
Example Required !&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Startup_script_linux</id>
		<title>Startup script linux</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Startup_script_linux"/>
				<updated>2010-03-06T06:27:15Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Added simple script for a standalone&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Simple Standalone Sim Startup Script ==&lt;br /&gt;
&lt;br /&gt;
=== Instructions ===&lt;br /&gt;
&lt;br /&gt;
This script assumes that you will start the sim whenever you are using it.&lt;br /&gt;
&lt;br /&gt;
The sim will run as a job in its own terminal.&lt;br /&gt;
&lt;br /&gt;
To shutdown the sim you enter the SHUTDOWN command at the terminal prompt.&lt;br /&gt;
&lt;br /&gt;
=== Script ===&lt;br /&gt;
&lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 cd /home/opensim/diva-r11766/bin&lt;br /&gt;
 export MONO_THREADS_PER_CPU=125&lt;br /&gt;
 mono OpenSim.exe&lt;br /&gt;
&lt;br /&gt;
== Grid Mode /etc/init.d script for Linux  ==&lt;br /&gt;
&lt;br /&gt;
=== Instructions  ===&lt;br /&gt;
&lt;br /&gt;
Tested on Debian 5. CHUIDS user to opensim user. Supports: start, stop, restart, status &lt;br /&gt;
&lt;br /&gt;
To implement: Type: cat &amp;amp;gt; /etc/init.d/opensim Paste in script from this page Press: CTRL+D Type: chmod +x /etc/init.d/opensim Script should now be located on server and be executable. &lt;br /&gt;
&lt;br /&gt;
Type: update-rc.d opensim defaults Script should now be in your startup. &lt;br /&gt;
&lt;br /&gt;
Modify header in script to adapt it to your installation folder and user. &lt;br /&gt;
&lt;br /&gt;
NOTE: stop-command currently doesn't work properly (it doesn't do a soft shutdown). It will kill OpenSim first with kill pid, then kill -9 pid. So make sure you have saved your data.&amp;amp;nbsp;:) &lt;br /&gt;
&lt;br /&gt;
=== Script  ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          OpenSim&lt;br /&gt;
 # Required-Start:    $local_fs $network &lt;br /&gt;
 # Required-Stop:     $local_fs&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: Tedds OpenSim init.d-script&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
&lt;br /&gt;
 # Put script in /etc/init.d/&lt;br /&gt;
 # then execute: update-rc.d opensim defaults&lt;br /&gt;
&lt;br /&gt;
 set -e&lt;br /&gt;
&lt;br /&gt;
 #&lt;br /&gt;
 # Directories&lt;br /&gt;
 #&lt;br /&gt;
 # Location of OpenSim installation&lt;br /&gt;
 DIR=/home/opensim/OpenSim/bin/&lt;br /&gt;
 # Different PID dir?&lt;br /&gt;
 PIDDIR=$DIR&lt;br /&gt;
&lt;br /&gt;
 USER=opensim&lt;br /&gt;
 SERVICES=&amp;quot;OpenSim.Grid.UserServer.exe OpenSim.Server.exe OpenSim.exe&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 #&lt;br /&gt;
 # Kill values (in seconds)&lt;br /&gt;
 #&lt;br /&gt;
 # How long between each service being started&lt;br /&gt;
 DELAY_STARTUP=10&lt;br /&gt;
 # How long between each service is sent shutdown command&lt;br /&gt;
 DELAY_KILL=10&lt;br /&gt;
 # After shutdown has been sent to all we do another loop with &amp;quot;kill&amp;quot;, then &amp;quot;kill -9&amp;quot;. How long between &amp;quot;kill&amp;quot; and &amp;quot;kill -9&amp;quot;.&lt;br /&gt;
 DELAY_FORCEKILL=10&lt;br /&gt;
&lt;br /&gt;
 #&lt;br /&gt;
 # Info on service handled by this script&lt;br /&gt;
&lt;br /&gt;
 # Name of service&lt;br /&gt;
 NAME=opensim&lt;br /&gt;
 # Description of service&lt;br /&gt;
 DESC=&amp;quot;OpenSim Server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 # Binaries&lt;br /&gt;
 SCREEN=/usr/bin/screen&lt;br /&gt;
 MONO=/usr/bin/mono&lt;br /&gt;
&lt;br /&gt;
 ###########################&lt;br /&gt;
 ##### START OF SCRIPT #####&lt;br /&gt;
 ###########################&lt;br /&gt;
&lt;br /&gt;
 export PATH=&amp;quot;${PATH:+$PATH:}/usr/sbin:/sbin&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # Load LSB log functions&lt;br /&gt;
 _lsbFile=&amp;quot;&amp;quot;&lt;br /&gt;
 if [ -e /etc/debian_version ]; then&lt;br /&gt;
     _lsbFile=&amp;quot;/lib/lsb/init-functions&amp;quot;&lt;br /&gt;
     if [ -f $_lsbFile ]; then&lt;br /&gt;
         . $_lsbFile&lt;br /&gt;
     else&lt;br /&gt;
         echo This script requires LSB init-functions file which doesn't exist: $_lsbFile&lt;br /&gt;
         exit 1&lt;br /&gt;
     fi&lt;br /&gt;
 else&lt;br /&gt;
 # [ -e /etc/init.d/functions ]&amp;amp;nbsp;; then&lt;br /&gt;
     _lsbFile=&amp;quot;/etc/init.d/functions&amp;quot;&lt;br /&gt;
     if [ -e $_lsbFile ]; then&lt;br /&gt;
         . $_lsbFile&lt;br /&gt;
     else&lt;br /&gt;
         echo This script requires LSB init-functions file which doesn't exist: $_lsbFile&lt;br /&gt;
         exit 1&lt;br /&gt;
     fi&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
 # Lets use fancy output&lt;br /&gt;
 log_use_fancy_output&lt;br /&gt;
&lt;br /&gt;
 # Check that target directory exists&lt;br /&gt;
 if test&amp;amp;nbsp;! -d &amp;quot;$DIR&amp;quot;; then&lt;br /&gt;
     log_failure_msg &amp;quot;$NAME&amp;quot; &amp;quot;Target directory \&amp;quot;$DIR\&amp;quot; does not exist. Can not continue.&amp;quot;&lt;br /&gt;
     exit 1&lt;br /&gt;
 fi&lt;br /&gt;
&lt;br /&gt;
 # Create a reverse order for shutdown&lt;br /&gt;
 SERVICES_REVERSE=&amp;quot;&amp;quot;&lt;br /&gt;
 reverse() { SERVICES_REVERSE=&amp;quot;$9 $8 $7 $6 $5 $4 $3 $2 $1&amp;quot;; }&lt;br /&gt;
 reverse $SERVICES&lt;br /&gt;
&lt;br /&gt;
 # Check if a service is running&lt;br /&gt;
 isrunning() { &lt;br /&gt;
     ISRUNNING=&amp;quot;0&amp;quot;&lt;br /&gt;
     # Do we have PID-file?&lt;br /&gt;
     if [ -f &amp;quot;$PIDDIR/$1.pid&amp;quot; ]; then&lt;br /&gt;
         # Check if proc is running&lt;br /&gt;
         pid=`cat &amp;quot;$PIDDIR/$1.pid&amp;quot; 2&amp;amp;gt; /dev/null`&lt;br /&gt;
         if [ &amp;quot;$pid&amp;quot;&amp;amp;nbsp;!= &amp;quot;&amp;quot; ]; then&lt;br /&gt;
             if [ -d /proc/$pid ]; then&lt;br /&gt;
                 # Process is running&lt;br /&gt;
                 ISRUNNING=&amp;quot;1&amp;quot;&lt;br /&gt;
             fi&lt;br /&gt;
         fi&lt;br /&gt;
     fi&lt;br /&gt;
     #ISRUNNING=&amp;quot;0&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 #&lt;br /&gt;
 # Process commands&lt;br /&gt;
 #&lt;br /&gt;
 case &amp;quot;$1&amp;quot; in&lt;br /&gt;
 start)&lt;br /&gt;
     # Start all services one by one&lt;br /&gt;
     for server in $SERVICES; do&lt;br /&gt;
         log_daemon_msg &amp;quot;Starting $NAME&amp;quot; &amp;quot;$server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         isrunning $server&lt;br /&gt;
         case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
             1) log_progress_msg &amp;quot;Process already started. Please stop first&amp;quot;; log_end_msg 1&amp;amp;nbsp;;;&lt;br /&gt;
             0) &lt;br /&gt;
                 # Process is not running&lt;br /&gt;
                 # Start process and sleep...&lt;br /&gt;
                 exefile=&amp;quot;/tmp/exe.OpenSim.$server.sh&amp;quot;&lt;br /&gt;
&lt;br /&gt;
                 # Need to make external file, had big problems with screen params&lt;br /&gt;
                 echo \#\!/bin/bash &amp;amp;gt; $exefile&lt;br /&gt;
                 echo cd $DIR &amp;amp;gt;&amp;amp;gt; $exefile&lt;br /&gt;
                 echo $MONO $server &amp;amp;gt;&amp;amp;gt; $exefile&lt;br /&gt;
                 chmod +x $exefile&lt;br /&gt;
&lt;br /&gt;
                 cmd_screen=&amp;quot;screen -S $server -d -m $exefile&amp;quot;&lt;br /&gt;
                 start-stop-daemon --start -b -x /bin/su -m --pidfile=/tmp/su.$server.pid --chdir &amp;quot;$DIR&amp;quot; -- - $USER &amp;quot;-c $cmd_screen&amp;quot;&lt;br /&gt;
&lt;br /&gt;
                 # Delay between services that are started&lt;br /&gt;
                 sleep $DELAY_STARTUP&lt;br /&gt;
&lt;br /&gt;
                 rm $exefile 2&amp;amp;gt; /dev/null&lt;br /&gt;
&lt;br /&gt;
                 # Make PID-file&lt;br /&gt;
                 ps afxu | grep &amp;quot;mono $server&amp;quot; | grep -iEv &amp;quot;grep|screen&amp;quot; | awk {'print $2'} &amp;amp;gt; &amp;quot;$PIDDIR/$server.pid&amp;quot;&lt;br /&gt;
&lt;br /&gt;
                 isrunning $server&lt;br /&gt;
                 case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
                     1) &lt;br /&gt;
                         # Process started ok&lt;br /&gt;
                         #log_progress_msg &amp;quot;Success&amp;quot;; &lt;br /&gt;
                         log_end_msg 0 &lt;br /&gt;
                        &amp;amp;nbsp;;;&lt;br /&gt;
                     0) &lt;br /&gt;
                         # Process didn't start... remove pid-file&lt;br /&gt;
                         rm &amp;quot;$PIDDIR/$server.pid&amp;quot; 2&amp;amp;gt; /dev/null&lt;br /&gt;
                         #log_progress_msg &amp;quot;Failure&amp;quot;; &lt;br /&gt;
                         log_end_msg 1 &lt;br /&gt;
                        &amp;amp;nbsp;;;&lt;br /&gt;
                 esac&lt;br /&gt;
                &amp;amp;nbsp;;;&lt;br /&gt;
         esac&lt;br /&gt;
&lt;br /&gt;
     done&lt;br /&gt;
    &amp;amp;nbsp;;;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 stop)&lt;br /&gt;
     _killCount=0&lt;br /&gt;
&lt;br /&gt;
     for server in $SERVICES_REVERSE; do&lt;br /&gt;
         log_daemon_msg &amp;quot;Stopping $NAME&amp;quot; &amp;quot;$server&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         isrunning $server&lt;br /&gt;
         case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
         1) &lt;br /&gt;
             _killCount=`expr $_killCount + 1`&lt;br /&gt;
             log_progress_msg &amp;quot;Sending shutdown command:&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
             # We add some backspaces to the command in case something is on the console already&lt;br /&gt;
             echo `screen -S $server -X stuff \&amp;quot;                             &lt;br /&gt;
&lt;br /&gt;
             # Wait for it to shut down...&lt;br /&gt;
             sleep $DELAY_KILL&lt;br /&gt;
&lt;br /&gt;
             isrunning $server&lt;br /&gt;
             case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
                 1) log_progress_msg &amp;quot;is still running.&amp;quot;; log_end_msg 0&amp;amp;nbsp;;;&lt;br /&gt;
                 0) log_progress_msg &amp;quot;has been shutdown&amp;quot;; log_end_msg 0&amp;amp;nbsp;;;&lt;br /&gt;
             esac&lt;br /&gt;
&lt;br /&gt;
            &amp;amp;nbsp;;;&lt;br /&gt;
         0) &lt;br /&gt;
             log_progress_msg &amp;quot;is not running&amp;quot;; log_end_msg 0&lt;br /&gt;
            &amp;amp;nbsp;;;&lt;br /&gt;
         esac&lt;br /&gt;
&lt;br /&gt;
     done&lt;br /&gt;
&lt;br /&gt;
     # Check if any procs are still running&lt;br /&gt;
     for server in $SERVICES; do&lt;br /&gt;
         isrunning $server&lt;br /&gt;
         case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
         1) &lt;br /&gt;
             log_warning_msg &amp;quot;Stopping $NAME&amp;quot; &amp;quot;$server is still running: Forcing kill&amp;quot;&lt;br /&gt;
             echo `kill $pid 2&amp;amp;gt; /dev/null`;&lt;br /&gt;
             sleep $DELAY_FORCEKILL&lt;br /&gt;
             echo `kill -9 $pid 2&amp;amp;gt; /dev/null`;&lt;br /&gt;
             sleep 1&lt;br /&gt;
&lt;br /&gt;
             # Now check again if it is still running...&lt;br /&gt;
             isrunning $server&lt;br /&gt;
             case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
                 0) log_progress_msg &amp;quot;Success&amp;quot;; log_end_msg 0&amp;amp;nbsp;;;&lt;br /&gt;
                 1) log_progress_msg &amp;quot;Process is still running... Even after \&amp;quot;kill -9 $pid\&amp;quot;. WOW...&amp;quot;; log_end_msg 0&amp;amp;nbsp;;;&lt;br /&gt;
             esac&lt;br /&gt;
            &amp;amp;nbsp;;;&lt;br /&gt;
         0) &lt;br /&gt;
             #log_progress_msg &amp;quot;&amp;quot;; &lt;br /&gt;
            &amp;amp;nbsp;;;&lt;br /&gt;
         esac&lt;br /&gt;
     done&lt;br /&gt;
&lt;br /&gt;
     log_begin_msg &amp;quot;$NAME: All done (killed $_killCount procs)&amp;quot;; log_end_msg 0&lt;br /&gt;
&lt;br /&gt;
    &amp;amp;nbsp;;;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 status)&lt;br /&gt;
     # Count how many processes we need&lt;br /&gt;
     PROCCOUNT=0&lt;br /&gt;
     for i in $SERVICES; do&lt;br /&gt;
         PROCCOUNT=`expr $PROCCOUNT + 1`&lt;br /&gt;
     done&lt;br /&gt;
&lt;br /&gt;
     # Go through server PID files and count how many are running&lt;br /&gt;
     log_begin_msg &amp;quot;$NAME: Running processed:&amp;quot;&lt;br /&gt;
     _pidCount=0&lt;br /&gt;
     for server in $SERVICES; do&lt;br /&gt;
&lt;br /&gt;
         isrunning $server&lt;br /&gt;
         case &amp;quot;$ISRUNNING&amp;quot; in&lt;br /&gt;
             1) &lt;br /&gt;
                 # This server is running&lt;br /&gt;
                 _pidCount=`expr $_pidCount + 1`&lt;br /&gt;
                 log_progress_msg &amp;quot;$server&amp;quot;&lt;br /&gt;
                &amp;amp;nbsp;;;&lt;br /&gt;
             0) &lt;br /&gt;
                &amp;amp;nbsp;;;&lt;br /&gt;
         esac&lt;br /&gt;
     done&lt;br /&gt;
&lt;br /&gt;
     log_begin_msg &amp;quot; ($_pidCount of $PROCCOUNT processes are running)&amp;quot;; log_end_msg 0&lt;br /&gt;
   &lt;br /&gt;
     # Check if running proc count matches requires proc count&lt;br /&gt;
     log_begin_msg &amp;quot;$NAME is&amp;quot;&lt;br /&gt;
     if [ $_pidCount -eq $PROCCOUNT ]; then&lt;br /&gt;
         log_progress_msg &amp;quot;running&amp;quot;; log_end_msg 0&lt;br /&gt;
         exit 0&lt;br /&gt;
     else&lt;br /&gt;
         log_progress_msg &amp;quot;NOT running&amp;quot;; log_end_msg 0&lt;br /&gt;
         exit 1&lt;br /&gt;
     fi&lt;br /&gt;
    &amp;amp;nbsp;;;&lt;br /&gt;
&lt;br /&gt;
 restart)&lt;br /&gt;
     $0 stop&lt;br /&gt;
     $0 start&lt;br /&gt;
    &amp;amp;nbsp;;;&lt;br /&gt;
 *)&lt;br /&gt;
     echo &amp;quot;Usage: /etc/init.d/$NAME {start|stop|restart|status}&amp;quot; &amp;amp;gt;&amp;amp;amp;2&lt;br /&gt;
     exit 1&lt;br /&gt;
    &amp;amp;nbsp;;;&lt;br /&gt;
 esac&lt;br /&gt;
&lt;br /&gt;
 exit 0&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Inventory_Archives</id>
		<title>Inventory Archives</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Inventory_Archives"/>
				<updated>2009-12-10T09:01:46Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: clarify destination folder requirement&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Template:Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
OpenSim Inventory Archives (IARs) are a means by which inventory folders and items can be saved offline to a single file (an IAR).  This file can then be loaded into a different OpenSim installation.&lt;br /&gt;
&lt;br /&gt;
Like [[OpenSim Archives|OpenSim_Archives]], IARs save all the necessary asset data required to fully restore the items including textures and the other content of objects such as sounds and scripts.&lt;br /&gt;
&lt;br /&gt;
IARs have been enabled in OpenSim since Git revision 5a64ca (post 0.6.6).&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
IARs are saved and loaded from the region console.  Before performing either of these operations the user that owns the inventory to be used must be present in one of the regions run by the region simulator.&lt;br /&gt;
&lt;br /&gt;
===save iar===&lt;br /&gt;
&lt;br /&gt;
The command to save an IAR on the region console is&lt;br /&gt;
&lt;br /&gt;
 save iar &amp;lt;user name&amp;gt; &amp;lt;path&amp;gt; &amp;lt;password&amp;gt; [&amp;lt;filename&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
where &lt;br /&gt;
&lt;br /&gt;
* &amp;lt;user name&amp;gt; is the name of the user to save inventory from&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;path&amp;gt; is the path to an inventory item or folder.  If the path is for a folder, that folder and all its contents (both descendant folders and items) are saved.  If the path is for an item, then only that item is saved.  &lt;br /&gt;
&lt;br /&gt;
Components of the path are separated by a forward slash (&amp;quot;/&amp;quot;).  If you need to specify a path with spaces, you can surround the whole thing with double quotation marks (e.g. &amp;quot;Folder A/Folder B&amp;quot;).  &lt;br /&gt;
&lt;br /&gt;
If a name or folder contains a forward slash (&amp;quot;/&amp;quot;) then it can be escaped with the backslash (i.e. &amp;quot;\/&amp;quot;) to stop it being seen as a path separator.  Back slashes themselves need to be escaped with another backslash (i.e. &amp;quot;\\&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
One further issue here is that it's not possible to distinguish between identically named folders or items on the path - the workaround is to rename your items/folders if you need to specify them in the path :)&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;password&amp;gt; is the password of the user.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;filename&amp;gt; is an optional filename for the IAR.  If none is supplied, then the filename user-inventory.iar is used in the current directory.  I recommend that iars have the .iar extension.&lt;br /&gt;
&lt;br /&gt;
====Examples====&lt;br /&gt;
&lt;br /&gt;
Here's an example.  Suppose you have an inventory structure like this&lt;br /&gt;
&lt;br /&gt;
 My Inventory&lt;br /&gt;
   |&lt;br /&gt;
   +-- FolderA&lt;br /&gt;
         |  &lt;br /&gt;
         +-- FolderB&lt;br /&gt;
         |      |&lt;br /&gt;
         |      +-- ItemX&lt;br /&gt;
         |&lt;br /&gt;
         +-- ItemY&lt;br /&gt;
&lt;br /&gt;
If you type &lt;br /&gt;
&lt;br /&gt;
 save iar John Doe FolderA password&lt;br /&gt;
&lt;br /&gt;
then FolderA and everything in FolderA (FolderB, ItemX and ItemY) will be saved.  On the other hand, if you type&lt;br /&gt;
&lt;br /&gt;
 save iar John Doe FolderA/FolderB/ItemX password&lt;br /&gt;
&lt;br /&gt;
then only ItemX will be saved.&lt;br /&gt;
&lt;br /&gt;
Since no filename was specified in either of these cases, the items or folders will be saved to a file called user-inventory.iar&lt;br /&gt;
&lt;br /&gt;
===load iar===&lt;br /&gt;
&lt;br /&gt;
An IAR can be reloaded to an OpenSimulator instance with the load iar command&lt;br /&gt;
&lt;br /&gt;
 load iar &amp;lt;user name&amp;gt; &amp;lt;path&amp;gt; &amp;lt;password&amp;gt; [&amp;lt;filename&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
where&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;user name&amp;gt; is the name of the user to whom to load the inventory&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;path&amp;gt; is the path to which the IAR should be loaded.  This has to be a folder which already exists in &amp;quot;My Inventory&amp;quot;.  See the save iar command for more details.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;password&amp;gt; is the password of the user.&lt;br /&gt;
&lt;br /&gt;
* [&amp;lt;filename&amp;gt;] is an optional filename for the IAR.  If none is specified, then the filename is assumed to be user-inventory.iar in the current directory.&lt;br /&gt;
&lt;br /&gt;
====Examples====&lt;br /&gt;
&lt;br /&gt;
Again, here's an example.  Suppose that &amp;quot;David Hume&amp;quot; has recieved the IAR above containing FolderA, FolderB, ItemX and ItemY.  David Hume already has an inventory structure like this.&lt;br /&gt;
&lt;br /&gt;
 My Inventory&lt;br /&gt;
   |&lt;br /&gt;
   +-- Folder1&lt;br /&gt;
         |  &lt;br /&gt;
         +-- Folder2&lt;br /&gt;
         |      &lt;br /&gt;
         +-- Folder3&lt;br /&gt;
&lt;br /&gt;
David wants to load the IAR to Folder3, so on the region console he executes&lt;br /&gt;
&lt;br /&gt;
 load iar David Hume Folder1/Folder3 password&lt;br /&gt;
&lt;br /&gt;
After a little while he ends up with the folder structure&lt;br /&gt;
&lt;br /&gt;
 My Inventory&lt;br /&gt;
   |&lt;br /&gt;
   +-- Folder1&lt;br /&gt;
         |  &lt;br /&gt;
         +-- Folder2&lt;br /&gt;
         |&lt;br /&gt;
         +-- Folder3 &lt;br /&gt;
               |&lt;br /&gt;
               +-- FolderA&lt;br /&gt;
               |  &lt;br /&gt;
               +-- FolderB&lt;br /&gt;
               |      |&lt;br /&gt;
               |      +-- ItemX&lt;br /&gt;
               |&lt;br /&gt;
               +-- ItemY&lt;br /&gt;
&lt;br /&gt;
where ItemX and ItemY are ready for rezzing.&lt;br /&gt;
&lt;br /&gt;
== IAR files==&lt;br /&gt;
&lt;br /&gt;
[http://justincc.org/downloads/iars/my-great-items.iar http://justincc.org/downloads/iars/my-great-items.iar] - justincc's initial example IAR.&lt;br /&gt;
&lt;br /&gt;
====dmu1.iar====&lt;br /&gt;
 &lt;br /&gt;
[[Image:cadeira1.jpg]][[Image:BandeiraBrasil.jpg]]&lt;br /&gt;
[http://www.dmu.com/iar/dmu1.iar dmu1.iar] - &lt;br /&gt;
You can change the texture of the flag.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
====dmu2.iar====&lt;br /&gt;
 &lt;br /&gt;
[[Image:arvoreDeNatal.jpg]][[Image:Sofa1.jpg]]&lt;br /&gt;
[http://www.dmu.com/iar/dmu2.iar dmu2.iar]  &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
The &amp;quot;dmu&amp;quot; files have objects copied from many places;   authorized to be copied. If you know any copyrighted problem about anyone, let us know.&lt;br /&gt;
&lt;br /&gt;
Please feel free to place links to other IARs here.&lt;br /&gt;
&lt;br /&gt;
==Further Information==&lt;br /&gt;
&lt;br /&gt;
[http://justincc.org/blog/category/iars/ http://justincc.org/blog/category/iars/] - articles by justincc on IARs, including tutorials, background information and possible future developments.&lt;br /&gt;
&lt;br /&gt;
==Use cases==&lt;br /&gt;
&lt;br /&gt;
Possible uses&lt;br /&gt;
&lt;br /&gt;
1.  To distribute content to other OpenSim installations without need to transfer entire regions.  One drawback with IARs for this use case is that creator names are not preserved unless the user has a profile on the target installation.  One workaround is to include a notecard detailing the creator and license conditions of the content.&lt;br /&gt;
&lt;br /&gt;
2.  To backup a user's inventory.  IARs are currently not that great for this.  One can backup an entire inventory by giving a path of &amp;quot;/&amp;quot; to the save iar command.  But a load IAR of the same will mean a duplicate set of root child 'standard' folders (Objects, Textures, Clothing, etc.).  The loaded folders will not have any type icons.&lt;br /&gt;
&lt;br /&gt;
==Current limitations==&lt;br /&gt;
&lt;br /&gt;
* IAR loading and saving is currently done on a single thread.  This may lock up the console for a while with very large IARs.  This should be addressed in the future&lt;br /&gt;
&lt;br /&gt;
* IARs cannot save folders or items that contain a forward slash in their name.  This should be addressed in the future.&lt;br /&gt;
&lt;br /&gt;
* Creator names are not preserved unless the profile exists on the target system.  This problem will probably be addressed in the future.&lt;br /&gt;
&lt;br /&gt;
==File Formats==&lt;br /&gt;
&lt;br /&gt;
[[IAR Format|IAR File Formats]]&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;br /&gt;
&lt;br /&gt;
==Bugs==&lt;br /&gt;
&lt;br /&gt;
Please search the OpenSim Mantis for information on current IAR bugs.&lt;br /&gt;
&lt;br /&gt;
==Current Status==&lt;br /&gt;
&lt;br /&gt;
Operational but experimental.  Bug reports are appreciated and there will almost certainly be quite a few right now.  Suggestions for improvement are also welcome.  The best place for these right now might be [http://justincc.org/blog/2009/09/14/introducing-opensim-inventory-archives-iars/ my blog post on IARs], since I'm bound to see them then.&lt;br /&gt;
&lt;br /&gt;
Though we will strive to maintain compatibilty for old archives with newer OpenSimulator versions, please do not rely on these archives as your only backup for inventory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
[[Category:Support]]&lt;br /&gt;
[[Category:Tech Reference]] &lt;br /&gt;
[[Category:Help]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:Getting_Started]]&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Free_Assets</id>
		<title>Free Assets</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Free_Assets"/>
				<updated>2009-12-08T14:15:12Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: Add forum reference and title&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Users]]&lt;br /&gt;
==Textures==&lt;br /&gt;
* [http://texturebarn.headfirstdm.com/ The Texture Barn]&lt;br /&gt;
* [http://www.tellim.com/texture_cd/ The Blender Texture Disc]&lt;br /&gt;
* [http://textures.z7server.com/save_all_textures.php z7Server texture packages]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;128px&amp;quot; heights=&amp;quot;128px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Smoke.png | Smoke&lt;br /&gt;
Image:Brown_Eye.png | A Brown Eye&lt;br /&gt;
Image:Picketfence.png | A Picket fence.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nebadon's Bush Texture : [http://www.nebadonizumi.com/bushes01.tga Bushes]&lt;br /&gt;
&lt;br /&gt;
Vint Falken's Free Valentine Eyes:&lt;br /&gt;
[http://www.flickr.com/photos/vintfalken/2258351122/ 1]&lt;br /&gt;
[http://www.flickr.com/photos/vintfalken/2258351306/ 2]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
http://www.vintfalken.com/free-full-perm-female-skins-sezmras-splendor/&amp;lt;br&amp;gt;&lt;br /&gt;
http://www.vintfalken.com/free-full-perm-female-skin-textures/&amp;lt;br&amp;gt;&lt;br /&gt;
http://torley.com/torley-textures-available-for-download-in-a-single-zip-pack&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Heightmaps==&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;A Simple Square Island&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Square_island_1x1.png | 1x1 region&lt;br /&gt;
Image:Square_island_2x2.png | 2x2 regions&lt;br /&gt;
Image:Square_island_4x4.png | 4x4 regions&lt;br /&gt;
&amp;lt;/gallery&amp;gt;http://guide.opendns.com/?url=www.nextlife.ca%2Fnuathens.zip&amp;amp;servfail&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;A Complicated Maze&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Maze.png | 1x1 region&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Buildings==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Free OpenSim Buildings&amp;quot; widths=&amp;quot;250px&amp;quot; heights=&amp;quot;188px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Free_OpenSim_Assets_Modern_Building.jpg | [http://integratedtechnologies.eu/sites/default/files/modern_building_oar_tar.gz Download]&lt;br /&gt;
Image:Free_OpenSim_Assets_Cottage.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_house_oar.tar.gz Download]&lt;br /&gt;
Image:Free_OpenSim_Assets_Office.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_office_oar.tar.gz Download]&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Free OpenSim Buildings&amp;quot; widths=&amp;quot;250px&amp;quot; heights=&amp;quot;188px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Free_OpenSim_Assets_Small_Store.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_small_store_oar.tar.gz Download]&lt;br /&gt;
Image:Free_OpenSim_Assets_Medium_Store.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_medium_store_oar.tar.gz Download]&lt;br /&gt;
Image:Free_OpenSim_Assets_Large_Store.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_large_store_oar.tar.gz Download]&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Free OpenSim Buildings&amp;quot; widths=&amp;quot;250px&amp;quot; heights=&amp;quot;188px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
Image:Free_OpenSim_Assets_Fireplace.jpg | [http://integratedtechnologies.eu/sites/default/files/09_11_08_fireplace_oar.tar.gz Download]&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Full Sims==&lt;br /&gt;
'''Nu Athens'''&lt;br /&gt;
&lt;br /&gt;
4 Full Sims with Faux City which was made by Lordfly Digeridoo for a roleplay experiment.&lt;br /&gt;
[http://www.sluniverse.com/php/vb/project-development/16014-nu-athens-interactive-story-opensim-2.html SL Universe posting on Nu Athens]&lt;br /&gt;
&lt;br /&gt;
[http://techwizworld.net/Opensim/nuathens/ Download Nu Athens oar files]&lt;br /&gt;
&lt;br /&gt;
== Opensim Archives - OAR Files ==&lt;br /&gt;
&lt;br /&gt;
===How to load OAR files===&lt;br /&gt;
[[OpenSim Archives|How to load OAR files]]&lt;br /&gt;
&lt;br /&gt;
===OpenVCE 3D Assets OAR===&lt;br /&gt;
&lt;br /&gt;
The [http://openvce.net OpenVCE.net] virtual worlds assets described at http://openvce.net/vwassets provided by Clever Zebra and the OpenVCE.net team at AIAI in the University of Edinburgh are available as an OAR (Opensim Archive) file.&lt;br /&gt;
&lt;br /&gt;
 http://openvce.net/resources/downloads/&lt;br /&gt;
&lt;br /&gt;
Get file &amp;quot;opensim-openvce.oar&amp;quot; from there (right click on the file in the above directory in your browser, and select download is the easiest way to obtain the materials). A &amp;quot;full&amp;quot; set of the buildings with a large 400 seat amphitheatre intended to be placed on the corner of 4 sims is also available via &amp;quot;opensim-openvce-full.oar&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Images of the buildings in place in Opensim are at:&lt;br /&gt;
[http://openvce.net/resources/downloads/opensim-openvce-1.jpg Image 1],&lt;br /&gt;
[http://openvce.net/resources/downloads/opensim-openvce-2.jpg Image 2]&lt;br /&gt;
&lt;br /&gt;
==Skin PSD's==&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Free Skin PSD files&amp;quot; widths=&amp;quot;250px&amp;quot; heights=&amp;quot;188px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Image:Skins.jpg | [http://eloheliot.blogspot.com/2007/12/my-psds-let-me-show-u-them.html Download Page]&lt;br /&gt;
Image:Skin2.jpg | [http://eloheliot.blogspot.com/2007/12/my-psds-let-me-show-u-them.html Download Page]&lt;br /&gt;
Image:Skin3.jpg | [http://eloheliot.blogspot.com/2007/12/my-psds-let-me-show-u-them.html Download Page]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Configuration</id>
		<title>Configuration</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Configuration"/>
				<updated>2009-12-04T07:19:34Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Note About Mono */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Template:Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==OpenSim configuration file==&lt;br /&gt;
The simulator configuration is managed using a file called [[OpenSim.ini]]. This file is used regardless of whether the sim is running in standalone or grid mode. Detailed information on the options available for setttings in this file can be found [[OpenSim.ini|here]].&lt;br /&gt;
Please note, that the name OpenSim.ini can be changed via command line arguments (see above).  Also, note that the default download does not include an OpenSim.ini file, but rather provides an example file.  To get started editing your ini file, please cd into opensim/bin/ and copy OpenSim.ini.example to OpenSim.ini.&lt;br /&gt;
&lt;br /&gt;
It is also possible to distribute the inifile settings over two files. This is useful if you want to run several OpenSim processes where most of your settings are identical but some settings differ.&lt;br /&gt;
The master file is read first, then the inifile is read. Settings given in the inifile overrule settings given in the master file.&lt;br /&gt;
The master file has the same format and the same keywords as the inifile, so the same documentation applies.&lt;br /&gt;
&lt;br /&gt;
==Database==&lt;br /&gt;
Opensim's supports the following database-engines:&lt;br /&gt;
* SQLite (default - a lightweight database that comes bundled with OpenSim and can be used without requiring any extra configuration.  It is mostly intended to get you up and running quickly, not for production use.  A few features here (such as attachment persistence) have not yet been fully implemented.)&lt;br /&gt;
* MySQL (fully supported).  This is the recommended database for any use beyond experimentation or small standalone applications.&lt;br /&gt;
* MSSQL (partially supported - some recent OpenSim features may not yet be implemented)&lt;br /&gt;
&lt;br /&gt;
More information on database support can be found on the [[OpenSim Database support]] page.&lt;br /&gt;
&lt;br /&gt;
==Standalone vs. Grid==&lt;br /&gt;
We recommend that you first get OpenSim running in standalone mode before you attempt to connect it to a grid or run your own grid.  An OpenSim configuration consists of regions (run by region simulators) and 5 core backend services (which manage users, the grid, assets, inventories, and grid-wide messaging, collectively known as UGAIM).&lt;br /&gt;
&lt;br /&gt;
A system running in '''standalone mode''' (that is, one with OpenSim.ini where gridmode = false) runs everything (all UGAIM services and one or more regions) in a single executable (OpenSim.exe).&lt;br /&gt;
&lt;br /&gt;
In '''grid mode''', the five services ([[User Server|User]], [[Grid Server|Grid]], [[Asset Server|Asset]], [[Inventory Server|Inventory]], [[Messaging Server|Messaging]], or UGAIM) are not part of the region server.  Instead, they can be run separately either on the same machine or spread out across multiple computers.  In this mode, the OpenSim.exe acts solely as the region server, serving one or more regions that communicate with the core servers for asset, inventory and other data management.&lt;br /&gt;
&lt;br /&gt;
Naturally, this means that running in grid mode is somewhat more complicated than running in standalone mode.  It requires an understanding of UUID, X,Y location, server handshake passwords, estates and estate owners, and a couple of other settings. These are not difficult, but do require a little more care in setting things up.&lt;br /&gt;
&lt;br /&gt;
If you want to run a grid of your own (either private or public) you would start the core services up before connecting a region simulator.  If you want to connect your region server to a grid that someone else is running, you need only start the region server in grid mode (with the necessary security keys and location information mentioned in the last paragraph).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Standalone mode  ===&lt;br /&gt;
&lt;br /&gt;
When you start OpenSim in standalone mode, it will ask you several questions at the console. The first set of prompts that start with &amp;quot;NETWORK SERVERS INFO&amp;quot;, you can just hit return to accept the defaults if you will be running in standalone mode. The prompts that start with &amp;quot;DEFAULT REGION CONFIG&amp;quot; are where you need to start paying attention. Some are self-explanatory. Here are explanations for the others:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*Grid Location. OpenSim regions can be placed anywhere on a 65536 by 65536 grid. In standalone mode, it is safe to leave these X and Y locations at their defaults for the first region (additional regions will need different coordinates, of course). &lt;br /&gt;
*Filename for local storage. Safe to leave at default. &lt;br /&gt;
*Internal IP address; This should always be 0.0.0.0 (0.0.0.0 means &amp;quot;listen for connections on any interface&amp;quot;, basically a wildcard) if you want to access this server from the internet or another server on your internal network, this should be the IP&amp;amp;nbsp;address assigned to the OpenSim Server. You should also set up the server to Use a Static IP address, and not DHCP &lt;br /&gt;
*Internal IP port for incoming UDP client connection. You can make this any port you want, but it is safe to leave at the default 9000. Each region on your server must have a unique port&amp;lt;br&amp;gt; &lt;br /&gt;
*External host name. If you will only be attaching to your sim from a SecondLife client on the same machine, you can leave this at the default 127.0.0.1. If you will be wanting to connect to it from a client on another machine or the internet, this should be the External IP Address of your router, not the Domain Name. (Hmm - Tried hostname (the one resolved by dns) and it worked out oke.) &lt;br /&gt;
*Be aware of [http://osgrid.org/forums/viewtopic.php?f=5&amp;amp;t=400&amp;amp;start=0&amp;amp;st=0&amp;amp;sk=t&amp;amp;sd=a loopback] problems when Running viewer &amp;amp;amp; server(s) on the same machine (LAN) by using the &amp;quot;external&amp;quot; configuration. (&amp;lt;u&amp;gt;'''You might notice endless waiting for region handshake'''&amp;lt;/u&amp;gt;.) See also [http://opensimulator.org/wiki/Troubleshooting troubleshoot hints] &lt;br /&gt;
*If your having Connectivity problems. [http://opensimulator.org/wiki/Network_Settings Be sure to read the Network Configuration Page]. This is important if you see Region handshake issues.&lt;br /&gt;
&lt;br /&gt;
To connect to your new sim, start up secondlife with the following command line switches: &lt;br /&gt;
&lt;br /&gt;
 '''Client on same machine as OpenSim:''' -loginuri http://127.0.0.1:9000/ -loginpage http://127.0.0.1:9000/?method=login &lt;br /&gt;
 &lt;br /&gt;
 Client on different machine or internet:''' -loginuri http://external_ip:9000/ -loginpage http://external_ip:9000/?method=login'''&lt;br /&gt;
&lt;br /&gt;
To create a user: &lt;br /&gt;
&lt;br /&gt;
type create user &amp;amp;lt;first&amp;amp;gt; &amp;amp;lt;last&amp;amp;gt; &amp;amp;lt;password&amp;amp;gt; &amp;amp;lt;x_loc&amp;amp;gt; &amp;amp;lt;y_loc&amp;amp;gt; in the server console.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Grid mode  ===&lt;br /&gt;
&lt;br /&gt;
You want to run your own grid. Great! Assuming that you already got your sim running in standalone mode, here is what you need to do:&amp;lt;br&amp;gt;1. Current builds of OpenSim grid mode are using mysql to store the grid information. You must have this installed and configured if you want to run your own grid. See [[Mysql-config]] for more information.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   [[Image:Exclamation.png|left]]&lt;br /&gt;
 NOTE: The grid servers are in the process of being redesigned. Therefore, there is a &amp;quot;legacy&amp;quot; way&lt;br /&gt;
 and a new way of starting things. The most up to date information can be found in the configuration&lt;br /&gt;
 file examples in your OpenSim kit.&lt;br /&gt;
 &lt;br /&gt;
 The new system consists of services and connectors that are run in a server shell (Basic Universal&lt;br /&gt;
 Server Technology, R.O.B.U.S.T.)&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
For information on running the legacy servers, see [[LegacyServers]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;'''More Details on ROBUST are Here --&amp;amp;gt;'''&amp;lt;/u&amp;gt;[[ROBUST|&amp;lt;u&amp;gt;'''ROBUST'''&amp;lt;/u&amp;gt;]]&amp;lt;u&amp;gt;'''&amp;amp;nbsp;&amp;amp;lt;--&amp;amp;nbsp; including Conversion From UGAIM To UGRM'''&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Starting the grid services===&lt;br /&gt;
As of OpenSim 0.6.7, R.O.B.U.S.T. has connectors for the asset and inventory functionality. Therefore, some of the legacy servers are still required to run. Following the steps below will get you up and running in no time!&lt;br /&gt;
&lt;br /&gt;
* Configure the user server&lt;br /&gt;
::Start OpenSim.Grid.UserServer.exe&lt;br /&gt;
::You will be asked a number of configuration questions. If the grid servers are all on one machine, most defaults are safe to use, just press enter for all questions except fot the defult inventory server. The default inventory server needs to be given as http://127.0.0.1:8003, because R.O.B.U.S.T uses only one port.&lt;br /&gt;
::The user server will then load and display it's prompt:&lt;br /&gt;
 User#&lt;br /&gt;
* Configure the grid server&lt;br /&gt;
::Start OpenSim.Grid.GridServer.exe&lt;br /&gt;
::Again, you will be asked a few questions and it's safe to accept the defaults if all servers are run on one machine. You will then see the grid server prompt:&lt;br /&gt;
 Grid#&lt;br /&gt;
* Configure R.O.B.U.S.T.&lt;br /&gt;
::Copy OpenSim.Server.ini.example to OpenSim.Server.ini&lt;br /&gt;
::(on version 0.6.6 copy OpenSim.Services.ini.example to OpenSim.Services.ini - then use OpenSim.Services instead OpenSim.Server)&lt;br /&gt;
::Don't forget change ConnectionString accordingly your database settings.&lt;br /&gt;
Linux&lt;br /&gt;
 bin$ cp OpenSim.Server.ini.example OpenSim.Server.ini&lt;br /&gt;
Windows&lt;br /&gt;
 C:\OpenSim\bin&amp;gt; copy OpenSim.Server.ini.example OpenSim.Server.ini&lt;br /&gt;
For more information on the R.O.B.U.S.T. configuration file and more information if you are migrating from an earlier release of OpenSim, refer to [[R.O.B.U.S.T.]]&lt;br /&gt;
 &lt;br /&gt;
::Start OpenSim.Server.exe&lt;br /&gt;
The server will start up it's asset and inventory components and display the R.O.B.U.S.T prompt:&lt;br /&gt;
 R.O.B.U.S.T.#&lt;br /&gt;
* Configure the message server&lt;br /&gt;
::Start OpenSim.Grid.MessagingServer.exe&lt;br /&gt;
::Answer the configuration questions. Again, if all servers are run on the same machine, it's safe to press enter for all questions&lt;br /&gt;
::The server will start and present you with it's prompt:&lt;br /&gt;
 Messaging#&lt;br /&gt;
&lt;br /&gt;
==Configuring regions==&lt;br /&gt;
&lt;br /&gt;
When first run, a new OpenSim installation will ask you a series of questions to set up one region.  If you want to change these settings or set up multiple regions, please see [[Configuring_Regions]]&lt;br /&gt;
&lt;br /&gt;
==Starting the regions==&lt;br /&gt;
When using R.O.B.U.S.T., a setting that was not needed in standalone mode needs to be changed from it's default.&lt;br /&gt;
Open OpenSim.ini and find the section titled [Network]. Change the inventory_server_url to read http://127.0.0.1:8003.&lt;br /&gt;
 [Network]&lt;br /&gt;
 inventory_server_url = &amp;quot;http://127.0.0.1:8003&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Next, find the [Architecture] section, comment out the line that says &lt;br /&gt;
 Include-Standalone    = &amp;quot;config-include/Standalone.ini&amp;quot;&lt;br /&gt;
and uncomment the line saying &lt;br /&gt;
 Include-Grid         = &amp;quot;config-include/Grid.ini&lt;br /&gt;
&lt;br /&gt;
save OpenSim.ini, and go into the config-include directory.&lt;br /&gt;
copy the following files &lt;br /&gt;
 GridCommon.ini.example to GridCommon.ini&lt;br /&gt;
 CenomeCache.ini.example to CenomeCache.ini&lt;br /&gt;
 FlotsamCache.ini.example to FlotsamCache.ini&lt;br /&gt;
&lt;br /&gt;
Open all these files (Grid.ini, GridCommon.ini, CenomeCache.ini and FlotsamCache.ini) and edit to suit your needs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should now be ready to start up your sim. The mode that OpenSim.exe starts in is normally controlled by a setting in your OpenSim.ini.  It defaults to standalone mode if that setting is not specified or the file is not found.  If you wish, you can force opensim to start in gridmode on the command line as follows:&lt;br /&gt;
 OpenSim.exe -gridmode=true&lt;br /&gt;
or:&lt;br /&gt;
 mono OpenSim.exe -gridmode=true&lt;br /&gt;
With any luck, everything will come up without too many errors.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have problems using the OpenDynamicsEngine on *nix, try setting your stack reserve level higher than the default with the following command;&lt;br /&gt;
&amp;lt;tt&amp;gt;ulimit -s 262144&amp;lt;/tt&amp;gt; Or, run the opensim-ode.sh to start up OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
Go to the UserServer console, and type 'create user' to create a new avatar. It will prompt you for the name and password, and the X and Y of the sim that should be his home location. Use 1000 and 1000, or wherever you told your sim to live when you brought it up in standalone mode. At the console of any of these servers, you should be able to type 'help' to get a list of commands.&lt;br /&gt;
&lt;br /&gt;
You should now be able to connect to your new grid with your secondlife client. You need to tell your client to point at the UserServer rather than directly at the sim, though:&lt;br /&gt;
 secondlife -loginuri http://127.0.0.1:8002/&lt;br /&gt;
8002 is the default port for the UserServer, and that IP address should be changed to the server you are running the UserServer on, if they are not all on the same box.  Happy OpenSimming!&amp;lt;br&amp;gt;&lt;br /&gt;
''Note: if you are using Windows Vista, remember to start servers as Admin. If not it will prompt you an error in console like &amp;quot;Error - Access denied&amp;quot;''&lt;br /&gt;
&lt;br /&gt;
==Attaching your sim to someone else's grid==&lt;br /&gt;
To set up the region server (i.e., &amp;lt;tt&amp;gt;OpenSim.exe&amp;lt;/tt&amp;gt;) to connect to an external grid, you should edit the &amp;lt;tt&amp;gt;OpenSim.ini&amp;lt;/tt&amp;gt; file in the &amp;lt;tt&amp;gt;bin&amp;lt;/tt&amp;gt; directory.  In that file, there is a &amp;lt;tt&amp;gt;[Network]&amp;lt;/tt&amp;gt; section with URLs for the grid, user, and asset servers, as well as send and receive keys (for a basic level of security).  The addresses and send/receive keys will vary depending on the grid you are connecting to, and the grid operator should tell you what values to use.&lt;br /&gt;
&lt;br /&gt;
The other file you may have to change is in your &amp;lt;tt&amp;gt;bin/Regions&amp;lt;/tt&amp;gt; directory. This is where your individual region config files are. If you only have one region, it will by default be called &amp;lt;tt&amp;gt;Regions.ini&amp;lt;/tt&amp;gt; in OpenSim 0.6.7 and later and &amp;lt;tt&amp;gt;regions.xml&amp;lt;/tt&amp;gt; in OpenSim 0.6.6 and earlier.&lt;br /&gt;
&lt;br /&gt;
This can be edited with any text editor. The grid owner may tell you what X and Y location you can place your sim at (you can't have multiple sims at the same location on the grid). If so, the fields you will need to change in this file are &amp;lt;tt&amp;gt;sim_location_x&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;sim_location_y&amp;lt;/tt&amp;gt;.  And the &amp;lt;tt&amp;gt;external_host_name&amp;lt;/tt&amp;gt; should be set to the hostname or IP address of your simulation server (i.e., the machine that is running &amp;lt;tt&amp;gt;OpenSim.exe&amp;lt;/tt&amp;gt;).&lt;br /&gt;
A list of public grids that you can attach your sim to is at [[OpenSim: Grids]]&lt;br /&gt;
&lt;br /&gt;
==Running==&lt;br /&gt;
&lt;br /&gt;
===Running OpenSim 0.6.7 and onwards in 64 bit Windows===&lt;br /&gt;
[[Image:Exclamation.png|left]]&lt;br /&gt;
As of OpenSim 0.6.7, the default physics engine for OpenSim was changed to the ODE engine.  This is because ODE is by far the most advanced physics engine plugin currently in OpenSim.  Unfortunately, it has the drawback in that it's library is not compilable under 64bit in Windows.  Therefore, 64 bit Windows users may need to run &lt;br /&gt;
&lt;br /&gt;
 OpenSim.32BitLaunch.exe&lt;br /&gt;
&lt;br /&gt;
instead of &lt;br /&gt;
&lt;br /&gt;
 OpenSim.exe&lt;br /&gt;
&lt;br /&gt;
To launch their region simulator.&lt;br /&gt;
&lt;br /&gt;
An alternative is to use the basicphysics engine instead or one of the other alternative physics engines bundled with OpenSim, though all these are far less functional than the ODE plugin.&lt;br /&gt;
&lt;br /&gt;
===StandAlone===&lt;br /&gt;
'''&amp;lt;u&amp;gt;Windows&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 OpenSim.exe (or OpenSim.32BitLaunch.exe if using the ODE physics engine under 64 bit Windows)&lt;br /&gt;
On Windows Vista, it may be necessary to explicitly &amp;quot;Run as administrator&amp;quot; for opensim.exe to accept connections from a client, even when running as an administrator user. Navigate to the opensim\bin directory, right click opensim.exe, and select &amp;quot;Run as administrator&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Linux / Mac OS X&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 mono OpenSim.exe&lt;br /&gt;
&lt;br /&gt;
===Local Grid===&lt;br /&gt;
====OpenSim 0.6.7====&lt;br /&gt;
'''&amp;lt;u&amp;gt;Windows&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 OpenSim.Grid.UserServer.exe&lt;br /&gt;
 OpenSim.Grid.GridServer.exe&lt;br /&gt;
 OpenSim.Server.exe&lt;br /&gt;
 OpenSim.Grid.MessagingServer.exe&lt;br /&gt;
 OpenSim.exe (or OpenSim.32BitLaunch.exe if using the ODE physics engine under 64 bit Windows)&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Linux / Mac OS X&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 mono OpenSim.Grid.UserServer.exe&lt;br /&gt;
 mono OpenSim.Grid.GridServer.exe&lt;br /&gt;
 mono OpenSim.Server.exe&lt;br /&gt;
 mono OpenSim.Grid.MessagingServer.exe&lt;br /&gt;
 mono OpenSim.exe&lt;br /&gt;
&lt;br /&gt;
====OpenSim 0.6.6 and earlier====&lt;br /&gt;
'''&amp;lt;u&amp;gt;Windows&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 OpenSim.Grid.UserServer.exe&lt;br /&gt;
 OpenSim.Grid.GridServer.exe&lt;br /&gt;
 OpenSim.Grid.AssetServer.exe&lt;br /&gt;
 OpenSim.Grid.InventoryServer.exe&lt;br /&gt;
 OpenSim.Grid.MessagingServer.exe&lt;br /&gt;
 OpenSim.exe (or OpenSim.32BitLaunch.exe if using the ODE physics engine under 64 bit Windows)&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Linux / Mac OS X&amp;lt;/u&amp;gt;'''&lt;br /&gt;
 cd bin&lt;br /&gt;
 mono OpenSim.Grid.UserServer.exe&lt;br /&gt;
 mono OpenSim.Grid.GridServer.exe&lt;br /&gt;
 mono OpenSim.Grid.AssetServer.exe&lt;br /&gt;
 mono OpenSim.Grid.InventoryServer.exe&lt;br /&gt;
 mono OpenSim.Grid.MessagingServer.exe&lt;br /&gt;
 mono OpenSim.exe&lt;br /&gt;
&lt;br /&gt;
===Note About Mono===&lt;br /&gt;
If you're using mono, you should increase the value of the mono environment variable MONO_THREADS_PER_CPU from its default of 5 to some number that works for your sim. The exact number depends on many factors including: the number of CPUs in your machine, what else you use that machine for, how many regions you have in your sim, how many of them are adjacent, how many scripts you have, and how many avatars you expect to serve at the same time. As a reference, Wright Plaza in OSGrid, which is running as a single region on a sim and routinely hosts meetings with 20 avatars, uses the value 125. &lt;br /&gt;
&lt;br /&gt;
If this number is too low, the operation of your sim will start to break in all sorts of different ways. A common symptom is the freezing of all activity upon login of a new avatar. Other symptoms are a lot more subtle.&lt;br /&gt;
&lt;br /&gt;
For example: $ export MONO_THREADS_PER_CPU=125&lt;br /&gt;
&lt;br /&gt;
== Legacy Configuration Information ==&lt;br /&gt;
These are some pages containing some legacy configuration information of unknown accuracy.&lt;br /&gt;
&lt;br /&gt;
[[OpenSim 0.6.6 legacy configuration information]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Additional Configuration Tasks (for advanced users) ==&lt;br /&gt;
&lt;br /&gt;
===OpenSim.exe command line options===&lt;br /&gt;
OpenSim.exe has command line options which allow you to perform actions such as reading configuratio nfiles from a different directory.  See [[OpenSim.exe Command Line Options]] for more details.&lt;br /&gt;
&lt;br /&gt;
===Script engine===&lt;br /&gt;
OpenSim supports multiple script engines. See [[ScriptEngines]] for details.  If you don't know what this means then the default script engine will be fine.&lt;br /&gt;
&lt;br /&gt;
===Permissions Configuration===&lt;br /&gt;
OpenSim has a quite elaborate set of permissions. See [[OpenSim:Permissions(Server)]] for details.  By default, permissions are not active on region simulators.&lt;br /&gt;
&lt;br /&gt;
=== Logging ===&lt;br /&gt;
By default, OpenSim logs information to a file called OpenSim.log in the bin directory.  See [[Logging]] for details on how to further configure this if required.&lt;br /&gt;
&lt;br /&gt;
=== Configuration of region modules ===&lt;br /&gt;
* [[IRCBridgeModule]]&lt;br /&gt;
* [[Freeswitch_Module]]&lt;br /&gt;
* [[Offline Messaging]]&lt;br /&gt;
&lt;br /&gt;
=== Configuration of Metaverse Exchange Protocol (MXP) ===&lt;br /&gt;
* [[Metaverse Exchange Protocol]]&lt;br /&gt;
&lt;br /&gt;
=== Configuration of Web Server and Pages===&lt;br /&gt;
OpenSim contains a web server that can serve up a variety of pages.  Some which come from external files and some are generated internally.&lt;br /&gt;
* [[External Files]]&lt;br /&gt;
* [[Internally Generated]]&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/FAQ</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/FAQ"/>
				<updated>2009-11-10T15:12:29Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* How do I isolate and delete a user's Trash items in a MySQL grid database? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
==About OpenSim==&lt;br /&gt;
===What is OpenSim?===&lt;br /&gt;
OpenSim is a platform for operating a virtual world, and supports multiple independent regions connecting to a single centralized grid.  This is somewhat similar to the web, where anyone can run their own web server, tied together through the internet.  It can also be used to create a private grid, analogous to a private intranet.&lt;br /&gt;
&lt;br /&gt;
===What is a region?===&lt;br /&gt;
A region is what you see when you log into OpenSim.  It is the physical place (well, virtual physical space) where avatars move and interact.  It is a square patch of land which may contain an island, mountains, a plain, buildings, etc., or just an ocean.&lt;br /&gt;
&lt;br /&gt;
===What is the grid?===&lt;br /&gt;
The grid is the level that organizes the regions and their positions in the world, and handles things that need to exist across regions, such as a user's inventory.  You can think of it as similar to the world map.&lt;br /&gt;
&lt;br /&gt;
===What does ... mean?===&lt;br /&gt;
See [[Technical_Reference | OpenSim:Technical Reference]] for definitions of some terms commonly used in OpenSim.&lt;br /&gt;
&lt;br /&gt;
==Configuring OpenSim==&lt;br /&gt;
First, read [[OpenSim Configuration]].&lt;br /&gt;
===Where can I get a new UUID for my sim config?===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
===Can I run multiple regions with OpenSim?===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
===What databases can be used with OpenSim?===&lt;br /&gt;
* See [[OpenSim Configuration]]&lt;br /&gt;
&lt;br /&gt;
==Running OpenSim==&lt;br /&gt;
&lt;br /&gt;
===I get a bunch of ERROR: There was an error while scanning assembly:... &amp;lt;br&amp;gt;&lt;br /&gt;
errors on startup, but OpenSim appears to run normally.  Is this a problem?===&lt;br /&gt;
No.  These errors are being put out by the third party plugin scanning code.  As we have it scanning the entire bin/ directory, it picks up dlls which don't have the correct information to be scanned, and so puts out this error.  Don't worry about it :)&lt;br /&gt;
&lt;br /&gt;
For the record, the current set of errors are&lt;br /&gt;
&lt;br /&gt;
ERROR: There was an error while scanning assembly: /home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/PhysX-wrapper.dll (Could not load file or assembly '/home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/PhysX-wrapper.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.)&lt;br /&gt;
&lt;br /&gt;
ERROR: There was an error while scanning assembly: /home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/ode-debug.dll (Could not load file or assembly '/home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/ode-debug.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.)&lt;br /&gt;
&lt;br /&gt;
ERROR: There was an error while scanning assembly: /home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/ode.dll (Could not load file or assembly '/home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/ode.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.)&lt;br /&gt;
&lt;br /&gt;
ERROR: There was an error while scanning assembly: /home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/openjpeg-libsl.dll (Could not load file or assembly '/home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/openjpeg-libsl.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.)&lt;br /&gt;
&lt;br /&gt;
ERROR: There was an error while scanning assembly: /home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/sqlite3.dll (Could not load file or assembly '/home/caseyj/jc/it/v/virtual-worlds/second-life/servers/opensim/src/opensim-svn-minim/bin/sqlite3.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.)&lt;br /&gt;
&lt;br /&gt;
===Errors about modules not found and RegionBanListItem could not be loaded===&lt;br /&gt;
&lt;br /&gt;
This is caused if you upgrade from trunk through svn and copy new files in the same directory.&lt;br /&gt;
To solve these errors during the startup of opensim.exe remove the following files from your bin folder:&lt;br /&gt;
&lt;br /&gt;
OpenSIm.DataStore.MSSQL.dll&lt;br /&gt;
&lt;br /&gt;
OpenSIm.DataStore.MSSQL.dll.mdm&lt;br /&gt;
&lt;br /&gt;
==OpenSim in the Wild==&lt;br /&gt;
===Are there test servers running OpenSim I can connect to?===&lt;br /&gt;
Yes.  Check out our [[Grid List]]! There are often many private servers up for testing. Hang out on the IRC channel (Freenode #opensim), and troll for URI's.&lt;br /&gt;
=== Can I teleport from the Linden Lab Second Life grid to my Sim? (updated!)===&lt;br /&gt;
Yes and No, Since the new public beta, launched on july 31th 2008 by Linden Lab, it is now possible to connect opensim servers/regions with the Second life grid, however this is not intended for regular users. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt; currently it &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;ONLY&amp;lt;/font&amp;gt; works with the preview/beta grid of second life, not the main grid.)&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
It's in an early development stage and thus geared towards developers of virtual world/techniques, and is all but easy to setup. &amp;lt;br&amp;gt;Furthermore, when an avatar is hopping from an SL region to an Opensim region, the avatar will be &amp;quot;ruthed&amp;quot;, meaning it will be the default Secondlife avatar. &amp;lt;br&amp;gt;NO assets (incl, shapes, skins, clothing etc) are tranfered during teleport, hence you wont have access to them, on the other grid. The beta test, is currently focussing on Teleportation between grids mainly. In the future, it should be possible to teleport WITH asset tranfers. But that wont be happening any time soon. &amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;If you want to try it out, read this page for more info on how to get started (with all the risks involved, don't say i didn't warn you):&amp;lt;br&amp;gt;[http://blog.secondlife.com/2008/07/31/open-grid-public-beta-begins-today/ http://blog.secondlife.com/2008/07/31/open-grid-public-beta-begins-today/]&amp;lt;Br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For normal operation, stick to the regular versions of opensim.&lt;br /&gt;
&lt;br /&gt;
==MySQL==&lt;br /&gt;
===How do I isolate and delete a user's Trash items in a MySQL grid database?===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt; BACK UP YOUR DATABASE!&lt;br /&gt;
&lt;br /&gt;
CAUTION: The Linux default directory for the MySQL database is /var/lib/mysql Many backup tools (e.g. backupPC) do NOT back up /var/*! Make certain that the database and not just the MySQL code (/usr/bin/mysql) is included in your nightly backups! The actual paths will be different for different operating systems and databases, but the problem is the same.&lt;br /&gt;
&lt;br /&gt;
'''1.''' Locate the avatars UUID you wish to find the trash items of, in the '''users''' table&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate a specified users UUID: (replace User/Test with username/lastname)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `UUID` FROM `users` WHERE `username` LIKE 'User' AND `lastname` LIKE 'Test' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''2.''' Use the avatars UUID to search the field_name '''AgentID''' in the '''inventoryFolders''' table, using '''Trash''' as the '''folderName''' to isolate the users Trash '''folderID'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate the users Trash folder entry: (replace 00000000-0000-0000-0000-000000000000 with UUID of user)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `folderID` FROM `inventoryfolders` WHERE `agentID` LIKE '00000000-0000-0000-0000-000000000000' AND `folderName` LIKE 'Trash'&lt;br /&gt;
LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''3.''' Use the '''folderID''' UUID obtained in the last query to find all of the trash items in the '''inventoryitems''' table, you can then delete them once you have isolated them.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will locate the trash items of the avatar in question: (replace 00000000-0000-0000-0000-000000000000 with Trash folder UUID obtained in the last query)&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT * FROM `inventoryitems` WHERE `parentFolderID` LIKE '00000000-0000-0000-0000-000000000000' LIMIT 0 , 9999;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt;''' These steps will not remove the associated assets from the assets table, just the items in the inventory '''inventoryitems''' table.&lt;br /&gt;
&lt;br /&gt;
===How do I isolate and resolve duplicate inventory folder entries in a MySQL grid database?===&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NOTE:&amp;lt;/font&amp;gt; BACK UP YOUR DATABASE!&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''1.''' It's first a good idea to search for the affected avatars UUID in the '''inventoryFolders''' table to see the duplicate entries. When you see this, you'll see the problem of duplicate entries. The key here will be to find out which is being used.&amp;lt;br /&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
'''2.''' Upload a file inworld and name it something unique. This will isolate the UUID of your root folder that is being used (even though there are dups only one is being used)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''3.''' Search the '''inventoryitems''' table for your uniquely named item and locate it's '''parentFolderID''' &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will isolate the '''parentFolderID''' based on your search for the unique item (replace '''unique_name''' with your unique item name)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT `parentFolderID` FROM `inventoryitems` WHERE `inventoryName` LIKE 'unique_name' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''4.''' Check the '''inventoryfolders''' table against the '''parentFolderID''' UUID obtained in the last search. That is your root folder that is being used.. you can delete all duplicate entries that do not match that parentFolderID. In the end, you should only have one of each type (Trash, etc)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font size=&amp;quot;0.9em&amp;quot;&amp;gt;This query will return all values that are NOT the parentID obtained in the last search. (replace 00000000-0000-0000-0000-000000000000 with the parentID located in step 3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;SELECT * FROM `inventoryfolders` WHERE `folderID` NOT LIKE '00000000-0000-0000-0000-000000000000' LIMIT 0 , 30;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==In World Questions==&lt;br /&gt;
=== Does in world scripting work yet? ===&lt;br /&gt;
Not fully implemented, but there is a lot of work going on here.  Please see [[ScriptEngines]], [[LSL Status]] and [[OSSL Status]] for the latest info.&lt;br /&gt;
&lt;br /&gt;
===Why do I walk through objects?===&lt;br /&gt;
Basicphysics doesn't support collisions between objects (just between you and the ground).  There is active work on other [[PhysicsEngines | physics engines]] for OpenSim, the one that does most of the job and is most stable is the ODE (Open Dynamics Engine), which can be configured for use in OpenSim.ini.&lt;br /&gt;
&lt;br /&gt;
===Can I customize my avatar?===&lt;br /&gt;
Yes.  In order to do this:&lt;br /&gt;
* Click the Inventory Button&lt;br /&gt;
* Create -&amp;gt; New Clothes -&amp;gt; Shirt, Pants, etc&lt;br /&gt;
* Create -&amp;gt; New Body Parts -&amp;gt; Hair, Shape, etc&lt;br /&gt;
* Edit those from your inventory&lt;br /&gt;
* Wear them&lt;br /&gt;
&lt;br /&gt;
Your avatar doesn't always face a nice direction for doing this, so you'll need to use the camera operations to see your face for some of the modifications.  This is a known issue, will be fixed in the future. Also, you'll need to rewear you parts once you first join the environment.  Right now default appearance is always &amp;quot;Ruth&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Why do I look like I gas cloud right after I did the the previous steps?===&lt;br /&gt;
Second Life eliminated Ruth from their client. The Ruth we see in OpenSim is our own attempt of a yoga teacher and not truly Second Life's Ruth. When you create a shirt, pants, skin and shape and wear them without changing any parameters, the Second Life Viewer understands you are not Ruth. Since Ruth is no more, you become a cloud of gas. To fix it, either change a parameter of one of them before wearing all 4, or, if you already are a gas cloud, right click one of these items in your inventory and click edit. That should bring up the edit appearance menus. Just move any sliders and voilá.&lt;br /&gt;
&lt;br /&gt;
===Why don't my terrain settings and prims stay through restarts?===&lt;br /&gt;
You haven't set it up to use a database.  See [[OpenSim_Database_support|OpenSim Database support]] for info on how to set it up to use a database. (SqLite is the easiest of these to set up and should probably be used by anyone unfamiliar with any of the options).&lt;br /&gt;
&lt;br /&gt;
===I used XEngine, but my recent update caused DotNetEngine to come on again===&lt;br /&gt;
There were some changes and you will need to change or create the line DefaultScriptEngine = &amp;quot;XEngine&amp;quot; in the startup section to get XEngine back. See [[ScriptEngines]]&lt;br /&gt;
&lt;br /&gt;
===Why doesn't my world map update when I edit the terrain?===&lt;br /&gt;
There are three approaches depending on just how adventurous you want to be.  From the least to the most adventurous:&lt;br /&gt;
* Wait two days.  You will need to restart your sim at the end of the two days to get the updates.&lt;br /&gt;
* Exit the .xml file for the region.  Change the value in the &amp;quot;lastmap_refresh&amp;quot; attribute to &amp;quot;0&amp;quot;.  You will need to restart the sim.&lt;br /&gt;
* Not for the faint of heart!  Edit the &amp;quot;WorldMapModule.cs&amp;quot; file and change the &amp;quot;LazySaveGeneratedMaptile&amp;quot; method to change the &amp;quot;RefreshSeconds&amp;quot; value to something less than two days.  Be sure to read the comments and understand why things are the way they are.&lt;br /&gt;
&lt;br /&gt;
Once your terrain stabilizes, this won't be much of a problem, but it is nice to see the updates while you're furiously developing something.&lt;br /&gt;
&lt;br /&gt;
===Why are my knees bent when I stand idle?===&lt;br /&gt;
This seems to be a result of the ODE Physics Engine on 64 bit systems.  A fix is to edit OpenSim.ini and change the following line:&lt;br /&gt;
* av_capsule_standup_tensor_linux = 550000&lt;br /&gt;
to&lt;br /&gt;
* av_capsule_standup_tensor_linux = 1700000&lt;br /&gt;
&lt;br /&gt;
Note that this line of code is under the [ODEPhysicsSettings] section of the OpenSim.ini file.&lt;br /&gt;
&lt;br /&gt;
==Grid Mode==&lt;br /&gt;
=== After the shiny new grid is running, what is next? ===&lt;br /&gt;
* Make sure one can stop/restart UGA &amp;amp;S (sims). Check out any ordering issues of stop/restart UGA w/o stop/restart sim(s).&lt;br /&gt;
* Make sure one can add/delete both a region and a user from the database.&lt;br /&gt;
* Make sure it runs overnight and check it each morning by logging into 1 or 2 key sims.&lt;br /&gt;
* '&amp;lt;tt&amp;gt;tail -f userserver.log&amp;lt;/tt&amp;gt;' and watch/understand the login process.&lt;br /&gt;
* Make sure when you logoff your system, you can log back on and get control of the UGAS consoles.&lt;br /&gt;
&lt;br /&gt;
==Region Statistics on a Web Page==&lt;br /&gt;
===Information about your regions.===&lt;br /&gt;
Region statistics such as region name, avatar name, avatar position&amp;lt;x,y,z&amp;gt;, number of prims, and a lot of other information can be obtained on a web page by:&lt;br /&gt;
* Adding the following to the bottom of the [[Technical Reference/terms/OpenSim.ini | OpenSim.ini ]] file&lt;br /&gt;
  [WebStats]&lt;br /&gt;
  enabled=true&lt;br /&gt;
* Using a web browser and typing in the &amp;quot;Login URI&amp;quot; + &amp;quot;/SStats/&amp;quot; of your standalone server.  &lt;br /&gt;
  For example- &amp;lt;nowiki&amp;gt;http://127.0.0.1:9000/SStats/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
The resulting web page is continually updated using AJAX, so there is no need to refresh the page to obtain current information. One possible use for this web page information would be to see who is logged on to the region in real time - without actually logging in.&amp;lt;br&amp;gt;&lt;br /&gt;
This web page provides region information similar to the kind generated by using various server console commands to obtain region statistics. See [[Technical_Reference/Server_Commands | Server_Commands]]&lt;br /&gt;
&lt;br /&gt;
== Misc ==&lt;br /&gt;
=== You guys like April 1st, eh?  Looks like the joke is on us... ===&lt;br /&gt;
Yes, every year we've had a piece of non destructive code in the unstable, unreleased, upstream subversion tree.  The source tree that is only designed for testers and developers.  In each case it has shown something that is possible in OpenSim that most people might not have realized.  In 2008 this was an avatar created entirely from a Region Module (no user), in 2009 it was making all users a giant (and I mean giant) stick bug avatar.  There will be more in the future, don't worry.  The developers seem to have a sense of humor.&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Download</id>
		<title>Download</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Download"/>
				<updated>2009-10-15T03:05:55Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Installers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
=Source code=&lt;br /&gt;
Here are the current released versions of OpenSim.  &lt;br /&gt;
&lt;br /&gt;
Please see [[Branches]] for more information on the repository branches and what they are for.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=red&amp;gt;'''Please note:'''&amp;lt;/font&amp;gt; As OpenSim is still at an alpha code maturity stage, there is absolutely no guarantee that functionality works or is stable, even in the numbered releases.  Certain features may not work either because the code is in rapid evolution, or because functionality expected by the Linden Labs Second Life viewer has simply not been implemented yet.  However, constructive feedback is still welcomed.&lt;br /&gt;
&lt;br /&gt;
Also, please be aware that OpenSim requires that you have a fair amount of technical knowledge in order to set it up.&lt;br /&gt;
&lt;br /&gt;
The latest source releases are always hosted at http://dist.opensimulator.org, the current latest releases is '''0.6.7''' and provided as:&lt;br /&gt;
* http://dist.opensimulator.org/opensim-0.6.7-release.tar.gz - best for Linux systems&lt;br /&gt;
* http://dist.opensimulator.org/opensim-0.6.7-release.zip - best for Windows systems&lt;br /&gt;
&lt;br /&gt;
The only difference between the two is the archive format, the source is exactly the same.&lt;br /&gt;
&lt;br /&gt;
== Release Code via Git ==&lt;br /&gt;
&lt;br /&gt;
Instead of using a source archive release, you can pull specific releases from our git repository.  For more information on installing and using Git, please see [[Using_Git]].&lt;br /&gt;
&lt;br /&gt;
In each case you'll want to start with a clone:&lt;br /&gt;
&lt;br /&gt;
 git clone git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
Then all other commands are run from inside the checked out directory.&lt;br /&gt;
&lt;br /&gt;
* '''0.6.7 Alpha with post-release fixes''' (preferred)&lt;br /&gt;
 git checkout -b 0.6.7-post-fixes origin/0.6.7-post-fixes&lt;br /&gt;
&lt;br /&gt;
* '''0.6.7 Alpha release tag''' &lt;br /&gt;
 git checkout 0.6.7-release&lt;br /&gt;
&lt;br /&gt;
== Release notes ==&lt;br /&gt;
&lt;br /&gt;
These are extracted from the subversion history log and correlated with the tagged releases.  It should provide some idea of the changes between each tagged version.  How ever, since the tagged releases are moved out of the trunk, the versions aren't an exact correlation.  Please read and understand [[Release Cycle]] and [[On revisions, tags and branches]] before using this information.&lt;br /&gt;
* [[Recent]] (since last tagged version)&lt;br /&gt;
* [[0.6.6-release]] (SVN version 9961)&lt;br /&gt;
* [[0.6.5-release]] (SVN version 9667)&lt;br /&gt;
* [[0.6.4.1-release]] (SVN version 9009)&lt;br /&gt;
* [[0.6.4-release]] (SVN version 8960)&lt;br /&gt;
* [[0.6.3-release]] (SVN version 8506)&lt;br /&gt;
* [[0.6.2-release]] (SVN version 8068)&lt;br /&gt;
* [[0.6.1-release]] (SVN version 7880)&lt;br /&gt;
* [[0.6.0-release]] (SVN version 7176)&lt;br /&gt;
* [[0.5.11-release]] (SVN version 6676)&lt;br /&gt;
* [[0.5.10-release]] (SVN version 6422)&lt;br /&gt;
* [[0.5.9-release]] (SVN version 5970)&lt;br /&gt;
* [[0.5.8-release]] (SVN version 5111)&lt;br /&gt;
* [[0.5.7-release]] (SVN version 4818)&lt;br /&gt;
* [[0.5.6-release]] (SVN version 4488)&lt;br /&gt;
* [[0.5.5-release]] (SVN version 4239)&lt;br /&gt;
* [[0.5.4-release]] (SVN version 3879) (Not sure what happened to 0.5.3 &amp;amp; 0.5.2)&lt;br /&gt;
* [[0.5.1-release]] (SVN version 3724)&lt;br /&gt;
* [[0.5.0-release]] (SVN version 3184)&lt;br /&gt;
* [[0.4.5.3-stable]] (SVN version 2844)&lt;br /&gt;
* [[0.4.5.2-stable]] (SVN version 2772)&lt;br /&gt;
* [[0.4.5.1-stable]] (SVN version 2610)&lt;br /&gt;
* [[0.4.5-release]] (SVN version 2293)&lt;br /&gt;
* [[0.4.0-rc]] (SVN version 1953)&lt;br /&gt;
* [[0.3.2-release]] (SVN version 1385)&lt;br /&gt;
* [[0.3.1-devel]] (SVN version 1226) (Around here things start to get a bit confusing)&lt;br /&gt;
* [[0.2.1-release]] (SVN version 1224)&lt;br /&gt;
* [[0.3.0-devel]] (SVN version 1126)&lt;br /&gt;
* [[0.0.0-release]] (SVN version 1022)&lt;br /&gt;
* [[0.1.0-release]] (SVN version 1021)&lt;br /&gt;
* [[0.2.0-release]] (SVN version 1020)&lt;br /&gt;
&lt;br /&gt;
=Binaries=&lt;br /&gt;
The OpenSim project only does source based releases, which you must [[Build_Instructions|compile]] yourself.  Many members of our community provide binary installers that you can used based on those source releases.  Links below are provided for convenience.&lt;br /&gt;
&lt;br /&gt;
==Installers==&lt;br /&gt;
&lt;br /&gt;
* '''0.6.6 Windows Installer (Post-fixes version r9993)'''&lt;br /&gt;
 http://forge.opensimulator.org/gf/download/frsrelease/199/588/OpenSim0.6.6Setup.exe&lt;br /&gt;
&lt;br /&gt;
* '''0.6.6 Mac OS X Installer (Post-fixes version r9993)'''&lt;br /&gt;
 http://forge.opensimulator.org/gf/download/frsrelease/198/587/OpenSimulator-0.6.6-post-fixes-r9993.dmg&lt;br /&gt;
&lt;br /&gt;
* '''Unofficial 0.6.6 Linux Debian and Ubuntu .deb packages&lt;br /&gt;
 http://opensimulator.org/wiki/UnofficialDebPackages&lt;br /&gt;
&lt;br /&gt;
==Diva Distribution==&lt;br /&gt;
&lt;br /&gt;
* '''Preconfigured hypergrided standalone.''' Easy to setup and to keep up to date. Windows and Linux/Unix. Download the file diva-rNNNN.zip, unzip it, read README.txt and take it from there.&lt;br /&gt;
http://github.com/diva/diva-distribution/downloads&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Older Versions Archive =&lt;br /&gt;
&lt;br /&gt;
All older versions of OpenSim are available from the Git repo (this includes fully converted versions of every change that existed in the subversion repository, including all old tags and branches). Please be aware that even if there is zero official support for the latest version, there's even less support for older ones. They are kept here for historical and technological reference only.&lt;br /&gt;
&lt;br /&gt;
The 'official' release tags and branches are all available from:&lt;br /&gt;
 git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
The named branches are typically extremely experimental offshoots.  Stick with recent numbered versions if you expect anything to work.&lt;br /&gt;
&lt;br /&gt;
= Experimental Upstream Code =&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: red; font-size: big&amp;quot;&amp;gt;'''There Be Dragons Beyond This Point'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are truly feeling dangerous, adventurous, or want to help us test the next version of OpenSim you are welcome to grab the latest unstable code out of our git master repository.  Any warnings previous expressed about the alpha nature of the code go double or triple if you are running directly off of master.  '''Never, ever, ever, never''' run this in production environments, it is not suitable for that unless you are very familiar with the source code, and can hot fix any piece of it (that probably means you are an OpenSim core member).  Feedback and testing on the unstable tree is appreciated, as that helps us make the next release better.  If this scares you from using trunk, that was intended.&lt;br /&gt;
&lt;br /&gt;
If it breaks, you get to keep both pieces.&lt;br /&gt;
&lt;br /&gt;
* '''Latest git revision version (bleeding edge)'''&lt;br /&gt;
 git clone git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
* '''To checkout a specific revision'''&lt;br /&gt;
After creating the clone, chnage into the directory and:&lt;br /&gt;
 git reset --hard ########&lt;br /&gt;
&lt;br /&gt;
Where ######## is the unique hash of the version you are interested in.&lt;br /&gt;
&lt;br /&gt;
Another option for obtaining the code is via subversion with our svn mirror.  This mirrors all git changes since the old 10k1 changeset in subversion.  It is synchronized every 15 minutes, so may be 15 minutes behind git master.&lt;br /&gt;
&lt;br /&gt;
* '''Latest subversion revision version (bleeding edge)'''&lt;br /&gt;
 svn co http://opensimulator.org/svn/opensim-track/trunk opensim&lt;br /&gt;
&lt;br /&gt;
=Related Software=&lt;br /&gt;
[[Related_Software|Related Software Section - CLICK HERE]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Pages by Category:''[[:Category:Users| User-pages]],[[:Category:Development| Developer-pages]],[[:Category:Scripts| Scripts]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
[[Category:Developers]]&lt;br /&gt;
&amp;lt;cleanpage title=hide cats=hide /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Download</id>
		<title>Download</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Download"/>
				<updated>2009-10-15T03:02:39Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Installers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
=Source code=&lt;br /&gt;
Here are the current released versions of OpenSim.  &lt;br /&gt;
&lt;br /&gt;
Please see [[Branches]] for more information on the repository branches and what they are for.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=red&amp;gt;'''Please note:'''&amp;lt;/font&amp;gt; As OpenSim is still at an alpha code maturity stage, there is absolutely no guarantee that functionality works or is stable, even in the numbered releases.  Certain features may not work either because the code is in rapid evolution, or because functionality expected by the Linden Labs Second Life viewer has simply not been implemented yet.  However, constructive feedback is still welcomed.&lt;br /&gt;
&lt;br /&gt;
Also, please be aware that OpenSim requires that you have a fair amount of technical knowledge in order to set it up.&lt;br /&gt;
&lt;br /&gt;
The latest source releases are always hosted at http://dist.opensimulator.org, the current latest releases is '''0.6.7''' and provided as:&lt;br /&gt;
* http://dist.opensimulator.org/opensim-0.6.7-release.tar.gz - best for Linux systems&lt;br /&gt;
* http://dist.opensimulator.org/opensim-0.6.7-release.zip - best for Windows systems&lt;br /&gt;
&lt;br /&gt;
The only difference between the two is the archive format, the source is exactly the same.&lt;br /&gt;
&lt;br /&gt;
== Release Code via Git ==&lt;br /&gt;
&lt;br /&gt;
Instead of using a source archive release, you can pull specific releases from our git repository.  For more information on installing and using Git, please see [[Using_Git]].&lt;br /&gt;
&lt;br /&gt;
In each case you'll want to start with a clone:&lt;br /&gt;
&lt;br /&gt;
 git clone git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
Then all other commands are run from inside the checked out directory.&lt;br /&gt;
&lt;br /&gt;
* '''0.6.7 Alpha with post-release fixes''' (preferred)&lt;br /&gt;
 git checkout -b 0.6.7-post-fixes origin/0.6.7-post-fixes&lt;br /&gt;
&lt;br /&gt;
* '''0.6.7 Alpha release tag''' &lt;br /&gt;
 git checkout 0.6.7-release&lt;br /&gt;
&lt;br /&gt;
== Release notes ==&lt;br /&gt;
&lt;br /&gt;
These are extracted from the subversion history log and correlated with the tagged releases.  It should provide some idea of the changes between each tagged version.  How ever, since the tagged releases are moved out of the trunk, the versions aren't an exact correlation.  Please read and understand [[Release Cycle]] and [[On revisions, tags and branches]] before using this information.&lt;br /&gt;
* [[Recent]] (since last tagged version)&lt;br /&gt;
* [[0.6.6-release]] (SVN version 9961)&lt;br /&gt;
* [[0.6.5-release]] (SVN version 9667)&lt;br /&gt;
* [[0.6.4.1-release]] (SVN version 9009)&lt;br /&gt;
* [[0.6.4-release]] (SVN version 8960)&lt;br /&gt;
* [[0.6.3-release]] (SVN version 8506)&lt;br /&gt;
* [[0.6.2-release]] (SVN version 8068)&lt;br /&gt;
* [[0.6.1-release]] (SVN version 7880)&lt;br /&gt;
* [[0.6.0-release]] (SVN version 7176)&lt;br /&gt;
* [[0.5.11-release]] (SVN version 6676)&lt;br /&gt;
* [[0.5.10-release]] (SVN version 6422)&lt;br /&gt;
* [[0.5.9-release]] (SVN version 5970)&lt;br /&gt;
* [[0.5.8-release]] (SVN version 5111)&lt;br /&gt;
* [[0.5.7-release]] (SVN version 4818)&lt;br /&gt;
* [[0.5.6-release]] (SVN version 4488)&lt;br /&gt;
* [[0.5.5-release]] (SVN version 4239)&lt;br /&gt;
* [[0.5.4-release]] (SVN version 3879) (Not sure what happened to 0.5.3 &amp;amp; 0.5.2)&lt;br /&gt;
* [[0.5.1-release]] (SVN version 3724)&lt;br /&gt;
* [[0.5.0-release]] (SVN version 3184)&lt;br /&gt;
* [[0.4.5.3-stable]] (SVN version 2844)&lt;br /&gt;
* [[0.4.5.2-stable]] (SVN version 2772)&lt;br /&gt;
* [[0.4.5.1-stable]] (SVN version 2610)&lt;br /&gt;
* [[0.4.5-release]] (SVN version 2293)&lt;br /&gt;
* [[0.4.0-rc]] (SVN version 1953)&lt;br /&gt;
* [[0.3.2-release]] (SVN version 1385)&lt;br /&gt;
* [[0.3.1-devel]] (SVN version 1226) (Around here things start to get a bit confusing)&lt;br /&gt;
* [[0.2.1-release]] (SVN version 1224)&lt;br /&gt;
* [[0.3.0-devel]] (SVN version 1126)&lt;br /&gt;
* [[0.0.0-release]] (SVN version 1022)&lt;br /&gt;
* [[0.1.0-release]] (SVN version 1021)&lt;br /&gt;
* [[0.2.0-release]] (SVN version 1020)&lt;br /&gt;
&lt;br /&gt;
=Binaries=&lt;br /&gt;
The OpenSim project only does source based releases, which you must [[Build_Instructions|compile]] yourself.  Many members of our community provide binary installers that you can used based on those source releases.  Links below are provided for convenience.&lt;br /&gt;
&lt;br /&gt;
==Installers==&lt;br /&gt;
&lt;br /&gt;
* '''0.6.6 Windows Installer (Post-fixes version r9993)'''&lt;br /&gt;
 http://forge.opensimulator.org/gf/download/frsrelease/199/588/OpenSim0.6.6Setup.exe&lt;br /&gt;
&lt;br /&gt;
* '''0.6.6 Mac OS X Installer (Post-fixes version r9993)'''&lt;br /&gt;
 http://forge.opensimulator.org/gf/download/frsrelease/198/587/OpenSimulator-0.6.6-post-fixes-r9993.dmg&lt;br /&gt;
&lt;br /&gt;
* '''[[UnofficialDebPackages|Unofficial .deb packages (Debian and Ubuntu)]]&lt;br /&gt;
&lt;br /&gt;
==Diva Distribution==&lt;br /&gt;
&lt;br /&gt;
* '''Preconfigured hypergrided standalone.''' Easy to setup and to keep up to date. Windows and Linux/Unix. Download the file diva-rNNNN.zip, unzip it, read README.txt and take it from there.&lt;br /&gt;
http://github.com/diva/diva-distribution/downloads&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Older Versions Archive =&lt;br /&gt;
&lt;br /&gt;
All older versions of OpenSim are available from the Git repo (this includes fully converted versions of every change that existed in the subversion repository, including all old tags and branches). Please be aware that even if there is zero official support for the latest version, there's even less support for older ones. They are kept here for historical and technological reference only.&lt;br /&gt;
&lt;br /&gt;
The 'official' release tags and branches are all available from:&lt;br /&gt;
 git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
The named branches are typically extremely experimental offshoots.  Stick with recent numbered versions if you expect anything to work.&lt;br /&gt;
&lt;br /&gt;
= Experimental Upstream Code =&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: red; font-size: big&amp;quot;&amp;gt;'''There Be Dragons Beyond This Point'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are truly feeling dangerous, adventurous, or want to help us test the next version of OpenSim you are welcome to grab the latest unstable code out of our git master repository.  Any warnings previous expressed about the alpha nature of the code go double or triple if you are running directly off of master.  '''Never, ever, ever, never''' run this in production environments, it is not suitable for that unless you are very familiar with the source code, and can hot fix any piece of it (that probably means you are an OpenSim core member).  Feedback and testing on the unstable tree is appreciated, as that helps us make the next release better.  If this scares you from using trunk, that was intended.&lt;br /&gt;
&lt;br /&gt;
If it breaks, you get to keep both pieces.&lt;br /&gt;
&lt;br /&gt;
* '''Latest git revision version (bleeding edge)'''&lt;br /&gt;
 git clone git://opensimulator.org/git/opensim&lt;br /&gt;
&lt;br /&gt;
* '''To checkout a specific revision'''&lt;br /&gt;
After creating the clone, chnage into the directory and:&lt;br /&gt;
 git reset --hard ########&lt;br /&gt;
&lt;br /&gt;
Where ######## is the unique hash of the version you are interested in.&lt;br /&gt;
&lt;br /&gt;
Another option for obtaining the code is via subversion with our svn mirror.  This mirrors all git changes since the old 10k1 changeset in subversion.  It is synchronized every 15 minutes, so may be 15 minutes behind git master.&lt;br /&gt;
&lt;br /&gt;
* '''Latest subversion revision version (bleeding edge)'''&lt;br /&gt;
 svn co http://opensimulator.org/svn/opensim-track/trunk opensim&lt;br /&gt;
&lt;br /&gt;
=Related Software=&lt;br /&gt;
[[Related_Software|Related Software Section - CLICK HERE]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Pages by Category:''[[:Category:Users| User-pages]],[[:Category:Development| Developer-pages]],[[:Category:Scripts| Scripts]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
[[Category:Developers]]&lt;br /&gt;
&amp;lt;cleanpage title=hide cats=hide /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Artist_Home</id>
		<title>Artist Home</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Artist_Home"/>
				<updated>2009-10-11T21:56:25Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Artist Documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
== Artist Documentation ==&lt;br /&gt;
&lt;br /&gt;
This page contains information about content creation for OpenSimulator including best practices, guides, tools, examples, collaborative projects and of course Creative Commons licensed content.&lt;br /&gt;
&lt;br /&gt;
Discussion group for people interested in creating content for Metaverse: [[http://groups.google.com/group/open-content-for-metaverse Open Content for Metaverse]]&lt;br /&gt;
&lt;br /&gt;
Some useful resources of free material:&lt;br /&gt;
&lt;br /&gt;
A great summary sheet: [[http://docs.google.com/View?docid=dgsbx7zg_9mzk6nxtc 3DCG for the hobbyist -- useful products and links]]&lt;br /&gt;
&lt;br /&gt;
A hobbyist animators blog with all kinds of goodies: [[http://www.cgspeed.com/ cgspeed]]&lt;br /&gt;
&lt;br /&gt;
A source for free animations, 3d models, textures, etc.: [[http://www.sharecg.com/ ShareCG]]&lt;br /&gt;
&lt;br /&gt;
A huge 3d graphics source: [[http://www.renderosity.com/ Renderosity]]&lt;br /&gt;
&lt;br /&gt;
A 3d Artists community: [[http://www.3dcommune.com/ 3dcommune]]&lt;br /&gt;
&lt;br /&gt;
Runtime DNA: [[http://www.runtimedna.com/forum/downloads.php www.runtimedna.com Free Downloads]]&lt;br /&gt;
&lt;br /&gt;
Adult oriented content: [[http://www.raunchyminds.com/gallery/categories.php?cat_id=15 RaunchyMinds Freebies Download]]&lt;br /&gt;
&lt;br /&gt;
This is not an exhaustive list, please add to it if you can!&lt;br /&gt;
&lt;br /&gt;
I have tried to include sites which have free Poser/Opensim compatible content which could be used for &amp;quot;personal use&amp;quot; in your own &amp;quot;world&amp;quot;. You must check the licensing for any commercial uses.&lt;br /&gt;
&lt;br /&gt;
== Textures ==&lt;br /&gt;
&lt;br /&gt;
Textures are images  used to cover surfaces of 3d models and terrain. Textures can be anything form 1x1 to 1024x1024 images. Most of the textures for buildings, items and clothes are usually 512x512.&lt;br /&gt;
&lt;br /&gt;
=== Best Practices ===&lt;br /&gt;
&lt;br /&gt;
=== Guides ===&lt;br /&gt;
&lt;br /&gt;
* Creating tileable textures: [[http://www.gfxartist.com/features/tutorials/740]]&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
&lt;br /&gt;
* [[http://www.gimp.org/ GIMP]] - GIMP is the GNU Image Manipulation Program.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
=== Projects ===&lt;br /&gt;
&lt;br /&gt;
=== Content Libraries ===&lt;br /&gt;
* [http://torley.com/torley-textures-available-for-download-in-a-single-zip-pack Torley Textures] is a collection of over 600 textures by Torley Linden. (New download location: http://torley.s3.amazonaws.com/Torley-Textures.zip)&lt;br /&gt;
&lt;br /&gt;
== Models ==&lt;br /&gt;
&lt;br /&gt;
Models are 3 dimensional objects which are formed from faces and textures. Models come in many flavors but currently OpenSimulator supports parametrized primitives and sculpted primitives. Parametrized primitives can be created in world with build functionality. Sculpted primitives are defined by a special bitmap image which can be created with 3d modeling programs which support sculptures.&lt;br /&gt;
&lt;br /&gt;
Yet unsupported in core OpenSimulator are 3d models which can be created with 3d modeling softwares like Blender and be saved in various formats. RealXtend module to OpenSimulator already supports 3d models.&lt;br /&gt;
&lt;br /&gt;
=== Best Practices ===&lt;br /&gt;
&lt;br /&gt;
=== Guides ===&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
&lt;br /&gt;
* [[http://www.blender.org/ Blender]] - Blender is the free open source 3D content creation suite, available for all major operating systems under the GNU General Public License.&lt;br /&gt;
* [[http://www.wings3d.com/ Wings 3d]] - Sculpty editor&lt;br /&gt;
* [[http://www.qavimator.org/ Qavimator]] - Animation for OpenSim avatars&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
[[Image:Biped.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Projects ===&lt;br /&gt;
&lt;br /&gt;
* [[OpenSimulator Avatar]]&lt;br /&gt;
&lt;br /&gt;
=== Content Libraries ===&lt;br /&gt;
&lt;br /&gt;
== Terrain ==&lt;br /&gt;
&lt;br /&gt;
Currently OpenSimulator terrains consists of heightmap and textures for different directions and heights. OpenSimulator terrain can be imported in raw terrain format from several terrain editor tools.&lt;br /&gt;
&lt;br /&gt;
=== Best Practices ===&lt;br /&gt;
&lt;br /&gt;
=== Guides ===&lt;br /&gt;
* [[Tips#Terrain Tidbits|Terrain Tips]]&lt;br /&gt;
* [[Using L3DT]]&lt;br /&gt;
* [[Terrain making]]&lt;br /&gt;
* [[Detailed cross-region terrain making]]&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
&lt;br /&gt;
*  L3DT&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
=== Projects ===&lt;br /&gt;
&lt;br /&gt;
=== Content Libraries  ===&lt;br /&gt;
&lt;br /&gt;
*[[Free Terrains]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Additional Terrain Resources  ===&lt;br /&gt;
&lt;br /&gt;
'''TERRAIN EDITING''' &lt;br /&gt;
&lt;br /&gt;
There is now a Plugin made and available for the free program GIMP by Domino Designs. &amp;lt;br&amp;gt;See [http://dominodesigns.info/project/gimpterrainwhich http://dominodesigns.info/project/gimpterrainwhich] is easy to install and allows you to bring in RAW files and edit them. &lt;br /&gt;
&lt;br /&gt;
GIMP is available free and downloadable at [http://www.gimp.org/downloads/ http://www.gimp.org/downloads/ ]&amp;lt;br&amp;gt;GIMP is available for most Operating Systems and Platforms and is User Supported with many features and functions far beyond Terrain Editing. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;'''REFERENCES / SUPPLEMENTAL SOURCES &amp;amp;amp; APPLICATIONS:'''&amp;lt;br&amp;gt;[http://opensimulator.org/wiki/Tweaking http://opensimulator.org/wiki/Tweaking]&amp;lt;br&amp;gt;Tutorial: Creating OpenSim terrain with Blender [http://stringofbits.net/2009/09/tutorial-creating-opensim-terrain-with-blender/ http://stringofbits.net/2009/09/tutorial-creating-opensim-terrain-with-blender/]&amp;lt;br&amp;gt;Some Free &amp;amp;amp; Some Not, Terrains @&amp;amp;nbsp;[http://www.rexxed.com/category/terrain/ http://www.rexxed.com/category/terrain/] &lt;br /&gt;
&lt;br /&gt;
Spinmass Virtual Creations, Has Two Products for Terrain Making and Generation which are Free Downloads. Look at Terrain Sculptor &amp;amp;amp; Bailiwick.&amp;lt;br&amp;gt;They are available from [http://www.spinmass.com/ http://www.spinmass.com/] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;'''Three easy to use Online Image Splitters''' &lt;br /&gt;
&lt;br /&gt;
[Http://www.chami.com/html-kit/services/is/ &amp;amp;nbsp;http://www.chami.com/html-kit/services/is/] &lt;br /&gt;
&lt;br /&gt;
[http://www.sliceimage.com/ http://www.sliceimage.com/] &lt;br /&gt;
&lt;br /&gt;
[http://www.makeuseof.com/dir/online-image-splitter/ http://www.makeuseof.com/dir/online-image-splitter/]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sounds ==&lt;br /&gt;
&lt;br /&gt;
Sounds clips can be used within (scripted) objects and as part of gestures. Current OpenSimulator sound formats are PCM WAVE (.wav) 16-bit/44.1KHz/mono or stereo with a maximum length of 10.00 seconds.&lt;br /&gt;
&lt;br /&gt;
=== Best Practices ===&lt;br /&gt;
&lt;br /&gt;
=== Guides ===&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
&lt;br /&gt;
* [[http://audacity.sourceforge.net/ Audacity]] - Audacity® is free, open source software for recording and editing sounds. It is available for Mac OS X, Microsoft Windows, GNU/Linux, and other operating systems.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
=== Projects ===&lt;br /&gt;
&lt;br /&gt;
=== Content Libraries ===&lt;br /&gt;
&lt;br /&gt;
* [[http://www.freesound.org/ The Freesound Project]] - The Freesound Project is a collaborative database of Creative Commons licensed sounds.&lt;br /&gt;
&lt;br /&gt;
== Music ==&lt;br /&gt;
&lt;br /&gt;
=== Best Practices ===&lt;br /&gt;
&lt;br /&gt;
=== Guides ===&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
=== Projects ===&lt;br /&gt;
&lt;br /&gt;
=== Content Libraries ===&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/User_Documentation</id>
		<title>User Documentation</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/User_Documentation"/>
				<updated>2009-09-11T20:48:09Z</updated>
		
		<summary type="html">&lt;p&gt;Karen Palen: /* Platform specific */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
[[Technical Reference | Technical Reference]] -&amp;gt; [[Technical Reference/terms | Terms]] -&amp;gt; [[User_Documentation | User Documentation]]&lt;br /&gt;
&lt;br /&gt;
==Initial Setup==&lt;br /&gt;
* [[Download]] - Download instructions&lt;br /&gt;
* [[Dependencies]] - The other packages you need to install that OpenSim relies upon&lt;br /&gt;
* [[Build Instructions]] - How to build and compile OpenSim from Source&lt;br /&gt;
* [[Configuration]] - How to configure your OpenSim server up and running&lt;br /&gt;
* [[Upgrading]] - How to upgrade your OpenSim version so that you can use your existing data&lt;br /&gt;
* [[Connecting]] - How to connect a compatible viewer to OpenSim&lt;br /&gt;
* [[Troubleshooting]] - How to trouble shoot your OpenSim installation.&lt;br /&gt;
* [[Tips]] - Useful tips from users like you&lt;br /&gt;
* [[FAQ]] - Frequently Asked Questions&lt;br /&gt;
* [[Technical Reference]] - Technical Reference Guide&lt;br /&gt;
&lt;br /&gt;
==Administrator Guide==&lt;br /&gt;
* [[Server Commands]] - Commands to control OpenSim&lt;br /&gt;
* [[OpenSim Database support]] - Dealing with databases&lt;br /&gt;
* [[Logging]] - Logging in OpenSim&lt;br /&gt;
* [[Custom Libraries]] - Describes how to add custom content to your OpenSim server&lt;br /&gt;
* [[Automating Tasks]] - How to make administrating a walk in the park&lt;br /&gt;
* [[Network Settings]] - NAT, Ports, Services and more...&lt;br /&gt;
* [[Management]] - All about being an effective administrator/moderator&lt;br /&gt;
* [[Performance]] - How to tweak OpenSim's performance&lt;br /&gt;
* [[Console-less OpenSim]] - How to run OpenSim without console&lt;br /&gt;
* [[Backups]] - How to backup your OpenSim data.&lt;br /&gt;
&lt;br /&gt;
==Core Facilities==&lt;br /&gt;
* [[OpenSim Archives]] - Loading and saving whole region archives with OpenSim&lt;br /&gt;
* [[IRCBridgeModule]] - A core OpenSim module for integrating IRC with a simulator.&lt;br /&gt;
* [[Hypergrid]] - Information about how to configure the experimental hypergrid architecture&lt;br /&gt;
* [[GridInfo]] - how to provide information about your grid to smart clients&lt;br /&gt;
&lt;br /&gt;
==RealXtend==&lt;br /&gt;
* [[ModRex]] - How to setup the RealXtend server module&lt;br /&gt;
* [[RealXtend Viewer Linux]] - This tutorial describes how to use the RealXtend viewer on Linux, using wine&lt;br /&gt;
&lt;br /&gt;
==Scripting==&lt;br /&gt;
* [[Scripting Documentation]] - Everything you need to know about OpenSim scripting&lt;br /&gt;
* [[Scripting Library]] - A list of example scripts&lt;br /&gt;
&lt;br /&gt;
==Tutorials==&lt;br /&gt;
===Platform specific===&lt;br /&gt;
* [[Linux Gridserver, the ubuntu way]] the quick and dirty way to install opensim under ubuntu (Linux)&lt;br /&gt;
* [[Wiimote]] - How to use a wiimote/nunchuk controller with the OpenSim viewer (Linux)&lt;br /&gt;
* [[Cacti]] - Generate Serverstats using the Cacti-Tool and SNMP (Linux)&lt;br /&gt;
* [http://sunredbeach.com/dokuwiki/doku.php?id=opensim:minimal-server Installing an openSUSE 11.1 Minimal server setup for an OpenSim server] - Quick and Dirty setup on an openSUSE 11.1 server&lt;br /&gt;
&lt;br /&gt;
* [http://chapter-and-metaverse.blogspot.com Chapter &amp;amp; Metaverse] - Full suite of tutorials, tips and tricks, for the Windows user (Windows) Also very useful for Linux users!&lt;br /&gt;
&lt;br /&gt;
===Cross-platform===&lt;br /&gt;
* [[OSGrid Region Registration]] - Describes how to link your region into OS-Grid&lt;br /&gt;
* [[Hints &amp;amp; Tricks]] - A page for Hints and Tricks&lt;br /&gt;
* [[Getting Started with Region Modules]] - The Hello World of OpenSim application development&lt;br /&gt;
* [[Building a bot]] - Getting started with bot design using libomv from the client side.&lt;br /&gt;
* [[pCampBot]] - Physical OpenSim bots&lt;br /&gt;
* [[Using L3DT]] - How to create custom terrains&lt;br /&gt;
* [[Detailed cross-region terrain making]] - A workflow for creating large cross-region custom terrains&lt;br /&gt;
* [http://update.multiverse.net/wiki/index.php/About_Terrain How to make a good Terrain (includes 4 programs to use)]&lt;br /&gt;
&lt;br /&gt;
==Gforge Projects==&lt;br /&gt;
* [[OpenSimSearch]] - Search for your OpenSim&lt;br /&gt;
* [[Linux Gridserver]] - Linux Gridserver using the Moo tool&lt;br /&gt;
* [[Wixtd|WiXTD]] - Setup and usage of the WiXTD metaverse-portal&lt;br /&gt;
* [[ServerStats]] - RRD/Proc serverstats using the OpenSim module for Berlios Serverstats (Linux)&lt;br /&gt;
* [[JabberBridge]] - Jabber/Xmpp bridge for opensim (currently only works properly in Standalone mode)&lt;br /&gt;
&lt;br /&gt;
==Unofficial Hypernauta's Basic Manual==&lt;br /&gt;
* If you are a real beginner it can be for you. Talking about &amp;quot;personal&amp;quot; worlds created using domestic computers. [http://www.dmu.com/opensime LINK]&lt;br /&gt;
&lt;br /&gt;
==Contribution Policy==&lt;br /&gt;
* [[User_Wiki_Conventions|User Wiki Conventions]] - Read this carefully, before adding content to the wiki&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Users]]&lt;br /&gt;
[[Category:Support]]&lt;br /&gt;
[[Category:Tech Reference]] &lt;br /&gt;
[[Category:Help]]&lt;br /&gt;
[[Category:Configuration]]&lt;br /&gt;
[[Category:Getting_Started]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
&amp;lt;cleanpage title=hide cats=hide /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Karen Palen</name></author>	</entry>

	</feed>