Jump to content

i would like to clarify something about UUID Please


You are about to reply to a thread that has been inactive for 231 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Dear Scibblers and scripters,

I just to clarify something I was told in a scripting group  in world in regard to UUID. I was told I could no longer rely on UUID being valid as they get re-assigned from inventories . I had to use names instead this means i have to put my animations in my build not in my inventory and use UUID. Is this correct or have you heard this being said?

Link to post
Share on other sites

For "unique" (no-copy items) UUID is stable. For "copy" items, each new instance gets a new UUID. UUID does not get "reassigned", rather a new UUID value is created and the new instance is given that value.

If LL is now "reassigning" UUID's...*shrug* stop using them.

Link to post
Share on other sites

There has been no change to how UUIDs work in SL that I am aware of.

There are several different kinds of UUIDs, some of which can change under certain conditions. See http://wiki.secondlife.com/wiki/UUID.

Inventory items are just wrappers which point to the actual asset UUID. The asset UUID only changes if the asset itself has been modified... well technically, assets are immutable (cannot be changed) so what's really happening under the covers is that you're creating a new asset every time you edit it. For example, whenever you update the contents of a notecard and save, you are creating a new notecard with a new asset uuid. Objects that can be rezzed in-world are a different beast as well.

As far as animations go, once you upload it, that's it. The asset UUID won't change because you can't edit it further (renaming it or changing the permissions don't count because that's editing the inventory item wrapper, not the actual asset itself). I've verified this just now, by taking a full perm animation in my inventory, noting the UUID and then making copies, renaming them, changing their permissions, transferring them to an object's inventory and making similar edits to those copies. In all cases, the UUID reported by the "Copy Asset UUID" viewer function or a script with llSay(0,(string)llGetInventoryKey(llGetInventoryName(INVENTORY_ANIMATION,0))); all report the same unchanged asset UUID.

But all of this is moot, because you cannot start/stop an animation by its UUID anyway. You must use the inventory item name, which means the animation must be in the same object as the script trying to use it. The sole exception to this are the built-in internal animations listed on the wiki.

  • Like 4
Link to post
Share on other sites
You are about to reply to a thread that has been inactive for 231 days.

Please take a moment to consider if this thread is worth bumping.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...