SL projects update week 46 (2): Server news, viewer update, group ban list

Server Deployments week 46 recap

As always, please refer to the week’s forum deployment thread for the latest news and updates.

  • Main channel: Tuesday November 12th:  no deployment
  • BlueSteel and LeTigre: received a maintenance package comprising further infrastructure changes for the yet-to-be-announced Experience Keys (experience tools) project
  • Magnum received a server maintenance project comprising a number of fixes and changes to script behaviours to prevent Estate managers and region owners from being teleported by llTeleportAgentHome() and so they are no longer affected by scripts which use ESTATE_ACCESS_BANNED_AGENT_ADD

Two further notable bug fixes with the Magnum release were “Sim crossing on vehicle fails when parcel at opposite sim border is full.” (BUG-4152) and a bug where a high draw distance set in the viewer would see the viewer to sometimes fail to connect to the requisite number of regions around it. According to Maestro Linden, this bug affects viewer using the current release viewer code (or earlier), but not the newer “Project Interesting” viewer code.

Speaking at the Server Beta meeting on Thursday November 14th, Maestro commented on the Magnum release, saying, “There were also under-the-hood changes to object inventory management, and llTakeControls() behaviour in LSL. Those shouldn’t cause any behavioural differences, but I added them to the release notes in case they did cause problems.” These are the “clean-up of ‘control grabbing’ in LSL scripts” referred to in the release notes.

Grey Goo Issues

The Magnum update also included updates to the grey goo fence, which is intended to combat griefing. The specific changes were to combat the use of large object rezzing, which can be used to crash a region. However, the tightening of the fence led to unforeseen problems, as Maestro reported:

There are reports in JIRA about building rezzer systems hitting the grey goo fence. The one case I saw was where one rezzed about a dozen large linksets rapidly, and when it hit the grey goo fence, it would ‘fail’ halfway through the rez. Anyway, Simon and I talked about how to address this; for now, I think he’s going to go with a fix where only large and physical linksets are penalised.

Another option under consideration is rather than denying the rezzing, to slow it down. It’s not clear which option will be taken forward by the Lab at this point, for now their intention is to deploy a fix to Magnum in week 47 which “unbreaks”, as Maestro put it, any affected rezzing systems on Magnum regions.

Maestro mixes and Baker be-bops at the Server Beta meeting, Novermber 14th
Maestro mixes and Baker be-bops at the Server Beta meeting, November 14th

Upcoming Updates

Maestro Linden  gave an overview of some of the updates which will be making their way into a server  maintenance package, which  include:

  • A fix for ‘ Vehicles containing a mesh are returned to the owner upon region crossing when destination parcel is full’, which is similar to BUG-4152, fixed in the Magnum RC deployment in week 46, but only affects meshes and involved the actual entry parcel being full
  • A fix for “Temp Attachments are sometimes not removed on the viewer when detached from a region change event.”
  • A follow-up fix to  “llTeleportHome() should not teleport estate managers”, mentioned above, which extends the protection to parcel owners  (or a group owner if the parcel is group owned)

These may well form a small update package on their own and get deployed to one or more RC channels in week 47.

SL Viewer

The “Project Interesting” RC viewer, version 3.6.11283895,which has the viewer-side updates for the recently interest list updates was released on Thursday November 14th.

Continue reading “SL projects update week 46 (2): Server news, viewer update, group ban list” →

SL projects update week 46 (1): Server releases, SL viewer updates, general items

Server Deployments week 46

As always, please refer to the week’s forum deployment thread for the latest news and updates.

Main channel: Tuesday November 12th

No deployment.

Release Candidate Channels, Wednesday November 13th

  • BlueSteel and LeTigre should receive the maintenance package originally scheduled for deployment to all three RC channels in week 45, but which was cancelled as a result of a last-minute issue being found. This package comprises further infrastructure changes for the yet-to-be-announced Experience Keys (experience tools) project
  • Magnum should receive a new server maintenance project this week.  This project fixes some bugs, including BUG-4152 related to vehicles crossing region boundaries, as described in this thread; and which also includes some changes around script behaviour, comprising:
    • The fix to allow objects rezzed by sat-upon objects should have a fresh auto-return and temp-on-rez timer, This will allow them to last the full ~60 seconds (for temporary) or parcel auto return time. This should help is situations where combat vehicles in regions with short auto-return times can have their ordnance immediately returned when a weapon is fired, and any temp vehicles are unable to rez attachments, even when sat upon
    • Fixes to  prevent estate managers / owners being teleported home through a misuse of llTeleportAgentHome(), and to prevent estate managers / owner  being affected by “Trojan” objects manipulating  ESTATE_ACCESS_BANNED_AGENT_ADD
    •  Updates to the grey goo fence do that it is stricter for large object rezzes in a further attempt to limit the ability of griefers to bring down a region through multiple rezzing of large objects
    • More robust handling of inventory management within objects
    • Cleanup of controls-grabbing in LSL scripts (no functional changes).
A simulator UG meeting (stock)
A simulator UG meeting (stock)

SL Viewer

The SL release viewer updated on Tuesday November 12th to version 3.6.10.283403, formerly the Maintenance RC comprising finer access control for estate/parcel owners; CHUI: toggle expanding Conversations by clicking on icon; GPU table update + more.

It is thought the project viewer containing the last of the current viewer-side updates for interest lists should be appearing very soon now. After recent setbacks in getting the viewer publicly visible, the time frame for its arrival had been noted to be unlikely before November 12th. However, speaking at the Simulator User Group meeting on the 12th, Andrew Linden indicated he believed the viewer may well be out in the next few days.

Other Items

Andrew Linden’s Bug Fixing

Andrew Linden
Andrew Linden

Andrew Linden has been taking time to fix a some unusual bugs. The first, which is not generally visible, he describes as, “In some cases our servers will upload an asset multiple times before it successfully creates an inventory item (on take to inventory for example). Which creates garbage assets in the asset system.” This issue could also result in multiple notifications being sent to the avatar uploading the item, if they remained in the same region.

The second issue he’s fixed is that of “ghost objects” appearing in the viewer but which are not present on the region server. This issue appears to have been caused by a race condition which could occur under certain situations such as deleting the objects too fast on a region crossing, so they’d be removed server-side, but not from the viewer. Both of these fixes should be appearing in an RC soon.

Group Management and Culling

Request have been made to have the limit of banned avatar lists raised from 500, particularly for regions that are popular with users. Whether there is a widespread need for this is entirely open to debate, but during the discussion of the problem being faced by a particular estate, suggestions were put forward by which such lists might be made easier to manage, including:

  • Auto-culling from all ban lists of any account name banned from the grid
  • Such auto-culling to take place only as a ban list approaches its upper limit
  • Add a feature by which  would  allow the removal from a list any avatars that have not logged-in to SL for a given period of weeks / months / years. If implemented, this could either take the form of a selectable set of options (e.g. something like 6 months, 1 year, 2 years), or possibly be a free-format field the owner can use to specify as the time period.

Whether any of these options eventually get implemented, remains to be seen (and doubtless on whether feature requests are filed).

This conversation was also bound-up with matters of group chat and group chat lag. Various suggestions were put forward for trying to address this as well, ranging from replacing the current group chat mechanism with something like IRC and whether it would actually work / scale any better, through to implementing a server-side change so that when someone leaves a group chat, the channel is actually closed, rather than messages still being sent to the viewer, which just disregards them, as is currently the case. Commenting on the status of group chat in general, Simon Linden stated, “Just FYI, practically speaking we’re not going to be re-writing the chat system any time soon.”

SL projects update week 45 (2): Server, viewer and group bans

Server Deployments week 44 – Recap

As always, please refer to the week’s forum deployment thread for the latest news and updates.

  • The Main channel was updated on Tuesday November 5th with the same maintenance package previously deployed to the three release candidate channels, and which comprised bug fixes and crash mode fixes
  • On Wednesday November 6th, all three release candidate channels were all due to receive a new maintenance package, comprising further infrastructure changes for the yet-to-be-announced Experience Keys (experience tools) project. However, an undisclosed test failure meant the deployment was cancelled.

Upcoming Releases

Week 46 should see a new maintenance package in RC, which will include:

  • A fix for BUG-4152 Sim crossing on vehicle fails when parcel at opposite sim border is full
  • A number of crash fixes, including some which combat a physics griefer object
  • The fix to allow objects rezzed by sat-upon objects should have a fresh auto-return and temp-on-rez timer, This will allow them to last the full ~60 seconds (for temporary) or parcel auto return time. This should help is situations where combat vehicles in regions with short auto-return times can have their ordnance immediately returned when a weapon is fired, and any temp vehicles are unable to rez attachments, even when sat upon.
  • An interest list fix for issues where you don’t connect to regions far enough away when draw distance is set to 512m
Maestro Linden's disco-themed Server Beta meeting venue (stock)
Maestro Linden’s disco-themed Server Beta meeting venue (stock)

