SL Project updates: server and Project Bento

Winter Wonderland returns
Winter Wonderland – blog post

Server Deployment – Week 52

On Tuesday, December 22nd, the Main (SLS) channel received the same server maintenance project previously deployed to the three RC channels. This comprises crash and internal simulator fixes; LSL HTTP requests accessing data sources that require non-text Accept headers (such as the Destination Guide); and updates to group member counts to help deal with recent group database issues.

SL Viewer

With the no change window now in effect, no updates are anticipated with any of the current crop of official viewers until after Monday, January 4th, 2016. These are:

  • Release viewer, version: 4.0.0.309247, dated December 17th – formerly the Chromium Embedded Framework RC viewer – release notes
  • Project Azumarill (HTTP updates) RC viewer, version 3.8.7.308134 dated November 25th – release notes
  • Vivox (voice fixes) RC viewer, version 3.8.7.307744, dated November 17th – release notes
  • Quick Graphics (Avatar Complexity and graphics presets) RC viewer, version 3.8.7.306758, dated November 12th – release notes
  • Maintenance RC viewer, version 3.8.7.308556, dated December 3rd – release notes
  • Project Bento (avatar skeleton enhancement) viewer, version 5.0.0.309171, dated December 17th – release notes
  • Oculus Rift project viewer, version 3.7.18.295296, dated October 13th – release notes
  • Obsolete platform viewer (for users of Windows XP and OS X versions below 10.7), version 3.7.28.300847 dated May 8th – release notes

It is anticipated the HTTP RC viewer and the Vivox RC viewer will be released as a single RC viewer very early in 2016.

Project Bento

Commenting on the video at the last Simulator User Group meeting for 2015, Simon Linden said, “that video is cool :)”!

Bone Translation and Rotation

As reported in my week 51 project updates, I reported how the Lab was asking for more detailed feedback on specific requirements animators and creators felt they might need with the Bento skeleton. The comment, made by Oz Linden, came after Vir Linden responded to feedback relating to bone translation through animations, rather than relying purely on  rotation with the facial bones (as is currently the case).

These comments have led to more comprehensive feedback through the Bento discussion forum thread, including two videos by Raz Welles, and animated GIF examples from others, demonstrating the need for translation as well as rotation to achieve various results with facial expressions. However, the Lab would still prefer specific examples to be reported in detail (e.g. on the JIRA), with the appropriate files supplied, as Oz Linden again notes on the forum. He goes on to point out as well, that it isn’t just “new stuff” the Lab is looking to offer through Bento:

I’ve seen a number of posts here that include some variation on “we have always had to do XYZ this way because of the SOMETHING bug, and so we can’t do SO-AND-SO” (for example, joint offsets not loading correctly). If there are existing issues that are directly related to Bento (like joint offsets not loading correctly), we’d like to get them fixed so that we can get some of these obstacles out of the way. So, if you’ve got one, please describe it (see previous paragraph – concrete examples we can experiment with) by filing a BUG in JIRA (put [Bento] in the Summary). References to long-standing issues are ok; we’re not only trying to do new things, we’re trying fix at least some old ones too.

Other Bento Bits

The Project Bento Skeleton Guide is now available on the SL wiki.

Some attending the Simulator User Group meetings have expressed a hope that Bento might offer (or pave the way for) animated objects which could use the skeleton. This would provide a means to provide NPCs and creatures which are not necessarily reliant on bots (see SH-2642 as a rough example of this kind of suggestion as well). responding to this at the Simulator User Group meeting on Tuesday, December 22nd, Oz said:

Skeletons for non-avatar objects are out of scope for this round. It’s an obvious improvement that would be good to do someday; whether and when is not currently knowable.

Asked if filing a feature request would be appropriate, he added, “I’m pretty sure we’ve got several variations on that request, but one more certainly won’t hurt.”

Overall the Bento discussion is healthy, although how it all translates into actionable items with regards to the new avatar skeleton extensions remains to be seen. As the Lab has indicated, hopefully there will still be plenty of opportunity to put forward and test further ideas, examples and suggestions during the first part of the New Year to help improve what is currently being offered.

Object_Rezzer_Key

