Second Life project updates 29/1: server, viewer, general items

Indie Teepee: July 10th through 24th, 2015 - blog post
Indie Teepee: July 10th through 24th, 2015 – blog post

Server Deployments Week #29

As always, please refer to the server deployment thread for the latest updates / news.

  • There was no Main (SLS) channel deployment on Tuesday, July 14th.
  • On Wednesday, July 15th all three RC channels should receive the same server maintenance package, comprising internal simulator fixes.

There were some issues with poor region performance following the week #28 Main channel deployment (see BUG-9647), but the majority of these appear to have been corrected with a region restart.

SL Viewer

On Tuesday, July 14th, the attachment fixes viewer (project Big Bird) was promoted to the de facto release viewer. Version 3.8.1.303130 has fixes for some attachment-related issues, particularly when multiple attachments are added or removed at the same time. Allegedly, no birds were harmed during the making of this viewer, although a parrot may have bitten an engineer’s finger…

Region Performance

Simon Linden: considering matters of region performance
Simon Linden: considering matters of region performance

While things may appear to be quiet in terms of new deployments, etc., the Lab are working on Second Life in a number of areas. One of these is in finding ways to improve region performance – such as through finding the means for a region to support more avatars, something Simon Linden was recently looking into.

During the Simulator user group meeting on July 14th, Simon indicated he was also looking at the abilities provided to region owners which might allow them to better specify what can and cannot be done within their regions in turns of things like object rezzing. in order to improve people’s experiences. “I’m looking at the balances we keep on regions between being permissive and locked down, and how that relates to the land usage,” he said during the meeting, before continuing:

So combat regions want fast and free rezzing, but that’s not appropriate for a music venue … venues don’t want free rezzing of objects, so someone can’t drop their griefer bombs. The big fuzzy goal is to make SL better.   More specifically, it’s to make different types of regions run better. For example, there’s a bug now where rezzing can get backed up and delayed.   This is really bad for combat rezzing arrows or whatever projectile. Part of the reason that happens is throttles and limits on rezzing … So maybe we should be able to set up combat region settings tweaked for that kind of performance, and an event venue might be tweaked to handle crowds best, and really lock down free rezzing and object entry. 

This sparked a discussion on a range of performance issues and cases, including issues such as BUG-8974 and BUG-8946, as well as matters such as the inefficiencies evident in the asset handling system in general (this has also come into sharper focus with the arrival of Experiences, where KVP operations are handled by the same thread as asset handling), and the issues of agent script usage (script management doesn’t balance out and prevent someone from using far more than their share of script time). Ironically, during the meeting, a demonstration of this problem was given with the arrival of a griefer loaded with  >9999 scripts – with the result that the region crashed.

Simon emphasised the discussion was just that – a discussion intended to explore ideas and options, rather than any firm commitment on his or the Lab’s part to make changes. With this in mind, some of the suggestions put forward were:

  • Land owner resource control for both rezzing and scripts for all region types (see BUG-3854)
  • An option to block rezzing an object over a certain draw weight to help stop people being able to rez graphics crashers
  • Possibly altering settings on mainland so that when purchased, it is not completely permissive and the new owner failing to understand what that can mean
  • A re-submission of BUG-2467 as a feature request, amended to “visible attachments”, so the Lab might re-evaluate the idea
  • The Lab to reconsider requests such as BUG-4153 and BUG-4182.

One of the problems here is that there are a lot of settings which might be exposed in order to help land holders better protect / optimise their land, such that it could become a complex issue in user understanding if too many controls are made available. However, it will be interesting to see what might transpire in the future as the Lab continued to consider options.

Other Items

Receipt of illegitimate L$ and Account Locking

An old issue of individual harassment has started to re-surface in Second Life of late, which can lead to people’s accounts being locked. With it, someone pays another avatar in-world using fraudulently created Linden Dollars. This results in an automatic account lock being applied, and the recipient, even though they are an innocent party, finds they are unable to use the account while investigations proceed.

