An Easy Way to Reduce Scripts

Did you know particles and animations can exist without a script? In fact, they do better without a script because the sim does not have to handle an additional script.

If you recall, we asked that you reduce the number of scripts used in your build and we know one good way to do this—remove the scripts!

How does this work? Most particle, animation, and rotation scripts are simply assigning a property to a prim. Once they have been launched and assign these qualities to the prim, they are not needed anymore. So if you launch particle emitters or other animations (for example, a fireplace flame), you can run the script and then remove it from the prim, thereby saving the strain on the sim.

If you remove the script,  pick up the prim and put it in inventory, it will retain that property. However, if you use shift-drag to make copies of the prim, sometimes the script needs to be re-added. The better method is to simple rez as many copies of the functioning prim as you require.

This is what we ask you to do: on all prims that contain particle emitters, animation or rotation scripts, open the edit window, go to contents, and remove the script. You’ll see your prim still functions as well as before and you have just contributed your own little piece to saving sim resources!

We tracked down three scripts in this flaming barrel and removed them all without any problems with the flame. Now the barrel takes 0 sim resources but still has the effect we want.

script removal

script removal 1

If you want to get more technical and your object(s) really depends on frequently assigning different particles (or other properties) then you should consider changing your scripting concept, and move over to using more efficient methods, which are documented at

http://wiki.secondlife.com/wiki/LlLinkParticleSystem

A very powerful method is llSetLinkPrimitiveParamsFast (http://wiki.secondlife.com/wiki/LlSetLinkPrimitiveParamsFast)

and the corresponding method to retrieve link properties

llGetLinkPrimitiveParams (http://wiki.secondlife.com/wiki/LlGetLinkPrimitiveParams)

The methods above, allow to manipulate each link in a linkset (of up to 256 prims) or only certain ones, and all this from only 1 single script in the linkset.

If you are using timers in your scripts, then please don’t use timer frequencies of less than 2 seconds, unless the success of your exhibit depends on this.

Reducing scripts on the sims is one of our missions and a fine balance between achieving the effects people want and not putting a strain on community resources.

As we do sim inspections, we will be checking script usage and advising people about their use of these scripts. Please help us out and delete every unneeded script.

Thanks to PixelProphet Lane, our script guru, for this helpful advice.

About these ads