Fare thee well, Phoenix

Today sees the final major release of the Phoenix 1.23.5-based Viewer from Jessica, LLG and the rest of the team.

With it comes some major bug-fixes, not the least around RLVa, which had more than a few issues, and some rounding-out of features as well as some natty new additions. The full list of updates is available as always, however, here are the highlights of the “new” stuff:

  • Full Display name support in groups, local chat, radar etc.
  • Add button to refresh contents of a prim being edited.
  • Script count now includes Script memory in square brackets. This is not an accurate measurement of how much work scripts are doing. But it gives you more info on the amount of memory the scripts are using. Requires Bridge v12.

As long as there is the promised option to have Display Names OR avatar names show up in chat, etc., then the first addition won’t cause too much head scratching as people notice “Hungry Scoffadopolous” or “Lord Almighty Schmoo III” or “Jeanie’s Lil’ Bunny” (or other variants of names) showing up in their lists, or tedious pulling-up of Profiles just to be sure.

The Refresh button for edited prims is *so* welcome, especially for those of us who use things like rezzers, vendor servers, etc., and are forever re-editing prims to get the contents to correctly list.

The Script memory use tool could be very useful in the right hands. Hopefully it will encourage those who don’t currently, to think about whether their script(s) really *should* be Mono (and grabbing 64Kb of memory each) or remain in LSL(2) where they grab only 16Kb. After all, three scripts grabbing 16Kb of memory each is still only 48Kb…whereas “combined” into a single Mono, they are grabbing 64Kb and eating resources. And if they are kept as three individual MONO scripts because it is “faster”, that’s a whooping 192Kb eaten from server memory.

Phoenix has been a marvellous addition to the TPV stable of Viewers, and all who have contributed to it deserve our thanks. It may not always be perfect, but Phoenix is the welcome flagship among TPVs in terms of overall popularity, feature spread and ease-of-installation (even with the return of the split between the SSE and SSE2 downloads – so make sure you follow the right link!).

Phoenix will continue with maintenance releases, but this is a fond farewell to major development work as the team now gear-up with developing their Viewer-2 based Firestorm, which we’ll be seeing (hopefully) around Q2 of 2011, I understand.

The Phoenix has risen

Today sees the “final” release of Phoenix as a Release Candidate, that brings together the last clutch of major releases from the Phoenix team prior to work starting in earnest on their Viewer-2 hybrid, Firestorm.

Given there are a number of fairly big updates in this release (.725), the Phoenix team are taking a wise course of action in declaring it a Release Candidate that may require some tweaking to iron out remaining issues and bugs before it can be considered a “final” release. Therefore, I’d recommend you bear this in mind when downloading and installing.

The key feature list with this release is impressive, and it is good to see Phoenix get code that officially supports multiple prim attachments, thus finally breaking the issues with using the Emerald hack for this, and there is even a document for those who have routinely used the “Emerald hack” explaining what they’ll likely get on using the RC. Display Names are also introduced with this release, so there are going to be some interesting times ahead for people longing to be able to set suitable role-play names  as well! It’s wotrh watching the video on DisplayNames, as Phoenix, I understand, offers additional functionality on these over Viewer 2.x

There are also some changes “missing” from this release (as in, no-one anywhere has yet ported the code for use in 1.23.5-based Viewers), and some changes that are going to doubtless cause confusion and / or minor heart palpitations for those who have not read the supporting documentation. Chief among these are:

  • No support for multiple clothing on the same layer: in other words, you cannot wear two Jacket layers, as is possible in Viewer 2.x and its derivatives. Those desiring this are likely going to have to wait for Firestorm or something like Imprudence’s upcoming Kokua Viewer
  • Phoenix adopts the Viewer 2.x inventory management code. This means that if anyone has ever used Viewer 2, they could be in for a surprise when they log in with the Phoenix RC and find themselves wearing clothing and one or more prim attachments they were wearing the last time they ever logged into SL using Viewer 2. However, the good news is that Phoenix now has the ability to create Outfit folders at last – although this may not be such a boon to those who manage some of their outfits through #RLV.

