Experiences in Second Life

 

What is an experience?

In Second Life terminology, an experience is a set of avatar interactions created by one or more scripted objects.  With an experience key, creators can build their experiences so that a user only needs to grant avatar permissions once for the entire experience rather than separately for each scripted object within it.  These permissions allow the experience to animate your avatar, attach items to your avatar, track your camera, control your camera, teleport your avatar, and alter your movement controls.

For example,  Linden Realms regularly requires permission to teleport your avatar and attach objects to your avatar and HUD.  Rather than asking permission each time it needs to perform one of these actions, it uses experience permissions perform the required actions as many times as needed without pausing while you respond to each permission request.

Video introduction to experiences

 

How to participate in an experience


Most experiences automatically prompt you to join the experience the first time you interact with them.  When this happens you receive a notification informing you of the permissions you will be granting to the experience, and four possible responses:

  • Yes - Grants permissions to the experience and allows it to act upon your avatar without asking for permissions again.  After you click Yes, the experience does not need to ask for permissions again until you explicitly leave the experience.
  • No - Temporarily deny permissions to the experience.  The next time you interact with the experience, it may ask for permissions again.
  • Block Experience - Permanently deny permissions to the experience.  It will not act on your avatar, and will not ask for permissions again.
  • Block Object - Blocks the specific object that asked you for permissions, and temporarily denies permissions to the experience.  That object will be muted and will not ask you for permissions again, but other objects in the experience may still request permissions when you interact with them.

 

Allowing a specific experience

If you know the name of an experience you would like to join, you can allow permission without first having to interact with any of its scripts:

  1. Choose Me > Experiences... from the top menu bar.  The Experiences window opens.
  2. Click the Search tab of the Experiences window.
  3. Enter part or all of the name of the experience into the search field, then click the Go button.
  4. Find the name of the experience in the search results, click it, then click the View Profile button at the bottom of the Experiences window.  The Experience Profile window opens.
  5. In the Experience Profile window, click Allow to allow permissions for that experience.
Tip: If your Moderate or Adult-rated experience does not appear in the search results, it may be getting filtered from search results by content rating.  Make sure the Max Content Rating dropdown is set to the correct content rating before searching.

How to leave an experience

 To leave an experience by revoking its permissions, you may either Forget or Block it:

  1. Choose Me > Experiences... from the top menu bar.  The Experiences window opens.
  2. Click the Allowed tab on the Experiences window.
  3. Find the name of the experience you wish to leave, and click its name.  The Experience Profile window opens.
  4. In the Experience Profile window, click either Forget or Block.
Tip: If you choose to Forget an experience, it may ask for permissions again the next time you interact with it.  If you choose to Block it, the experience cannot ask you for permissions again until you unblock it on the Blocked tab of the Experiences window.

Reporting abuse by an experience

We take abuse very seriously.  If you feel an experience has been abusive or has malicious intent, you can click the Report Abuse button in the Experience window (accessed by choosing Me > Experiences from the top menu bar).  A screenshot, object owner, and the Experience Key are automatically filled into the report.  You may also add a summary or details of the abusive behavior in the highlighted field.

For more information on how to file abuse reports, see Filing an abuse report.

 

 

How to create an experience

In order to create an experience, you must first obtain an experience key from Linden Lab.  Experience keys uniquely identify your experience and allow you to use the powerful experience functions in LSL.  Abusive experiences may also be reported by experience key, allowing Linden Lab's customer support team to investigate and manage the situation accordingly.

Experience keys are only available to Premium members.  To acquire a key you must have an experience-enabled viewer, such as the official Second Life Viewer.  In the Second Life Viewer:

  1. Choose Me > Experiences from the top menu bar to open the Experiences window.
  2. Click the Owned tab.  
  3. Click the Acquire an Experience button.
  4. Once acquired, you can see your new Experience under the Owned tab of the Experiences window.

For more information, check out the Experience Tools forum to see what our early adopters encountered and had to say.

Editing an experience profile

Once you have an experience, you can view by choosing Me>Experiences>Owned from the top menu bar. As the owner, this experience will also be present in the Admin and Contributor tabs. You can edit the experience profile by clicking on the experience name in the list, then clicking on the Edit button, which is visible on the profile. Only the experience owner can change the group associated with an experience, but all other editable fields may be set by any experience administrator. The Name and Description fields should meet the requirements for a  G rating and are filtered for objectionable words.

Enabling an experience

An experience may be enabled at the estate level or the parcel level by adding it to the Allowed list for the estate or parcel. Estates also have Key Experiences which are similar to Allowed in that the experience may run on the estate but provide some additional tools for non-public estates. When an experience is set to Key for a private estate, Residents who have opted in to the experience may enter the estate, and remain in the estate as long as they continue to participate in the Experience. Additionally, if the Resident attempts to teleport into the estate without participating in the experience they will receive a notice that informs them they are not allowed to enter the estate.

Key Experiences and estate access

Note that Key Experiences are searchable by the public and override normal estate access settings; anyone participating in the Key Experience can visit the experience's Estate, regardless of estate's access settings.  For this reason, we recommend that developers of Key Experiences run their experiences as Allowed while testing in order to maintain privacy.  Allowed experiences do not override Estate access lists, an can be set to Key when they are ready for public participation.

 

Experience collaboration

To enable others besides the experience owner to create scripts for the experience, the owner can set a group in the experience profile. Anyone in that group with the Experience Contributor power can then create scripts for the experience. Additionally, anyone with the Experience Admin power can update the profile (with the exception of the group). Use caution when assigning a group to an experience as anyone who can assign powers to members effectively has the ability to control who can contribute to the experience.

 

LSL features

The experiences introduce several new LSL functions, events and constants that allow creators to manage permissions and interact with a database in order to store information.  The list of new LSL calls and code examples can be found on the Second Life wiki at: http://wiki.secondlife.com/wiki/Category:Experience_Tools.

LSL scripts must be specifically compiled for an experience in order to make use of experience-related LSL functions.  The bottom of the LSL editor in the Second Life Viewer includes a checkbox for Use Experience and a dropdown for selecting which of your experience keys you wish the script to use.

Key Value pairs

In addition to the permissions request feature, Experience Tools allows experience creators to write scripts that can store persistent key-value pairs to support their experience logic.  For example, key value pairs allow experience scripts to store experience-related data (e.g. health points, experience points, quest status, etc) in key-value pairs associated with their experience.  For specific usage information, see the Experience Tools category on the Second Life wiki: http://wiki.secondlife.com/wiki/Category:Experience_Tools.

Adding an experience to a script

When you open the script editor there is a checkbox labeled Use Experience. When checked, a dropdown menu appears with a list of experiences which you can contribute to. Adding, removing or changing the experience requires saving the script. You can open the profile of the selected experience by pressing the arrow button next to the name of the experience.