OAR Format 0.8
From OpenSimulator
(→archive.xml) |
(→What is the OAR 0.8 format?) |
||
Line 8: | Line 8: | ||
This format is currently in the development version of OpenSimulator only. Please do not rely on it as the details are subject to change without notice. | This format is currently in the development version of OpenSimulator only. Please do not rely on it as the details are subject to change without notice. | ||
− | OAR format 0.8 is identical to 0.7 except | + | OAR format 0.8 is identical to 0.7 except for two changes. First, the region's Telehub (if it exists) is now saved. Second, some OARs with format 0.8 include a <region_info> element in archive.xml. |
== Detail == | == Detail == | ||
Line 36: | Line 36: | ||
</creation_info> | </creation_info> | ||
<assets_included>True</assets_included> | <assets_included>True</assets_included> | ||
+ | <region_info> | ||
+ | <is_megaregion>False</is_megaregion> | ||
+ | <size_in_meters>256,256</size_in_meters> | ||
+ | </region_info> | ||
</archive> | </archive> | ||
</pre> | </pre> |
Revision as of 22:17, 22 September 2012
Languages: |
English Deutsch |
Contents |
What is the OAR 0.8 format?
Changes
This format is currently in the development version of OpenSimulator only. Please do not rely on it as the details are subject to change without notice.
OAR format 0.8 is identical to 0.7 except for two changes. First, the region's Telehub (if it exists) is now saved. Second, some OARs with format 0.8 include a <region_info> element in archive.xml.
Detail
At the present time, a region archive is a gzipped tar file (tar.gz) in the the original unix tar format (not USTAR). This can be extracted and created with standard tools (7-zip on Windows). The structure of the archive is as follows
archive.xml assets/ landdata/ objects/ settings/ terrains/
archive.xml
This is the archive control file. It contains a major and minor version number, to allow compatibility with future format changes. It also contains an <assets_included> element which can have the contents True or False. If the string is True, then the OAR was saved with assets included. If the switch is False, then the OAR was saved with the --noassets option.
Here's an example of an existing archive.xml file
<?xml version="1.0" encoding="utf-16"?> <archive major_version="0" minor_version="8"> <creation_info> <datetime>1345003250</datetime> <id>47b709da-d64c-4b25-90f2-cb64a5245420</id> </creation_info> <assets_included>True</assets_included> <region_info> <is_megaregion>False</is_megaregion> <size_in_meters>256,256</size_in_meters> </region_info> </archive>
assets/
This directory contains all the assets in the archive. Each filename has the following format
<uuid>_<asset type>.<asset extension>
The uuid section must always be present and form a valid uuid - it is used directly as the uuid for that asset. The asset type and asset extension are used to identify the type of asset and the asset extension allows the asset to be associated with different editors on platforms such as Windows. For instance, a script will always have the asset type and extension script.lsl. A full list of asset types and extensions can be found in the file
OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs
in the OpenSimulator distribution.
In the future, the format of these files will be described in Asset Formats.
landdata/
This directory contains all the parcels in the region. Information for each parcel is stored in a separate file in XML format. Each filename has the form:
<uuid>.xml
where uuid is the uuid of the parcel.
objects/
Each individual file in here is an object in the region (where an object [linkset] can be composed of many prims). The file format used is OpenSim's XML2 format. Each filename has the following structure by default
<Object name>_<x>-<y>-<z>__<uuid>.xml
Unlike asset filenames, any component of this name can be changed without affecting any attributes of the object itself - this information is taken from the xml instead. Indeed, this file can have any name - there is no need for any of the sections to be present. An example object file name is
Primitive_154-121-062__9be68fdd-f740-4a0f-9675-dfbbb536b946.xml
The actual format is described (currently very sketchily) in Asset Formats.
settings/
This contains the region settings information for the region in XML format. The filename will be the same as the region name. For example,
OpenSimulator Test.xml
See an example of an XML region settings file below.
terrains/
This contains the terrain file for the region, stored in RAW format. The filename must end with .r32. For example,
OpenSimulator Test.r32
Region Settings Example
<?xml version="1.0" encoding="utf-16"?> <RegionSettings> <General> <AllowDamage>False</AllowDamage> <AllowLandResell>True</AllowLandResell> <AllowLandJoinDivide>True</AllowLandJoinDivide> <BlockFly>False</BlockFly> <BlockLandShowInSearch>False</BlockLandShowInSearch> <BlockTerraform>False</BlockTerraform> <DisableCollisions>False</DisableCollisions> <DisablePhysics>False</DisablePhysics> <DisableScripts>False</DisableScripts> <MaturityRating>1</MaturityRating> <RestrictPushing>False</RestrictPushing> <AgentLimit>40</AgentLimit> <ObjectBonus>1</ObjectBonus> </General> <GroundTextures> <Texture1>b8d3965a-ad78-bf43-699b-bff8eca6c975</Texture1> <Texture2>abb783e6-3e93-26c0-248a-247666855da3</Texture2> <Texture3>179cdabd-398a-9b6b-1391-4dc333ba321f</Texture3> <Texture4>beb169c7-11ea-fff2-efe5-0f24dc881df2</Texture4> <ElevationLowSW>10</ElevationLowSW> <ElevationLowNW>10</ElevationLowNW> <ElevationLowSE>10</ElevationLowSE> <ElevationLowNE>10</ElevationLowNE> <ElevationHighSW>60</ElevationHighSW> <ElevationHighNW>60</ElevationHighNW> <ElevationHighSE>60</ElevationHighSE> <ElevationHighNE>60</ElevationHighNE> </GroundTextures> <Terrain> <WaterHeight>20</WaterHeight> <TerrainRaiseLimit>100</TerrainRaiseLimit> <TerrainLowerLimit>-100</TerrainLowerLimit> <UseEstateSun>False</UseEstateSun> <FixedSun>True</FixedSun> <SunPosition>8.23999977111816</SunPosition> </Terrain> <Telehub> <TelehubObject>614af2ce-cbf7-45f5-906b-715b83bcba82</TelehubObject> <SpawnPoint>0,0,0</SpawnPoint> <SpawnPoint>-1.05136,-0.164772,4.29409</SpawnPoint> </Telehub> </RegionSettings>