Jump to content

Avatar Rotation


Medhue Simoni
 Share

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

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

Recommended Posts


Rolig Loon wrote:

You don't.  You cannot move an avatar with a script.  You can only move something that the avatar is sitting on or attached to.

You know, my coder friend was ranting about this, but I could not believe that it is true, hence why I posted the question. I agree completely with her now. In all these years, LL has not made this possible, yet they want people to make Experiences. It makes no sense from a game creation stand point.

What about hug scripts? Those move people, and they aren't sitting on anything. I'd have to check those scripts again, but I don't see how that is any different.

Or, maybe, I'm asking the wrong question. Like, maybe I should be asking how to move the camera. As I think that is really what she wants to do.

Link to comment
Share on other sites

A hug script is in an attachment.  You activate it, identify the "huggee", and the scripted attachment moves you toward her/him.

Now, I did tell a lie before.  You can move an avatar with a script, but only in an Experience or if you are moving the owner of the scripted object.  I do it all the time, using llTeleportAgent, which can teleport a person halfway across the grid or just a meter or less.  Somewhat less reliably, you can sometimes use its last parameter ( a vector ) to identify a direction that you want the avatar to face when teleported.  So, if your coder friend is writing something to use in an Experience, you might be in luck.  Even if your item is not meant to be used in an Experience, if it is always going to be used to move the object's owner, you can still use llTeleportAgent.  I have found that the rotation feature doesn't always work as expected, but haven't figured out why.

For copmpleteness, here's the full set of restrictions on that function:

  • This function can only teleport the owner of the object (unless part of an Experience).
  • Teleports are throttled
  • This function cannot be used in a script in an object attached using llAttachToAvatarTemp.
  • Sitting avatars cannot be teleported using this function. You must llUnSit them first.
  • This function does not override a parcel's teleport settings, i.e. if the parcel has a landing zone enabled the agent will be teleported there.
  • If the script is part of an experience that the avatar has granted permission, then this function may teleport them without being the owner and it will override parcel teleport routing.
Link to comment
Share on other sites

Ok, she tried using your suggestion, but it isn't working for what she wants. Here is what she asked me to ask more about.

"using llTeleportAgent is no good, a whole host of technical problems made it non useful. are there any other possible routes, perhaps with the use of third party viewers or software? We're trying to make a system for a combat game."

 

 

 

Link to comment
Share on other sites


Medhue Simoni wrote:

 are there any other possible routes, perhaps with the use of third party viewers or software? We're trying to make a system for a combat game." 

thats the only way to it reliably. Make a viewer mod specifically for the game

ideally you want to refactor the viewer to make a plugin system for it. So can add other inbuilt functions, like huds, movements, windlights, etc for a specific game

quite a few people have had a look at doing this. but is a lot of work. So not much ever came of it. For public release anyways

some people tho have homebrews for own use that can do some of these things

+

is possible that can make RLV do this. With some other own mods as well

+

as for why not. I think LL never gave us llRotateAvatar bc cheaters. Being able to turn (and move) avatar can mean automated shooters

Link to comment
Share on other sites

There is also llPushObject, but it is  a bit hit-and-miss (sorry). You can specify a force as a vector, and an angular component,( which I have yet to try). In terms of precision, forget it. However, they do not need to be sitting on a prim or wearing any special attachment.

What I have been able to do using it is move an avatar outside of a blue police box when they arrive inside it from a remote Tardis interior by detecting them colliding with the interior floor pad, opening the doors, applying a push in the appropriate direction to send them outside the doors, and then closing the doors.

Using a value calculated from their mass times an emprically-established factor I was able to move them 2 metres, but when establishing the factor I noticed that under a certain value the push didn't move them at all, and then when they did start to move it was with a bit of a rush. Too much, and they actually went through adjacent prims. Trying to move them 1.2 metres so they were just outside the doors was impossible to achieve with any sort of repeatability.

 

ETA I also have a memory of when first trying to use this in something else, finding that the script object doing the push has to belong to the parcel owner. I assume this is an obvious anti-misuse policy.

Link to comment
Share on other sites

I think there is hope. If the experience tools could force the avatar to sit on an object, it would not be the perfect solution but could make a lot of what your scripter wants possible.

Examples from Loki Eliot who is pushing a lot for this feature: https://community.secondlife.com/t5/Experience-Tools-Forum/Pleaze-can-he-has-llSit/td-p/2803464

There is a feature request in the JIRA that needs some support: https://jira.secondlife.com/browse/BUG-7120

Inara Pey mentioned in a blog post that during atheSimulator user group meeting on Tuesday, August 11th, the Lab said that they are considering new functions for experience keys and llSit is mentioned.

http://modemworld.me/2015/08/11/sl-project-updates-331-server-viewer-experiences/

So, if you guys like that idea, support the feature request Jira (link above) by following it and tell the Lindens about it. This is something with a realistic chance of being implemented and it would enable creators to do so much more with experience keys, for example moving/rotating/animating an avatar.

 

Link to comment
Share on other sites

Because Simon is looking into quick-win enhancements to Experience tools, force-sit is a topic at every recent Server User Group. It has a lot of support, but there are some complexities:

  • Should it be limited to Experiences only, or should it be a permission that other scripts can request?
  • Should existing Experiences be able to do it without requiring a fresh permissions grant from existing participants?
  • Should llSit() users be able to use the usual Stand control to unseat themselves? (Probably yes.)
  • Should already seated avatars be subject to force-sitting somewhere else? (I just thought of that one.)
Link to comment
Share on other sites

i think that many of the things we cant do in normal LSL (basically bc greifing) we could do in Experiences LSL
 
ones I think will make games/experiences more immersive are, with some use examples:
 
1) rotate avatar. can keep a running/escaping/pursuing avatar in a pathway
2) allow/stop movement style. user can/cant override: fly, jump, run, walk, or click teleport / move
3) force mouselook/normallook
4) allow/disallow communication window in mouselook
5) force sit object/ground. capture
6) force rotate and push on unsit. On unsit can "fire" avatar in a direction. Soft for furniture. Harder for catapult
7) freeze avatar for some time. for capture/death
 
+
 
to answer Qie. Can a experience force sit avatar on a sequence of objects? Yes imo
 
+
 
i also think that while some considerations can be given to normal LSL, I think that Experiences LSL should be treated as a whole separate thing, and as much as possible be allowed
 
bc LL enforcers can kill a Experience anytime they have to, and land owner can kill it also
  
Link to comment
Share on other sites

Thanks everyone for all the help. We are using Firestorm now, with RLV, and that seems to make my coder friend happy. I'm not so keen on players having to have to use Firestorm and RLV, as we are adding 2 more obstacles for users to jump over, but she(the coder) thinks this feature is a must. Not sure if I can mention it, but it does add some compelling game play situations. I, believe it or not, generally trusts my coder, and I want her to make the game her own, so I'm along for the ride. lol

Thanks again everyone that commented.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 3157 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...