The ability to manipulate parcel presets with the same ease as with Viewer 2.x is also a massively-welcome addition to Phoenix.

I’ve run a quick test on various elements – like multi-attach and Outfits creation and the use of Display Names, and all appear to work perfectly well, although I still feel Outfits is limited in that there is no ability to “nest” outfits within a sub-folder structure so that, for example, you could have MY OUTFITS -> GOWNS -> and all your various gown Outfits. Now, this isn’t a fault with Phoenix – it’s the way things work in Viewer 2.x – but perhaps Jessica and the team could look at tweaking the  code for Firestorm…

Display Names has a nice work-through, given Phoenix doesn’t have that bloody sidebar, and the functionality is neat.

Overall, this appears to be a mighty swansong for the 1.23.5-based Phoenix (which, once this release hits “final”, will be subject to issue / bug fix releases only), and one that – RC jitters aside – is going to please a lot of people.

Me included! Kudos to the Phoenix team and all associated with the project!

Yet more on Mesh

Various questions have been floating around, re: Mesh. In the hopes of providing clarification, here’s a couple of points of clarification:

TPV users will not be able to see Mesh objects.

  • Users of 1.23.5 / snowglobe-based viewers will likely not be able to view Mesh objects.
  • Users of Viewer 2.x-based TPVs will be able to view Mesh objects correctly.

TPV users will not be able to upload Mesh imports

  • Users of 1.23.5 / snowglobe-based viewers will not be able to upload Mesh objects
  • Users of Viewer 2.x-based TPVs might be able to upload Mesh objects, depending on whether Linden Lab agrees to release a “wrapper” that will make this possible.

It’s by no means certain that the second point above actually happen; Linden Lab appears keen to ring-fence the ability to upload Mesh within Viewer 2.x. However, those TPV developers developing Viewers based on the 2.x have requested a means by which they can provide the means for users to upload Mesh objects, and Linden Lab have apparently agreed to look into the matter and see what can be done, without necessarily lifting the fence on the code completely.

One thing that is clear is that if the ring fence remains firm, those wishing to see – as well as upload – Mesh objects will, at some point, find it necessary to make the move to a Viewer based on the Viewer 2.x code. Both the Imprudence and the Phoenix teams are already moving in this direction – with Jessica Lyon of the Phoenix team going so far as to state that the upcoming release of Phoenix will likely be the last major release to that particular code base, with future releases being restricted to bug fixes and the like, while the focus within the Phoenix team shifts more to the Firestorm (Viewer 2.x-based) Viewer project.

Making an Ascent on Second Life

While Phoenix remains by far the most popular of the Third Party Viewers on offer for use with Second Life, a new arrival in the last couple of months is beginning to show some promise – particularly when it comes to implementing features from the Viewer 2.x stable – and which again, like Phoenix and Imprudence, does not require the initial installation of either the “official” 1.23.5 or Snowglobe Viewers as a prerequisite to its use.

Ascent has probably caused some eyebrows to rise, given it is apparently based on the Inertia Viewer code base. Inertia was a non-TPV compliant Viewer that was developed by the infamous “Hazim Gazov” – who was by turns, banned from Second Life by Linden Lab, the “whistle-blower” who first started to “reveal” genuine concerns around the Emerald Viewer (while also sharing in the rumour-building) and who was the target of Phox’s failed (and idiotically suicidal as well as moronically childish) DDoS attack which was in part responsible for Emerald being “banned” as a Second Life Viewer. Ascent is now maintained by one Charley Levenque, aka Charlotte Wirtanen, an unknown quantity in both cases, although in the latter guise, has been around since 2006.

Now to the Viewer itself. The setup EXE downloaded smoothly. It did cause a raised eyebrow, however, as it came in at almost twice the size of the likes of the Phoenix, Imprudence and other 1.23.5 Viewers – although I’ve been informed this is often the case with Viewers based on the Snowglobe code, which apparently forms the foundations for Ascent. An anti-virus scan revealed nothing untoward in the EXE (not entirely unsurprisingly) so I went ahead and ran it. As one would expect from a TPV of this nature, the overall installation was quick and clean, ending with an option to run Ascent at once.