The problem here is that there is currently no way to prevent the receipt of any L$ payment; not even blocking an avatar can prevent them from making a payment to you.

As a result of the recent increase in this problem occurring (there have been numerous reports to the Lab’s support team on the matter), a request has been made for the Lab to consider adding an “accept” button for all incoming payments. This would allow people to review all such unsolicited incoming payments ahead of accepting them, allowing them to judge whether the payment is valid or not.

Second Life project updates 28/2: TPV Developer meeting

Crystal Gardens Estates Inara Pey, July 2015, on FlickrCrystal Gardens Estates, July 2015 (Flickr) – blog post

The following notes are primarily taken from the TPV Developer (TPVD) meeting held on Friday, July 10th. A video of the TPVD meeting is included at the end of this report, with any time stamps in the following text referring to it. My thanks as always to North for the recording and providing it for embedding.

Server Deployments – Recap

As always, please refer to the server deployment thread for the latest updates / news.

  • On Tuesday, July 7th, the Main (SLS) channel received the same server maintenance package deployed to the three RC channels in week #27
  • There was no RC deployments to the RC channels on Wednesday, July 8th, leaving all of the main grid on the same release.

An RC channel release planned for week #29 (commencing Monday, July 13th) will likely see some “db optimization around group stuff”.

SL Viewers

Viewer Updates

The Mesh Importer RC viewer updated to version 3.8.1.303230 on Wednesday, July 8th, with the Lab hoping this release fixes the majority of issues so far reported with that viewer.

On Thursday, July 9th, the Viewer-Managed Marketplace (VMM) RC viewer updated to version 3.8.1.303315.

Viewer Promotion Options

The above updates mean that all four RC viewers currently in the release channel (except the obsolete platforms viewer, which isn’t intended for update), are on a par with the current release version of the viewer (Experience Tools).

However, it is not currently clear which might be promoted to the de facto release version. Any decision on this will be made on the basis of crash rates and overall performance.

[04:13] That said, the VMM viewer has contained a series if XML file breakages with the translation options, and a change in the target formatting for translations also appears to have been changed in the VMM viewer. The Lab believe a fix for the XML issue is in the updated referenced above, although there appears to be some concern that problems still exist. If so, it is unlikely that this viewer will be promoted until issues have been sorted.

Notifications Project Viewer

Also on July 8th, the Lab issued the Notification project viewer, version 3.8.1.303211, which sees an overhaul of the way in which notifications – system, group, transaction, etc., are presented through the viewer. For further information on this release, please refer to my overview.

[08:10]  As this is a project viewer, now is the time to test it and see if it is lacking functionality / options – the Lab will be far more willing to alter the code, should it be required, while the viewer is at a project status than they will be when it reaches RC, where the focus will be on fixing any bugs which may have slipped through.

Other Items

Changes to Linden Damage

[10:00] The Lab have again acknowledged that the recent changes to the way the official viewer handles avatar damage messaging are not ideal. In short, damage cannot be set it the parcel level only; also, the viewer does not display the health meter on damage enabled parcels, but people can be “killed” and teleported home – for a full list of issues, see BUG-9422. There may be further news on this in due course, as Grumpity Linden (recently returned from maternity leave) will be looking at the issues.

Interest List Issues

[14:00] Some people are reporting what appear to be interest list issues (e.g. items not updating correcting in your in-world view when camming around, etc.) – see the likes of BUG-7084 for further details. However,commenting on this, Oz Linden said:

If there are issues with that, we need repros, because we haven’t got them. And we also need to be able to isolate whether the problem is that the various interest list messages are not being delivered properly, or whether the problem is that the assets aren’t being fetched properly, which is independent of that [the interest list messaging].

Any issues that look as if they might be interest list related must be tested and reported using the official viewer, and not with any TPV.

Avatar Shape Issues

