SL projects update week 40 (1): server releases, group ban list, interest list

Server Deployments – Week 40

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

Second Life Server (Main Channel)

There have been no updates to the Main channel.

Second Life RC BlueSteel, RC Magnum, and RC LeTigre – Wednesday October 2nd

All three RCs should receive the same maintenance package comprising:

  • A fix for a bug affecting group notice delivery to large groups whereby the notice randomly fails to reach some group members
  • Interest list preparatory work for more correct sort order during scene load
  • New JSON_DELETE option to llJsonSetValue(), for deleting elements in JSON strings. Usage: ‘string output_json = llJsonSetValue(string input_json, [list location, JSON_DELETE)’ will delete the element specified by the location argument

Release notes: BlueSteel, LeTigre and Magnum.

Simulator UG meeting, October 1st, 2013
Simulator UG meeting, October 1st, 2013

Region Crossing Issue Update

Speaking at the Simulator User Group meeting on Tuesday October 1st, Andrew Linden reported that both he and Maestro had been looking into the recent problems with region crossings which have been hard to pin down to a specific cause. However, Andrew was confident one cause had now been identified, saying:

It appears that there is a bug when vehicles cross region boundaries on parcels with autoreturn. “In particular, if the vehicle has been on the parcel long enough to trigger autoreturn, it won’t actually get autoreturned because someone is sitting on it. But when it tries to cross the region boundary with the rider things fall apart.

Simon Linden indicated he had a proposed fix for the issue, which he wanted to discuss with Andrew outside of the meeting, but hopes that the fix will be in a position to be deployed in week 41 (commencing Monday October 7th).

Group Ban List

The obligatory Baker Linden shot :)
The obligatory Baker Linden shot 🙂

Following-on from the update given on his behalf at the TPV Developer meeting on Friday September  27th, Baker Linden appeared at the Simulator User Group meeting to provide a rapid-fire update on his latest state-of-play with the group ban list work (see JIRA VWR-29337):

Today I’ll be working on merging the viewer code with what’s in release, and I’ll be working on getting up some actual builds to deploy to a grid for internal testing (it is not Aditi yet). so by the end of the day, I should have all the components deployed and ready for internal testing, and depending on how well that goes, it’ll be ready for Aditi soon!

In terms of the viewer code becoming visible, Baker believes his project viewer repository will become visible soon, most likely around the time of the next TPV developer meeting, when he is due to explain the new functionality.

In the meantime there’s still some further work required on the code, as he explained. “There are still a few small bugs and issues I have to work on in the code — I’ll be working on those while internal testing is happening. There’s a major refactor in llpanelgroupinvite, which is what I’m trying to hand-merge today.”

Interest List Work and Video

Andrew Linden has been finishing-up on some additional interest list work, and is now looking to produce a video showing the “before” and “after” scene loading within a region. The “before” part of the filming is already in the can, but the region he used is now “long gone”, and so he picked-up a few suggestions from the Simulator group on regions which may offer go locations for shooting the “after” segment of the film. Essentially he’s looking for regions with lots of objects be which are not ridiculously overloaded with textures.

Other Bits

Render Weights and Calculations

Work has been going on around the issue of render weights and how they are calculated. The current Maintenance viewer has code for a new “automatic avatar render limit and feedback system”.

Que Niangao raised concern at the meeting and on the SLU forum that a constant forming a part of this system – OBJECT_RENDER_WEIGHT, which requires feedback from the viewer, and so might be used for grefing people; such as through a viewer tweaked to return highly inflated numbers for others in a region, thus allowing it to become a tool for griefing.

Responding to Que’s enquiry, Simon Linden said, “Yes … OBJECT_RENDER_WEIGHT needs to be used carefully. First, the way that is calculated is likely to change … I’m going to be working on it today, in fact.”

He went on to indicate that he’s been gathering data on avatar weightings (samples from about 500 avatars) which he’ll be using to make the changes, although he may be seeking further assistance. The changes he’s looking to make are on the server, but he was a little circumspect on details out of concern that going too deeply into how things work on the server as do so could make it easier for the unscrupulous to game the system.

One area where the new system will hopefully have an impact is in preventing the use of worn sim laggers impacting a region as can currently be the case.

SL projects update week 39 (2): Server, viewer, region crossings