The splash screen showed the Ascent download page, and was in the “official” blue skin display. Logging-in revealed the familiar 1.23.5 UI – but with the ADVANCED menu already listed on the menu bar, so no need to press CTRL-ALT-D.

At first glance, Ascent looks little different to the likes of Phoenix, Imprudence and others: the menu bar and toolbars along the bottom of the screen are largely unchanged, the in-world View is obviously the same – but just a little digging reveals that thought has been put into making Ascent not only different to other TPVs – but potentially more useful.

Clicking on COMMUNICATE, for example reveals several new features. At the top of the CONTACTS list is a CONTACT SEARCH box. Enter the first few characters of a name here, and a list of matching contacts is displayed. Type in a full name, and just display that avatar. Above this is a CONTACT GROUP drop-down, although functionality for this appears to be awaiting implementation. Replacing the Import / Export buttons found in the CONTACTS list of some Viewers is a count of the number of Contacts one has (and the number actually online), and a count of the number currently highlighted within the list. The Search function I can see being very handy for those with massively long Contacts lists – such as store owners – who need to contact someone quickly.

The RADAR (Avatar List) window offers the same functionality as most of the TPV’s that now include this function ported originally from Meerkat. However, unlike Phoenix, Ascent still includes the majority of avatar functions as a series of buttons at the bottom of the display, rather than moving them to a context menu displayed when right-clicking an avatar’s name in the list. When originally introduced into Emerald, this latter functionality caused divisions among users: people either accepted it, or demanded the return of all the buttons. Phoenix has something of a compromise, in that some of the buttons are back at the bottom of the screen; however, I find the context menu just fine, and personally think that Ascent has taken a step backwards here: the Avatar List is a useful tool in many ways, but Ascent’s simply takes up too much screen real estate.

BUILD incorporates functionality found in other TPVs, albeit relabelled. For example: the ability to OPEN the Group profile for a selected object is called VIEW. A nice touch on the Build menu is that when editing linked parts of an object, the “Selected Objects” count common to some other TPVs is replaced by a “Link number” display, as shown on the left. This functionality can be found in “Experimental” releases of Imprudence, but of the standalone installation TPVs, Ascent is the first to offer it in a “full” release.

For people utilising scripts that handle primitive counts to set a specific prim to a specific display (say, lettering on a scrolling prim notice), this strikes me as a useful little feature, and one I’d like to see pop up in other viewers.

INVENTORY offers pretty much the standard fayre for good TPVs, including the ever-handy RESTORE TO LAST POSITION option in the event you TAKE a linkset back to inventory, only to find you’ve missed linking a couple of prims. God knows, *I’ve* needed it enough!

Preferences

As with the majority of TPVs it is in the Viewer Preferences that Ascent shows clear differences. All the usual tabs are there: General, Input & Camera, Network, Web, Graphics… and so on. Two two unique tabs here are ASCENT SYSTEM and ASCENT VANITY.