[25:04] There have been reports of avatar shape issues and “corruptions” (e.g. BUG-9487). The Lab have acknowledged that they may have an internal issues of a similar nature (and BUG-9487 has also been triaged), however, if the issue is different, the matter will be imported for further investigation. One problem here is defining what is meant by a “corrupted” shape. The asset itself is unlikely to be be affected, which means it could either be the local copy of the asset being somehow modified, or an incorrect pointer has somehow been created – all of which needs clears steps to repro in order to investigate and ascertain.

Attachment Issues

[20:23] As noted above, project Big Bird (version 3.8.1.303130 at the time of writing) is thought to correct the majority of viewer-side attachment issues. However, this does not mean that all such issues are fixed; some might be server-side, etc., Both BUG-7761 and BUG-6925 refer to specific issues that have been reported.

An important thing to remember here – again – is that issues like this need to be tested and reported using the relevant Linden Lab viewer, not a third-party viewer.

This is not the Lab being awkward over matters or trying to avoid issues. It is simply because if an issue can be consistently reproduced on the Lab’s viewer points to it being directly related to their code; if a TPV is used – and with respect to all TPV coders – it is not always possible to determine if a problem is a result of code the Lab have supplied, or something a TPV may have done in modifying the code / viewer to suit the needs of their users. Obviously, if it is the latter, fixing the problem is outside of the Lab’s reach.

 Firestorm Update

[01:25 and 11:33] Firestorm are currently waiting on VMM and the attachments fixes (project Big Bird) to be merged into the Lab’s de facto release viewer, as these will allow them to push ahead with there own merges and testing in preparation for the next Firestorm release. However, given the Lab would prefer to promote a viewer to release status every other week (and allowing for Firestorm’s own testing), it could be around 6 weeks before Firestorm updates (although the team already have VMM, the attachment fixes and the maintenance RC updates staged ready for merging).

Second Life project updates 28/1: server, viewer

Umbral Photography, Hydra Isles; Inara Pey, July 2015, on FlickrUmbral Photography, July 2015 (Flickr) – blog post

Server Deployments

As always, please refer to the server deployment thread for the latest updates / news.

On Tuesday, July 7th, the Main (SLS) channel received the same server maintenance package deployed to the three RC channels in week #27.

As noted in my project update for week #27, BUG-197 referred to in the package release notes relates to an issue whereby a user can’t see any of their local chat on a region or parcel, and nor can anyone else, due to a scripted object which is spamming chat so badly, the chat throttle kicks in, but no warning would be provided to inform the user this was the case. with the deployed change, the user will now get a message about the chat throttle being hit, but unfortunately, the system will not identify the spammy object (so it might be removed / returned, if possible).

There will be no RC deployments to the RC channels on Wednesday, July 8th, leaving all of the main grid on the same release. A new RC deployment, described as a “minor update” is in preparation for deployment to the RC channels in week #29.

SL Viewer

On Tuesday, July 7th, The Maintenance RC viewer was updated to version 3.8.1.303166, bringing it into line with the attachments RC viewer updated in week #27, and just leaving the Viewer Managed Marketplace viewer to be updated in the release channel, which will likely happen later this week.

Chromium Embedded Framework

At the Monday Open source Developer’ meeting, Oz Linden indicated that an anticipated project viewer,  the Chromium Embedded Framework (CEF) viewer which will provide media support via HMTL 5, should be appearing “Pretty Soon”™.  While Quicktime and Flash  may work on this viewer for some users, given the age / status of both, the Lab does not plan to support either going forward, and recommends media creators migrate to HTML 5.

It had been hoped that this viewer would have been out by now; however there appear to be one or two issues still to be resolved. “I heard the developer working on it today say he was deep in the middle of keyboard issues,” Simon Linden said during the Simulator User Group meeting on Tuesday, July 7th. “Getting frameworks like that to cooperate with OS events like keyboard, mouse and screen is always tough.”

Experience Keys / Tools

