Jump to content

Should llStartObjectAnimation be allowed to take a UUID?


animats
 Share

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

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

Recommended Posts

When an avatar sits on an object, it becomes part of the object's linkset, and the object can apply animations to it. Animesh can't "sit". So they lack a way to get access to and run a sittable object's animations.

So, a proposal:

If an animation has Copy/Mod/Trans permissions, then llGetInventoryKey will return its UUID. But there's not much you can do with that UUID,a as far as I know. With a texture, if you have the UUID, you can set that UUID as a texture anywhere in SL. But for animations, llStartObjectAnimation only accepts a name in the object's inventory. It does not accept a UUID.

So, what if it did accept a UUID, the way llSetTexture does? Then an animesh and a sittable object could communicate; the sittable object could tell the animesh what animations to run.

The question is, are there major security objections to this? llStartObjectAnimation only works for animesh, so this doesn't let avatars do anything new.

My interest is in animesh NPCs. I'm trying to get them to do more of the things avatars can do. They can't sit. With a cooperating script in a sittable object, and this minor change, we can make that possible. Comments?

 

  • Like 1
Link to comment
Share on other sites

i get what you are saying from a builder's perspective

if there were to be a change, I think that rather than LL coding up a workaround for what I think is an intermediary situation looking for a temporary fix, when I think also it would be more useful to builders for LL to spend the time working on a animesh sit  (link/unlink to an inworld object) in the same way avatars do  

Edited by Mollymews
removed a speculation that is unaswerable
Link to comment
Share on other sites

This is kinda a kludge, but if you have Copy/Trans permissions on the animation asset, could you send a copy to the NPC via llGiveInventory (along with a chat of the asset's name) ? When the NPC receives the inventory item and name, it can then operate on its own local copy and discard when finished.

Edited by Fenix Eldritch
  • Like 3
Link to comment
Share on other sites

8 hours ago, Mollymews said:

i get what you are saying from a builder's perspective

if there were to be a change, I think that rather than LL coding up a workaround for what I think is an intermediary situation looking for a temporary fix, when I think also it would be more useful to builders for LL to spend the time working on a animesh sit  (link/unlink to an inworld object) in the same way avatars do  

Animesh sitting is going to require some cooperation between the animesh and the sittable object. It's not likely to work on existing sittable objects. There's no "Sit" cursor, and animesh can't answer dialogs. It's also a big job for the LL devs, and they're overloaded. If LL wants to take this on, that would be nice, but it seems unlikely right now.

However, if we had minimal support in LSL, which is what I'm asking for here, open-source AVSitter and similar code could be modified to use it. Then anything which uses an updated AVSitter could accept animesh. Someone has already done something like this as a mod to AVSitter, but the sit animations have to be in the animesh. So it's a short step to making it work in a general way.

Link to comment
Share on other sites

4 hours ago, Fenix Eldritch said:

This is kinda a kludge, but if you have Copy/Trans permissions on the animation asset, could you send a copy to the NPC via llGiveInventory (along with a chat of the asset's name) ? When the NPC receives the inventory item and name, it can then operate on its own local copy and discard when finished.

Now that's a good idea. The animesh will need to enable llAllowInventoryDrop. The animesh sends a message to a sittable object that it wants to sit there. The sittable object replies with a sit target, an animation name, and uses llGiveInventory to give the animesh a copy of the animation. The animesh gets a "changed" event with the CHANGED_ALLOWED_DROP flag. Then it has to examine its inventory for new stuff, possibly discarding any unwanted new items. It finds the new anim. It moves to the sit target. It plays the new animation. Now it's sitting on the sit target with the proper animation. Right.

You don't get the link of a real sit, so it won't work for vehicles. But it's enough for the basics. Thanks.

Link to comment
Share on other sites

7 hours ago, Fenix Eldritch said:

This is kinda a kludge, but if you have Copy/Trans permissions on the animation asset, could you send a copy to the NPC via llGiveInventory (along with a chat of the asset's name) ? When the NPC receives the inventory item and name, it can then operate on its own local copy and discard when finished.

i really like this. Is a good solution

Link to comment
Share on other sites

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

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

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...