Trojan Objects

A further update is a change to try to deal with a griefing situation wherein estate managers/owners can be added to a region’s the ban list or teleported them home with llTeleportAgentHome(). This is apparently achieved through the use of what Maestro Linden refers to as “Trojan” objects, in that the object appears perfectly innocuous until passed to the an estate manager / owner but which, when rezzed, will  the manipulate the ban list via llManageEstateAccess().

Maestro described these scenarios thus:”I could give you ‘cute kitty’ which you then rez on your parcel.  But the script with the ‘purr’ function also has a ‘manipulate ban list’ function. Since you (the parcel owner) own the kitty, the script there can do the operation.”

It has also been noted that the use of such “Trojan” objects isn’t restricted to manipulating llManageEstateAccess(); they are also used to clear-down ban lists using llResetBandList(). In the case of llManageEstateAccess(), the function is being changed so that the owner is notified, and is given the option to allow the function to run in “stealth” mode.

The problem here is that by the time the notification is received, the Trojan script has done its job, so the solution is not ideal; the same would be true in the case of altering llResetBandList(). However, as Maestro put it, “But you’ll know exactly what it did in case you need to undo it.” A further concern in the case of llResetBandList() is that some estate owners use the function remotely to legitimately manage their ban lists, so if anything is done to alter its functionality, it might break existing content.  This led to extensive debate within the Server Beta meeting as to how such matters could best be addressed – or even if they needed to be addressed beyond people taking the proper precautions when receiving scripted objects from untrusted sources.

SL Viewer

Default Region Restart Sound

In part 1 of this report, I noted that a  JIRA has been put forward (STORM-1980) to have a default region restart sound added to Second Life. This would be played automatically by the viewer on receipt of a region restart message, adding an additional warning of an approaching restart for those who may miss the pop-up notices, giving them time to take the appropriate action prior to logging-out.

The work is progressing on this idea, although a suitable sound has yet to be found, and precisely how the region restart messages will be redefined has yet to be entirely settled. Sound-wise, something is required that would universally recognised and which is preferably not language-dependent. One of the more popular ideas at the moment is to have a submarine dive / air-horn like sound (the “A-wooo-GAH!” beloved of films), although there have been some muted concerns about people possibly being offended by the use of “military” sounds. Torley Linden also joined the discussion and, in fun, offered up his own idea  – just make sure you don’t have the volume up too loud before playing the clip!

Torley’s region restart warning

Sadly, it doesn’t meet that criteria of being language-independent, but it’s still fun to listen to.

Script Syntax Updates and Increasing Source Text Allowance

In week 39, I reported that Ima Mechanic and Oz Linden are working to improve syntax highlighting in the viewer’s LSL editor by allowing the viewer to obtain the information required for syntax highlighting directly from the simulator the viewer is connected to. This should eliminate issues of the current, manually updated, files used to manage syntax highlighting falling out-of-synch with new LSL syntax as new functions and parameters, etc., are added.

This work is progressing well, and may now additionally see the source code text allowance in the viewer’s LSL editor increased. Currently, the source code limit in the editor is some 65,000 characters, however a number of scripters having been finding that they frequently are coming up against that limit when writing the source code for their scripts, so it has been suggested the limit be raised to 256,000 characters.

Continue reading “SL projects update week 45 (2): Server, viewer and group bans” →

SL projects update week 45 (1): Server and viewer sundry news

Server Deployments week 44

As always, please refer to the week’s forum deployment thread for the latest news and updates.

Main channel: Tuesday November 5th

The Main channel was updated with the same maintenance package previously deployed to the three release candidate channels, and which comprised bug fixes and crash modes.

Release Candidate Channels, Wednesday November 6th Currently Cancelled

The RC restarts have been cancelled, see the Grid Status report.

All three release candidate channels should receive the same maintenance package, comprising further infrastructure changes for the yet-to-be-announced Experience Keys (experience tools) project.

SL Viewer

There have been no release updates so far this week. However, a bug has been reported within the former “Sharestorm” viewer (the current release viewer, 3.6.9.282535), wherein fps rates are severely impacted when the CHUI conversation floater is open. If you’re using the current release viewer, and find frame rates are being impacted when conversing, try switching to CHUI’s Compact View.

If you find your FPS reates are being hit when you have the CHUI floater open in the current SL viewer release (or a viewer with the ShareStorm code), try switching CHUI to the Compact Viewer (above)
If you find your FPS reates are being hit when you have the CHUI floater open in the current SL viewer release (or a viewer with the ShareStorm code), try switching CHUI to the Compact Viewer (above)