Server Deployments – Week 39

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

  • On Tuesday September 24th the main channel updated to the server project that was on Magnum last week, with the llXorbase64 (see my week 35 (2) update ), a number of JSON updates, the nerfing of recursive rezzing (outlined in my week 35 (1) report), a parcel access update (see below) and more – see the release notes for details
  • On Wednesday September 25th, all three RV channels (BlueSteel, LeTigre, Magnum) received the same update package as deployed to the Main channel.

Parcel Access Update Bug

At the Server Beta meeting on Thursday September 26th, Maestro revealed that the parcel access update, designed to enable users who are on a parcel’s “Allowed Access” list now correctly bypass other parcel restrictions (such as “Payment Info On File”) when entering the parcel, introduced an unexpected bug. He it as:

If you have a group-owned parcel, and the parcel access is restricted to group members, *and* “sell passes to..” is set, then group members can’t access the parcel, which isn’t good. My guess is that nobody noticed in RC because “sell passes to” isn’t widely used.

The classic behaviour was this one motorcycling sim had it set up; you could either join the group for L$300 and have permanent access to their roads, or alternatively pay L$100 for a one time pass to visit … With the bug, even the group members couldn’t access (though oddly they weren’t prompted to buy a pass either – entry just failed). It may have been that the viewer expected the classic behaviour, so didn’t prompt about a pass. Anyway, we do have a pending fix for the issue.

Maestro Linden's new meeting venue (complete with materials), which saw its debut at the Server Beta meeting on Thursday September 26th.
Maestro Linden’s new meeting venue (complete with materials), which saw its debut at the Server Beta meeting on Thursday September 26th.

Week 40 Deployments

While the final decisions on deployment packaged are not made until the start of the week in which they are due, Maestro Linden gave a hint of some of the items liable to see the light of day in week 40 (week commencing Monday September 30th)

  • A further LSL update for JSON support, which will see JSON_DELETE added as an option to llJsonSetValue() and allows you to delete an element directly
  • A fix for a group notice bug which causes a notice (possibly only in some groups, it’s not entirely clear) randomly failing to reach some group members

Commenting on the latter, Simon added, “That group one is kind of minor. There still seem to be issues with groups, even with this fix, but it may help … Group notices have gotten more reliable lately, thanks to Monty’s http work, I think, but I’m still hearing of notices getting lost sometimes, or the sender not getting one.”

Maestro also confirmed that there is a separate bug related to offline notices failing to reach people’s e-mails, with some at the meeting reporting they haven’t received any off-line notices for the past month.

SL Viewer Updates

On Wednesday September 25th, the Lab launched SLShare, and with it introduced a new RC viewer – version 3.6.7.281331 – with the new OPTIONAL share with Facebook capabilities.

The four tabs of the new SLShare floater, allowing people to share their SL times via their Facebook account if they so wish
The four tabs of the new SLShare floater, allowing people to share their SL times via their Facebook account if they so wish

Continue reading “SL projects update week 39 (2): Server, viewer, region crossings” →

SL projects update week 39 (1): server and general items

Server Deployments – Week 39

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

Second Life Server (Main Channel) – Tuesday September 24th

The main channel updated to the server project that was on Magnum last week, comprising:

  • A fix for the llXorbase64 issue reported on in my week 35 (2) update  (BUG-3763)
  • A fix for an issue where an avatar sitting at high altitude may appear to be located at 0,0 on both the world map and mini map (BUG-3332)
  • A fix for “llReturnObjectsByID breaks on string uuids”
  • Fixes for a number of JSON function issues:
  • Nerfing of recursive rezzing. Again, this was outlined in my week 35 (1) report. Under the new code, the copy of the original object will inherit the temp-on-rez and parcel time of the originating object and so be returned at the same time
  • Users who are on a parcel’s “Allowed Access” list now correctly bypass other parcel restrictions (such as “Payment Info On File”) when entering the parcel
  • Crash mode fixes.

Second Life RC BlueSteel, RC Magnum, and RC LeTigre – Wednesday September 25th

All three RC channels should receive the same update package as deployed to the Main channel (see above for a summary of changes). Release notes: BlueSteel, LeTigre, Magnum.

Region Restart Issues

The last few weeks have apparently seen an increase in the number of reports being filed against regions restarting in an unhealthy state following a restart. Talking at the Simulator User Group on Tuesday September 24th, Whirly Fizzle related the problems thus:

