Want to Help Make SL a Better Place?

Hello! Thank you for taking the time to read this page face-smile.png LindenLabs is going to be imposing scripting limits that could drastically effect items we use every day from resizers, to the HUDS that color our attachments. In order to compensate for this and help reduce the need for those limits, scripters need better and more efficient tools to work with.

Below is a list of JIRAs for improvements that would drastically help scripts keep server load low and improve our "Second Lives."

Please Vote!! Show your support for them to LindenLabs!
If you are logged into the JIRA, you can use the "Quick-Vote" links to vote with one click!

You can find out how to use the JIRA by viewing Torley Linden's JIRA tutorial here

JIRA List: (A brief, user-friendly explanation for each follows)

Title: "llSetLinkListPrimitiveParams() for setting multiple, specific linked items"

Quick-Vote Link

Description: Right now, content creators need to use a lot of script power when they need to change several prims in an object , but not the ~entire~ object (for things like color, transparency, texture, glow, etc). Currently, it's an all-or-nothing deal. They can set one prim, or they can set all of them, but not ~some~ of them. To do that they have to go through and set the prims one by one, which is intensive for the region running the script, and is often slow anyway. This JIRA proposes a function that would allow scripters to set those features all at once, quickly and easily, and far decreasing sim lag!

Title: "llSetObjectScale and llGetObjectScale"

Quick-Vote Link

Description: This JIRA proposes two new functions, that would allow scripters to get the size of a whole object and set it! Scripters have ~no way~ of doing that currently, and are forced to do so by having a script in ~every single prim~, which is extremely heavy for servers that use them! With these functions it would be possible to cut out all of that work and get the job done quickly and with only ~one~ script!

Title: "llSetLinkGlow & llSetGlow"

Quick-Vote Link

Description: Glow was and is a wonderful feature that has provided many excellent building opportunities. In LSL, we have functions for specific parameters dealing with prim properties, like llSetColor, llSetAlpha, llSetLinkColor, and llSetLinkAlpha. These functions, unlike llSetLinkPrimitiveParams, do not have a 0.2 sec delay in the script each time they are used, making them useful where a number of changes are needed on a prim without a delay. Unfortunately, the only way to change glow via script is through the PRIM_GLOW constant that is now available for llSetLinkPrimitiveParams. This JIRA proposes the functions that were (quite honestly) expected to come along with glow at the very beginning of its introduction. Using these "dedicated" functions would help decrease script time in comparison to using the "heavy" function of llSet/(SetLink)PrimitiveParams (hence why it has a built in delay), and would help many builds since the most common use would be to turn off glow when prims are set to alpha using llSet/(SetLink)Alpha.

Title: "Create: attach_message event & accompanying functions ( llMessageAttached )"

Quick-Vote Link

Description: Currently, avatar makers need to have all of their attachments listen on a channel to be controlled by HUDs (the controls you sometimes wear on your screens to change colors or various other features). This causes the sim to use more resources than it has to, and in large numbers, this can cause lag (which no one likes!). This JIRA proposes a way to use a different method that doesn't cause nearly as much lag, and would make the lives of content creators of avatar attachments much, much easier, from your color-changing sunglasses, to entire full-prim avatars!

Title: "Constants for llSet(Link)Primitive Params: PRIM_RELATIVE_* Constants"

Quick-Vote Link

Description: When a scripter wants to set the properties of certain prims in an object dynamically, he very often is forced to have a script in that prim in order to get information about it, like position and rotation. In most cases this means a script in every prim of the object, and a lot of work in each script. This proposal offers a way for scripts to automatically set relative properties of objects, so that it isn't even ~necessary~ to get information about the prim to change it. It also has several other attractive benfits, such as being able to change specific properties of the prim (like changing only texture rotation, and not the texture itself), which isn't possible without multiple scripts for many properties. Best of all, it would only require ~one~ function call to do what currently takes multiple scripts ~and~ at least 3 or 4 function calls, which gives us overall better performance.