ASCENT SYSTEM offers a number of additional tabs – less than the likes of Phoenix – each with either a less confusing array of options, or with options that have been better-organised. In summary:

  • General: offers a subset of functionality found in the TP/Login tab from Phoenix and others (double-click teleport, always allow fly, always rez under land group when available, as well as several Ascent-specific functions:
    • Enable Power User functionality: “unlocks” the ability to set an animation priority up to 7, rather than the usual limit of 4. How this is reflected when said animations are used in other Viewers is unclear.
    • Destroy Objects: anything you have the power to DELETE is deleted permanently, bypassing the Trash can.
    • Explode Objects: temporarily renders an object physical and then delinks it.
  • Chat/IM: neatly combines the more welcome elements of the IM and CHAT tabs again found in other TPVs, providing access to options such as allow MU* poses and auto OOC actions in chat; turning off the typing sound for chat, use vertical IM tabs, toggle the announcement of incoming IMs. This tab also includes the very useful Auto-response option for IMs, and (for some reason) includes options to display the time in either 12- or 24-hour notation and the date in US or European formats.
  • Performance: captures the progressive draw distance option from other TPVs, although without the slider bar to adjust. It also includes:
    • An option to turn off the annoying wind howl, pulled up from the Windlight settings and made easily accessible
    • The ability to turn off the Classic Cloud layer (the one that exists at around the 200m level) at log in, rather than having to twit around and find the option in your Windlight settings. I’m very in favour of this, as it does lead to a nice little performance boost.
  • Command Line: sees a subset of the text short cut commands available through the likes of Phoenix continued in Ascent.
  • Security: gathers together the more innocuous options from Emerald’s infamous “shield” options, presenting the user with a degree of privacy without going too far in the direction of impinging on the privacy of others.
  • Building: offers a subset of options originally found in the Emerald Build tab.

ASCENT VANITY gathers together the kind of settings one might like to set for one’s various avatars (if you happen to have more than one), and includes options to set tag and map colours to highlight friends, etc., as well as turn things like the teleport screens on/off or set breast and other dynamics.

Ascent does away which much that has in the past been looked at as controversial in some Viewers: IM encryption, for example is not present, nor are some of the more intrusive options to bounce in on people. It does have a couple that some may yet object to, although in the scheme of things, they are trivial. The first is the ability to fake your AWAY status – when active, AWAY will say visible in your tag even while you are camming around or engaging in IMs with others, etc. The second is the ability to see how long the people around you have been inactive.

Elsewhere, the pie menus have been reordered somewhat. Imprudence did this as well, with the aim of rationalising the pie menus and making them flow more logically – and it succeeded. It also offers the option of reverting to the more familiar pie menus if people have trouble getting their heads around the reordered versions. Ascent both reorders and adds functionality. I had no problems with the pie menus, but I can see those who want “all the latest but leave it as it is” bemoaning the pie menus at times.

Viewer 2.x Functions

As one would expect, Ascent includes Viewer 2.x’s Alpha Mask and Tattoo layer support – so no surprises there. What is a very pleasant surprise, however, is the inclusion of the Viewer 2.x multi-attachment support for prim attachments. This means that you can now wear multiple items on the same attach point (multiple rings on one HAND, for example)  – and have them render correctly in all Viewers. This is a major step forward when compared to the likes of Phoenix and Imprudence – and the work in getting it into Ascent is largely down the Henri Beauchamp. With multiple clothing layer support also promised (i.e. wear 2 jacket layers at the same time), this puts Ascent head-and-shoulders above other TPVs of its kind.

Beyond this, Ascent has the welcome inclusion of a client-side AO, the ever-useful Area Search functionality, and just about everything else that has proven useful in other TPVs. If it lacks anything at all, it is potentially that the Radar / Avatar List doesn’t include the additional listing fields found in Henri’s CL Viewer and, more to the point for many within SL, RLV/a support is lacking at the moment (although it is on the “to do” list) – which seems to be an odd feature to miss out.

There are a couple of functions I don’t entirely understand – such as using the “Ascent System Inventory”, which adds a couple of additional folders to the Inventory window whose precise function is unclear to me. Are they intermediary way points for uploads, located on Ascent’s own servers? The option to upload temporary textures suggests this – in which case, I have to admit to being leery of the functionality. I’ve searched the Ascent wiki for further information here, but have drawn a blank. “Downloading Inventory in the background” also seems to be an odd option. How is this different to the usual inventory caching, which is already dynamic and a background task?

Performance-wise Ascent feels a lot more stable than the likes of Phoenix, and certainly comparable to the “full” release of Imprudence. For me, it scores over the latter in having a wider range of skin options, and also retaining the more usable “large” Avatar List. Although it does miss out in not having a spell checker.

Ascent also appears to run somewhat faster (for me) than the official 1.23.5 Viewer, Imprudence and Phoenix. In comparison with the latter, my preferred Viewer at the moment, Ascent runs at around 10-12 fps faster on a “busy” sim and about 15 fps faster on a “quiet” sim. I have no idea if Ascent is SSE optimised, but overall the performance is good.

I have noted a couple of very minor issues, and given I’ve only been fiddling with it for 24 hours will doubtless find things that will niggle me – but currently, the fact that the Tp screen still momentarily flashes up, despite my setting the option to disable it and relogging after – does cause a frown, if nothing else.

Overall, Ascent is a commendable effort; I’m not qualified to look under the bonnet, so to speak, but from a pure user perspective, I have to say that it has the potential to become a Viewer of choice when certain other functionality has been added. That said, I would prefer to see higher visibility where the developers are concerned before I committed to a full jump to Ascent – and again, kudos to Jessica over at Phoenix in this regard. Nevertheless, providing no unpleasantness emerges around Ascent (one feels there should not be any, but the pedigree of  the Inertia viewer hovers in the background), Ascent could come to easily rival Phoenix in the TPV environment. It is already off to a very good start.

Viewer 2: Finally starting to show promise

Viewer 2.2 is now out and available – and it is finally starting to look like something many people can live with.

The ability to customise the interface has long been a bugbear in all iterations of the Viewer; and while we still cannot reasonably expect to be able to fiddle with things to the Nth degree, the ability to re-order things like the on-screen buttons is a step forward. We don’t all work the same way, we don’t want to do the same things – we’re not all right-handed or left-handed, much less all left-, or right-brain dominant – so this is going to help many reorganise things into a way that they feel is more logical and easier to use when it comes to their needs. Kudos, at last.

Similarly, the ability to float options away from the sidebar is a good step forward – although it seems from comments that the sidebar still remains the focal-point of the “new” Viewer, and not the in-world view; so my personal pet peeve with the Viewer remains.

It’s also nice to see the promised two-way “dialogue” between TPV developers and LL start to yield fruit, with tools we’ve seen commonplace in several TPVS – texture alignment, Google-powered translation, etc., – finally entering into Viewer 2; may snowstorm result in much more of this – and in both directions.

It’s also nice to see some major idiocy in the Viewer finally disappear, seemingly despite LL’s repeated refusal to initially listen and then simply drag their heels after admitting the problem(s). That parcel icons are now on by default is welcome news so is the ability to turn off scripted lighting and particle generators. Given the amount of resistance shown by LL to do the former, I wonder who took Esbee or someone outside and gave them a firm talking-to?

The reaction to the new Viewer has, overall, been positive in the comments following Esbee’s post, and there have even been some very good suggestions put forward for future improvements. I would hazard a guess that, unless said suggestions find their way into a TPV from a third-party – such as Kirstenlee’sS20, which still outstrips Viewer 2 and offers a (largely) genuine pleasure of a Viewer experience – and thus potentially into Snowstorm, I seriously doubt that they’ll be taken anywhere by Esbee et al.

Are these change enough to get me to jump ship from 1.23.5? Well, to be honest, no, not quite yet. I am curious to see if Marine updates her initial cut of the RLV-enabled version of Viewer 2 she put out on the 10th Oct, and which appears to be based on the Viewer 2.2 code as it stood then; whether changes were made to the base code between the 10th and yesterday’s release is beyond me. If she does, I’ll give things another look; but I’m still very attached to Phoenix – not just because of RLV, but because it still offers capabilities that are extraordinarily handy when keeping an eye on sims and tenants. These far outweigh the bells and whistles offered by Viewer 2, such as media-on-a-prim (which itself seems to have fizzled out like a wet firework rather than illuminating Second Life like a night-time space shuttle launch). As to the really useful features of Viewer 2: Alpha Masks, Tattoo Layers – they are already in the majority of TPVs, and so are hardly an encouragement to make the jump elsewhere.

So where is my incentive to move? Multi-attach / multi-wear? Very nice, but not actually essential, given how long I’ve lived without them – and certainly not worth a trade-off with that bloody sidebar barging out onto my screen without me cluttering-up world-view real estate with minimised windows torn off from it. And then we have the biggie: does search actually work in Viewer 2 now? I’ve honestly lost track of that situation.

Which really means my personal analysis of the latest release is really, “Congratulations, LL on getting a new usable Viewer out there for people. Pity you opted to push the code through the door eight months premature; you’ve still left yourselves a big mountain to climb in the eyes of the more cynical as a result of that mistake. But – well done, all the same, for keeping to your promise vis Snowstorm”.

Lagging behind the times

Frank Ambrose – FJ Linden blogs on the technology side of SL; and for once I have to wag my finger at him. This is a rare occurrence for me, as Frank is one of the most straight-up and openly “honest” (for want of a better word) Lindens who posts on the blog. But this time, part of his post does not reflect the realities of the SL experience.

Before getting to the wagging however, getting feedback on the technology side in SL is always good – and to be sure, Frank has led the charge behind the scenes in making the infrastructure a  lot better and more reliable; and some of the news he brings is good. Specifically, it is good to know that Group limits will soon be increased to 40 (albeit with a caveat). Raising the current limit has long been one of the highest-rated requests from residents for as long as I’ve been back in SL. That it has taken so long to get around to is a little inexcusable – but it is very welcome news. I just hope it doesn’t mark the return a familiar trend of LL opting for “easy” fixes (and yes, I do appreciate more is required under the hood than flicking a switch to achieve this) that amount to throwing crusts to the crowd in appeasement in the hope we’ll overlook the bigger and more painful issues.

HTTP texture loading is also good news…and one hopes that all TPVs will be able to absorb the code sooner rather than later. I’ve already commented on the Mesh beat, so no need to dwell on that; same with Display Names.

Improvements resulting from Project snowstorm I’ve yet to experience. I use a TPV, and I think it will still take a while for benefits from Snowstorm to flow outward, rather than inward. I’m sure there are a lot of LL-side benefits from the new server deployment process, but the truth is many have yet to seen real benefits in terms of their overall SL experience; but we’ll give it time.

No, the “wait, what?!” reaction to FJ’s post can be found in the first of his “update paragraphs”, namely:

Here’s  an interesting factoid: there are about two million teleports in Second  Life every day. Previous to our recent release of Server 1.42, when an avatar teleported or crossed into a new region, everyone on the  destination sim would experience a “lag” event as the simulator stalled  while processing the incoming avatar. This was often experienced as  “jitter” on the sim, especially evident when many avatars arrived at the  same time, such as for a live event. In the new simulation code, this  slow point has been moved to a separate thread. Our simulator  performance profiling tools show that this lag pain point is almost  entirely gone, greatly improving performance for highly trafficked  regions.

WUT?? Frank, shame on you. If you really believe that this lag pain point is almost entirely gone, I can only suggest that you and your team need new “performance profiling tools” – or better yet you need to get your little pixelated bums inside SL and try Tping around the grid for more than one or to attempts.

What has happened is that the pain point has simply shifted – not gone; and rather than giving a self-congratulatory pat on the back, you could at least admit that while overall sim freezing *has* improved, lag and tp issues are still prevalent and need further investigation. Issues such as:

  • Avatars universally arriving in mid-air and getting stuck for anything up to 5-10 seconds, unable to land or fly
  • Avatars freezing immediately after landing
  • Nearby avatars *still* experiencing a (albeit momentary) lock-up when someone tp’s in nearby in a crowded sim

Over an above this, and while not the focus of FJ’s article, lag in general remains a major headache within SL, with many residents reporting it to be at least as bad as pre-1.42, if not worse.

The sim-wide freezing  – down to a Mono issues – has gone by-and-large; and this is worthy of pointing out. But to use it as a blanket to cover the wider issues is not neither fair, not what we expect from you FJ, and it rather undermines the rest of the positive news contained in your blog.