After rolling restarts, many regions come back in an unhealthy state in that no mesh will rez on them, you appear offline to all your friends if you are on said region, your friends lists & groups lists don’t load, you cannot initiate IM sessions & you usually disconnect when attempting to TP out of those regions. (Caps fail I guess?). Restarting the region fixes it. As far as I know this used to happen rarely after rolls but now it appears pretty common.

Some people have reported increasing issues with regions immeidately following a rolling restart
Some people have reported increasing issues with regions returning in an unhealthy state immediately following a rolling restart

Both Simon and Andrew Linden leaned towards the problems being indicative of a caps fail issue, with Simon speculating, “I suspect the caps system is overloaded in a server restart … there may be too many regions coming up at once, doing all the housework to get into the grid, etc, and it falls apart.  That’s just a wild guess, however.” He also pointed to the problem possibly being connectivity-related.

As a result, Andrew has said he’ll look deeper into the problem and also check with LL’s Release team, who actually handle the rollouts to see if they have any insight into what may be happening, and if it is a broken caps issue. In the meantime, those experiencing issues of the kind indicated by Whirly should file a bug report, making sure they include the server names (e.g. simXXXX.agni.lindenlab.com available in Help > About Second Life) both before and after running a manual restart.

SL Viewer Updates

There has been no release candidate promotion to the de facto release viewer as yet in week 39. However, the remaining two release candidates updated recently as follows:

  • The Maintenance release RC (support for new particle capabilities; automatic avatar render limit and feedback system) updated on September 20th to version 3.6.7.281236, and then on September 24th to version 3.6.7.281385
  • The Snowstorm contributions RC (request teleport feature) updated on September 20th to version  3.6.7.281199.

Continue reading “SL projects update week 39 (1): server and general items” →

SL project update week 38 (2): server, viewer and other bits

Server Deployments – Week 38

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

  • On Tuesday September 17th, The Main channel received the HTTP updates  previously deployed to Magnum in weeks 36 and 37. See here and here for details. These changes are pending  a viewer-side update in order to be effective.
  • One Wednesday September 18th, the RC channels were updated as follows:
  • BlueSteel and LeTigre remained on the same maintenance package as week 37, but gained a fix for a crash mode and the server-side HTTP work
  • Magnum received the BlueSteel / LeTigre updates, a series of crash fixes and an update to parcel access priorities.

Some people have reported issues with sculpties only partially rendering following the deployments. This seems to be occurring when teleporting into a region, and has been noted with sculpted trees and foliage with a low LI. One suggested solution has been to raise the RenderMinimumLODTriangleCount debug from its default of 16 to 28 or 32.

BlueSteel / LeTigre Crash Mode Update

In part one of this week’s report, I mistakenly assigned the crash mode fix referred to as being something Andrew Linden had been working on. In fact, the crash mode was only created as a result of the week 37 deployment to these channels. Related to region crossings, it would only occur under very specific, non-exploitable conditions involving vehicle-riding avatars, and would result in the region just left crashing. This issue never got beyond the two RCs, and has now been confirmed as fixed.

Magnum Parcel Access Priorities Update

Speaking at the Server Beta meeting on Thursday September 19th, Maestro gave further information on this fix, “There was a longstanding bug where an avatar who was on the ‘Allowed Residents’ list of a parcel was still not able to enter the parcel, due to other access restrictions.” So if someone was on the access list, but had no payment information on file, and the parcel required it, they could still not enter the parcel. With this fix, Maestro explained, “If the parcel is set to ‘allow payment info on file always’, somebody on the ‘allowed residents’ list can always enter, regardless of their PIOF status.” The change does not alter anyone being on the banned list being unable to access a parcel,

As the sun sets, the Server Beta attendees gather ...
As the sun sets, the Server Beta attendees gather …

Week 39 Deployments