Simon is continuing to work on tweaks to the Experience Keys / Tools code, and in doing so passed an interesting comment at the Simulator User Group meeting.

“I’ve been working on updating the KVP code that runs on our server,” he said, “and had the most frustrating time integrating the newest version into our code … The code we have is dated and we should have better performance and stability with their latest.”

Quite what the difference is between “our” and “their” code might be isn’t entirely clear at this point in time – although the question was asked during the meeting, and may well be asked again in the future.

Simon also hopes to put some work into getting KVP access moved onto a separate thread to ordinary asset handling. As previously mentioned in these updates, that KVP access is currently on the same thread as asset handling can, at times, cause issues, as noted in BUG-8946.

Group Chat

The recent improvements made to group chat continue to make themselves felt, with many reporting that the old issues of lag with the chat on large groups has largely dissipated. Such are the improvements that Whirly Fizzle has suggested that http://isslgroupchatstillbroken.com/ should be updated. Even so, despite all the the improvements, Simon has indicated that there are still “a few things” he’d like to tweak a little more.

Second Life project updates 27/1: server, viewer, Experience Keys

Jasmine's Hollow; Inara Pey, June 2015, on Flickr Jasmine’s Hollow (Flickr)

Server Deployments

As always, please refer to the server deployment thread for the latest updates / news.

  • There was no scheduled deployment to the Main (SLS) channel on Tuesday, June 30th
  • On Wednesday, July 1st, all three RC channel received a re-roll of the server maintenance project from week #26, minus the problem which caused that week’s roll-back.

BUG-197, “Cannot See My Chat Only In My Region/ Region Bad Performance” refers to a problem whereby a user can’t see any of their local chat on a region or parcel, and nor can anyone else, due to a scripted object which is spamming chat so badly, the chat throttle kicks in, but no warning would be provided to inform the user this was the case. with the deployed change, the user will now get a message about the chat throttle being hit, but unfortunately, the system will not identify the spammy object (so it might be removed / returned, if possible).

SL Viewer

On Tuesday, June 30th, the Experience Tools RC viewer, version 3.8.0.302622, was promoted to de facto release status by Linden Lab. An official blog post accompanied the promotion, and I blogged an updated overview of the viewer and Experiences.

On Thursday, July 2nd, the Attachment Fixes RC viewer (Project Big Bird) updated to version 3.8.1.303130, bringing it to parity with the release viewer. The Maintenance RC viewer and the Viewer-Managed Marketplace RC viewer will also be updated in due course.

Experiences and Experience Tools

As noted above, the Experience Tools viewer was promoted as the release viewer on Tuesday, June 30th. As a result of this, a number of questions were raised during the Simulator User Group meeting that day, some of which have been asked elsewhere, and so are reproduced here:

  • Will accounts other than Premium be able to create Experiences in the future?
    • No comment at this time
  • Will it be possible to purchase additionalKVP data storage (for storing information on an experience – players, their progress, etc.) in future?
    • This has not been ruled out by the Lab, but it is something they’re decided they don’t “need to figure out yet”
  • What happens to an Experience if a Premium user reverts to a Basic account?
    • The Experience is suspended; data saved to the KVP will not be immediately deleted
  • Will it be possible to transfer an Experience to, say an alt on Premium if downgrading the account associated with the Experience to Basic?
    • This is a possible idea for the future; however the Lab are not looking at it at present, due to the complexities involved
  • Can any third-party creators to sell no mod scripts for other people’s experiences?
    • Technically, no; contributors to an Experience have to be explicitly allowed by the Experience owner
  • Can an Experience run on a mainland parcel?
    • Yes
  • Can an experience run across multiple regions?
    • Yes, so long as it is Allowed by the land owner(s)
  • Will a region restart affect the information for an Experience stored in theKVP?
    • No.

Other Items

Windlight / Environment Changes

