OpenSim Archives

From OpenSimulator

Revision as of 23:54, 23 July 2008 by Sun (Talk | contribs)

Jump to: navigation, search



This is currently a highly experimental function which has existed since r5469 (post 0.5.8). Basically, it does a similar job to load-xml2/save-xml2 in that it saves prims so that they can be later reloaded. However, OpenSim archives go a step further in that they can save all the necessary asset data to fully restore the terrain, the textures of objects and their inventories when loaded onto a completely different system using a different asset database.


From the region console, one can type

save-oar [<filename>]

to save an OpenSim archive. If no filename is given, then the name scene_oar.tar.gz is used

To load an archive, type

load-oar [<filename>]

at the console. Currently by default, loading an archive will delete all the objects in the scene and replace them with the archive contents. It's like being in the Matrix (when they swap environments), except much slower (all the scene objects are slowly deleted before the new environment is loaded :-)


scene_oar.tar.gz - justincc's very basic environment containing a few prims, one script and a big chasm (see preview).

Please feel free to place links to other environments here, though unfortunately you'll have to host them on some other site.

Use cases

I wouldn't actually rely on these at the moment. But possible current uses are

1. To migrate data from an SQLite region database to one based on MySQL

2. To distribute entire regions to other people.

Current limitations

  • When an archive is loaded, all objects end up being created/owned by the master avatar for that region


1. What is this .tar.gz format you are using? Why not zip?

.tar.gz is a standard unix way of zipping up files into a single larger compressed file for distribution. Windows users should be able to open these files using freeware programs such as 7-zip.

I'm using .tar.gz because all the zip (and tar) libraries for .net are licensed either under the GPL (with exception) or under the MSPL. Unfortunately, not all members of the OpenSim development team are comfortable with the MSPL, so these libaries are not currently an option. It is also significantly easier to write code to create and read tar archives than zip archives.

At the moment the only tar archive type that can be read is the original unix tar format (not USTAR).

2. What is the layout of an OpenSim archive?

More details on this soon.

3. Can you load and save multiple regions to an archive?

Not yet.

4. Can you load and save parts of a region to an archive?

Not yet.


  • There may be a problem importing some linked objects. These will appear fine in the viewer when initially imported, but disappear once the server is restarted. This needs investigation. Archives such extremely simple examples of the problem (very few objects and objects with only a few linked prims) would be appreciated.
  • Sometimes, not all scripts start when an archive is loaded. Example archives with the problem would be appreciated.
  • Due to a possible bug in the Mono 1.2.4 libraries, this feature may cause a debug dump when used (the problem appears to be in writing out a compressed stream). Mono 1.2.6 is okay. Since Mono 1.2.4 is fairly old now, I don't intend to address this bug.

Current Status

Highly experimental. I've (justincc) only tried it myself in very limited situations, so Mantis feedback and suggests would be appreciated.

Please don't rely on these archives to permanently backup your regions, though if they are in sufficient use, I hope to maintain compatibility with older archive versions.

Personal tools
About This Wiki