A further bug that has been reported sees FPS impacted if the Build floater is opened after having About Land open in a region with a long covenant.

Region Restart Sound

A new JIRA has been put forward (STORM-1980) to have a default region restart sound added to Second Life. This would be played automatically by the viewer on receipt of a region restart message, adding an additional warning of an approaching restart for those who may miss the pop-up notices, be working on another screen / window or who are otherwise distracted while logged-in to Second Life, allowing them to take appropriate action prior to the region starting and them being logged-out. Work on this is in progress, and is generally seen as a good idea.

Other Items

Scripted Sound Improvements?

Requests have been raised at several meetings recently about the possibility of improving scripted sound functions (such as being able to use a single sound loop for a vehicle’s engine and using LSL to change the pitch of the loops when the vehicle is accelerating or slowing down, for example) and to possibly make the prim collision sound being a property of the prim instead of the script.

Commenting on the former request at the simulator user group meeting on Tuesday November 5th, Simon Linden said, ” there have been some JIRA feature requests about llLink-something with sounds  [“llLinkPlaySound”, “llLinkStopSound” and “llLinkLoopSound”].  We’ve discussed it internally and it seems like a good idea, but needs some work to see if we can cover as much functionality as possible with a reasonable API.” Expect more details as the work progresses.

SL project updates: week 44 (1): server, viewer, interest list, anti-griefing

Simulator UG meeting (stock)
Simulator UG meeting (stock)

Server Deployments week 44

As always, please refer to the week’s forum deployment thread for the latest news and updates.

Main Channel

There have been no updates to the Main channel.

Release Candidate Channels

All three release candidate channels received the same new server maintenance package on Tuesday October 29th, which fixed some crash modes.

The reason for the RC channel updates being moved to Tuesday is because there was due to be a planned outage on Wednesday October 30th at the time the deployments usually take place to allow some database work to take place. This would have likely seen log-ins blocked for about an hour. However, Simon Linden believes the work has now been postponed for a week – although the recommendation is to keep a check on the Grid Status page – see the original notice for details.

SL Viewer Updates

A new release candidate appeared in the release channel  on Monday October 28th. Version 3.6.10.282997 has no functional updates, but includes an update to the GPU table.

About the GPU Table

The GPU table is used to define your graphics card to the viewer and the default graphics settings which are applied as a result when you first start the viewer (or if you never adjust them).

Graphics cards are defined by classes (currently 0-5), which can be defined as:

  • 0 – Defaults to low graphics settings. No shaders on by default
  • 1 – Defaults to mid graphics settings. Basic shaders on by default
  • 2 – Defaults to high graphics settings. Atmospherics on by default
  • 3 – Same as 2, but with lighting and shadows(now referred to as Advanced Lighting Model in the viewer) enabled
  • 4 – Same as 3, but with ambient occlusion enabled
  • 5 – Same as 4, but with shadows set to “Sun/Moon+Projectors.”

The table is a .TXT file which is located in a viewer’s installation location on your computer. For Windows, this means it can be found either in C:\Program Files\[viewer name] or in C:\Program Files (x86)\[viewer name] (if you are running a 32-bit version of a viewer on a 64-bit system).

It is not recommended that you amend this file in any way, unless you know what you are doing. You can, however, open it and use it to determine which class your viewer falls under, and the default settings it is given.

To make it easier for those wanting to quickly reference common graphics cards, Garvie Garzo has produced a .PDF file of the table. However, do bear in mind that the table is subject to updates (as the release candidate mentioned above demonstrates), so the PDF may become outdated over time. Also, some TPVs have been working on updating the GPU table themselves.

When perusing the table, cards are listed alphabetically by maker, and the first digit following the card name refers to the class it has been assigned to, while the far right column defines the overall family of GPUs the card belongs to (you may find when viewing the table that the columns do not align well).

The settings within the GPU table are subject to some debate, as they are used to determine which graphics cards present a “reasonable” enough performance in order to have ALM enabled by default. Linden Lab consider anything qualifying as a class 3 or above is capable of adequately running with ALM enabled; some TPVs do not agree.

