Second Life: New Forced Sit Coming

Yeah… sit down and be quite… probably a sentiment many of us feel in this political season in the USA. However, this new feature will only be a help in Second Life™. It is a new feature in the Linden Scripting Language (LSL), something I haven’t gotten to write about in some time.

A cute little butt to represent a new sit command? I suppose...

A cute little butt to represent a new sit command? I suppose…

Rider Linden was at the Beta Server user group meeting Thursday to let us know what’s in the works. It seems the Lindens are expanding the Advanced Experience Tools feature of Second Life. The idea of Forced Sit seems an odd feature to me, but the oddity comes from the name. Several people have a use for it and I rename it and describe it below. It is about way more than just sitting.

Rider says there will be some new functions that only work within Experience enabled scripts. You can get the full details of what is being envisioned in a Google Doc: Espeon: Forced Sits. (see WARNING below) Overview:

With the advent of Experiences Keys we would like to be able to allow scripts being run as part of an experience to force an avatar to sit in a particular location.  This feature will be useful in an adventure game scenario where an avatar is forced to sit in a trap so that it may sync its animations with the avatar, or in an amphitheater or classroom situation where a presenter wishes for all the other participants to remain seated. This document replaces the previous Scripted Sits document.

We will add at least one new LSL script function that will force an avatar to sit on a particular prim and make adjustments to the existing llUnSit() function to perform the counter action.

I’ll use an example from the game Obduction™, made by the people that made Myst™. They use this type of ‘forced sit’ in every game they have written. In Obduction there is a rail mounted car-type-machine you click on to ride/drive. Once you click a script takes over. It has the avatar open the car, enter, and sit. I believe this is what is being added to SL scripting, LSL – Linden Scripting Language. 

It goes beyond ‘sitting’. I think the function could better be described and seem less odd sounding as forced avatar positioning. But, all such positioning in SL is related to ‘sit’ commands. So, from a scripting point of view the name forced sit makes sense and fits the command into the correctly related place in the functions wiki.

Rider tells us there is a simhost running in ADITI with the code enabled and some test objects play with.

Having a sim where we can test this feature is a bit more complex than just going there and doing. This is Experience Enabled code. So, you gotta have an experience… the double entendre is not intended.

So, Caleb Linden, the sort of Godfather of ADITI regions, is thinking about creating a Snack Channel on ADITI for Experiences. Until then contact Rider Linden to have your ‘Experience’ added to the region.

So, which regions in ADITI? Rider says, Leafeon, Umbreon, and Sylveon. I am not clear if you have to be a member of the Beta Server group to enter these regions. If you find your access is restricted, contact Caleb Linden for access.

And the new function:

Function: integer llSitOnLink( key agent_id, integer link );

These methods mimic the behavior of the right-click “Sit Here” menu item.  The avatar specified by agent_id is forced to sit on the sit target of the prim indicated by the link parameter. If the specified link is already occupied the simulator will search down the chain of prims in the linkset looking for an available sit target (See “Sit Target Selection” diagram above.)

If successful, this method returns a value > 0 indicating the link number the agent was seated on. If the function fails it will return a negative error code from the following table:

  1. SIT_NOT_EXPERIENCE:
    The script is not running as part of an experience with a valid experience key.
  2. SIT_NO_EXPERIENCE_PERMISSION:
    The agent has not granted permission
  3. SIT_NO_SIT_TARGET:
    Unable to find an open sit target.
  4. SIT_INVALID_AGENT:
    Unable to find specified agent.
  5. SIT_INVALID_LINK
    Unable to find specified link or the link constant would return multiple prims.
  6. SIT_NO_ACCESS
    The avatar does not have access to the parcel that the prim running this script is located in.

More details are in the Google Doc.

WARNING: The document has been hacked on and some rude crude ugly porn graphics added. With any luck Rider will have removed them by the time you download it. But, that doesn’t guarantee it won’t get hacked again.

5 thoughts on “Second Life: New Forced Sit Coming

  1. One of the features SL has been waiting for long long time…

    I (and few others) actually needed this for a racing event, where physic matters the most. Asking people to sit was annoying and tiresome every time we had the events. When your avatar sits on something, it removes the physic runtime from you, thus lowering the CPU resources hog.

    Now it’s a bit too late, as the racing community died for other reasons.

  2. Looks like most roleplaying communities have already died, for their own reasons, and features like this come too little, too late.

  3. Pingback: Second Life Beta Server UG 2016 w38 – BUG-37692 | Nalates' Things & StuffNalates’ Things & Stuff

  4. Pingback: Second Life: News 2016 w41 | Nalates' Things & StuffNalates’ Things & Stuff

  5. Pingback: Second Life News 2016 w42b | Nalates' Things & StuffNalates’ Things & Stuff

Leave a Reply

Your email address will not be published.