Title: "Non-volatile storage for meta-information"

Quick-Vote Link

Description: One of the things scripters need to do most is store information. Sadly, right now we only have volatile and/or expensive ways to store it, there's a lot of work for the script involved to store and retrieve it. This JIRA proposes a new way to allow us to store information in a prim itself! Information that would not be affected by script resets, sim crashes, or whatever else might happen in SL face-smile.png And best of all, it would be secure from prying eyes!

Title: "Read both rotation and offsets for each joint on a bvh file"

Quick-Vote Link

Description: "Deformations" are one of the newest things to come to wide-scale use in the SL world. They are what allow content creators to produce avatars like the Seawolf Dragons, The IoW Basilisk, and several other wonderful avatars not only large but also strange and tiny! Unfortunately, deformations are technically a bug and the creation of new ones is going to be disabled in the near future. This JIRA proposes a way to achieve the same functionality using officially suported means. How does this affect performance? Currently because of the nature of the bug, deformations need to use 19 simultaneous animations. With the proposed way, "deformations" could be achieved with only one animation, meaning less work for the scripts running the AOs for the deformed avatars. If this JIRA issue is implemented, it will not only allow for the creativity to continue, but it will also allow content creators a means of making said content more friendly for the sim.

Title: "llTextBox in client Non-Functional - Functionality Patch Attached"

Quick-Vote Link

Description: For a while, the lindens have had a function called "llTextBox" in the client code. This function doesn't function ~ it doesn't work. If it ~did~ work, it would allow scripters to open one of those blue boxes you often see used as menus, but with a place to type instead of buttons! This would allow leaving comments or suggestions in privacy without dealing with notecards, not having to type on a random channel when you're registering your email for a service, privacy when typing a friend's name in to send a gift, and all kinds of other uses where user-defined text is needed! The lindens have said that this function is just waiting for client-side support. The function is already in LSL code, but currently it only produces a Dialog Box with a single button: !!llTextBox!!

Title: "Add ability to sort Friends list into different categories"

Quick-Vote Link

Description: Every good IM client usually includes some ability to sort your contacts into various folders or groups. "Friends," "Family," "Business," etc. Unfortunately, the SL Friends list does not include this ability, and for those of us who like to keep things organized, the friends list can become more of a hassle than a help! This JIRA proposes adding the ability to sort your "Friends" into groups so that you can keep yourself neat and tidy, and say goodbye to endless scrolling past names you might not even recognize!

Title: "Feature Request: LSL groupmember management"

Quick-Vote Link

Description: Right now, LSL scripts can't do much with groups. Especially for inviting people to groups, they can only post a link, when tends to be spammy and annoying. This proposal would allow scripts to manage groups so that you could be invited to groups without having to go through the multi-step process of opening your chat history, clicking the link it gives, and then clicking "Join", which doesn't even work for groups you can't voluntarily join! For example, If you're renting land for your home, or even just to put a vendor in a mall, you almost always need to be invited to the group. But, if the region owner or a group officer isn't there, you have to wait for them to get on before you can be invited, and who knows when that might be! This would allow scripts to automatically invite you, and save you the hassle of having to wait around for an invite!

Congratulations on making it this far! Below is the more complete explanation of why I consider these JIRAs to be important. Thank you for taking the time to read through the notecard face-smile.png

As we all know, SL is a place where there is fantastic opportunity to create content, design worlds from our imaginations, and generally, have a good time. But as with all good and even great things, there is also room for improvement.

Script performance has started taking a dive, and because of this, LindenLabs is preparing to impose scripting limits. This is why it is imperative that newer, more efficient means of performing common processes that otherwise take many or very intensive scripts (or both!) are necessary; if we have more efficient tools, we'll be able to solve the issues with creativity.

Having the functions listed here can ~only~ move towards improving performance even more, and making our Second Lives not only more enjoyable, but more liveable as well.

~Sebastean Steamweaver