Various Permissioned NFT 3d Assets
We will need to develop a broad range of NFT smart contracts to handle not just the variety of virtual assets but to provide creators with a broad range of terms of use for users. In Second Life and Open Simulator, creators are used to the 3-4 types of next-owner-permissions: Copy, Mod, Trans and Export (OS only).
Copy: This allows owners of an asset to duplicate the asset.
Modify: An owner of an asset can modify it in limited ways. For instance, objects made of one or more Prims in a linked set can edit the prims as well as changing the texturing and coloring of the prims, their position and rotation and scale. Modifiability is more limited with uploaded mesh, largely because there is no facility to edit a mesh's vertexes, edges, and faces, or to alter their assignment to various materials for texturing, though the owner can alter what textures are assigned to each material.
Transfer: An owner of a transferrable asset can give or resell the object to others.
Export: In Open Simulator, which is made of many grids connected by the Hypergrid, Export permission allows the asset to be moved from the grid of origin of the asset to other grids.
These four basic permissions work together in different ways to behave as effective contracts. There are four that are most prevalent:
Full-Permed, Non-Exportable: This allows the owner to copy, modify and transfer their asset to others on the same grid. Some grids may allow the owners to export the objects in OAR or IAR files for transfer to other grids if the owner is moving their region, though as specified elsewhere, the persistence of next owner permissions via OAR and IAR files is problematic.
Full-Permed, Exportable: This allows the owner to copy, mod, transfer and export the asset. This is a true open sourced virtual asset.
Copy/Mod/No-trans: This allows the owner to copy and modify the asset, but not transfer it to others or alter the next owner permissions. These may be set to non-export or export. Exportability of course leads to various problems with persistence of these next owner perms in current versions of Opensim. This license type is for objects that are not high value/high demand but may be used in many locations by the owners and need slight modification in texturing and scale.
No Copy/ No Mod/ Trans: This allows the owner to use the object as intended by the creator, and to transfer the object to others, but not alter or duplicate the object. This is the typical permissions used in extant NFT assets currently in the crypto space. It is used by creators in Second Life and Open Simulator for items intended to be scarce and valuable, usually because they require a large amount of work to develop, and there is high demand for these assets and so can command high prices.
Exportability Problems: as mentioned earlier, when a person can export an object from their grid of origin to another, the possibility exists they may use it on a grid on which they, or others, may abuse "god powers" to alter next user permissions. This is a semi-legitimized ability that is inherent in the current way that Open Simulator works which violates IP law, and is the cause of a common (and not unwarranted) belief among Second Life users that Opensim is "full of copybotters and rippers". Copybot is an illicit software used to copy content by IP thieves. It is still used by custom griefer viewers like Hydrastorm, but is unnecessary to steal content when someone can set up their own opensim grid, connect to the hypergrid, and bring in content obtained elsewhere, and modify the next owner perms with grid owner 'god mode' mod powers.
This is the reason why we are proposing a blockchain based asset system that is a common asset system for all opensim grids, and other metaverse platforms that adopt the same standards. Grids must not have god powers over content outside of any blockchain based, juried system to resolve disputes over original creator IP claims.
There are additional secondary permissions related to copy/mod/trans that empower others to manipulate objects they do not own. They are:
Move: others may move the object from its position to another location in the region or across region boundaries if a grid operates adjacent regions.
Copy: An object that is both copy and trans may be set to be copied by others, or set to copy by the original creator with out having those next-owner permissions set.
Touch: When another user clicks on an object with their mouse, touch pad, or VR controller, they can trigger various results based on how it is set by the owner including:
- Buy: An object set for sale can be bought with a click for the price specified, typically in the grid-only money. The owner can set the price in a field on the object edit dialog.
- Sit: An object set to be sat upon will cause a person who clicks the object will sit their avatar on the object, usually in a given position and orientation.
- Copy:
- Touch: Clicking on an object is an event that can trigger a response by a script residing in the contents of the object. The response can be broadly ranged given the many types of functions under LSL/OSSL functions available.