<?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=Jak.daniels</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=Jak.daniels"/>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Special:Contributions/Jak.daniels"/>
		<updated>2026-05-06T10:16:13Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.9</generator>

	<entry>
		<id>http://opensimulator.org/wiki/0.9.0.0_Release</id>
		<title>0.9.0.0 Release</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/0.9.0.0_Release"/>
				<updated>2016-07-06T12:55:47Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Archives */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages|0.9.0.0_Release}}&lt;br /&gt;
=Release Notes=&lt;br /&gt;
== General ==&lt;br /&gt;
Welcome to OpenSimulator 0.9.0.0, an open-source multi-user 3D virtual environment and metaverse server platform. &lt;br /&gt;
&lt;br /&gt;
As ever, OpenSimulator is a highly complex system.  Various usage scenarios (standalone, grid, hypergrid, etc.) in combination with different dependencies (e.g. different versions of mono on Linux/Mac) can sometimes produce unexpected or unstable behaviour.&lt;br /&gt;
&lt;br /&gt;
If you are upgrading from a previous version of OpenSimulator, then we strongly recommend that you start off with the default configuration files and port over any changes you made to your older version of OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
You can download this release of OpenSimulator from [[Download]]&lt;br /&gt;
&lt;br /&gt;
== Pivot Release: 0.8.2.1 ==&lt;br /&gt;
&lt;br /&gt;
Due to database migration renumbering, if you are upgrading from a version of OpenSimulator prior to 0.8.2.1, then you MUST first upgrade to *0.8.2.1* and then proceed to upgrade to 0.9.0.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* For outstanding bugs please see the OpenSimulator Mantis bug tracker.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
OpenSimulator requires:&lt;br /&gt;
&lt;br /&gt;
* .NET Framework 4 when running under Windows.&lt;br /&gt;
* At least Mono 2.8 when running under Mono (Linux or Mac).  However, we recommend using at least Mono 2.10 as Mono 2.8.x has been reported as less stable in some situations when running OpenSimulator.  Mono 3 has also been reported as working well with OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
== Backwards Compatibility Notices ==&lt;br /&gt;
&lt;br /&gt;
=== Database ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Scripts ===&lt;br /&gt;
&lt;br /&gt;
Scripts may need to be recompiled when upgrading to 0.9.0.0. If you see script errors on the server console, the best course of action is to delete the script dlls that live under the ScriptEngine folder. Note: do not delete the .state files in those folders; all other file extensions can be deleted.&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can set &lt;br /&gt;
 DeleteScriptsOnStartup = true&lt;br /&gt;
once, then switch it back.&lt;br /&gt;
&lt;br /&gt;
== Changes and Fixes ==&lt;br /&gt;
&lt;br /&gt;
=== General Robust Server ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== General Simulator Server ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Archives ===&lt;br /&gt;
&lt;br /&gt;
* The Load Oar command now fully supports the loading of (selectable parts of) a var region into a normal sized region as well as loading standard regions anywhere into a var region.&lt;br /&gt;
* Parcel data is now dealt with properly and supports rotations just like terrain and objects&lt;br /&gt;
* There are some changes to the parameters to Load Oar which are documented here: http://opensimulator.org/wiki/Load_Oar_0.9.0%2B&lt;br /&gt;
&lt;br /&gt;
=== Avatars ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Classifieds ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
&lt;br /&gt;
* New configuration variable under [EntityTransfer]: LandingPointBehavior. Possible values are LandingPointBehavior_OS and LandingPointBehavior_SL. This option exists to control the behavior of teleporting gods into places that have landing points and telehubs. Historically, there has been a difference: OpenSim (OS) has honored landing points and telehubs even for avatars with god permissions; SL lets gods land wherever they want. Default is LandingPointBehavior_OS.&lt;br /&gt;
&lt;br /&gt;
=== Friends ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Groups ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hypergrid ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Instant Messaging ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Inventory ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Map ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mesh/Sculpt ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Monitoring ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== NPC ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Objects ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Physics ===&lt;br /&gt;
&lt;br /&gt;
* ODE Now supports variable-sized regions&lt;br /&gt;
* New ODE-based physics module: ubODE. This one came from avination and seems to support more advanced physics features.&lt;br /&gt;
&lt;br /&gt;
=== Profiles ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Region/Estates/Parcels ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Region Cross/Teleport ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
&lt;br /&gt;
* llCastRay: with ubODE, this function finally works reliably in detecting large prims and meshes&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sound ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Stats ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Terrain ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Voice ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
Many, many thanks to all the developers, testers and community members who contributed to this release and who help out with OpenSimulator generally. Your hard work makes this all possible.&lt;br /&gt;
&lt;br /&gt;
[[Category:Release Notes]]&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/0.9.0.0_Release</id>
		<title>0.9.0.0 Release</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/0.9.0.0_Release"/>
				<updated>2016-07-06T12:29:38Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Archives */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages|0.9.0.0_Release}}&lt;br /&gt;
=Release Notes=&lt;br /&gt;
== General ==&lt;br /&gt;
Welcome to OpenSimulator 0.9.0.0, an open-source multi-user 3D virtual environment and metaverse server platform. &lt;br /&gt;
&lt;br /&gt;
As ever, OpenSimulator is a highly complex system.  Various usage scenarios (standalone, grid, hypergrid, etc.) in combination with different dependencies (e.g. different versions of mono on Linux/Mac) can sometimes produce unexpected or unstable behaviour.&lt;br /&gt;
&lt;br /&gt;
If you are upgrading from a previous version of OpenSimulator, then we strongly recommend that you start off with the default configuration files and port over any changes you made to your older version of OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
You can download this release of OpenSimulator from [[Download]]&lt;br /&gt;
&lt;br /&gt;
== Pivot Release: 0.8.2.1 ==&lt;br /&gt;
&lt;br /&gt;
Due to database migration renumbering, if you are upgrading from a version of OpenSimulator prior to 0.8.2.1, then you MUST first upgrade to *0.8.2.1* and then proceed to upgrade to 0.9.0.0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* For outstanding bugs please see the OpenSimulator Mantis bug tracker.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
OpenSimulator requires:&lt;br /&gt;
&lt;br /&gt;
* .NET Framework 4 when running under Windows.&lt;br /&gt;
* At least Mono 2.8 when running under Mono (Linux or Mac).  However, we recommend using at least Mono 2.10 as Mono 2.8.x has been reported as less stable in some situations when running OpenSimulator.  Mono 3 has also been reported as working well with OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
== Backwards Compatibility Notices ==&lt;br /&gt;
&lt;br /&gt;
=== Database ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Scripts ===&lt;br /&gt;
&lt;br /&gt;
Scripts may need to be recompiled when upgrading to 0.9.0.0. If you see script errors on the server console, the best course of action is to delete the script dlls that live under the ScriptEngine folder. Note: do not delete the .state files in those folders; all other file extensions can be deleted.&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can set &lt;br /&gt;
 DeleteScriptsOnStartup = true&lt;br /&gt;
once, then switch it back.&lt;br /&gt;
&lt;br /&gt;
== Changes and Fixes ==&lt;br /&gt;
&lt;br /&gt;
=== General Robust Server ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== General Simulator Server ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Archives ===&lt;br /&gt;
&lt;br /&gt;
* The Load Oar command now fully supports the loading of (selectable parts of) a var region into a normal sized region.&lt;br /&gt;
* Parcel data is now dealt with properly and supports rotations just like terrain and objects&lt;br /&gt;
* There are some changes to the parameters to Load Oar which are documented here: http://opensimulator.org/wiki/Load_Oar_0.9.0%2B&lt;br /&gt;
&lt;br /&gt;
=== Avatars ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Classifieds ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Configuration ===&lt;br /&gt;
&lt;br /&gt;
* New configuration variable under [EntityTransfer]: LandingPointBehavior. Possible values are LandingPointBehavior_OS and LandingPointBehavior_SL. This option exists to control the behavior of teleporting gods into places that have landing points and telehubs. Historically, there has been a difference: OpenSim (OS) has honored landing points and telehubs even for avatars with god permissions; SL lets gods land wherever they want. Default is LandingPointBehavior_OS.&lt;br /&gt;
&lt;br /&gt;
=== Friends ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Groups ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hypergrid ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Instant Messaging ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Inventory ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Map ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mesh/Sculpt ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Monitoring ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== NPC ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Objects ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Physics ===&lt;br /&gt;
&lt;br /&gt;
* ODE Now supports variable-sized regions&lt;br /&gt;
* New ODE-based physics module: ubODE. This one came from avination and seems to support more advanced physics features.&lt;br /&gt;
&lt;br /&gt;
=== Profiles ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Region/Estates/Parcels ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Region Cross/Teleport ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Scripting ===&lt;br /&gt;
&lt;br /&gt;
* llCastRay: with ubODE, this function finally works reliably in detecting large prims and meshes&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Sound ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Stats ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Terrain ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Voice ===&lt;br /&gt;
* No significant changes in this release.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
* No significant changes&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
Many, many thanks to all the developers, testers and community members who contributed to this release and who help out with OpenSimulator generally. Your hard work makes this all possible.&lt;br /&gt;
&lt;br /&gt;
[[Category:Release Notes]]&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Show_stats</id>
		<title>Show stats</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Show_stats"/>
				<updated>2015-12-29T14:27:49Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Web access to stats */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