The problem here is how “reasonable” is defined; it’s a subjective term, and everyone will have their own opinions on the matter. As I reported back in week 39 and week 34, the Lab had statistics to show that class 5 cards GPUs (e.g. ATI Radeon HD 7800, 7900, 8900, 8950 + similar, nVidia GTX 460/460SE, 465, 550TI, 580, 660/660TI + similar) actually performed better with ALM enabled than with it off, while class 4 GPUs showed little difference between having ALM enabled and disabled. However, because measurements do tend to be subjective (again, frame rates, etc., can take on different levels of importance depending upon what you are doing in SL), Oz Linden had been hoping to establish a means by which more controlled testing could be undertaken within the Lab; it’s currently unclear how far this has progressed, if at all.

Interest List Viewer

Andrew Linden revealed that the interest list RC / project viewer (however it appears) is now unlikely to debut before November 12th. “There was a performance regression that we’re working on — lower FPS in project interesting,” he informed the Simulator User Group meeting on October 29th, “Probably because it is rendering more objects — more small objects in view get rendered (that’s my theory anyway).”

Andrew Linden: Anti-griefing Work

Andrew Linden
Andrew Linden

Andrew Linden is back working on various pieces of anti-griefing work.

For obvious reasons, he doesn’t want to go into specifics, but he did indicate that he’s looking to address new griefing modes that are aimed at estate managers. He’s also been thinking about ” raising the arms race against landbots”, although he admits he is “still in the planning/discovery phase on that.”

There are a number of other items in his list as well he may well be taking a look at.

Other Items

Slow loading Sculpts?

Some people are reporting they are seeing sculpts loading a lot more slowly since the last set of server-side interest list updates. It’s not clear how widespread this might be or if it is a possible placebo effect. For his part, Andrew Linden felt that sculpts potentially download faster with the interest list viewer code (which, as noted above, has yet to make a public debut), but again he caveated why this might appear to be the case. Andrew indicated he’ll look a little more into this.

Last Owner / Previous Owner

Many TPVs expose details of the “last owner” of an object through the build floater. A request has been passed to make this information, which is stored as a field in the object data, accessible through scripts. Both Simon and Andrew Linden didn’t see why this could not be done, with Andrew stating he’ll see what’s involved and will look to someone to nudge him about it next week.

SL Projects update week 43 (2): server and viewer notes

Things are in something of a lull server-side in terms of deployments and projects at the moment, so the news from the Lab is a little light.

Server Deployment

With just the one deployment to the Main channel in week 43, the entire grid is currently running on the same server release.

Commenting on the released package at the Server Beta group meeting on Thursday 24th October, Maestro and Simon Linden provided further information on the performance issue fix which is aimed at the experimental interest list viewer (which has yet to formally appear, but can be self-compiled by those with access to the code repository).

“The bug was about avatars not loading for ~70 seconds when you visit an area with ten or so avatars nearby, Maestro explained. “And by ‘not loading’,  you wouldn’t even see name tags.”

“I think the problem was when those viewers used new methods to download or check the cache state of some data … it would over-load the network and thus the avatar updates were really slow,” Simon added, before continuing, “Since the current viewer doesn’t do that, they don’t have the bug. Clubs and large crowds are always a problem because when you arrive you just get a ton of data to fetch and load.”

Week 44 should see what Maestro described as a “minor maintenance release” for the server appearing next week, which includes “a few miscellaneous crash fixes”. At the time of writing it is not clear if this will be the only RC deployment or whether anything else might also pop-up when the deployment thread is published.

SL Viewer Updates

The “Sharestorm” release candidate, version 3.6.9.282535, which combined the updates from the Snowstorm contributions viewer featuring the request teleport functionality with the SLShare release candidate, was promoted to the de facto release viewer on October 23rd. This leaves just the Maintenance release candidate viewer 3.6.9.282553 sitting in a release cohort, which will be updated in week 44, once it has been rebuilt using the release viewer code base.

Group Ban List

Baker Linden’s Group ban list work remains on internal testing within the Lab (with Maestro and Caleb Linden volunteering as Baker’s guinea pigs). The project has also apparently been awaiting internal QA resources.  Baker hopes to have a detailed update on progress in week 44, but as he said at the Server Beta meeting, “I’d rather take the time to do it properly than rush it out the door and have it be worthless! :).”

Other Items

As reported in week 42, A problem had been noted following-on from the recent updates to prevent people from using recursive rezzing which means some engaging in combat have found combat vehicles in regions with short auto-return times can have their ordnance immediately returned when a weapon is fired, and any temp vehicles are unable to rez attachments, even when sat upon. Maestro confirmed that as a result of a feature request having been raised, Andrew Linden is now looking at introducing a special exception for temp-on-rez / auto-return timer inheritance when the rezzer is a vehicle.