« Seeking perfect match | Home | How to track sales in SL using Excel »

Why bling is hazardous to your frame rate

By Celebrity Trollop | November 13, 2006

Relee Baysklef wrote on Hamlet’s open thread over the weekend:

I have a message for anyone who wears or creates Bling-effect jewelery.

Amatur Scripters created the popular bling scripts with the option to issue a vocal command, like “Bling Off” or “BO” which turns the shiny particle effect on and off.

This script creates a small amount of constant lag, and every time it is copied into a seperate prim or object, the lag is increased. This stacks and is considered one of the greatest non-intentional causes of lag in SL by several of my fellow scripters.

Never been a big fan of bling, even bling that can be turned off. Relee suggests the following:

For a start, please take off any Bling jewelery or other decorative object that recieves chat commands. Some tools and equipment need these commands, but not jewelery and other decorations that you would wear all the time.

Also I would ask you to only purchase jewelery and accessories that don’t use vocal commands. It would help out everyone if you would do this.

Makes me wonder about color changing scripts that use channel chat commands (i.e., /4 color red). Do those lag everyone too?

Topics: Accessories, Jewelry, Odds 'n' Ends |

5 Responses to “Why bling is hazardous to your frame rate”

  1. All listening scripts cause lag, but the ones that listen on channel 0 (open chat, what you actually talk in) are the worst.

    In fact, -all- running scripts cause some lag. Even if they’re not actively doing anything (like listening), they do cause a small load on the sim.

    In the case of bling, you can actually take the bling script out without stopping the sparkle. Particles (which is what bling is) are a property of the prim, just like its size is. You do need a script to -set- that property, but once it’s set, it stays that way unless changed with another script — just like if you had changed the object’s size using a script. So if you’re really intent on eradicating script lag, you can take those scripts out, and no harm done.

    Posted by: Miriel Enfield on November 13th, 2006 at 1:29 pm
  2. Okay, I think I understood that Miriel…so basically, all I have to do is remove the script and the bling will stay? Why don’t designers do this then? It would be so much easier. I’m going to try this out for myself, I have some jewelry that have a little sparkle effect that isn’t intrusive, and I like them that way.

    Posted by: Kalia Meiklejohn on November 13th, 2006 at 2:42 pm
  3. I think the standard bling script that this person is talking about listens in open chat. So the script has to listen to everything said in chat, waiting for the chance that the owner says bling off/on. Whereas scripts that use listeners on another channel (like /4) only listen to what is being said on that channel - and since it is NOT open chat, it is much less to listen to and thus less work for the servers and thus again less lag.

    I think that you can delete scripts from prims and still have the prims remember the bling properties. However, I am not sure this is less lag. The system still has to do that work - so even if the script isn’t there on the surface, it’s still working.

    PS - Not a scripter, I just live with one.

    Posted by: Kala Bijoux on November 13th, 2006 at 3:11 pm
  4. Kalia: they may not know about it, or they may have other reasons that outweigh the miniscule burden the script will put on the sim. I’ve got a couple of pieces of jewelry I’ve made that bling (and the bling can’t be turned on or off), and I left the scripts in so that people could more easily adjust the bling if they wanted to.

    Kala: particles are done client side. They might cause client lag (which can be fixed by turning particles down or off), but they don’t affect the sim.

    Oh, and the original poster over at NWN is saying that all listens cause the same amount of load on the sim. That’s not the impression I get from the lsl wiki, but I’ve not tested it.

    Posted by: Miriel Enfield on November 13th, 2006 at 9:55 pm
  5. Bling, like any script causes lag to *some* extent as it uses resources of the sim to process the running script. They key to this discussion is how to minimize the impact of your scripts on the sim. Open listeners (one that listen to ALL chat) are BAD! They listen to all open chat (channel 0) by all users. As you can imagine, in an area with a lot of people talking, this can cuase the script to to a lot of processing. Most bling scripts I have seen listen to only the owner, this reduces the amount of work the script has to do, but isn’t the best way. In my scripts I only listen to the owner and use a private channel, so the listen does not do any work unless the owner says something on that channel.

    Another thing to take into account is that any listener is always active. One thing that I have seen a lot is people putting multiple scripts into thier items that each have a listen. This is not the best course of action. You only need to have one listen per item in a ‘main’ script. This listen then passes along anything heard to the other scripts using link message. I have done a bit of testing on my sim and found that doing things using owner only listens on a specific channel and using linked message significantly reduces the impact of any bling script.

    Another thing that I learned is that a lot of bling scripts constantly update, recalling the particle generator over and over again (I am guilty of doing this in some of earlier scripts). In my experience, this is worse that open listeners. You only need to call the particle generator on two occasions; to turn the bling on, and when you turn it off. Try turning on show updates sometime and see how often that item of jewelry you are wearing updates.

    Bling itself, which are particles, are done client-side, and do not impact the server. As a user you can control what you see for particles in your setting, and even turn them off completely.

    To me, giving the buyer the option of having bling or not with a well written script that reduces the impact on the sim as much as it can, outweighs the minimal amount of lag such a script induces.

    Posted by: D'Nel DaSilva on November 18th, 2006 at 3:51 pm