Tuesday, January 6, 2009

Script Limits

Yes, buried deep into a post about Homesteads (a topic which I vowed a while back not to discuss) is a notice about limiting scripts in the future. The Lindens have finally realized what the rest of us have known for ages: too many scripts spoil the pot. And when servers are shared, some idiot maxing out on one sim causes headaches for three others.

But let's not get ahead of ourselves. They only say they plan to 'measure' the load to determine the average, and then there's to be more discussion among the residents and themselves, and then more measurements, and then some adjusting of the SL client itself so you can tell if you're hitting that limit. It's going to be a long road, so all of you guys out there celebrating that finally Linden lab is getting their act together better be prepared for something similar to getting an amendment passed into the Constitution. And those of you who oppose this, you'll have plenty of time and opportunity to shoot it down.

This should have been settled and implemented a long time ago. They recognized the need to limit prims per sim (although there's still loopholes you can exploit with temp rezzers I believe) as having too many objects and textures loading out would be a terrible pain.

What is interesting is to speculate how they will go about doing this. The most obvious way would be to have something like the tier/land/prim relationship currently used for objects. But can scripts be measured that way? How would they be measured in the first place? You could have a lot of scripts in place, but all inactivated and never on more than one at a time, and have no impact but yet be penalized just for sheer number present while some other idiot writes something so massive it brings everything to a halt. Would it count scripts present in attachments? If the limitations break scripts in Mystihuds, hair, shoes, and other things, be sure to expect an uproar from those non-scripters you might expect to not care otherwise.

I know that discussions of this will generally overlook those who come in and socialize or day-trip in Second Life on the assumption that they don't script, so they won't care. They should be considered, though, in that they are the users, and in the end any limitations on scripting won't hurt the scripters so much (as they can continue to write away, there's no limitation in writing out the lines) but those who wish to use them. Starax would make the loveliest statues that everyone agrees are masterfully done and very pretty but how many of us can afford to display them in our parcels? People have been living with prim limits since forever, so they have generally learned to live around them. But this? If the tinted windows and doors in my house, my mailbox, my scooters, my poseballs, and my assorted junk start to fail because of such limits? I can't wait to see the riot that will ensue.

I suppose one way of enforcing the limit would be to somehow force more efficient coding upon the coders themselves. How would that be brought about? You could say one way would be to limit the number of lines written, but that only works if the load of all functions are equal. If a given function is more intensive, then it might cause as much load as something lighter but written over hundreds of lines. Perhaps a weight would be assigned to each function, with further weights given to the context around it, and there would be a maximum weight enforced. Say, you have a max weight of '50', and llListen() might be a '4' or llSay() might be a '1' and so on. Then, if I have " llSay(0,"red");" that would be a '1' and "llSay(0,"the sky is definitely not red, it is blue");" that would be a '2'. The problem that looms over that is the daunting task of creating a system around that. And then applying that to the current crop of scripts we have. Things would definitely break all over the place. The Lab would be flooded with complaints and errors for months afterward. But this does have the advantage of being quantifiable to a degree. The time frame for measuring, creating, and implementing this would exceed their vague timetable of implementation by Q3 of this year.

Also, reading the language of the post, I notice they say 'enforcement'. Does this imply that rather than something hardwired into Second Life itself script limits will be something like community guidelines and become a reportable offense? If so, we have already seen the debacle that the ad farm policy became. They will need to take the lessons learned behind the banning of ad farms and apply them or else they might as well not bother. We as residents should also heed the results of the ad farm policy as what to expect at worst, and both users and LL should consider how that was screwed up.

First, ad farms were screwed primarily by Linden Lab taking the exact letter of the law instead of the spirit. This created two problems. One was the shrewdness of the ad farms to find and exploit loopholes, and the second was the Linden's vague language surrounding what an ad farm was, which lead to a general reluctance to call a judgement on save in very clear situations. What we had was ad farmers changing enough to pass the vagueness of the original policy, and the Lindens more or less refused to act upon it.

Part of the reason for the vague wording was from the residents themselves. Not once as far as I can recall did anyone clearly communicate was an ad farm was. There were photos taken, and much complaints about them, but no one sat down and listed why ad farms were considered heinous. A set of guidelines would have nice. As a result, the Lindens went for a general angle of 'ugly build on a small parcel set to sale at a high price'. And of course they took that to the letter. And of course the farmers would just change one thing or so and retain the essence of the problem. The problem was that ad farms were obnoxious. They were an obvious attempt to grab attention in a place where alternatives might have existed, but were ignored in favor of shock value. Instead of placing a small roadside billboard near a small town rental, for instance, they would elect to place a gigantic spinning red and purple tower.

You could say that Linden Lab was idiotic to not know that themselves, but again, let us look at history. Linden Lab never does more than they have to. NEVER. We as residents cannot expect LL to solve things and define things on their own. And if they do, we can't expect their conclusions to be our conclusions.

In other words, I am trying to goad you into bugging the Lindens about it with your thoughts, so that when they come out with such and such a policy or so-and-so tools on this script limitations, you can't complain that you had no input. Blah blah blah.

No comments: