01 May 2011

LL breaks 1.23 and 1.x TPVs. Film at 11.

Linden Lab has, for the past several months, promised faithfully that they would not break Viewer 1.23, and version 1-based TPVs, until they had made a formal decision to do so.

Last week, they broke that promise.

Viewer 2 version 2.6.3 adds a neat new feature: avatar physics. The feature that gave Emerald, way back when, its biggest boost in users and vaulted it to the top of the heap is breast physics: the ability to make a female avatar's breasts bounce. There are lots of problems with the Emerald implementation, which was carried forward to Phoenix unchanged, but it's there and used. Don't believe me? Just wait till it breaks in one way or another, and see how many complaints surface in Phoenix Viewer Support.

LL implemented the feature themselves, and got it right. This is still a source of endless amusement to me. They put it in the control of the user whose avatar is being shown, and made it work right, and also made more than breasts bounce. All in all, it'a good thing. Even if I still get a giggle out of it.

The problem is that they changed the way that the avatar's description is sent to the viewer. The network message they use to do that hasn't been changed in ages. They needed to extend it to add the new physics descriptions, so the viewer can show it properly. Unfortunately, both 1.23 and Snowglobe are too picky about the contents of that message, and reject it entirely rather than simply ignore the parts they don't recognize. This is also true of every popular TPV out there, all of which are based on Snowglobe 1.5.

Honest mistake, right? Wrong.

Dan Linden's comment on the LL JIRA describing the problem, VWR-25479, is telling:

Dan Linden added a comment - 27/Apr/11 12:49 PM
This is a known incompatibility with 3rd party viewers. We are not going to commit to fixing this.
A known incompatibility? Really? Then why was it rolled out without using the communications channel specifically set up for LL to let TPV developers know of this exact kind of problem?

But it's worse than that. It affects 1.23, too - and it won't be fixed.

How does this affect 1.23 users, and those of V1-based viewers? Basically, if a user of a 2.6.3 or later viewer, or one that has had avatar physics retrofitted (such as Firestorm Preview 3, due out soon, I hope), changes their shape at all, that change won't be shown, and all other users on 1.x viewers looking at that avatar will see the system default hair base as well as any prim hair they're wearing.

Needless to say, this breaks content for the majority of users of Second Life, at least until they move to a viewer with the fix for the issue in it. We're hoping to get out a version of Phoenix that has the fix sometime this week. All current versions of Phoenix, up to and including, are affected by the change.

If you read down to Oz's reply to my comment, you'll see that LL thinks this is a bug that was fixed long ago, and that we should track LL's changes to the codebase. In general, he's right - but how do we find out about other fixes that have been in v2 from before the code was opened up, but aren't in v1? Do we read through all 800K lines of code in both versions, comparing how they both work? That's a superhuman task.

The practical effect of this is that LL has broken 1.23. TPV developers have the fix - literally, deleting 7 lines of code - and will be putting out updates very soon to account for it. 1.23 users have no such update to go to. They've got four choices:

  1. Put up with the problem.
  2. Change to Viewer 2.
  3. Change to a TPV with the fix.
  4. Get off of SL.

Which choice they'll make depends on why they're still on 1.23. If they're there because they saw no need to update, they now have one, and will move. If they're still there because they can't stand Viewer 2, then they'll either pick a TPV or else get off of SL. If they're still there because they're a casual SL user, they might update - or might simply say "screw this!" and get off of SL.

In any case, LL, for better or worse, has now decided, unofficially or otherwise, to break 1.23. They're gong to have to live with the consequences of that, and not get the benefit of having done it in a deliberate manner with plenty of warning for folks. I hope it works out for the best, but I'm not as hopeful as LL appears to be.


  1. Yes, once again LL has basically said FU to it's most loyal user base..... chasing the Myth Of 100 Million Users.

  2. Hmmm. I thought they'd already said that several things they were doing this year would break 1.x compatibility.

  3. They have said they *will* break v1 compatibility, but they've also said - repeatedly - that they wouldn't do so until there was a formal, official decision, announced well in advance of the effective date, not to support V1 at all on the grid any more. At the last TPV meeting, Oz reiterated that exact statement, just as this problem was breaking V1.