&lt;br /&gt;
&amp;quot;show stats&amp;quot; is a new statistics gathering mechanism is slowly being added to OpenSimulator to integrate previously separate and ad-hoc mechanisms.  For this system, you can see a short statistics summary with the command &amp;quot;show stats&amp;quot; and a much longer list of statistics with the &amp;quot;show stats all&amp;quot; command (which unfortunately doesn't yet include those in the summary!).&lt;br /&gt;
&lt;br /&gt;
Use the &amp;quot;help show stats&amp;quot; command on the console for more information.&lt;br /&gt;
&lt;br /&gt;
See [[Monitoring]] for information on other statistics gathering mechanisms for OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
See [[Stats Manager]] for information on how to register stats with this mechanism.&lt;br /&gt;
&lt;br /&gt;
=General Concepts=&lt;br /&gt;
The full name of a stat has three components, separated by periods (.).  In order, these are&lt;br /&gt;
&lt;br /&gt;
* '''category''' - The category of the stat (e.g. server, scene)&lt;br /&gt;
* '''container''' - The containing object for this stat.  For example, on scene this is the scene name (e.g. region 1).  For server, this is the component to which the stat relates (e.g. memory, processor).&lt;br /&gt;
* '''name''' - The stat itself.  For example, ClientLogoutsDueToNoReceives or SimFPS.&lt;br /&gt;
&lt;br /&gt;
= Console commands =&lt;br /&gt;
&lt;br /&gt;
From the console, there are several ways to display the stats:&lt;br /&gt;
* &amp;lt;tt&amp;gt;show stats&amp;lt;/tt&amp;gt; returns simulator statistics in a legacy format&lt;br /&gt;
* &amp;lt;tt&amp;gt;show stats all&amp;lt;/tt&amp;gt; displays all the registered stats one line per stat.&lt;br /&gt;
* &amp;lt;tt&amp;gt;show stats category container&amp;lt;/tt&amp;gt; displays all the stats within a particular category/container&lt;br /&gt;
&lt;br /&gt;
= Recording =&lt;br /&gt;
&lt;br /&gt;
Saving statistics information can be very useful for later analysis.  There are commands to save both a snapshot and a continuous record of stats information.  There is also a facility to fetch stats information via a URL.&lt;br /&gt;
&lt;br /&gt;
== stats save console command ==&lt;br /&gt;
'''Command added in development code from 20th March 2014.'''&lt;br /&gt;
&lt;br /&gt;
This command will save a snapshot of current statistical data to a given path.  For example&lt;br /&gt;
&lt;br /&gt;
 # stats save stats.txt&lt;br /&gt;
&lt;br /&gt;
If the file already exists, the stats will be appended.&lt;br /&gt;
&lt;br /&gt;
== stats record console command ==&lt;br /&gt;
&lt;br /&gt;
'''Please note that in OpenSimulator 0.7.6 this command was &amp;quot;debug stats record&amp;quot;.'''&lt;br /&gt;
&lt;br /&gt;
'''Unfortunately, a bug in OpenSimulator 0.8 means that the command &amp;quot;stats record start|stop&amp;quot; will not work properly and will report a usage error with the old command name.  The workaround is to repeat the last command twice (e.g. &amp;quot;stats record start start&amp;quot;).'''&lt;br /&gt;
&lt;br /&gt;
'''This bug was fixed in OpenSimulator 0.8.0.1'''&lt;br /&gt;
&lt;br /&gt;
This is an experimental facilty starting in OpenSimulator 0.7.6 which will record the results of &amp;quot;show stats all&amp;quot; to a log file every 5 seconds.  The aim is to record statistical information throughout a session for later analysis.  The logging is enabled with the console command.  It works on both the simulator and a ROBUST instance.&lt;br /&gt;
&lt;br /&gt;
 # stats record start&lt;br /&gt;
 Now recording all stats to file every 5000ms&lt;br /&gt;
&lt;br /&gt;
To stop logging, either shutdown the server or use the command&lt;br /&gt;
&lt;br /&gt;
 # stats record stop&lt;br /&gt;
 Stopped recording stats to file.&lt;br /&gt;
&lt;br /&gt;
The log file used has the same name as the main logfile for the executable with the word &amp;quot;Stats&amp;quot; appended.  For instance, turning on stats logging for OpenSim.exe will write to the file OpenSimStats.log.  For Robust.exe, this will write to RobustStats.log.&lt;br /&gt;
&lt;br /&gt;
Currently and in OpenSimulator 0.7.6, this logging requires entries in OpenSim.exe.config (and Robust.exe.config for Robust).  If you are using your own version of these files then you will need to adapt them for the logging entries.&lt;br /&gt;
&lt;br /&gt;
The performance impact of such logging should be low, though the log file size can grow quite large.&lt;br /&gt;
&lt;br /&gt;
== Web access to stats ==&lt;br /&gt;
&lt;br /&gt;
If &amp;lt;tt&amp;gt;[Startup]ManagedStatsRemoteFetchURI&amp;lt;/tt&amp;gt; is defined and set to some value, the simulator statistics are available over the web via HTTP GET operations. The URL is the simulator's HTTP server URL appended with the value in &amp;lt;tt&amp;gt;ManagedStatsRemoteFetchURI&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The URL fetched accepts four different query parameters:&lt;br /&gt;
&lt;br /&gt;
* '''cat''' which specifies a category to fetch. If no category is given, the special category &amp;quot;all&amp;quot; is use which return all categories;&lt;br /&gt;
* '''cont''' specified a container. If not specified, the special container &amp;quot;all&amp;quot; is used to return all containers&lt;br /&gt;
* '''stat''' specifies the name of the particular stat. If not specified, the stat &amp;quot;all&amp;quot; is used to return all stats.&lt;br /&gt;
* '''callback''' specifies if the returned JSON data is to be wrapped in a callback function.&lt;br /&gt;
&lt;br /&gt;
For instance, for a simulator at IP address 10.1.1.4 with the INI settings:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[Network]&lt;br /&gt;
   http_listener_port=9000&lt;br /&gt;
[Startup]&lt;br /&gt;
   ManagedStatsRemoteFetchURI=ManagedStats&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
example data fetches are:&lt;br /&gt;
&lt;br /&gt;
; wget http://10.1.1.4:9000/ManagedStats/&lt;br /&gt;
: returns all stats registered in the simulator&lt;br /&gt;
; wget http://10.1.1.4:9000/ManagedStats/?cat=server&lt;br /&gt;
: returns all stats registered with the category &amp;quot;server&amp;quot;&lt;br /&gt;
; wget http://10.1.1.4:9000/ManagedStats/?cat=server&amp;amp;cont=threadpool&lt;br /&gt;
: returns all stats for the &amp;quot;threadpool&amp;quot; container within the &amp;quot;server&amp;quot; category&lt;br /&gt;
; wget http://10.1.1.4:9000/ManagedStats/?cat=server&amp;amp;cont=threadpool&amp;amp;stat=STPMinThreads&lt;br /&gt;
: returns the value for the specific stat&lt;br /&gt;
&lt;br /&gt;
The data is returned in JSON format grouped as you might expect with maps of categories containing maps of containers containing maps of stats. For instance, the response to &amp;lt;tt&amp;gt;http://10.1.1.4:9000/ManagedStats/?cat=server&amp;amp;cont=threadpool&amp;lt;/tt&amp;gt; might look like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&amp;quot;server&amp;quot;:&lt;br /&gt;
    {&amp;quot;threadpool&amp;quot;:&lt;br /&gt;
        {&amp;quot;BuiltinThreadpoolIOCPThreadsAvailable&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;BuiltinThreadpoolIOCPThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;BuiltinThreadpoolIOCPThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;BuiltinThreadpoolIOCPThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:1000.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;BuiltinThreadpoolWorkerThreadsAvailable&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;BuiltinThreadpoolWorkerThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;BuiltinThreadpoolWorkerThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;BuiltinThreadpoolWorkerThreadsAvailable&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:499.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPActiveThreads&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPActiveThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPActiveThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPActiveThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:15.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPConcurrency&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPConcurrency&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPConcurrency&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPConcurrency&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:45.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPInUseThreads&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPInUseThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPInUseThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPInUseThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:0.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPMaxThreads&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPMaxThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPMaxThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPMaxThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:45.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPMinThreads&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPMinThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPMinThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPMinThreads&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:15.0&lt;br /&gt;
            },&lt;br /&gt;
        &amp;quot;STPWorkItemsWaiting&amp;quot;:&lt;br /&gt;
            {&amp;quot;StatType&amp;quot;:&amp;quot;Stat&amp;quot;,&lt;br /&gt;
            &amp;quot;Category&amp;quot;:&amp;quot;server&amp;quot;,&lt;br /&gt;
            &amp;quot;Container&amp;quot;:&amp;quot;threadpool&amp;quot;,&lt;br /&gt;
            &amp;quot;ShortName&amp;quot;:&amp;quot;STPWorkItemsWaiting&amp;quot;,&lt;br /&gt;
            &amp;quot;Name&amp;quot;:&amp;quot;STPWorkItemsWaiting&amp;quot;,&lt;br /&gt;
            &amp;quot;Description&amp;quot;:&amp;quot;STPWorkItemsWaiting&amp;quot;,&lt;br /&gt;
            &amp;quot;UnitName&amp;quot;:&amp;quot;threads&amp;quot;,&lt;br /&gt;
            &amp;quot;Value&amp;quot;:0.0&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Analysis =&lt;br /&gt;
Tools to analyze record stats data are under development at https://github.com/justincc/opensimulator-tools/tree/master/analysis/opensimulator-stats-analyzer.  This includes summary and graphing tools.&lt;br /&gt;
&lt;br /&gt;
=Types=&lt;br /&gt;
&lt;br /&gt;
There are currently three types of statistic.&lt;br /&gt;
&lt;br /&gt;
== Number ==&lt;br /&gt;
This is just a number, possibly with a unit.  For example&lt;br /&gt;
 &lt;br /&gt;
 server.threadpool.STPActiveThreads : 15 threads&lt;br /&gt;
&lt;br /&gt;
== Change over time ==&lt;br /&gt;
This is a number that also shows the last delta between samples and also a moving average of deltas over the last 20 samples, each taken 5 seconds apart.  For example&lt;br /&gt;
 &lt;br /&gt;
 clientstack.test one.IncomingUDPReceivesCount : 98, 1.2/s, 1.7/s&lt;br /&gt;
&lt;br /&gt;
== Percentage ==&lt;br /&gt;
This is a percentage with the antecedent and consequent also given.  For example&lt;br /&gt;
&lt;br /&gt;
 clientstack.test one.PacketsReused : 37.91% (116/306)&lt;br /&gt;
&lt;br /&gt;
=Statistics=&lt;br /&gt;
&lt;br /&gt;
'''This information is highly subject to change as suitable data gathering is an evolving area.  Need to keep adding stats.'''&lt;br /&gt;
&lt;br /&gt;
==clientstack==&lt;br /&gt;
&lt;br /&gt;
These are stats for the LLUDP clientstack that sends and receives UDP messages for viewers connected with the Second Life protocol.  Each stats with clientstack.&amp;lt;region-name&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
! Stat name !! Units !! Description&lt;br /&gt;
|-&lt;br /&gt;
| InboxPacketsCount || messages || The number of messages that have been pre-processed by an inbound network thread but are now waiting to be processed by the main Incoming Packets thread.  If this number exceeds 0 for more than one sample then your simulator cannot cope with the number of UDP messages that clients are sending.  Region performance will be degraded from the user perspective.&lt;br /&gt;
|-&lt;br /&gt;
| IncomingPacketPoolCount || messages || The number of packet objects currently in the memory pool to deal with incoming messages.  This pool is used to reduce memory churn and hence improve simulator performance.  The actual number is never an issue since OpenSimulator will create new pool objects as required.&lt;br /&gt;
|-&lt;br /&gt;
| IncomingPacketsMalformedCount || messages || Number of malformed packets that the simulator received from viewers.  A high and increasing number may indicate a network attack.&lt;br /&gt;
|-&lt;br /&gt;
| IncomingPacketsOrphanedCount || messages || Number of well-formed packets that the simulator received but did not relate to any currently logged in viewer.  Because viewers can disconnect in the middle of a datastream, we would expect to see a certain number of such packets in the course of normal operation.  However, if the number is very high (e.g. tens of thousands) and/or increasing then this may indicate a network attack.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==httpserver==&lt;br /&gt;
&lt;br /&gt;
These are stats for OpenSimulator's built-in HTTP server.  Statistics are partitioned (contained) by the incoming port number to which they relate.  For example, httpserver.8002.HTTPRequestsServed are all the HTTP requests served that came in to port 8002.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
! Stat name !! Units !! Description&lt;br /&gt;
|-&lt;br /&gt;
| HTTPRequestsServed || requests || The number of HTTP requests served.&lt;br /&gt;
|-&lt;br /&gt;
| ProcessedPollResponses || responses || The number of responses sent to the viewer in response to poll requests.&lt;br /&gt;
|-&lt;br /&gt;
| QueuedPollResponses || responses || The number of responses queued for the next viewer poll.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==scene==&lt;br /&gt;
&lt;br /&gt;
These are stats relating to the graphical simulated scene.&lt;br /&gt;
&lt;br /&gt;
Each starts with scene.&amp;lt;region-name&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
! Stat name !! Units !! Description&lt;br /&gt;
|-&lt;br /&gt;
| RootAgents || avatars || The number of root agents in the scene.  A root agent is associated with an avatar since a root agent is needed for full sim functionality (e.g. moving around).&lt;br /&gt;
|-&lt;br /&gt;
| ChildAgents || agents || The number of child agents in the scene.  A child agent has limited functionality and is used by the viewer mainly to observe events in another scene (i.e. so that the user can see what's occuring in neighbouring regions).&lt;br /&gt;
|-&lt;br /&gt;
| FrameTime || ms || The amount of time taken by OpenSimulator to complete the last frame.  The standard frame time is 18.18ms.  In normal conditions there will be some small variation above and below this number, probably due to the low resolution of thread sleeping.  This number may occasionally jump if the underlying VM (Mono or .NET) takes a long time to perform a garbage collect.  If this number is consistently higher then your simulator is overloaded.&lt;br /&gt;
|-&lt;br /&gt;
| PhysicsTime || ms|| Amount of time spent performing physics engine operations in a scene frame.  If this is consistently high enough to make the FrameTime exceed the 18.18ms standard then region performance will be degraded.  You will need to reduce the number of physical objects in your region.  For OpenSimulator 0.7.6, ODE is used single-threaded and so extra cores will make no difference to performance.&lt;br /&gt;
|-&lt;br /&gt;
| SpareTime || ms|| The amount of time that was left over after OpenSimulator had performed all operations required in the current scene loop.  During this period OpenSimulator sleeps the thread.&lt;br /&gt;
|-&lt;br /&gt;
| SlowFrames || frames || In theory, this records the number of frames which took more than the standard frame time to execute.  However, this measure may be buggy.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==server==&lt;br /&gt;
These are stats relating to the server itself.&lt;br /&gt;
&lt;br /&gt;
===thread===&lt;br /&gt;
&lt;br /&gt;
These are the times in milliseconds since the monitored thread last performed any activity.  This is the same as the &amp;quot;LAST UDPATE&amp;quot; information shown by the &amp;quot;show threads&amp;quot; command.&lt;br /&gt;
&lt;br /&gt;
===threadpool===&lt;br /&gt;
&lt;br /&gt;
These are server threadpool stats. &lt;br /&gt;
&lt;br /&gt;
Each starts with server.threadpool.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; &lt;br /&gt;
! Stat name !! Units !! Description&lt;br /&gt;
|-&lt;br /&gt;
| BuiltinThreadpoolIOCPThreadsAvailable || threads || The number of pooled thread objects waiting to handle incoming IO requests.  OpenSimulator sets this to a very high number by default.  If you ever see this approach zero then your simulator is severely overloaded with respect to processing raw incoming IO requests.&lt;br /&gt;
|-&lt;br /&gt;
| BuiltinThreadpoolWorkerThreadsAvailable || threads || The number of pooled thread objects in the Mono/.NET native threadpool available to handle requests.  If you have async_call_method = UnsafeQueueUserWorkItem (or QueueUserWorkItem though &amp;quot;unsafe&amp;quot; is fine for our purposes) then is used for all OpenSimulator's threading requirements.  If you have async_call_method = SmartThreadPool (which is the current default), then SmartThreadPool handles all the heavy thread launching requirements (and so see the server.threadpool.STP* stats).  If this figure approaches zero then you simulator is severely overloaded.&lt;br /&gt;
|-&lt;br /&gt;
| STPInUseThreads || threads || The number of SmartThreadPool threads currently in use.  If this climbs to the maximum allowed by STPMaxThreads then the simulator will experience general performance degradation.  In this case, try increasing the MaxPoolThreads setting in the [Startup] section of OpenSim.ini (e.g. to 150).&lt;br /&gt;
|-&lt;br /&gt;
| STPMaxThreads || threads || Maximum number of threads that the SmartThreadPool will use.  This is set by the MaxPoolThreads setting in the [Startup] section of OpenSim.ini (or OpenSimDefaults.ini).&lt;br /&gt;
|-&lt;br /&gt;
| STPWorkItemsWaiting || items || The number of work items waiting because all SmartThreadPool threads are busy with current work items.  You will see this start to climb if STPInUseThreads == STPMaxThreads.  You never want to see this situation - if you have work items waiting then try increasing your MaxPoolThreads setting.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/User:Jak.daniels</id>
		<title>User:Jak.daniels</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/User:Jak.daniels"/>
				<updated>2015-11-23T18:54:48Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: Replaced content with &amp;quot;{{Quicklinks}}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/User:Jak.daniels</id>
		<title>User:Jak.daniels</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/User:Jak.daniels"/>
				<updated>2015-11-23T18:54:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: Jak Daniels&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 --rotation-center &amp;lt;128,128,0&amp;gt; LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:52:29Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Loading a 256x256 region's contents into the middle of a 512x512 sized region */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects, terrain and parcels already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since Version&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --rotation 30 --displacement &amp;lt;128,128,0&amp;gt;  LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 [[Varregion]] with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:49:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects, terrain and parcels already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since Version&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 [[Varregion]] with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:48:55Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Load Oar Console Command */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects, terrain and parcels already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 [[Varregion]] with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar</id>
		<title>Load Oar</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar"/>
				<updated>2015-11-23T18:47:55Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Merging together four region's worth of contents */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: As of Opensimulator 0.9.0-dev the 'load oar' has changed slightly in order to support more features. Please see the [[Load Oar 0.9.0+]] page.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all objects in the OAR file as they are added to the region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the OAR. &lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8&lt;br /&gt;
| The center around which to rotate objects on load.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes. In general, loading an OAR from a smaller region into a larger region will do what you expect. Trying to load a larger region into a smaller region will generate many errors although, if you have adjacent smaller regions, some of the objects will be loaded into the adjacent regions. Try at your own risk.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 --rotation-center &amp;lt;128,128,0&amp;gt; LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar</id>
		<title>Load Oar</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar"/>
				<updated>2015-11-23T18:47:44Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Notes On Regions of Different Sizes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: As of Opensimulator 0.9.0-dev the 'load oar' has changed slightly in order to support more features. Please see the [[Load Oar 0.9.0+]] page.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all objects in the OAR file as they are added to the region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the OAR. &lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8&lt;br /&gt;
| The center around which to rotate objects on load.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes. In general, loading an OAR from a smaller region into a larger region will do what you expect. Trying to load a larger region into a smaller region will generate many errors although, if you have adjacent smaller regions, some of the objects will be loaded into the adjacent regions. Try at your own risk.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 --rotation-center &amp;lt;128,128,0&amp;gt; LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:47:20Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Loading part of a 512x512 VarRegion into a standard 256x256 sized region */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 [[Varregion]] with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:46:44Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Merging together four region's worth of contents */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[Varregion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:46:21Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Notes On Regions of Different Sizes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[Varregion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:44:37Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Load Oar Console Command */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:42:22Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Load Oar Console Command */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: If you are using a version of OpenSimulator less than 0.9.0 then please see the original [[Load Oar]] page.'''&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar</id>
		<title>Load Oar</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar"/>
				<updated>2015-11-23T18:41:09Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Load Oar Console Command */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
'''Note: As of Opensimulator 0.9.0-dev the 'load oar' has changed slightly in order to support more features. Please see the [[Load Oar 0.9.0+]] page.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all objects in the OAR file as they are added to the region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the OAR. &lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8&lt;br /&gt;
| The center around which to rotate objects on load.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes. In general, loading an OAR from a smaller region into a larger region will do what you expect. Trying to load a larger region into a smaller region will generate many errors although, if you have adjacent smaller regions, some of the objects will be loaded into the adjacent regions. Try at your own risk.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 --rotation-center &amp;lt;128,128,0&amp;gt; LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:19:11Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Visualising how it works */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
== In Pictures ==&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:17:33Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Visualising how it works */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -53&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:16:31Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Visualising how it works */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. The coordinates within the source region are the same after rotation, so for example the middle of a 256x256 region will still be at &amp;lt;128, 128&amp;gt; after a 45 degree rotation, but the original SW corner will now be at new coordinates &amp;lt;128, -106&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:11:24Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Loading part of a VarRegion into a standard sized region */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a 512x512 VarRegion into a standard 256x256 sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. (This may result in a intermediate source region that is 25% bigger, depending on the rotation amount, but the coordinate system is maintained)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:06:51Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--merge&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--rotation-center&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-origin&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--bounding-size&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--displacement&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--no-objects&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-terrain&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--force-parcels&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;tt&amp;gt;--debug&amp;lt;/tt&amp;gt;&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a VarRegion into a standard sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. (This may result in a intermediate source region that is 25% bigger, depending on the rotation amount, but the coordinate system is maintained)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:05:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Visualising how it works */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-origin&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-size&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| --debug&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a VarRegion into a standard sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
&lt;br /&gt;
The new 'load oar' parameters work in the following order and this is *important to remember*:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; -359 to +359 degress. The source region is rotated by the desired amount anticlockwise in degrees. If not specified then no rotation takes place. (This may result in a intermediate source region that is 25% bigger, depending on the rotation amount, but the coordinate system is maintained)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-origin &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;--bounding-size &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The (possibly rotated) source region is then cropped to a cube or rectangular cuboid defined by the coordinates given.&lt;br /&gt;
&lt;br /&gt;
The resultant cuboid will then be placed at &amp;lt;tt&amp;gt;&amp;lt;0, 0, 0&amp;gt;&amp;lt;/tt&amp;gt; in the destination region unless modified by:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--displacement &amp;lt;x, y, z&amp;gt;&amp;lt;/tt&amp;gt; The rotated and cropped data is offset into the destination region by this amount.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some things to note:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;--rotation&amp;lt;/tt&amp;gt; applies to all of the source region's data, that is terrain, parcels and objects (prims). Both terrain, and even more so, parcels do not rotate well using arbitary rotations like 45 degrees as the edges will become jagged, but it's still supported.&lt;br /&gt;
&lt;br /&gt;
The following four diagrams attempt to show examples of the work flow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T18:00:58Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Visualising how it works */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-origin&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-size&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| --debug&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a VarRegion into a standard sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
The following four diagrams attempt to show examples of the workflow for various combinations of source and destination region sizes:&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZGoAZffOgl/standard-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJfk0nsoap/standard-to-var.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZJxXOH6lue/var-to-standard.png&lt;br /&gt;
&lt;br /&gt;
http://imagebin.ca/2NZKAL35VFdk/var-to-var.png&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T16:42:34Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: /* Load Oar Console Command */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-origin&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-size&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| --debug&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading part of a VarRegion into a standard sized region ==&lt;br /&gt;
Say you have a 512x512 VarRegion with an island in the middle that's about the size of standard region (256x256m), you could use the following command to rotate it, cut it out and place it in the standard region:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --rotation 90 --bounding-origin &amp;lt;128,128,0&amp;gt; --bounding-size &amp;lt;256,256,4096&amp;gt; VarRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Visualising how it works =&lt;br /&gt;
The following four diagrams attempt to show examples of the workflow for various combinations of source and destination region sizes:&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Load_Oar_0.9.0%2B</id>
		<title>Load Oar 0.9.0+</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Load_Oar_0.9.0%2B"/>
				<updated>2015-11-23T16:34:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: Created page with &amp;quot;= Load Oar Console Command =  This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.  Once you have saved regions in OAR fi...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Load Oar Console Command =&lt;br /&gt;
&lt;br /&gt;
This page provides information on the 'load oar' console command from OpenSimulator version 0.9.0 onwards.&lt;br /&gt;
&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command in OpenSimulator version 0.9.0 onwards has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the source OAR. This rotates terrain, parcel data and objects (prims) and is degrees counter-clockwise.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load. From 0.9.0 the source region's data is always rotated around it's center, prior to cutting a piece out and placing it. The parameter will likely be removed in 0.9.1&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-origin&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-size&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all data as it is added to the destination region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|-&lt;br /&gt;
| --debug&lt;br /&gt;
| 0.9&lt;br /&gt;
| When --debug is specified the command will output more information onto the console about where objects and parcels are being placed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes.&lt;br /&gt;
The load oar command now fully supports this and will load both smaller regions into larger ones and (cut out) pieces of larger regions into smaller ones. Parcel data is now handled correctly too.&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/User:Jak.daniels</id>
		<title>User:Jak.daniels</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/User:Jak.daniels"/>
				<updated>2015-11-23T16:11:56Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: Created page with &amp;quot;{{Quicklinks}}  = Load Oar Console Command = Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
&lt;br /&gt;
= Load Oar Console Command =&lt;br /&gt;
Once you have saved regions in OAR files, the 'load oar' console command will load the OAR file into the current region. There are many parameters that enable replacing the region's current contents or merging the OAR file's contents with the objects and terrain already in the region.&lt;br /&gt;
&lt;br /&gt;
As of version 0.9.0-dev, the parameters and functionality have changed slightly to allow inporting selected data from larger regions into smaller ones. Please see the new Load Oar page [[Load Oar 0.9.0+]] here&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
The load oar command has the format:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar [parameters] OARFILE&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;quot;OARFILE&amp;quot; is the path to the OAR file to read in, and &amp;quot;[parameters]&amp;quot; is zero or more optional parameters from the following list:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 10em&amp;quot; | Parameter&lt;br /&gt;
! Since&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| --merge&lt;br /&gt;
| 0.6.8&lt;br /&gt;
| Specify to merge the contents of the reading OAR with the existing contents in the region.&lt;br /&gt;
|-&lt;br /&gt;
| --skip-assets&lt;br /&gt;
| 0.6.9&lt;br /&gt;
| If set, this will not load any of the assets from the OAR, though all other data will be loaded. This saves a lot of time and database operations if loading an OAR multiple times on a grid -- specify &amp;lt;tt&amp;gt;--skip-assets&amp;lt;/tt&amp;gt; after the first time the OAR is loaded on a grid as the assets would have already been loaded the first time the OAR files was loaded.&lt;br /&gt;
|-&lt;br /&gt;
| --displacement&lt;br /&gt;
| 0.8&lt;br /&gt;
| Specify a displacement that is added to all objects in the OAR file as they are added to the region. The displacement MUST be specified as &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;. So, for instance, to load an OAR from a 256x256 region into the middle of a larger 512x512 region, the parameter would be &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;128,128,0&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;. Note that you can specify a &amp;quot;Z&amp;quot; displacement which will move the objects up or down. Thus &amp;lt;tt&amp;gt;--displacement &amp;quot;&amp;lt;0,0,1000&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt; will put all the OAR's objects up high for a sky box.&lt;br /&gt;
&lt;br /&gt;
The displacement is also applied to the terrain if it is included. The 'z' component is added to the terrain's heights.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| 0.9&lt;br /&gt;
| Displacement is the offset into the destination region after the data from the source region has been rotated and cropped.&lt;br /&gt;
|-&lt;br /&gt;
| --rotation&lt;br /&gt;
| 0.8&lt;br /&gt;
| The degrees to rotate all the objects loaded from the OAR. &lt;br /&gt;
|-&lt;br /&gt;
| --rotation-center&lt;br /&gt;
| 0.8, but depricated in 0.9&lt;br /&gt;
| The center around which to rotate objects on load.&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-origin&lt;br /&gt;
| 0.9&lt;br /&gt;
| The SW corner of a bounding cubiod that is used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --bounding-size&lt;br /&gt;
| 0.9&lt;br /&gt;
| The size of the bounding cuboid used to 'cut out' data from the source OAR&lt;br /&gt;
|-&lt;br /&gt;
| --no-objects&lt;br /&gt;
| 0.8&lt;br /&gt;
| Don't load any scene objects.&lt;br /&gt;
|-&lt;br /&gt;
| --force-terrain&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force terrain loading on --merge.  Normally, --merge does not overwrite the existing region's terrain.&lt;br /&gt;
|-&lt;br /&gt;
| --force-parcels&lt;br /&gt;
| 0.8&lt;br /&gt;
| Force parcel loading on --merge.  Normally, --merge does not overwrite the existing region's parcel data.&lt;br /&gt;
|-&lt;br /&gt;
| --default-user &amp;quot;&amp;lt;first-name&amp;gt; &amp;lt;last-name&amp;gt;&amp;quot;&lt;br /&gt;
| 0.8&lt;br /&gt;
| Instead of setting object ownership to the estate owner, assign it to the named user.  This only applies to objects that have UUIDs that do not match any user account in the receiving grid's installation.  There is currently no option that will force a change of owner for all loaded objects no matter whether they match a user in the receiving installation.  One workaround to achieve this would be to save the OAR with the --publish &amp;quot;save oar&amp;quot; option to strip owner information and then reload it.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes On Regions of Different Sizes ==&lt;br /&gt;
With the addition of regions that have a size that can be a multiple of 256x256 (i.e. a [[VarRegion]]) there is the possibility of loading OARs to and from regions of different sizes. In general, loading an OAR from a smaller region into a larger region will do what you expect. Trying to load a larger region into a smaller region will generate many errors although, if you have adjacent smaller regions, some of the objects will be loaded into the adjacent regions. Try at your own risk.&lt;br /&gt;
&lt;br /&gt;
= Example Uses =&lt;br /&gt;
&lt;br /&gt;
== Replacing a region's contents with what's in an OAR file ==&lt;br /&gt;
Replacing a region with an OAR file for a region of the same size is as simple as:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar NewRegion.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Merging together four region's worth of contents ==&lt;br /&gt;
Say you have four adjacent 256x256 region ('Region00.oar', 'Region01.oar', ...) and you want to load them into a new 512x512 [[VarRegion]] ('BiggerRegion'). The commands would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;change region BiggerRegion&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar Region0.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;0,256,0&amp;gt; Region01.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,0,0&amp;gt; Region10.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --displacement &amp;lt;256,256,0&amp;gt; Region11.oar&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loading a 256x256 region's contents into the middle of a 512x512 sized region ==&lt;br /&gt;
If you have an OAR file for a 256x256 region ('LegacyRegion.oar' for instance) and you want to set it into the middle of a 512x512 region with the loaded region rotated by 30 degrees without messing up the rest of the larger region, the command would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;tt&amp;gt;load oar --merge --force-terrain --force-parcels --displacement &amp;lt;128,128,0&amp;gt; --rotation 30.0 --rotation-center &amp;lt;128,128,0&amp;gt; LegacyRegion.oar&amp;lt;/tt&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Varregion/fr</id>
		<title>Varregion/fr</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Varregion/fr"/>
				<updated>2015-01-10T12:45:40Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: correct the spelling of options --force-terrain --force-parcels&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Languages|Varregion}}&lt;br /&gt;
&lt;br /&gt;
'''Varregion'''&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Varregion&amp;quot; est un dispositif d'OpenSimulator qui permet d'installer des régions d'une taille supérieure à 256x256. La région sera simplement plus grande,  elle  se comportera  comme une région normale avec des frontières plus éloignées.L'implémentation de ce dispositif utilise le protocole de l'extension des grandes régions de [http://aurora-sim.org Aurora] . Aussi, les versions actuelles des viewers  [http://firestormviewer.org Firestorm] et [http://singularityviewer.org Singularity] utilisées par Aurora seront également compatibles avec les varregions d'OpenSimulator.Les varregions sont différentes des [[Megaregions]], ancien dispositif d'installation de grandes régions. Les mégarégions ne nécessitent pas de viewer  particulier (   avec des fonctions non mises en œuvre par Linden Lab) mais elles reposent sur un certain nombre de hacks fragiles mis en place pour utiliser les viewers  d'une manière que Linden Lab n'avait pas prévue. Les mégarégions contiennent également un certain nombre de bogues côté simulateur.Une liste croissante de modifications sont mises en oeuvre par le [[varregion/Protocol|Protocole Varregion]] pour  implementer les&amp;quot;varregions&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Restrictions==&lt;br /&gt;
'''Quelques restrictions s'appliquent :'''&lt;br /&gt;
*les '''dimensions''' des régions doivent être un multiple de 256 et être inférieures ou égales à 8192.&lt;br /&gt;
*la région doit être '''carrée''' (à partir du 04 novembre 2013).&lt;br /&gt;
*'''Les régions adjacentes''' doivent avoir la même taille. Par exemple, vous pouvez avoir plusieurs régions de 512x512  l'une à côté de l'autre  (et voir dans l'autre région transfrontalière). Il semble y avoir un problème au niveau des viewers. Si des régions de taille différentes sont à portée de vue, des crashes se produisent. Prévoyez d'avoir des régions de même taille dans la même &amp;quot;vue&amp;quot;. Rappellez-vous que les coordonnées d'une région sont référencées sur une base de 256 mètres. Ainsi un groupe de quatre régions de 512x512 aurait par exemple pour coordonnées 8000/8000, 8000/8002, 8002/8000 et 8002/8002.&lt;br /&gt;
*Vous devez utiliser '''BulletSim''' (depuis le 04 novembre 2013, ODE n'a pas été mis à jour pour les varregions.)&lt;br /&gt;
*Vous devez utiliser l'implémentation des cartes de niveaux (heightmap) de BulletSim. Depuis le 28 janvier 2014, BulletSim a été modifié pour forcer le chargement des heightmap des terrains si la taille des régions est supérieure à 256 sur un côté. La configuration peut être forcée en ajoutant à vos fichiers INI : &lt;br /&gt;
&lt;br /&gt;
  [BulletSim]&lt;br /&gt;
    TerrainImplementation = 0&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
La taille des régions est indiquées dans le fichier Region.ini :&lt;br /&gt;
    [MyRegionName]&lt;br /&gt;
    RegionUUID = 95ec77ec-58c5-4ce2-9ff3-b6d1900d78a2&lt;br /&gt;
    Location = 1000,1000&lt;br /&gt;
    SizeX = 1024&lt;br /&gt;
    SizeY = 1024&lt;br /&gt;
    InternalAddress = 0.0.0.0&lt;br /&gt;
    InternalPort = 9200&lt;br /&gt;
    AllowAlternatePorts = False&lt;br /&gt;
    ExternalHostName = SYSTEMIP&lt;br /&gt;
&lt;br /&gt;
*Si la taille n'est pas spécifiée, bien entendu, elle sera par défaut définies à 256x256.&lt;br /&gt;
*Si les dimensions renseignées ne respectent pas les restrictions, des valeurs acceptables seront calculées et des messages d'alerte et d'erreur seront envoyés dans le log.&lt;br /&gt;
*Si vous convertissez une mégarégion, n'oubliez pas de placer dans votre configuration : &lt;br /&gt;
 CombineContiguousRegions = false&lt;br /&gt;
Pour que la fonction '''llRezObject''' fonctionne au-delà de 256 mètres écrivez dans la section [Xengine]  de Opensim.ini (pour une région de 512mx512m) &lt;br /&gt;
 ScriptDistanceLimitFactor = 512.0&lt;br /&gt;
*La heightmap est enregistrée dans la base de données sous la forme d'un tableau de 'shorts&amp;quot; (deux octets), aussi, si vous avez une très grande région vous pourriez avoir besoin d'augmenter la taille maximum dans la base de données . Par exemple, une région de 2816x2816 (11x11 régions normales) va utiliser une heightmap de 56 mo. Pour MySQL, vous devrez définir max_allowed_packet  à quelque chose comme 64M (fichier  /etc/mysql/my.cnf pour Ubuntu).&lt;br /&gt;
&lt;br /&gt;
==Charger un terrain ==&lt;br /&gt;
Les commandes de console habituelles fonctionnent pour les varregions. Si vous avez configurer une grande régions , vous pouvez charger des fichiers de heightmap BMP/RAW/PNG avec les dimensions de la région et couvrir l'ensemble du terrain. Par exemple, une région de 1024x1024 sera complètement initialisée après le chargement de &amp;quot;1024.bmp&amp;quot; si &amp;quot;1024.bmp&amp;quot; est un bitmap de 1024x1024.&lt;br /&gt;
&lt;br /&gt;
==Varregions et les fichiers OAR==&lt;br /&gt;
&lt;br /&gt;
Les objets et les terrains sont stockés dans des fichiers OAR comme si c'était une seule région. Cela signifie que si vous avez sauvegardé une région de 1024x1024 dans un fichier OAR, vous pourrez plus tard restaurer les objets et le terrain sur une région de 1024x1024. Si vous chargez  le fichier OAR  d'une plus petite région dans une région plus grande, l'espace de terrain non spécifiée est par défaut de 256 mètres.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour rendre la  conversion vers varregions plus facile, la commande 'load oar' a un nouveau paramètre '--displacement &amp;quot;&amp;lt;x,y,z&amp;gt;. Cela déplace tous les objets et le terrain à partir du fichier oar quand vous le chargez dans la nouvelle région. &lt;br /&gt;
&lt;br /&gt;
Par exemple, disons que vous disposez de quatre régions adjacentes de 256x256 (aor00.oar, aor01.oar, aor10.oar, aor11.oar). Vous créez une nouvelle varregion de 512x512 nommée 'grosseregion'. Les commandes suivantes vont placer les objets, les terrains et les parcelles des quatres régions dans la nouvelle varregion :&lt;br /&gt;
&lt;br /&gt;
 change region grosseregion&lt;br /&gt;
 load oar oar00.oar&lt;br /&gt;
 load oar oar01.oar --displacement &amp;quot;&amp;lt;0,256,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
 load oar oar10.oar --displacement &amp;quot;&amp;lt;256,0,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
 load oar oar11.oar --displacement &amp;quot;&amp;lt;256,256,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
&lt;br /&gt;
Notez la présence des nouveaux paramètres &amp;quot;--force-terrain&amp;quot; and &amp;quot;--force-parcels&amp;quot;. Le paramètre &amp;quot;--merge&amp;quot; utilisé par lui-même, sert à fusionner les objets des multiples OARs. La fusion supprime aussi le chargement des données du terrain et des  informations des parcelles . C'est ce qu'on veut quand on fusionne les objets. Mais si vous chargez des OARs multiples pour créer une nouvelle région plus grande, les informations du terrain et des parcelles devront aussi être chargées. D'où l'utilité des nouveaux paramètres.&lt;br /&gt;
&lt;br /&gt;
==Les problèmes connus==&lt;br /&gt;
Cette modification majeure d'OpenSimulator touche un nombre important de domaines. Les chapitres qui suivent présentent  les modifications que Justin CC a du faire.&lt;br /&gt;
&lt;br /&gt;
===Données du terrain ===&lt;br /&gt;
Un des problèmes majeur a été de passer les données des terrains à la pile de protocoles. L'implémentation existante passait un tableau de floats qui représentaient un tableau de 256x256 hauteurs de terrain. La classe TerrainChannel ne peut pas être passée dans la pile des protocoles (llClienView) parce que TerrainChannel n'est pas défini comme faisant partie de  OpenSim.Region.Framework et donc n'est pas visible par le code du protocole. &lt;br /&gt;
&lt;br /&gt;
La solution choisie par JustinCC a été de créer une classe TerrainData dans OpenSim.Framework. TerrainData englobe simplement la structure des données pour le terrain et ajoute des attributs pour définir les dimensions X et Y. &lt;br /&gt;
&lt;br /&gt;
Il ne voulait pas changer la signature de IClientAPI  parce que beaucoup de modules externes en dépendent. IClientAPI aurait dû être modifié pour passer TerrainData plutôt qu'un float[]. JustinCC a décidé de ne pas changer IClientAPI, il a fait en sorte que LLClientView ignore le passage du tableau. À la place il l'a fait remonter dans la scène associée pour récupérer l'instance TerrainData.&lt;br /&gt;
&lt;br /&gt;
Il existe une sous-classe de TerrainData: HeightmapTerrainData qui enregistre le terrain sous forme de heightmap compressée. La hauteur de chaque point est un &amp;quot;short&amp;quot; qui correspond à  height * compressionFactor où compressionFactor est habituellement égal à &amp;quot;100&amp;quot;.  Cela crée un enregistrement compact des hauteurs de terrain avec deux décimales de résolution après la virgule.&lt;br /&gt;
&lt;br /&gt;
Le LLLP (&amp;quot;Linden Lab Legacy Protocol&amp;quot;) envoie les données de hauteur de terrain dans un &amp;quot;patches&amp;quot; compressé d'une surface 16x16 de hauteur de terrain. Cette partie du protocole est implémentée dans TerrainChannel. JustinCC pense que les optimisations de protocoles sous-jacents ne doivent pas apparaître dans la pile, ainsi il a essayé de cacher les  tâches du terrain dans TerrainData. Il veut signifier par là qu''''un jour la création des terrains en meshs  sera généralisée'''. Et il ajoute, &amp;quot;n'est-ce pas ?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Le terrain dans la base de données ===&lt;br /&gt;
Auparavant les heightmaps des terrains étaient enregistrées dans la base de données avec le type BLOB sous la forme d'un tableau de doubles de 256x256. Pour avoir des régions de tailles différentes, ce format a dû changer. Il y existe un champs dans la base de données actuelle qui stocke le temps auquel le terrain a été sauvegardé. Cette information n'est pas utilisée, ainsi ce champs a été choisi pour contenir le champs des blob des hauteurs  issues de la refonte du code. &lt;br /&gt;
&lt;br /&gt;
Il y a trois formes de blob de carte de niveaux : héritée, 2D compressée et 2D régulière. La carte de niveau par héritage correspond, bien sûre, à la collections précédentes de 256x256 doubles. La carte 2D régulière contient les dimensions X, Y suffisamment de floats pour les hauteurs de cette région. La carte 2D compressée contient les X et Y et compressionFactor suivie d'assez de &amp;quot;shorts&amp;quot; pour la carte de hauteur. &lt;br /&gt;
&lt;br /&gt;
Le format par héritage est utilisé par défaut pour lire et écrire dans la base de données, si la région a des dimensions de 256x256, elle sera stockée au format hérité. Ceci pour conserver une compatibilité descendante. &lt;br /&gt;
&lt;br /&gt;
Tous les modules de base de données (MySQL, SQLite, MSSQL et PSQL) ont été modifiés pour stocker les terrain de cette façon.&lt;br /&gt;
&lt;br /&gt;
===Détection du passage des frontières===&lt;br /&gt;
La majeure partie du code de &amp;quot;passage vers une nouvelle région&amp;quot; est basé sur le contrôle des frontières. Il y a aussi pas mal de code pour calculer si un objet ou un avatar a traversé la limite d'une région et autant pour calculer l'adresse de la prochaine. L'introduction d'une taille de région variable chamboule beaucoup ces calculs. Cela signifie que le code chargé habituellement de faire ces calculs définit l'adresse de la nouvelle région et la localisation d'arrivée  en se basant sur une taille constante de 256x256m. Avec les varregions ces hypothèses ne tiennent plus. L'implémentation d'une varregion signifie que le calcul de l'adresse de la région d'origine et de la localisation des frontières va être déplacé vers le service de grille  GridService, entité qui connaît réellement la taille de toutes les régions. &lt;br /&gt;
&lt;br /&gt;
La réalisation du calcul de localisation des régions qui est vraiment une opération GridService a conduit JustinCC a extraire complétement le code de vérification des limites de la grille pour le remplacer par deux fonctions :  Scene.PositionIsInCurrentRegion(Vector3 pos) et ensuite EntityTransferModule.GetRegionContainingWorldLocation(double X, double Y). L'ancienne fonction teste si un objet / avatar est sorti de la région courante pour ensuite trouver la région de destination.''(Side note: GetRegionContainingWorldLocation should really be a function on IGridService but that exercise is left for future hacking).''&lt;br /&gt;
&lt;br /&gt;
''These changes leave all the 'border' code in limbo -- the generation of the border lists is still there but it is not being used. This should eventually be cleaned up. Also, the computation of neighbor regions is scattered around with routines on IGridService, in EntityTransferModule and a bunch of bookkeeping in Scene. This too should be cleaned up.''&lt;br /&gt;
&lt;br /&gt;
==Notes d'implémentation==&lt;br /&gt;
Depuis le 27 Janvier 2014 varregion est une caractéristique du 'master' de la branche de référence.&lt;br /&gt;
===Travail à faire ===&lt;br /&gt;
Ce qui suit sont des notes qui concernent des domaines que JustinCC jugent nécessaires d'être travaillés.&lt;br /&gt;
*Consolider le code de calcul des régions voisines (Scene, EntityTransferModule et IGridService ont tous un code 'détecter le voisin'). &lt;br /&gt;
*Nettoyer / éliminer la création de la liste des frontières et utiliser un code.&lt;br /&gt;
&lt;br /&gt;
(la suite n'a pas été traduite.)&lt;br /&gt;
&lt;br /&gt;
[[Category:French Translations]]&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Varregion</id>
		<title>Varregion</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Varregion"/>
				<updated>2015-01-10T12:38:24Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: fix typos --load-parcel should be --load-parcels&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{MainPageQuicklinks}}&lt;br /&gt;
&lt;br /&gt;
'''Varregion'''&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&amp;quot;Varregion&amp;quot; is a feature of OpenSimulator that enables region sizes larger than 256x256. The region is just larger so it acts like a regular region but with borders farther apart.&lt;br /&gt;
&lt;br /&gt;
The implementation uses the [http://aurora-sim.org Aurora] large region protocol extensions so the existing [http://firestormviewer.org Firestorm] and [http://singularityviewer.org Singularity] Aurora support will now work for OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
This is different from the older [[Megaregions]] large region feature which does not require extra viewer support (above that already implemented by Linden Lab) but which relies on a number of fragile hacks to make a viewer work in a way that Linden Lab never supported.  Megaregions also contain a number of extant simulator-side bugs.&lt;br /&gt;
&lt;br /&gt;
A growing list of protocol changes to implement &amp;quot;varregion&amp;quot; is at [[varregion/Protocol|Varregion Protocol]].&lt;br /&gt;
&lt;br /&gt;
==Restrictions==&lt;br /&gt;
Some restrictions apply:&lt;br /&gt;
* The dimensions must be a multiple of 256 and less than or equal to 8192.&lt;br /&gt;
* The dimensions must be square (as of 20131104)&lt;br /&gt;
* Adjacent regions must be the same size. For instance, you can have multiple 512x512 regions adjacent (and see into the other region and border cross). There seems to be a viewer problem where, if regions of different size are within view distance, crashes can happen. Consider having regions of only the same size 'in view'. Remember that the region coordinates are specified in 256m region count so a group of four 512x512 regions would be specified at 8000/8000, 8000/8002, 8002/8000, and 8002/8002, for instance.&lt;br /&gt;
* You must use BulletSim (as of 20131104, ODE has not been modified for varregions)&lt;br /&gt;
** You must use BulletSim's height map terrain implementation. As of 20140128, BulletSim has been modified to force heightmap terrain implementation if region size is greater than 256 on any side. The setting can be forced by adding to your INI files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[BulletSim]&lt;br /&gt;
    TerrainImplementation = 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Because there is a lot of terrain in a varregion, it can take a while for  the terrain to load into the viewer. You should set the following parameter so terrain is only loaded within an avatar's view distance and so the terrain is loaded from the avatar's position outward (rather than the 'lawn mower' pattern from the outside of the region:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[Terrain]&lt;br /&gt;
    SendTerrainUpdatesByViewDistance = true&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
The size is be specified in the &amp;lt;tt&amp;gt;Region.ini&amp;lt;/tt&amp;gt; file:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    [MyRegionName]&lt;br /&gt;
    RegionUUID = 95ec77ec-58c5-4ce2-9ff3-b6d1900d78a2&lt;br /&gt;
    Location = 1000,1000&lt;br /&gt;
    SizeX = 1024&lt;br /&gt;
    SizeY = 1024&lt;br /&gt;
    InternalAddress = 0.0.0.0&lt;br /&gt;
    InternalPort = 9200&lt;br /&gt;
    AllowAlternatePorts = False&lt;br /&gt;
    ExternalHostName = SYSTEMIP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If size is not specified, it will, of course, default to the legacy size of 256.&lt;br /&gt;
&lt;br /&gt;
If the given dimensions do not fit the restrictions, acceptable values are computed and warning and error messages are output into the log.&lt;br /&gt;
&lt;br /&gt;
If converting from a mega-region, remember to set &amp;quot;&amp;lt;tt&amp;gt;CombineContiguousRegions = false&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
For llRezObject to work beyond 256m set &amp;quot;ScriptDistanceLimitFactor = 512.0&amp;quot; (for 512mx512m) in the [Xengine] section of OpenSim.ini.&lt;br /&gt;
&lt;br /&gt;
The terrain heightmap is stored in the database as an array of 'shorts' (two bytes) so, if you have a very large region you might need to set the database maximum size to a larger value. For instance, a 2816x2816 region (11x11 legacy regions) turns into a 56 megabyte heightmap and, for MySQL, you would need to set &amp;lt;tt&amp;gt;max_allowed_packet&amp;lt;/tt&amp;gt; to something like 64M.&lt;br /&gt;
&lt;br /&gt;
==Loading Terrain==&lt;br /&gt;
The usual terrain console commands work with varregions. If you have set up a larger region, you can load BMP/RAW/PNG heightmap files of the dimensions of the region and fill the whole region. For instance, a 1024x1024 region terrain would be completely initialized by &amp;quot;terrain load 1024.bmp&amp;quot; if '1024.bmp is a 1024x1024 bitmap.&lt;br /&gt;
&lt;br /&gt;
==Varregions and OAR Files==&lt;br /&gt;
The objects and terrain are stored in an OAR file as if it was one region. That is, if you save a 1024x1024 region in an OAR file, you can later restore the objects and terrain into a 1024x1024 sized region. If you load an OAR file from a smaller region into a larger region, the unspecified terrain space will default to 25m.&lt;br /&gt;
&lt;br /&gt;
To make conversion to varregions easier, [[Load_Oar|load oar]] now has a '--displacement &amp;quot;&amp;lt;x,y,z&amp;gt;&amp;quot;' parameter. This displaces all of the objects and the terrain from the oar file when loading them into the new region.  For instance, say you have four OAR files from four adjacent 256x256 regions (oar00.oar, oar01.oar, oar10.oar, and oar11.oar). You create a new 512x512 varregion named 'bigregion'. The following commands place the four regions of objects, terrains and parcels&lt;br /&gt;
into the new larger region:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
change region bigregion&lt;br /&gt;
load oar oar00.oar&lt;br /&gt;
load oar oar01.oar --displacement &amp;quot;&amp;lt;0,256,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
load oar oar10.oar --displacement &amp;quot;&amp;lt;256,0,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
load oar oar11.oar --displacement &amp;quot;&amp;lt;256,256,0&amp;gt;&amp;quot; --merge --force-terrain --force-parcels&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the new &amp;quot;--force-terrain&amp;quot; and &amp;quot;--force-parcels&amp;quot; parameters. &amp;quot;--merge&amp;quot;, used by itself, is for merging together the objects from multiple OARs. Merging also suppresses the loading of terrain and parcel data which is just what you want when merging objects. But, if loading multiple OARs to create a new, larger region, the terrain and parcel information  must be loaded. Thus the new parameters.&lt;br /&gt;
&lt;br /&gt;
==Things Known to be Broken==&lt;br /&gt;
* There is some problem with teleporting in an out of larger region. It works for some configurations and not others.&lt;br /&gt;
* While adjacent regions are usually viewable, sometimes they are not. They appear when you cross over into the region.&lt;br /&gt;
&lt;br /&gt;
==Implementation Discussion==&lt;br /&gt;
Since this will be a major change to OpenSimulator that touches a&lt;br /&gt;
lot of different parts, subsequent posts, will discuss the changes I'm making.&lt;br /&gt;
&lt;br /&gt;
===TerrainData===&lt;br /&gt;
One major problem is passing the terrain data from the region to the&lt;br /&gt;
protocol stack. The existing implementation passed an array of floats&lt;br /&gt;
that were presumed to be a 256x256 array of region terrain heights.&lt;br /&gt;
The&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainChannel&amp;lt;/tt&amp;gt;&lt;br /&gt;
class is an attempt to hide the terrain implementation&lt;br /&gt;
from&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainModule&amp;lt;/tt&amp;gt;&lt;br /&gt;
.&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainChannel&amp;lt;/tt&amp;gt;&lt;br /&gt;
can't be passed into the protocol&lt;br /&gt;
stack (LLClientView) because&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainChannel&amp;lt;/tt&amp;gt;&lt;br /&gt;
is defined as part of&lt;br /&gt;
&amp;lt;tt&amp;gt;OpenSim.Region.Framework&amp;lt;/tt&amp;gt;&lt;br /&gt;
which is not visible to the protocol code.&lt;br /&gt;
&lt;br /&gt;
My solution is to create the&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt;&lt;br /&gt;
class in&lt;br /&gt;
&amp;lt;tt&amp;gt;OpenSim.Framework.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt;&lt;br /&gt;
just wraps the data structure for the terrain and additionally has&lt;br /&gt;
the attributes giving X and Y size.&lt;br /&gt;
&lt;br /&gt;
I didn't want to change the signature of IClientAPI since so many external modules&lt;br /&gt;
rely on it.&lt;br /&gt;
It should be changed to pass &amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt; rather than a &amp;lt;tt&amp;gt;float[]&amp;lt;/tt&amp;gt;.&lt;br /&gt;
I decided to not change IClientAPI but rather have &amp;lt;tt&amp;gt;LLClientView&amp;lt;/tt&amp;gt; ignore&lt;br /&gt;
the passed array and instead reach back into the associated scene and fetch the&lt;br /&gt;
&amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt; instance.&lt;br /&gt;
&lt;br /&gt;
There is one subclass of &amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt;: &amp;lt;tt&amp;gt;HeightmapTerrainData&amp;lt;/tt&amp;gt; which keeps the terrain as a compressed heightmap. The height of each point is stored as a &amp;lt;tt&amp;gt;short&amp;lt;/tt&amp;gt; which is &amp;lt;tt&amp;gt;height * compressionFactor&amp;lt;/tt&amp;gt; where &amp;lt;tt&amp;gt;compressionFactor&amp;lt;/tt&amp;gt; is usually &amp;quot;100&amp;quot;. This creates a compact storage of the terrain heights with two decimal points of resolution.&lt;br /&gt;
&lt;br /&gt;
The LLLP (&amp;quot;Linden Lab Legacy Protocol&amp;quot;) sends terrain height data in&lt;br /&gt;
compressed &amp;quot;patches&amp;quot; of 16x16 areas of the terrain&lt;br /&gt;
height. This is a protocol feature that is implemented in &amp;lt;tt&amp;gt;TerrainChannel&amp;lt;/tt&amp;gt;.&lt;br /&gt;
I feel that underlying protocol optimizations shouldn't appear up the&lt;br /&gt;
stack so, in creating &amp;lt;tt&amp;gt;TerrainData&amp;lt;/tt&amp;gt;, I tried to hide terrain patches.&lt;br /&gt;
I mean, someday terrain will be generalized meshes. Right?&lt;br /&gt;
&lt;br /&gt;
===Terrain in the Database===&lt;br /&gt;
Previously, terrain height maps were saved in the database as a blob of 256x256 doubles. To have different region sizes, that format had to change. There is an existing database field &amp;lt;tt&amp;gt;revision&amp;lt;/tt&amp;gt; that stored the time the terrain was saved. This revision information wasn't used for anything so this field was co-opted to contain a revision code for the height field blob.&lt;br /&gt;
&lt;br /&gt;
There are three forms for the height map blob: legacy, compressed2D and regular2D. &amp;quot;legacy&amp;quot; is, of course, the previous 256x256 collections of doubles. &amp;quot;regular2D&amp;quot; contains the X, Y dimensions and enough floats for that area's heights. &amp;quot;compressed2D&amp;quot; contains the X,Y and compressionFactor followed by enough shorts for the height map.&lt;br /&gt;
&lt;br /&gt;
The database readers and writers default to the legacy format and, if the region happens to have the dimensions 256x256, it is stored using the legacy format. This is an attempt to keep downward compatibility.&lt;br /&gt;
&lt;br /&gt;
All of the database modules (MySQL, SQLite, MSSQL and PSQL) have been modified to store terrain this new way.&lt;br /&gt;
&lt;br /&gt;
===Sensing Border Crossing===&lt;br /&gt;
Most of the ‘move to new region’ code is based on checking boundaries. There is much code related to computing if an object or avatar has crossed a region boundary and then computing the address of the next region from same. Introducing variable sized regions messes a lot of this computation up. That is, the code doing the arithmetic usually assumes it knows the address of the next region based on a known region size and them can compute the location of the next region based on that. With varregions those assumptions no longer hold. Varregion implementation means that the computation of region base locations and border locations moves to the GridService who is the entity who really knows the size of all the regions and what is adjacent to what.&lt;br /&gt;
&lt;br /&gt;
The realization that location to region computation is really a GridService operation lead me to totally rip apart the grid boundary checking code and replace it with two functions: &amp;lt;tt&amp;gt;Scene.PositionIsInCurrentRegion(Vector3 pos)&amp;lt;/tt&amp;gt; and then &amp;lt;tt&amp;gt;EntityTransferModule.GetRegionContainingWorldLocation(double X, double Y)&amp;lt;/tt&amp;gt;. The former function tests to see if the object/avatar has moved out of the current region and the latter gets the region moved into. (Side note: &amp;lt;tt&amp;gt;GetRegionContainingWorldLocation&amp;lt;/tt&amp;gt; should really be a function on &amp;lt;tt&amp;gt;IGridService&amp;lt;/tt&amp;gt; but that exercise is left for future hacking).&lt;br /&gt;
&lt;br /&gt;
These changes leave all the 'border' code in limbo -- the generation of the border lists is still there but it is not being used. This should eventually be cleaned up. Also, the computation of neighbor regions is scattered around with routines on &amp;lt;tt&amp;gt;IGridService&amp;lt;/tt&amp;gt;, in &amp;lt;tt&amp;gt;EntityTransferModule&amp;lt;/tt&amp;gt; and a bunch of bookkeeping in &amp;lt;tt&amp;gt;Scene&amp;lt;/tt&amp;gt;. This too should be cleaned up.&lt;br /&gt;
&lt;br /&gt;
==Implementation Notes==&lt;br /&gt;
&lt;br /&gt;
As of January 27, 2014, varregion is a feature of the 'master' repository branch.&lt;br /&gt;
&lt;br /&gt;
===Stuff to Work On===&lt;br /&gt;
What follows are notes I am making as things that might need work are found in OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* ITerrainLoader implementations (mostly done)&lt;br /&gt;
**	How to handle tiles.&lt;br /&gt;
**	How to handle large regions sizes.&lt;br /&gt;
**	Terrain/FileLoaders/*.cs all return an ITerrainChannel&lt;br /&gt;
**	Need to fix all the file reader/writers&lt;br /&gt;
**	FileLoaders/LLRAW.cs has several &amp;quot;256&amp;quot;s rather than constant references&lt;br /&gt;
* Teleporting: should be able to teleport to anywhere in a large region&lt;br /&gt;
** &amp;quot;MyRegion/550/687/40&amp;quot;&lt;br /&gt;
* HG code needs to allow addresses anywhere into large regions&lt;br /&gt;
* Need to look through RegionCombinerModule.cs and see what safety checks are needed&lt;br /&gt;
**	Maybe just prevent combination if not legacy region size&lt;br /&gt;
* In LSL_Api.cs, llEdgeOfWorld() does some neighbor computation. Check for ok'ness.&lt;br /&gt;
* LandManagementModule.SendParcelOverlay sends land sale/ownership info for 4x4m areas&lt;br /&gt;
**  Looks like it expects to send exactly one 1024 byte block (for the 256x256 legacy region&lt;br /&gt;
**  Check viewer code for what will happen for larger regions&lt;br /&gt;
**	New overlay types added&lt;br /&gt;
* LLClientView.SendMapBlockSplit() needs to have region size to send with the map info&lt;br /&gt;
* Region coords are sometimes 'int' and sometimes 'uint' with conversions EVERYWHERE&lt;br /&gt;
** pass over everything and convert region coordinates it 'uint's&lt;br /&gt;
** consider creating structures for world and region coordinates so there can be compile time checking&lt;br /&gt;
&lt;br /&gt;
====Viewer====&lt;br /&gt;
* LLSurface is wired to expect adjacent regions of same size&lt;br /&gt;
* Terrain surface image is sized with a 'static&amp;quot;: &amp;quot;    static S32  sTextureSize;               // Size of the surface texture&amp;quot;&lt;br /&gt;
* From FreeNode:#SingularityViewer 20131125:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Aleric&amp;gt; radams1, SianaGearz, frnic : I couldn't help myself doing a profile anyway..  The reason the viewer is slow is because it's busy &amp;quot;drawing&amp;quot; the terrain. &amp;quot;drawing&amp;quot; between quotes because my guess is that it is trying to draw ALL terrain and then clip that afterwards to the frustrum... &lt;br /&gt;
&amp;lt;Aleric&amp;gt; So, this could be greatly improved by disregarding terrain way way earlier when it is beyond the drawing range anyway.&lt;br /&gt;
&amp;lt;SianaGearz&amp;gt; OK&lt;br /&gt;
&amp;lt;Aleric&amp;gt; I disabled all rendering, even added a 'return' in terrain render&lt;br /&gt;
&amp;lt;Aleric&amp;gt; but.. no improvement of FPS!&lt;br /&gt;
&amp;lt;frnic&amp;gt; oops&lt;br /&gt;
&amp;lt;Aleric&amp;gt; LLSurfacePatch::updateVisibility() is still eating a lot of cpu.&lt;br /&gt;
&amp;lt;Aleric&amp;gt; LLSurface::updatePatchVisibilities does 97% of the calls to LLSurfacePatch::updateVisibility&lt;br /&gt;
&amp;lt;Aleric&amp;gt; which then spends most of it's time calling LLCamera::AABBInFrustumNoFarClip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Singularity commit for varregion: https://github.com/singularity-viewer/SingularityViewer/commit/ad8ea07a&lt;br /&gt;
&lt;br /&gt;
==Testing==&lt;br /&gt;
* Terrain/parcel operations&lt;br /&gt;
** Default 256 standalone region&lt;br /&gt;
*** Clean database. Start single standalone region. Verify 'pimple' region. Verify one parcel. Flatten region.&lt;br /&gt;
*** Create parcels adjacent to each edge and standalone in middle. Change names of each parcel and verify. Restart simulator and verify parcels exist and work correctly.&lt;br /&gt;
*** Save five parcel region as OAR. Clear database. Restart region. Load oar. Verify 5 parcels of correct location, name and features.&lt;br /&gt;
** Adjacent 256 standalone regions &lt;br /&gt;
** 768x768 standalone region&lt;br /&gt;
** Changing land from 256 to 768&lt;br /&gt;
* Teleporting&lt;br /&gt;
* Adjacency&lt;br /&gt;
* Hypergrid&lt;/div&gt;</summary>
		<author><name>Jak.daniels</name></author>	</entry>

	<entry>
		<id>http://opensimulator.org/wiki/Related_Software</id>
		<title>Related Software</title>
		<link rel="alternate" type="text/html" href="http://opensimulator.org/wiki/Related_Software"/>
				<updated>2013-02-20T16:38:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jak.daniels: Added link to another optional region module: OpenSimTide&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quicklinks}}&lt;br /&gt;
{{thirdparty}}&lt;br /&gt;
= Introduction =&lt;br /&gt;
This is a page which lists software packages that are related to OpenSimulator but are not part of the core project. Opensimulator is not responsible for the content referenced by these links.&lt;br /&gt;
&lt;br /&gt;
== OpenSimulator Viewers ==&lt;br /&gt;
See [[Connecting]].&lt;br /&gt;
&lt;br /&gt;
== OpenSimulator Distributions ==&lt;br /&gt;
See [[Download#Other_Distributions]].&lt;br /&gt;
&lt;br /&gt;
== OpenSimulator ROBUST replacements ==&lt;br /&gt;
These can be divided into projects that provide a completely replacement for the ROBUST services backend or can replace individual services.&lt;br /&gt;
&lt;br /&gt;
=== Complete replacements ===&lt;br /&gt;
* [https://github.com/openmetaversefoundation/simiangrid/commits/master SimianGrid] - A ROBUST services replacement which replaces the whole ROBUST stack with an alternative implementation based on PHP.  The necessary support for SimianGrid is included in core OpenSimulator.&lt;br /&gt;
&lt;br /&gt;
=== Individual service replacements ===&lt;br /&gt;
OpenSimulator services are architected such that an individual service (e.g. the asset service) can be replaced without having to upgrade other services.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/coyled/sras Simple Ruby Asset Service (SRAS)] - This is a replacement for the ROBUST asset service.  It stores assets on disk, does compression and deduplication of identical assets.&lt;br /&gt;
&lt;br /&gt;
== Web Interfaces==&lt;br /&gt;
See [[Webinterface]]&lt;br /&gt;
&lt;br /&gt;
== Addon Modules ==&lt;br /&gt;
These are either application or region modules which can be added to the OpenSimulator core distribution to provide extra functionality.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/aduffy70/Chat-Logger Chat-Logger] - An OpenSimulator region module to log chat traffic. Includes visitor alerts (when logging starts, stops, or new visitors enter the region) so the logging is transparent. Developed as a tool for meetings, training sessions, or educational environments.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/JakDaniels/OpenSimTide OpenSimTide] - An OpenSimulator region module which adds tides to your regions. You can control the tide period and height change via settings in OpenSim.ini and enable tide info to be chatted to the region for use in scripts in boats and waves. Tides only render properly on regions that are not adjacent, i.e. 1x1 islands.&lt;br /&gt;
&lt;br /&gt;
== Other OpenSimulator Forge Projects ==&lt;br /&gt;
{{content}}&lt;br /&gt;
OpenSimulator now has a [http://forge.opensimulator.org/gf/ forge] for related software. &lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/osinstaller OpenSimulator Installers]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/opensimwi/ OpenSimWi(Redux)]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/openterrains/ Open Source Terrain Textures]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/osraw/ Open Source RAW Terrain Textures]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/ostray/ OSTray]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/sllauncher/ SL Launcher]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/openusermanual/ Open User Manual]&lt;br /&gt;
'''todo''' list some of the top opensim forge projects.&lt;br /&gt;
&lt;br /&gt;
=== These are old projects that no longer appear to be maintained ===&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/deepservers/ DeepServer (ASP.NET Grid Server)]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/modrex/ realXtend Modules]&lt;br /&gt;
* [http://forge.opensimulator.org/gf/project/ogp/ OGP Patches]&lt;br /&gt;
&lt;br /&gt;
== Other related software ==&lt;br /&gt;
These are independent implementations of OpenSimulator services, such as the user server or the inventory server (also known as UGAI). &lt;br /&gt;
&lt;br /&gt;
* [http://www.ics.uci.edu/~lopes/terraingen/ Terraingen] - Tool for producing OpenSimulator terrains from USGS DEM files. &lt;br /&gt;
* [[RegionGenerator]] - Generates Region XML Files &lt;br /&gt;
* [http://www.secondinventory.com/ Second Inventory] - A Windows based client that can be used to back up and restore objects from Second Life™ as well as from various OpenSimulator based grids. It allows you to back up objects from the Second Life™ main grid, and restore them into OpenSimulator grids. It is still a bit primitive and sometimes can be flaky.&lt;br /&gt;
* [http://www.metabolt.net/ METAbolt] - METAbolt is a non-graphical (text based) viewer. It's light weight and cross grid, which means it will work in Second Life™ as well as other grids that are based on OpenSIM. The viewer is Open Source so it's free. Currently METAbolt is only available for Windows platforms. &lt;br /&gt;
* [http://3di-opensim.com/en/ 3Di OpenSimulator Enterpise] - Business service based on OpenSimulator. &lt;br /&gt;
* [http://3di-rei.org/ 3Di Viewer Rei] - Web Browser based Viewer. &lt;br /&gt;
* [http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?sl_proxy%20%28E%29 sl_proxy] - sl_proxy is a Proxy System for Second Life™ and OpenSimulator to beyond firewall. &lt;br /&gt;
* [http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?XoopenSim%20(E) XoopenSim] - OpenSimulator WEB Interface for Xoops Cube. This module was made by remodeling [http://forge.opensimulator.org/gf/project/opensimwi/ OpenSimWi(Redux)]. v1.55 supports 0.6.7/0.6.8/0.6.9/0.7.x, and it includes flotsam group function and [http://www.nsl.tuis.ac.jp/svn/opensim/opensim.osprofile/ modified osprofile] function.&lt;br /&gt;
* [http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?Modlos%20(E) Modlos] - OpenSimulator WEB Interface for Moodle-1.9. This is a sister program of XoopenSim.&lt;br /&gt;
* [http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?OpenSim%2FMoneyServer Money Server (NSL Version)] - This Money Server is modified version of [http://forge.opensimulator.org/gf/project/currency/ DTL Currency Processing] for Linux/Unix.&lt;br /&gt;
* [http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/?Rinions Rinions] - This is a real-time animation tool for Second Life™/OpenSim. Rinions sends animation data from Kinect to Viewer in real time using shared memory and over the Network.&lt;br /&gt;
* [http://www.mobilegridclient.com/] - Mobile Grid Client. A Second Life and OpenSim (Open Simulator) messaging client for your Android powered device (mobile phone, cell phone, tablet...).&lt;br /&gt;
&lt;br /&gt;
== Concepts ==&lt;br /&gt;
* [http://www.cs.cmu.edu/~johnny/projects/wii/ 3D Head Tracking Software] - The idea here is that Johnny has written an application that will allow real3d perspective using a WiiMote &amp;amp; a modified set of safety glasses. Johnny includes all of the source and several sample applications to get this moving forward. Would someone like to pick this up and build us a real3D interface for the SL browser? It's not as hard as you think.&lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Edusim Edusim on Opensim] - Edusim is a [http://en.wikipedia.org/wiki/Cave_Automatic_Virtual_Environment Cave Automatic Virtual Environment] based concept of lesson driven 3D virtual worlds on the ''classroom interactive whiteboard or classroom interactive surface''. Currently Edusim on Opencobalt Cobalt exists but tweaking a client and making Opensim &amp;quot;finger friendly&amp;quot; would seem to be a relatively straight forward task.&lt;br /&gt;
&lt;br /&gt;
= See Also =&lt;br /&gt;
* [[:Category:Development|Development]]&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>Jak.daniels</name></author>	</entry>

	</feed>