IslandzVW / halcyon

InWorldz Halcyon 3d virtual reality world simulator
BSD 3-Clause "New" or "Revised" License
21 stars 26 forks source link

Add Support for Inventory Archive #10

Closed zauberparacelsus closed 6 years ago

zauberparacelsus commented 9 years ago

I'm adding this as support for Inventory Archives (IAR files) is something that will be requested, and it is something that would be useful for open grids, where users may wish to transfer their inventory. One of the stated goals for Halcyon was that people running desktop sandboxes would be able to sync builds to and from InWorldz (or other grids), and IAR could provide a useful medium.

Though, obviously there would need to be some checks in order to cull objects based on creator and perms (export perms in particular). That, and perhaps it could be implemented in a way that does NOT require users to give out their plaintext password.

Vinhold commented 9 years ago

For Discussion: The IAR process is only one that the grid owner can use as it is a server side access only for all the stuff I have worked with. I am not sure that I would be all that interested in having people able to use that to export and import content in my world. Alternatively, FireStorm has the item backup and upload of any content which you are the creator. For my purposes I limit that by placing a price on the options to upload and create groups. Students and guests are not given any money and thus may not upload any content, group membership blocks rezzing anything or allows it if that is the intended actions granted to them. Thus while I do not have any sales or economy, I can use the money controls to manage who has access to options that would otherwise distract from the purpose of my world for school and educational development.

zauberparacelsus commented 9 years ago

Although Firestorm's export is a huge leap above XML export, it is still highly limited, for example: it does not support mesh export at all. For mesh, you have to manually re-upload it, retexture it, and reconfigure its scripts, animations, other contents, etc.

Vinhold commented 9 years ago

The firestorm backup can store content using the Save as, Collada which is supposed to work for mesh content you created. Though it seems a bit strange to me that if you had the source files to begin with why you would need to back them up this way. I have seen it used to export prim structures for editing into mesh objects to be imported again. One Question: Does the IAR export only contain the contents of the person making the export for which they are the sole creator? I thought it would take all that was in the region.

ddaeschler commented 8 years ago

I have import/export tools in progress that will meet this requirement. See https://github.com/InWorldz/halcyon-import-export

kf6kjg commented 6 years ago

See the above linked external tool for import/export functionality - and possibly help write documentation for it! :D

kf6kjg commented 6 years ago

Issues I've seen with IAR support for future reference:

  1. In order to create a full IAR without losing who the creator is the file has to store the creator's identity. Since avatar IDs change from grid to grid, and not everyone with the same name is the same person there's a quagmire for grid-to-grid IAR transfer. See https://justincc.wordpress.com/2009/09/25/preserving-content-creator-credit-in-opensim-iar-transfers/ for details. Yes, I know OARs have the same problem, hence the best use is in such rare circumstances as when InWorldz was shut down and things had to be rescued. But even then even if IARs had been working they likely wouldn't have been taken because of the load as noted below.
  2. It's REALLY had to make a consistent IAR. You have to recursively handle the inventories of each item in the inventory as the prim inventory is just a reference to another asset in the asset server. This will take a lot of time and produce so much load on the asset server that it'll likely degrade people's experience on the grid. Yes, even OARs have this problem, hence when InWorldz went down and OARs were taken people had to rez what they wanted to keep using the heuristic of "if it can rez, rez it; if not, put it in a rezzed object."
  3. Support for backup of user inventory really doesn't belong as part of a region/simulator's processing. It should be an external tool accessed by a management website.

IIRC there are more issues with the subject.