The Lab is looking to improve windlight / environment capabilities within the viewer. No work has actually started as yet, but there has been an offer from the Alchemy TPV team to contribute code that would allow the cloud textures to be changed without having to re-start the viewer when doing so.

An idea that has been suggested is that creating and saving windlight settings as local XML files could be replaced by saving them as assets. No decision has been made on this, but it is important to note that were this to go ahead, this would not prevent people from creating their own windlights. Rather, what it would mean is that such custom settings would be saved as SL assets, rather than locally, making them easier to share with others, resulting in a more easily achieved “shared experience” to be experienced.

Avatar Complexity

The release  of a project viewer for Avatar Complexity is still stalled due to the bug that’s been introduced that renders all avatars affected by the setting as invisible, rather than as the expected “Jelly Babies”.

Second Life project updates 26/1: server, avatar rendering

The DECADES event  - Saturday, June 27th, 2015 only - details here
The Decades event – Saturday, June 27th, 2015 only – details here

Server Deployments

  • There was no scheduled deployment to the Main (SLS) channel on Tuesday, June 23rd
  • On Wednesday, June 24th, all three  RC channels were updated with the same new server maintenance project, which included a fix for BUG-197, “Cannot See My Chat Only In My Region / Region Bad Performance” (not open to public viewing) and internal simulator fixes. As pointed out in the comments, this deploy was actually rolled back; I had forgotten to re-check the deployment page between originally drafting the first part of this article and publishing it.

The chat issue is a problem whereby a user can’t see any of their local chat on a region or parcel, and nor can anyone else due to a scripted object which is spamming chat so badly, the chat throttle kicks in, blocking their chat. However, no message would be provided to inform the user this was the case; with the change deployed on Tuesday, the user will now get a message about the chat throttle being hit, but unfortunately, the system will not identify the spammy object (so it might be removed, if you own it / the the rights to return it).

Avatar Complexity and Avatar Rendering in Busy Regions

Avatar Rendering in Busy Regions

During the Simulator User Group meeting on Tuesday, June 23rd, Simon Linden hinted that as well as the upcoming Avatar Complexity feature for which I recently gave a rapid overview, there are other options the Lab might consider in order to lighten the rendering load created by avatars:

We may experiment with a similar setting for crowds … setting a limit on the number of avatars we do any attempt at rendering.   In other words, if you were at a region with 75 people in view, and it was set for a limit of 64, you’d only get 64.  The remaining ones just wouldn’t be there in any form, similar to turning off avatars with ctrl-alt-shift-4.

He then went on:

That’s just an experimental idea now. To really make it better in a crowd, we’d probably want the server interest list to know and then it wouldn’t send you those updates.

As we’ve seen, the Interest list isn’t the easiest thing to play around with, so it’ll be interesting to see which, if either, of these ideas might be pursued.

Avatar Complexity

In terms of Avatar Complexity, questions have already been asked if the upper limit is adequate. With the test viewer, the Avatar Complexity slider runs from a value of 19,999 (which pretty much that no other avatars will render in your world view) means pretty much no other avatars will render in your field-of-view) through to 300K, above which sits “No Limit”, which means any avatar will render.

However, the suggestion has been made that the upper limit should perhaps be increased to allow for those who want to render particularly complex avatars used by friends. Responding to this, Oz Linden said, “It wouldn’t be hard to make the range somewhat wider, but at some point the control becomes too hard to use because each pixel is too big a jump.”

One issue that the new Avatar Complexity capability will not prevent (although, strictly speaking, it’s not designed to) is that it will not prevent worn mesh crashers impacting the viewer, because while the avatar is not actually rendered, the data on what is being worn still gets loaded into memory, and it is this that is used to crash things. Commenting on this, Simon linden said, “That sounds like something that should be looked at … if we can avoid loading that data, it would help everything.” Commenting on this, Oz Linden added:

There are a number of available optimisations; among them, using the complexity information from others to just pre-emptively not even fetch the appearance info for an avatar.