Object_Rezzer_Key is a new parameter which is to be added to llGetObjectDetails()  early in the New Year. It will allow a rezzed object to find the key of its parent rezzer, then use llRegionSayTo() to chat back to that parent. It’s an option which has come up for discussion at User Group meetings a number of times, and at the meeting on Tuesday, December 22nd, Simon Linden indicated that it is something he is currently working on.

The parameter will only work with new objects within a region (existing objects will return a null_key when queried), but it should work after restarts and region crossings (incl. teleports), and with objects which are initially attached and then dropped. Full details will be available when the parameter is officially added to llGetObjectDetails() – Simon offered this news at the User Group meeting by way of being a small gift to those who have been requesting it.

Further Scripting Options for Experiences?

Another set of requests frequently put forward is for further scripted capabilities to be added to Experiences – such as more permissions, camera function additions / fixes further attach / detach / switch object options and an increase in memory for compiling Experience scripts. On these, Simon would only say that he has been looking into increasing script memory for Experience, “and ran into a really sticky problem … how to deal with it when the object goes outside the experience… how it should behave when you go outside the experience area.”

Oz Linden also stated, “Without trying to guess which changes we might make (because I have no idea yet), it has been noted that Experiences gives us some more latitude to provide script capabilities we would not have before because of griefing potential.”

So, it will be interesting to see what might lie in store for Experiences once the Lab are willing to reveal more about what they have planned, and what actually made it into those plans.

2015 viewer release summaries: week 51

Updates for the week ending Sunday, December 20th

This summary is published every Monday, and is a list of SL viewer / client releases (official and TPV) made during the previous week. When reading it, please note:

  • It is based on my Current Viewer Releases Page, a list of all Second Life viewers and clients that are in popular use (and of which I am aware), and which are recognised as adhering to the TPV Policy. This page includes comprehensive links to download pages, blog notes, release notes, etc., as well as links to any / all reviews of specific viewers / clients made within this blog
  • By its nature, this summary presented here will always be in arrears, please refer to the Current Viewer Release Page for more up-to-date information.