While the final decisions on deployment packaged are not made until the start of the week in which they are due, Maestro reports the data on both the Magnum and the BlueSteel / LeTigre packages deployed this week are good. However, he suspects the Magnum package will most likely be promoted to the Main channel in week 39 (week commencing Monday September 23rd.

Viewer Updates

The release viewer was updated on Thursday  September 19th, when the Materials release candidate (release 3.6.6.280963) was prompted to the de facto release viewer (release notes & download). This currently leaves just two release candidates in the release channel at present:  the Snowstorm contributions RC, which includes the Request Teleport feature, and the maintenance update, which includes the viewer-side updates for the “new” particle capabilities.

Other Items

LSL Parcel Access Function

Jenna Felton raised a question at the Server Beta meeting on whether it would be possible to have a LSL function which could determine if a specified avatar can enter a specified location within a region, or is able to pass through every parcel on a given path through the region. She explained why such a function might be useful:

The reason is when you build a vehicle or a physically working teleporter, you face a problem: Although you can read the parcel flags and determine for example if a parcel uses ban list, but you can’t determine if any sat passenger is on the list or not. So you get false positives and refuse teleport even if the vehicle would cross the parcel. Now, even if you are ok with that, you have to perform a large number of such checks to be sure at no position of your path you are entering a parcel or cross an edge of a parcel using ban list.

So I’d like to know if such a function is reasonable, that takes two vectors and determines if the path connecting them is safe for objects with seated avatars to move along. A reasonable range of systems would benefit from it.

This prompted some discussion of the idea, apparently continuing a discussion Maestro and Simon Linden had prior to the meeting. This took-in a number of ways in which such a check might be achieved, including a look-up based on agent_id and parcel_id, through to using the location-to-parcel ID lookup or extending llCastRay to have parcel detection.  Simon Linden also pointed out it would be possible to do something similar now, saying: “It’s not too hard to create a function in LSL to do that, Jenna … you’d just move along your path 4m in X or Y at a time, use llGetParcelDetails() and if the ID changes, then check if you can enter”, although as Jenna pointed out, this would require around 64 calls during a region crossing.

There may be further discussion on this idea in the future, with Maestro suggesting Andrew Linden be given a poke on the matter, as a result of his recent work on parcel encroachment.

Meeting Venue Update

Maestro revealed he’s going to be revamping the Server Beta meeting area on Aditi soon. The gym will be going to be replaced with … well … here’s the preview!

Apparently,  attendees will be invited to bring their own chairs / dance poseballs!

SL projects update week 38 (1): server releases, viewer, and more

Server Deployments – Week 38

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

Second Life Server (SLS Main) Channel – Tuesday September 17th

The Main channel received the HTTP updates  previously deployed to Magnum in weeks 36 and 37. Overviews of these changes, which will be transparent to users pending viewer-side updates, can be found here and here. These changes introduce new capabilities for mesh fetching operations and should lead improvements in the reliability in viewer / server connectivity when fetching mesh and textures as the viewer-side updates are released.

Release Candidate Channels – Wednesday September 18th

  • BlueSteel and LeTigre should remain on the same maintenance package as week 37, but additionally should receive two updates to the package:
    • A fix for a newly discovered crash mode
    • The HTTP updates deployed to Magnum in weeks 36 and 37 and to the Main channel on Tuesday September 17th.
  • Magnum should receive a new maintenance package which again includes the BlueSteel / LeTigre updates, and includes a number of crash fixes and an update to parcel access priorities “making it so that avatars who are on the ‘allowed’ list can bypass some of the other access restrictions (payment info on file was listed specifically)”

Commenting on the crash mode fixed on BlueSteel  / LeTigre, Andrew Linden said, ” The crash bug I fixed was actually rather rare… a corruption of the terrain data when building packets. Happened maybe… 5 times in three weeks. But we thought maybe it was related to some interest list changes so I looked into it anyway.”

Viewer Updates

Maintenance RC Release

A new RC viewer reached the release channel on Friday September 13th. Second Life RC viewer 3.6.6.280939 includes the following core updates:

  • Automatic avatar render limit and feedback system
  • Support for the additional LSL particle parameters.
  • rendering optimizations
  • avatar render cost information
  • simple impostors
  • graphics pref update
  • new debug setting “RenderAutoMuteRenderCostLimit” sets render cost cut-off point (default 0 = disabled cutoff check)

The new particle options comprise:

  • Glow
  • Ribbon effects
  • Blending options.

The SL wiki includes full details of these new particle parameters.

  • The glow effect basically looks the same as the prim glow setting on prims, adding PSYS_PART_START_GLOW and PSYS_PART_END_GLOW, which take a float in the 0.0 to 1.0 range
  • The particle blending takes 2 parameters, PSYS_PART_BLEND_FUNC_SOURCE and PSYS_PART_BLEND_FUNC_DEST, and each of those takes one of the 8 ‘values’ listed underneath, so there are actually 8*8 = 64 blend options. It exposes OpenGL’s glBlendFunc to LSL, see the glBlendFunc documentation at http://www.opengl.org/sdk/docs/man/xhtml/glBlendFunc.xml
An example of how the now ribbon capabilities might be used in SL, showing the arc of the sword through the air, supplied by Maestro Linden (courtesy of Hollowfear.com)
  • The new ribbon capability should allow for much better particle effects for things like ropes and chains links between objects (amount other things), using a ” go-from” prim/position (the prim centre), and a “go-to” prim/position (defined by PSYS_SRC_TARGET_KEY), the advantage being there would no longer be any gaps in the particle stream. However, there may be times when the ribbon effect may not be facing your camera (so there may be times when you need to reposition your camera in order to see the effect).

Continue reading “SL projects update week 38 (1): server releases, viewer, and more” →

SL projects update week 37 (2): particle capabilities – viewer release imminent

Update: The maintenance release viewer with the particle capabilities is now available – version 3.6.6.2.80939 – release notes and download.

Server and RC Deployments

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

In a change to the usual server-side deployments, the Main channel and all three RC channels have had their deployments and restarts made on Tuesday September 10th. The reason for the single pass was to apply updates server-side relating to recent Vivox service maintenance.

Details of the updates can be found in part 1 of this week’s update.

Server and RC Deployments Week 38

While the final decisions on deployments will not be made until that start of week 38 (week commencing Monday September 16th), it currently appears as if the following are likely to form part of the deployments:

  • The server-side HTTP updates will be promoted to the Main channel
  • A small server maintenance release will be deployed to at least one RC, which includes a number of crash fixes and an update to parcel access priorities “making it so that avatars who are on the ‘allowed’ list can bypass some of the other access restrictions (payment info on file was listed specifically)”

Particle System Viewer Imminent

Back in week 12, the Lab indicated that the SL particle system would be getting new capabilities, specifically:

  • Glow
  • Ribbon effects
  • Blending options.
Ribbon particle example

The server-side support for these capabilities was duly deployed, but have since been awaiting the viewer-side support in order to be accessible to users.

Commenting on the situation at the Server Beta meeting, Maestro Linden indicated that a release candidate viewer should be appearing with the necessary viewer-side support for the new LSL particle functions and parameters on Friday September 13th.

In preparation for the release, Maestro has also updated the wiki with details of the new particle parameters.

“The new particle glow options are pretty simple,” he said. “If you look at the wiki page, we’ve just added PSYS_PART_START_GLOW and PSYS_PART_END_GLOW, which take a float in the 0.0 to 1.0 range. It basically looks the same as the prim glow setting on prims.”

He went on, “particle blending takes 2 parameters, PSYS_PART_BLEND_FUNC_SOURCE and PSYS_PART_BLEND_FUNC_DEST, and each of those takes one of the 8 ‘values’ listed underneath, so there are actually 8*8 = 64 blend options! You can do crazy things, like having particles invert the thing underneath.

“Anyway, the blend parameters are pretty technical.  It’s basically exposing OpenGL’s glBlendFunc to LSL. And the main  glBlendFunc documentation at http://www.opengl.org/sdk/docs/man/xhtml/glBlendFunc.xml goes into the details better than I can.”

For those who can’t wait for the RC viewer with the necessary support to appear, an autobuild version is available.. However, keep in mind this is a test build for the capability, and as such is liable to be behind the curve compared to the RC version in terms of bug fixes, etc., so be sure to update to the RC version when it appears on the wiki page. The RC version is now available.

An example of how the now ribbon capabilities might be used in SL, showing the arc of the sword through the air, supplied by Maestro Linden (courtesy of Hollowfear.com)

The new ribbon capability should allow for much better particle effects for things like ropes and chains links between objects (amount other things), using a ” go-from” prim/position (the prim centre), and a “go-to” prim/position (defined by PSYS_SRC_TARGET_KEY), the advantage being there would no longer be any gaps in the particle stream. However, there may be times when the ribbon effect may not be facing your camera (so there may be times when you need to reposition your camera in order to see the effect).

Related Links