So again, it will be interesting to see what might come to pass in the future, should the Lab take this work up as well.

Second Life project updates week 25/2: TPV Developer meeting

Alpha.Tribe
Alpha.Tribeblog post

The following notes are taken from the TPV Developer (TPVD) meeting held on Friday, June 19th. A video of the TPVD meeting is included below, with any time stamps in the following text referring to it. My thanks as always to North for the recording and providing it for embedding.

SL Viewer

RC Viewers

[0:39 / 08:00] The Viewer-Managed Marketplace (VMM) viewer reached release candidate status on Thursday, June 18th with the release of version 3.7.31.302677. This means the VMM code is now officially available for TPVs to integrate into their viewers. When this viewer reaches release status, it will signal the end of the current VMM beta period.

[22:37] Currently, the Lab is aiming to promote the Experience Tools, VMM and attachment fixes (Project Big Bird) in order – although what that order might be, has yet to be finally determined.

A new Maintenance RC viewer, version 3.7.31.302685, entered the release channel on Friday, June 19th, with some 50 fixes, improvements and updates, covering building, snapshots, group ban fixes, rendering fixes, etc. Please refer to the release notes for full details.

Project Viewers

An update to the Oculus Rift project viewer  (currently version 3.7.18.295296, and not updated since October 2014) is anticipated to be arriving “soon”, although no precise date is available.

[09:10] A new voice project viewer is expected to appear in week #26 (week commencing Monday, June 22nd), with fixes for voice issues directly from Vivox.

[09:32] A project viewer based on the latest HTTP updates (llcorehttp) that rider Linen has been working on is also expected to make its appearance shortly. This will likely remain at project viewer status for a while as it goes through various iterations as further improvements and revisions are made.

[10:00] A further project viewer with the Lab’s revamped notifications interface (see BUG-8000) is also anticipated as arriving soon as well.

A preliminary version of the proposed new notification panel (see BUG-8000). Note that is is a work-in-progress and may be subject to change prior to release (image courtesy of Whirly Fizzle)
A preliminary version from February 2015 of the proposed new notification panel (see BUG-8000). Note that is is a work-in-progress and may be subject to change prior to release (image courtesy of Whirly Fizzle)

Chromium Embedded Framework

[10:14] Work is progressing with the switch from webkit to the Chromium Embedded Framework (CEF) for media management such that it is entirely possible that a project viewer using CEF may be appearing in the next two weeks.

Snowstorm Project Viewers

[10:30] There are two Snowstorm (open-source contributions) viewers in progress. One of these includes the Avatar Complexity work and the ability to save graphics preferences for the viewer which are being developed by Jonathan Yap (see below for more on this viewer).

The second is a viewer build clean-up viewer that includes a number of TPV-contributed updates and fixes. This latter viewer is currently awaiting internal resources at the Lab, but should hopefully “very, very soon”.

Avatar Complexity

Work on the Avatar Complexity code has been halted due to the introduction of a bug
The introduction of a bug has paused work on the Avatar Complexity code

The Avatar Complexity (aka Jelly Babies) project is the upcoming functionality which provides greater control to user to define how other avatars are rendered in their world-view.

However, a recent  hiccup means that the project has been on hold. n making some changes to the code, Oz accidentally broke the code such that instead of rendering as a solid colour, avatars exceeding the limit are currently rendering as transparent, and this is yet to be fixed.

Commenting on situation at the TPV Developer meeting, Oz indicated any help any willing devs can provide to help sort the problem out, would be appreciated. The public repository for the code is here.

The code problem arose as Oz sought to make changes such that avatars above the rendering limit set by the user render as “Jelly Babies” (i.e. a solid colour, as previously indicated in discussing the project), those avatars with incomplete rendering data are rendered grey (as we currently sometimes see in-world), and those that the user has muted are simply not rendered at all.

Continue reading “Second Life project updates week 25/2: TPV Developer meeting”