Archive for February, 2019

Kokua Releases (RLV) and (NORLV)

These versions bring a considerable number of behaviour improvements as well as updating to RLV (see: but please read the notes below carefully – not all changes have been replicated to Kokua this time)

Both: The maximum for the texture memory slider (Preferences/Graphics/Advanced) is now set dynamically to 512MB, 1 GB or 2GB depending on the available graphics memory. The value will be at most 50% of the system’s graphics card memory. NORLV was previously fixed at 512MB maximum while RLV was previously fixed at 2GB however going much over about 2/3rd of the maximum in RLV would result in texture thrashing where textures appear to continually go in and out of focus – in fact they are continually falling out of the cache and having to be reloaded. The new code avoids this and is by Ansariel and Tonya of Firestorm.

Both: If the viewer is minimised the icon no longer flashes when someone starts and stops typing an IM (or is typing a long message quite slowly with pauses) due to the distracting effect of this. As Marine notes, should there be adverse feedback about this change it will be made optional with the original behaviour as the default.

Both: The script editing window now uses a larger font by default which, along with other changes, means it’s now possible to reliably position the cursor when working near the end of long lines. The font and its size can be selected in Preferences/Kokua/Scripts. Original change from Firestorm by Ansariel.

Both: Clean up some formatting and layout errors in the pie menus along with ensuring that More.. is always the bottom item when it is present.

Both on Linux: gstreamer010 is no longer included

Both: The Edit floater is now a little taller to resolve some overlapping that occurred on the Textures tab when Specular Shine was selected.

Both on Mac: Window title code from Firestom by Tonya, Cinder Roxley et al.

Both: Tex (Texture) Refresh was missing on the pie menu for other avatar’s attachments.

Both: Bring in Exodus’ group chat mute features from Firestorm. Muting can be applied/lifted from a group’s information page. There is an optional notification in chat which is off by default and may be enabled in Preferences/Kokua/Chat.

Both: Right clicking in Mouselook will now trigger a menu if enabled on the Move panel in Preferences. For those who previously used this as a way to sit on an object sitting is possible through the menu instead (or you can turn the menus off and return to the previous behaviour).

Both: Fix some more errors discovered in the XML files that define the skin and menus.

Both: Avatar Health is added under the Me or Edit menus grouping together a number of features designed to help with avatar appearence issues. Some of these were already present elsewhere in the viewer menus with the remainder being newly added. Original by various authors in Firestorm.

Both: After teleporting there is currently a server bug where neighbouring regions will send spurious attachment detach requests. This results in a situation where the attachment claims to be detached within the viewer but will probably reappear on the next region change and is still live (eg it is counted in the avatar’s script totals, it will respond to chat messages etc). This version brings in a fix from Henri Beauchamp in Cool Viewer which stops this happening. The fix, along with the previously added generic Firestorm protection for attachments right after a teleport can be disabled on the Kokua/Preferences/Tweaks (previously Inventory) tab. The text alongside these switches clarifies that we currently recommend this is enabled along with the other tweaks already present. Thanks to Henri for permission to include this code. The Kokua version is adapted somewhat to fit in with our existing code.

Both: The log files written by Kokua on each run are currently getting cluttered with messages related to the forthcoming introduction of EEP (Environment Enhancement Project) since server code is beginning to support it but Kokua does not yet incorporate matching code. Kokua now checks for EEP-related log messages and reduces their priority and quantity to avoid an impact on performance.

Both on Windows & Mac: OpenJPEG updated to 1.5.1 (version courtesy of NickD/Firestorm)

Both: Put in an explanatory message from Firestorm when the viewer has to exit after failing to connect to the new region during a teleport

Both: Imported some Firestorm fixes around imposter rendering which should avoid a crash-after-teleport scenario.

NORLV: The warn-once-on-RLV-command feature was actually warning more than once due to a logic error in its coding.

RLV: Updated to RLV, however not all of Marine’s changes have been adopted since some have adverse effects on Kokua performance or were already present. See the detailed notes below.

RLV: Until this version the RESTRAINEDLOVEDEBUG debug setting performed the dual purpose of enabling the ‘executes command/fails command’ feedback in the nearby conversations floater and enabling RLV-related output to the viewer’s log file. Since writing to the log file has a small but noticable performance impact this is now split into two controls with new control RESTRAINEDLOVELOGGING taking over control of the viewer log file aspects. Note that this is only in Kokua, not in RLV from Marine, although it will appear in a future version.

RLV: Marine’s changes to rebake appearence after teleport and refresh attachments as apart of a rebake are NOT included in this version since we found in testing that they interfered with Kokua’s other code improvements around teleports and outfit management.

RLV: Marine’s change returning the Maximum Attachment Request Lifetime to 30 seconds is already present in Kokua – we also found that 30 seconds is something of a magic value where the rest of the code is concerned.

RLV: Alpha surfaces on other avatars’ rigged attachments will not be rendered if they are beyond a vision restriction.

RLV: The RLV floaters (RLV Commands, Console, Status and Worn) have had an optimisation session aimed at reducing their load on the viewer whilst not displayed on screen. Thanks to Marine for some of the optimisation ideas now included in the code.

RLV: We have had some requests to do a RLV-always-on version like Marine’s current RLV versions. Kokua is usually all about choice so keeping RLV switchable is in keeping with our philosophy (and indeed we allow other aspects of those always-on changes to be user-selected too). Creating a third Kokua variant may be the answer however it involves both significant ongoing work with three streams to keep updated rather than two plus around an hour extra every time we go through a release cycle. We are interested in hearing feedback on this one to see if the demand is there – if you want it add a vote or comment to this issue:

Kokua Releases (RLV) and (NORLV)

New in RLV version

The RLV version is updated to Marine’s RLV seeĀ

In addition to direct modification of the debug setting as described by Marine we have added an option in Preferences for the new feature controlling whether to render rigged mesh attachments in mouselook when they are attached to one of the head attachment points (bear in mind that there’s no actual relationship with rigged mesh between where something is attached and where it appears on the avatar – the latter is a fixed property of the rigged mesh).

This appears on the Kokua/General section of the Preferences window, as shown below.

New in Non-RLV version

The non-RLV version gets a new feature designed to reduce the amount of chat spam generated by any RLV items when used with the non-RLV version. The new feature, which is turned on by default, will issue a message once in local chat privately to the wearer and then future RLV commands will be silently discarded until either the next login or the option is disabled and re-enabled.

The image below shows how this appears in the conversations window.

The control for this appears in the Kokua/Chat section of Preferences as shown below:-

At present, there are no plans to implement this within the RLV version for when RLV is turned off (generally, I feel it’s better to see the RLV chat in that situation since the usual reason for a RLV viewer user to turn off RLV is to perform some kind of troubleshooting and thus seeing the commands is probably beneficial). However, if it’s requested we’ll implement it on RLV too (although it will probably be off by default rather than on by default as it is in the non-RLV version).

New in both versions

  • Implement Ansariel’s experimental FIRE-12004 fix from Firestorm which may help with preventing attachments going missing after teleport. If any adverse experiences occur the fix can be disabled by changing debug setting FSExperimentalLostAttachmentsFix to False.
  • Various World Map improvements (also mostly by Ansariel) including speed-ups, alphabetical sorting of friends, alphabetical sorting of landmarks, hiding duplicate landmarks and the display of the parcel name (instead of just the region name) when a location is clicked within the map area. There will always be a slight delay between clicking the world map and the parcel name being displayed because the viewer has to communicate with the server to get the parcel details.