Official LL Viewers

  • Current Release version: 4.0.0.309247, December 17th – formerly the Chromium Embedded Framework RC viewer download page, release notes
  • Release channel cohorts (See my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • No updates
  • Project viewers:
    • Project Bento viewer version 5.0.0.309171 released on December 17 – introduces extensions to the standard SL Avatar Skeleton with support for dozens of new bones for both rigging and animation, and accompanying new attachment points (download and release notes).

LL Viewer Resources

Third-party Viewers

V4-style

  • UKanDo viewer updates to version 4.0.0 on Friday, December 18th – core update: parity with the Lab’s 4.0.0 CEF code and RLV 2.9.15 (release notes)

V1-style

  • Cool VL Viewer updated as follows: Stable version to 1.26.16.4 and Experimental branch to 1.26.17.2, both on December 19th (release notes).

Mobile / Other Clients

  • Group Tools updated to version 2.2.35.0 on December 12th  – no release notes available

Additional TPV Resources

Related Links

SL project updates 51/3: Project Bento initial feedback

Vir linden (foreground) and Matrice Laville at a Bento project meeting
Vir Linden (foreground) and Matrice Laville, Rider Linden and Flea Bussy (right) at a Bento project meeting

On Wednesday, December 16th, the Lab issues the Project Bento viewer, version 5.0.0.309171. This viewer introduces extensions to the standard Second Life avatar skeleton providing dozens of new bones to support both rigging and animation, and accompanying new attachment points. It is fully backwards-compatible with existing avatars, rigging and animation. The skeleton extensions include:

  • 11 extra limb bones for wings, which could also be used for additional arms, or extra legs.
  • 6 tail bones
  • 30 bones in the hands
  • 30 bones for facial expressions
  • 2 other new bones in the head for animating ears or antennae
  • 13 new attachment points associated with the new bones

Read the official announcement for more (my report is here). I’ll be providing more updates and background notes to the project in due course.

There has already been some detailed discussion on the Bento forum, including some concerns raised about the nature of the initial work being a “closed beta”. This is something of a misconception, as the project has been an iterative and shared process between the Lab and the content creators invited to participate in defining how the avatar skeleton could best be improved, what needed to be considered for backwards compatibility, etc., As such, it is only now that any beta can be considered to have been initiated – as Oz Linden explains in the forum, with Vir Linden also noting:

Nothing is final until we go to the main grid. The purpose of the testing period on Aditi is to identify and if possible fix any issues with the proposed skeleton. It’s possible we will add, remove or change bones as a result of feedback from the project viewer – so bone suggestions or bug reports are both very much fair game.

Project Bento also came in for significant discussion at the TPV Developer meeting on Thursday, December 18th, as noted below (see also the meeting video).

Potential Non-Bento Viewer Crashes

Concerns have been raised over avatars using Bento updates potentially crashing viewers which do not yet have the updates. however, the Lab has indicated that uploads using the new Bento skeleton will remain blocked on the main grid until the viewer code reaches RC status (see below), which should limit the risk of issues.

In addition, the Lab indicates it has pro-actively incorporated a range of bug fixes into recent versions of their viewer, up to and including the 4.0.0 CEF release, which are intended to handle a number of situations  where a crash might result from a viewer without the Bento updates encountering an avatar using the Bento skeleton. It is hoped that by the time the Bento viewer does reach RC status, these fixes will have propagated out to TPVs, and will help prevent any potential clashes between viewers lacking the Bento updates and avatars using the new skeleton until such time as all viewers and release versions with the Bento code.

An avatar using the Bento skeleton, as modelled by Matrice Laville
An avatar using the Bento skeleton, as modelled by Matrice Laville

Bone Translation as Well as Rotation

One concern / suggestion already raised is on the matter of providing bone translation rather than just rotation in order to better handle facial expressions (see BUG-1090, “[Bento] A formal method of bone-translating animations is vital for the creation of proper facial expressions”).  This bug was raised at the TPV Developer meeting, with Vir Linden commenting:

 

This is obviously a very complicated and controversial topic; there’s been a lot of feedback about it in the forums. Where we are right now is, animating positions is not something we ever supported on purpose, which means that our code for it …  it doesn’t work particularly well in the viewer. And our hope is, with adding the new joints, that workaround would no longer be needed to do interesting, alternate avatar shapes.

So the plan, and the way I believe it is currently configured is that on Aditi, uploads of animations that alter positions shouldn’t be allowed. And the intent there is to make sure we’re exercising the alternative pathway and making sure we actually can create the kinds of avatar people want to create using the new Bento skeleton without positions.

That’s where we are right now, but obviously, we’re in the very early stages of testing Bento, and we don’t really know for sure yet whether there are cases where this is required or not until people have actually exercised it. So that’s the kind of feedback we’re hoping to get: people trying different things and letting us know what can and can’t be done in this alternate paradigm which we think is a bit better supported.

As to the specific proposal to have translations for facial expressions, I’m really curious to how that would work. We talked about it when we were putting together the skeleton, and it seemed like it would be kind-of incompatible with the notion of any kind of avatar scaling. If you make the head bigger, or the whole avatar bigger, your translation-based facial animation, it seems like, is not going to scale up with the size of the head. So I’m not sure how well that would work. In any case, I’ll take a look at the report in more detail, and may want to respond to specifics in there, but that’s where we are overall with position animations right now.

It is just disabled on Aditi … for testing Bento, and nothing is final until we go to the main grid. But our hope is that this is just a temporary work-around that you’re not going to have to have, since it doesn’t work particularly well currently.

To this, Oz Linden added:

I think it will help inform that, and any other discussion of how the new skeleton extensions and restrictions work, [is] to try to make everything very concrete. That is, the assertion that “A” cannot be done, or that given the current restrictions, “A” cannot be done well, I think would be well-informed by having people share, publish what exactly they tried to do and exactly what the results are, and share the animation files and the meshes and the rigging and all that; so that everyone can see very, very specifically, what’s going on.

And  it may be that there are different ways to do what people are trying to do, and that they can accomplish a satisfactory result in a different way, and we can all learn what that is, or collectively discover that they can’t, and we need to make some adjustments.

But the assertion that XYZ can never be done, in general and with no specific example, doesn’t really help us to make good decisions.

Potential Timeline for Bento

Uploading of content designed to use the Bento skeleton  to Agni (the main gird) will remain blocked until such time as the Bento viewer reaches release candidate status.

This is unlikely to be much before the end of February 2016, partially because of the Christmas / New Year break, but also to give plenty of time for testing on Aditi and to provide feedback which may help the Lab in making further changes if needed, as per the comments above. It is also hoped the long lead-in time will give everyone the confidence that Bento is going to be something content creators are able to effectively use.

Feedback on Bento

SL project updates: 51/2: TPVD meeting, Aditi inventory changes

Whispering Wind; Inara Pey, December 2015, on FlickrWhispering Wind (Flickr) – click any image for full size

The following notes are primarily taken from the Server Beta User Group meeting of Thursday, December 17th and the TPV Developer (TPVD) meeting held on Friday, December 18th 2015. A video of the meeting is included at the end of this report, my thanks as always to North for the video recording and providing it for embedding.

Server Deployments – Recap

  • On Tuesday, December 15th, the Main (SLS) channel received the server maintenance package previously deployed to all three RC channels, comprising simulator crash fixes, and implementing feature request  BUG-10192.
  • On Wednesday, December 16th the three RC channels all received the same new server maintenance package, comprising crash and internal simulator fixes, LSL HTTP requests accessing data sources that require non-text Accept headers (such as the Destination Guide), updates to group member counts to help deal with recent group database issues.

There will be a further main (SLS) deployment on Tuesday, December 22nd, which will mark the final scheduled deployment for 2015.

SL Viewer Updates

Release Viewer

On Thursday, December 17th, the Chromium Embedded Framework viewer was promoted to the de facto release viewer, version 4.0.0.309247. This viewer replaces the ageing LLQTWebKit system used in the Web media plugin with a new one based on the Chromium Embedded Framework (CEF) that supports modern web technologies.

RC Viewers

The Vivox and HTTP RC viewers, currently version 3.8.7.307744 and 3.8.7.308134 respectively, are being merged into a single release candidate. This RC will also include the CEF updates, and the remaining Maintenance (currently version ) and Quick Graphics (currently version 3.8.7.308556) RCs will also be updated to include the CEF changes.

However, again due to the annual Christmas / New Year no change window, no further viewer releases are anticipated before the week commencing Monday, January 4th, 2016.

TLS 1.2 Implementation

As well as supporting the Chromium Embedded Framework  capabilities for media, the latest release viewer (4.0.0.309247, as noted above) also sees the LL viewer fully support TLS 1.2, which is an important point for TPVs to note, as Oz explained at the TPV Developer meeting:

That is going to be critical by next spring. Anything that does not support TLS 1.2, will not be able to do any interactions with cashier or anything that involves money. This isn’t optional on our part or just an arbitrary choice on our part, this is a compliance requirement. so, be looking for that in your own stuff; if you don’t support TLS 1.2, your users won’t be able to do anything that involves money, because we will have switched off everything earlier than that server-side.

When this change comes into effect, it will mean those users accustomed to using very old versions of viewers are going to have to move to currently supported versions of those viewer if they wish to do anything involving money.

Project Bento

On Wednesday, December 16th, the Lab issues the Project Bento viewer, version 5.0.0.309171, offering an enhanced Second life avatar skeleton. This viewer and the associated support for it, is currently in open beta, and can be tested using the Aditi (beta grid). You can read the Lab’s announcement, and my own initial coverage as background.

The project did come up for discussion at the Third Party Developer meeting on Thursday, December 18th, and I’ve provided a separate report on the matters discussed.

Aditi Inventory Syncing

Recently, people have been experiencing assorted issues when attempting to log-in to Aditi, the beta grid (see here for an example).  As a result of these various issues, the Lab has made changes to the Aditi log-in process, and one of these changes will affect how inventory is synced between the two grids.

Up until now, inventory syncing between the two grids (so that your inventory on Aditi matches your inventory on Agni) has been a manual process: change your Second Life log-in password and this triggers an update to your Aditi inventory (which could take 24-48 hours to apply).

With the new update, which will be coming into effect in the near future, changing your password no longer triggers an Aditi inventory update. Instead, a new methodology is employed, as Coyot Linden explained at the Server Beta meeting on Thursday, December 17th:

The current method of syncing accounts from Agni to Aditi has … issues,  even when you wanted it to happen, it sometimes wouldn’t and when it did it overwrote inventory. Now, there are two major differences: 1. It MERGES AGNI inventory into ADITI inventory instead of overwriting; 2. It is based on whoever has logged into ADITI in the last 24 hours when it runs in the middle of the night SLT. No changing passwords any more.

The merging means that items unique to people’s inventories on Aditi (items they have created there but not replicated on Agni) will no longer be overwritten. However, duplicates of items will not result from the merge, as Oz Linden explained:

If an item is only on Aditi, it will still only be on Aditi; if it was only on Agni, it will be added to Aditi, if it was on both you will have just one copy on each grid … When you “modify” an object, you’re really making a new object, so yes, it knows that it has been modified… they are no longer the same object.

The upshot of this is that as this update comes into effect, changing your SL password will no longer trigger your Aditi inventory being overwritten by your Agni inventory; instead, a nightly process will run automatically, and anyone who has logged into Aditi since the last time the process ran will have their Agni inventory merged into their Aditi inventory. If you are logged-in when the process runs, a re-log will be necessary to see the updated inventory.

Continue reading “SL project updates: 51/2: TPVD meeting, Aditi inventory changes”

Firestorm’s Xmas party and the Ghost Town in Second Life

Image courtesy MadPea Games

Saturday, December 19th, 2015 marks Firestorm viewer’s official 2015 Christmas Party, and with it comes the opening of The Ghost Town, the first in a series of free-to-play games developed by MadPea Games. These games are intened to give new residents coming through the Firestorm Gateway a means to become more familiar with Second Life through active game play.

The Christmas party will kick-off at 14:00 SLT, which will also see The Ghost Town open its gates to players, features entertainment from Mankind Tracer, Changhigh Trinity Sisters Fireshow and DJs. The entertainments area has been arranged so that around 200 people should hopefully be able to access the party, with three points of entry provided:  Region 1, Region 2, and Region 3.

FS-MP-Party-Poster2015

The Ghost Town sees players tasked with  investigating the recent disappearance of local fisherman Big Jimmy. Guided by his journal and equipped with a special camera, players follow the clues left by a mind gone mad and discover the terrible truth behind Big Jimmy’s recent activities.

“New residents who stay and play in our virtual world are essential to the continued success of our grid,” MadPea say of The Ghost Town. “Whilst Linden Lab continue to work to attract new residents once they join and enter the world, we will be doing our part to ensure that they realise the rich, user-created content that is on offer. We hope that by playing our games new residents will learn skills that will help them over the steep SL learning curve while having some fun and collecting some prizes.”

What is the dark secret behind "Big Jimmy's" disappearance - and where will his journal lead new users in Second Life?
What is the dark secret behind “Big Jimmy’s” disappearance – and where will his journal lead new users in Second Life?

As with all MadPea games, The Ghost Town is HUD-driven, and as with their most recent games, utilises experience keys to make game play easier. Gameplay takes place within the Firestorm Gateway regions, where they have to collect the images of 20 “ghosts” using the camera (HUD). Once all 20 have been imaged, players are eligible to claim their prizes.

The prizes on offer have been selected on the basis of being of value to new users and helping them enhance their Second Life experience. They have been provided by creators representing the rich choice of content available in Second Life: abranimations®, Apple Fall,, Black Pearls, Bryn Oh, Cheeky Pea, Deadwool, Elikatira, junk. Lapointe and Bastchild, Lilith’s Den, Plastik, Pose O’Clock, Sn@tch, Snowpaws, The Little Bat, TrAsHeD, United Color, WarBug and zombie suicide.  The MadPea and Firestorm teams both extend their thanks to all of those who came forward with the offer of prizes.

The Ghost Town awaits players new and old
The Ghost Town awaits players new and old

New players will be drawn into the Firestorm gateway through a series of dedicated web landing pages that are in developments (Linden Lab, and quite separately to the gateway trial programme, also use targeted landing pages to attract new users from specific audiences, so it is an approach which seems to yield results). Obviously, existing users are also able to play the game – hence the launch alongside the Firestorm Christmas party.

So, if you’re in the mood for a party, and fancy a spooky new game – hop over to the Firestorm Gateway regions using the region links towards the top of this piece.

Project Bento: avatar skeleton enhancements for Second Life

On Wednesday, December 16th Linden Lab officially announced Project Bento which brings a range of avatar skeleton enhancements to Second Life.

The project has been in progress for the last several months, with the Lab working in collaboration with a number of noted Second Life content creators who specialise in avatar shapes, bodies, and animations. I’ve been fortunate enough to be very peripherally involved in the project myself, with the aim of documenting some of the process involved – and I’ll be providing more on that in an upcoming article.

The blog post announcing Project Bento explains the reason and focus of the work thus:

We know how much work, value, personalization and emotional investment goes into a Second Life avatar, so we have always been careful when considering avatar changes. While we want to make improvements, we also want to maximize backward compatibility. Get ready for the biggest thing that’s happened to avatars in years …

Ever wish you could incorporate a tail, wings, or second set of arms into your avatar? How about having animations for facial expressions and finger movements? Yes, we know that there are some incredibly creative workarounds that give you some of these, but they can’t leverage skeletal animation, so they have been very complex, often fragile, and very expensive in performance and resources both in your Viewer and the Simulator.

We are introducing extensions to the standard Second Life Avatar Skeleton that give you dozens of new bones to support both rigging and animation, and accompanying new attachment points! This extended skeleton, which is fully backward compatible with existing avatars, rigging and animation, gives creators the power to build more sophisticated avatars than ever before.

Project Bento has involved staff from Linden Lab, notably Troy Linden, Oz Linden and Vir Linden, together with assistance from Alexa Linden, Simon Linden, Rider Linden, Aura Linden and others. It has also involved SL content creators including the folk from Avastar, Cathy Foil, Toady Nakamura, Siddean Munro and Flea Bussy
Project Bento has involved staff from Linden Lab, notably Troy Linden, Oz Linden and Vir Linden, together with assistance from Alexa Linden, Simon Linden, Rider Linden, Aura Linden and others. It has also involved SL content creators including (but not limited to)  the folk from Avastar, Cathy Foil, Toady Nakamura, Siddean Munro, Tyr Rozenblum, and Flea Bussy

In particular, Bento sees the introduction of the following Skeleton extensions:

  • 11 extra limb bones for wings, additional arms, or extra legs.
  • 6 tail bones
  • 30 bones in the hands (all 10 fingers!)
  • 30 bones for facial expressions
  • 2 other new bones in the head for animating ears or antennae
  • 13 new attachment points associated with the new bones

The changes involve both simulator updates and changes to the viewer. The former have already been deployed to the grid, being the “secret” update made in week #48, alongside the need validation enforcements for attachment point IDs and to prevent the upload of animations and meshes weighted to invalid attachment points; however, they are not yet active.

To mark Project Bento, Alexa Linden has updated her Linden Bear, now available on the Marketplace
To mark Project Bento, Alexa Linden has updated her Linden Bear, now available on the Marketplace

This is because the Bento work is still in project status – the announcement is intended to inform people about the work and seek feedback from more creators / animators. This can be given via the Project Bento forum thread, with specific bugs bugs or issues reported by the Project Bento JIRA class.

To try out the new skeleton updates, you will need the  Bento project viewer (which sees the viewer iterate to version 5.0), and because the project is still a work in progress, you’ll need to upload any content using the new skeleton extensions to the Aditi (beta) grid – most regions on Aditi should allow this, although some may be in use for other testing and not yet have these updates. Additional documentation is also available, together with notes on testing.

Commenting on the launch of the project, Oz Linden had this to say (from 37,000 ft whilst flying across America!), in recognition of the extensive input made to the project by content creators, which has included modelling and testing the skeletal changes, advising on viewer updates, putting forwards ideas for possible future extensions to the project, and a whole lot more.

Thank you Thank you Thank you .. we could not have done it without you

Draxtor Despres and I will be covering more of the background story on Project Bento in the near future, including a Drax Files World Makers special on the project in January.  Keep your eyes peeled!

With thanks to Matrice Laville and Gaia Clary for the video.