2024 SL SUG meetings week #18 summary

Still, April 2024 – blog post

The following notes were taken from the Tuesday, April 30th, 2024 Simulator User Group (SUG) meeting. They form a summary of the items discussed, and are not intended to be a full transcript, and were taken from my chat log and the video by Pantera – my thanks to her as always for providing it.

Meeting Overview

  • The Simulator User Group (also referred to by its older name of Server User Group) exists to provide an opportunity for discussion about simulator technology, bugs, and feature ideas.
  • These meetings are conducted (as a rule):
  • They are open to anyone with a concern / interest in the above topics, and form one of a series of regular / semi-regular User Group meetings conducted by Linden Lab.
  • Dates and times of all current meetings can be found on the Second Life Public Calendar, and descriptions of meetings are defined on the SL wiki.

Simulator Deployments

  • The Main channel was restarted on Tuesday, April 30th with no update.
  • On Wednesday, May 1st, the back-end support for the the glTF updates available in the Graphics Featurettes viewer (e.g. PBR terrain textures and mirrors) will be deployed to all RC channels.
    • Note that these updates require the use of the Graphics Featurettes RC viewer (available from the Alternate Viewers page), or a TPV that has merged with this code.
    • Note also that attempts to upload 2K textures on regions without the back-end support will result in an error message being displayed.

SL Viewer Updates

  • The Maintenance B RC viewer, version 7.1.7.8820696922, was issued on Monday, April 29th.

The rest of the official viewers in a pipeline remain as:

  • Release viewer: 7.1.6.8745209917, formerly the Maintenance Y/Z RC ( My Outfits folder improvements; ability to remove entries from landmark history), dated April 19 and promoted April 23rd.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
  • Project viewers:

In Brief

  • Monty Linden is reported to have noted improvements in region crossings during test – however, he is doubtful that this is the case and is leaning towards the belief his work in trying to improve things isn’t far enough along to be seeing the kind of improvements he has witnessed.
    • Monty further noted that the changes he is making to region crossings are about reducing impact on avatars already in the region as a result of another avatar physically entering it or arriving via teleport – they are not about improving matters for the avatar entering a region – although he is checking this behaviour for possible regressions as a result of his changes.
  • Those wishing to test Leviathan Linden’s new VEHICLE_FLAG_BLOCK_INTERFERENCE  flag to optionally prevent attachments on passengers from pushing the vehicle around (so as to prevent cheating in racing, for example) can do so on the Aditi (Beta) grid regions Mauve and Jigglypuff.
  • Leviathan Linden hopes to update his Game Control regions on the beta grid (LeviathanLove and LeviathanLost) with the upcoming Spring Break simulator update, which contains the latest version of his Game Controller event.
  • The LL server team is now using Gitflow for tracking simulator releases, and it is hoped this might make it easier for providing a web page reporting on the different server update versions.
  • There were further comments on raising the current Mono script cap (64 Kb) and whether LL are going to do so. The reply was:
We have discussed increasing the memory cap but I don’t have anything to report on that at this time.

– Rider Linden

  • Rider added that in the meantime, he would like to have some way for a script to auto recover from a stack heap collision without the need for additional scripts monitoring and attempting to correct.
    • The problem here is that, potential causes of s S/H collision cannot necessarily be predicted (e.g.  if a listen or an HTTP response comes in that is larger than your available memory then you are going to hit the S/H issue – and you can’t predict how much data is coming in), ergo, resolution tends to be re-active rather than via avoidance.
    • In order to help with the identification of S/H collisions, he suggested a llSetScriptFlags function where one of the flags was something like SCRIPT_FLAG_AUTO_RESET_STACKHEAP. This could help reduce reliance on having other script perform “heartbeat” operations on scripts that may trigger a stack heap collision.
  • The above lead to an extended discussion on scripting and script management through the latter portion of the meeting – please refer to the video below for details.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

Second Life Combat User Group: April 25th, 2024 summary

Credit: Rider Linden

The following notes were taken from the Thursday, April 25th, 2024 Combat User Group meeting (also referred to as the Combat Committee User Group or CCUG, an abbreviation also used by the Content Creation User Group, and which I’ll not be using in these summaries to reduce the risk of confusion between the two). They form a summary of the items discussed, and are not intended to be a full transcript.

Meeting Overview

  • The Combat User Group exists as a forum to discuss improvements to the Linden Lab Combat System or LLCS to better support combat in Second Life.
    • The core idea is to provide additional events and capabilities which sit on top of LLCS to provide combat creators with better tools with which to create better combat systems for their specific scenarios.
  • The meetings are the result of a proposal document on improving the native damage system in SL, written by Rider Linden, and which is the focus for both the meeting and any work arising from them.
  • These meetings are conducted (as a rule):
    • By Rider Linden, with the support of Kyle Linden.
    • On alternating Thursdays (rotating with the Content Creation User Group) at 13:00 SLT. Meeting dates are recorded in the Second Life Public Calendar.
    • Initially in text, although voice might be included in the future depending on feedback from those attending.
    • At this location.
  • Additional details are available via the SL wiki.

Work In Progress

  • Rider is currently fishing up the regions settings for what happens on the “death” of a player in a combat scenario – what happens on death (teleport to spawn point, etc.), hit point regeneration, maximum DPS, options for writing to the combat log, etc.
  • llGetEnv has been updated to allow all of the options to be read from a script (e.g. ALLOW_DAMAGE_ADJUST, RESTRICT_COMBAT_LOG, DEATH_ACTION (0 = Teleport home 1 = Teleport to parcel landing point. 2 = Teleport to region telehub. 3 = No action), etc.).
  • At the time of the meeting, his hope was to have ta simulator version supporting all of this running on the Aditi combat test regions (Thermopylae and Gallipoli) by COB on Friday, April 26th.
  • Rider is also working on a UI mock-up for the new combat options in the viewer, which will have to be vetted / changed / approved by the UI team.
  • Also on his list of work are: OBJECT_HEALTH, SIT_FLAG_NO_DAMAGE, a UUID for the combat log, and some selective unthrottling for llDamage. Once these items are ready, he hopes the simulator code will be set for passing over to QA to poke at.

Comments and Requests

  • A request was made for the new viewer region console settings for the above to be written-up, which will be done – although the variable names will be the same as the llGetEnv key names.
  • It was asked if death_action could be made more flexible – making it possible for  more than one respawn point settable either by this mechanism or by some script intervention? for example, move to point A if in some designated group(s) and point B otherwise.
    • Rather than complicate the options, Rider’s plan has been to let the local combat HUD handle such requirements.
    • This led to the question: what happens if the region setting is something else (e.g. teleport to landing point) but HUD on_death teleports somewhere else? which one wins?
    • Rider’s view was that in such cases, the region setting would win, as the simulator has no idea as to what the HUD may try to do. Therefore, in such situation, Teleport to Telehub should be set, or (possibly) an Experience should be set, so as to enforce the HUD’s settings (although this was seen as both a lot of work for limited return, and off-putting to users who are put off by the Accept Experience dialogue box).
    • There is also the idea of sending people to different locations based on active group. However, Rider is unclear how this can be made to work, so it has been pushed onto a back burner, in case a suitable solution can be identified later.
  • Clarification was requested for OBJECT_HEALTH, with Rider replying:
Basically it would allow a remote script to look at an object and get an idea about how damaged it is. It would just be an integer and it would be up to the script in the object to keep it updated (and to decide what the number means). Default =  0. The object itself won’t monitor or do anything at all with that number. It will be entirely up to the scripts about how to use it.
  • The above led to a wider discussion on damage, hit points, object health and agent health + reporting. In particular a request was made for direct sensor-based identification of objects with health  (e.g. an OBJECT_WITH_HEALTH flag), and feature Request for this was requested.
  • There was also further discussion on the idea of vehicle linkset having multiple hit points, allowing for variable damage to be scored (e.g. the front of a tank has 400 HP, but its rear only has 50, allowing a rear-end hit to brew it more easily than a frontal hit (as is generally the case with tanks). This is something Rider would like to achieve, but he noted that there isn’t a clean way to get object details of a specific link of another object.

 

2024 SL SUG meetings week #17 summary

Hotel Del Salto, April 2024 – blog post

The following notes were taken from the Tuesday, April 23rd, 2024 Simulator User Group (SUG) meeting. They form a summary of the items discussed, and are not intended to be a full transcript, and were taken from my chat log and the video by Pantera – my thanks to her as always for providing it.

Meeting Overview

  • The Simulator User Group (also referred to by its older name of Server User Group) exists to provide an opportunity for discussion about simulator technology, bugs, and feature ideas.
  • These meetings are conducted (as a rule):
  • They are open to anyone with a concern / interest in the above topics, and form one of a series of regular / semi-regular User Group meetings conducted by Linden Lab.
  • Dates and times of all current meetings can be found on the Second Life Public Calendar, and descriptions of meetings are defined on the SL wiki.

Simulator Deployments

  • The Main channels was restarted on Tuesday, April 23rd with no update.
  • On Wednesday, April 24th:
    • Bluesteel RC will be updated with the back-end support for the the glTF updates available in the Graphics Featurettes viewer (e.g. PBR terrain textures and mirrors), joining the Preflight channel.
      • The code currently contains a bug wherein the server can flood the viewer with too many updates to the “Material override” data. The fix for this failed to pass QA to be included in the Blues
    • Le Tigre and Magnum and any other RC channels will be restarted without any new deployment.

Upcoming Deployments

  • There are currently some bugs within the WebRTC voice support, and these caused the planned deployment of this to be delayed. See my Week #12 summary for an outline of WebRTC voice.
  • The above means the Spring Break RC update (which has a fix for the hovering-at-login issue) is being moved to next-in-line for deployment.

SL Viewer Updates

  • On Tuesday, April 23rd, 2024:
    • The Maintenance Y/Z RC ( My Outfits folder improvements; ability to remove entries from landmark history) version 7.1.6.8745209917 dated April 19th, was promoted to de facto release viewer.
    • The Maintenance X RC (usability improvements) updated to version 7.1.6.8758996787, on April 23rd.

The rest of the official viewers in a pipeline remain as:

In Brief

  • Leviathan Linden has finished implementing the new VEHICLE_FLAG_BLOCK_INTERFERENCE which would allow vehicles to optionally prevent attachments on passengers from pushing the vehicle around (so as to prevent cheating in racing, for example).
    • This particularly targets llSetVelocity(), llApplyImpulse() and llPushObject() calls.
    • llMoveToTarget(), llSetForce() were also tested, but did not appear to work on the vehicle, so the code for blocking them in this circumsatances has been removed. However, if an exploit using them can be demonstrated, Leviathan is willing to add the code back into a simulator update.
    • Leviathan hopes to get the functionality in the Spring Break simulator update before that goes to internal QA pre-deployment testing.
  • There is a request to increase the server notecard cache. This is seen by the Lab as “doable”, but has yet to be actioned.
  • The above lead to a lengthy discussion on n/card caching, and how best to define the cache (e.g. by n/card size, rather than the number of notecards) which segued into scripting and a viewer-side LSD editing interface(!).
  • It was indicated that an update to the Bake Service to support 2K textures is “in the plan” – but no indication of when the update might actually take place.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2024 week #16: SL CCUG summary

Selen’s Gallery, April 2024: Gem Preiz – Do You Like Gold? blog post

The following notes were taken from my audio recording and chat log transcript of the Content Creation User Group (CCUG) meeting held on Thursday,  April 18th, 2024.

Meeting Purpose

  • The CCUG meeting is for discussion of work related to content creation in Second Life, including current and upcoming LL projects, and encompasses requests or comments from the community, together with related viewer development work. This meeting is held on alternate Thursdays at Hippotropolis.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in content creation.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of the meeting.

Official Viewers Status

  • On Friday, April 19th, the Maintenance YZ RC ( My Outfits folder improvements; ability to remove entries from landmark history updated to version 7.1.6.8745209917.
  • On Wednesday, April 17th, Maintenance X RC viewer (usability improvements) updated to version 7.1.6.8709279750.

The rest of the official viewers remain as:

  • Release viewer: version7.1.5.8443591509, formerly the Maintenance-W RC (bug and crash fixes), version and issued March 29th, promoted April 9th –
  • Release channel cohorts:
  • Project viewers:

It is possible the glTF Maintenance-2 RC viewer might be promoted to de facto release status early in week ’13 (commencing Monday, March 25th, 2024).

Graphics / glTF

  • Work continues on the GLTF Featurettes viewer + support.
    • The viewer is in RC with on-going bug fixes.
    • The simulator support is now on a Preflight channel on Agni (the Main grid), which includes the regions Rumpus Room 2048; Rumpus Room 2049; Rumpus Room 2050 and Rumpus Room 2051.
  • 2K Textures:
    • Are not currently supported for upload onto the Main grid.
    • The fees for 2K textures have been set as follows:
      • Basic / Plus account: L$50 per texture.
      • Premium account: L$40 per texture.
      • Premium Plus: L$10 per texture.
    • 2K textures for Bakes on Mesh requires a substantial update to the Bake service (as is frequently mentioned at CCUG meetings), and currently this does not appear to be in the works.
  • Mirrors:
    • Now leverage the Dynamic flag. When set, this tells the mirror to reflect everything in the rendering pipeline including avatars and particles). if the flag is not set, avatars are particles are not rendered, just the environment (e.g. for a reflective floor which reflects the room, but rendering the avatars would cause a massive performance hit).
    • Mirror probes can now be set using LSL.
    • The updated UX for Mirrors is still not done, and it is acknowledged that setting up a mirror is far from intuitive. A good 10+ minutes of the meeting was devoted to “how to make a mirror” – rather proving the point!
  • Work has started on prototyping glTF scene handling (as part of the overall glTF scene import work). Initial work is to enable the showing of a scene locally within the viewer using a debug setting. More on this as the option becomes available in a viewer. But in short:
    • Once imported, glTF scenes will be an inventory asset type.
    • Each scene with by associated with an in-world object (e.g. a prim), which becomes its “handle”.

In Brief

  • Custom skeletons: this is an ongoing debate within LL. glTF allows for custom skeletons and animations. Second Life has a defined avatar skeleton and recognised animation formats for use against it.
    • As such, there is a disparity between SL and glTF, as in theory, adherence to the glTF specification means recognising the use of custom skeletons with their own animations – which would then be incompatible with the existing SL format(s), and lead to potential confusion  / clashes between established avatar types using the SL skeleton and custom skeletons.
    • Thus, some navigation is required to determine if / how custom skeletons might be handled without confusing the existing consumer market in SL in terms of what accessories work with which type of avatar.
  • Emissive strength is seen as “feeble” by some, so a request was made for a numeric box in which a desired emissive strength might be entered. As the glTF specification allows for this, it is something that could be added to a future viewer iteration (but not necessarily would be – Feature Request?).
  • Much of the meeting was about what extensions LL might consider, how things like emissive maps and lighting might be handled in the future, IOR, transmission and the potential to add iridescence – some of which are being worked on (IOR and transmission) and will be reported on in summaries as they come along, others are seen as possibly / maybe.

Next Meeting

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a gathering of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2024 SL SUG meetings week #16 summary

Grauland – Last Trees, April 2024 – blog post

The following notes were taken from the Tuesday, April 16th, 2024 Simulator User Group (SUG) meeting. They form a summary of the items discussed, and are not intended to be a full transcript, and were taken from my chat log and the video by Pantera – my thanks to her as always for providing it.

Meeting Overview

  • The Simulator User Group (also referred to by its older name of Server User Group) exists to provide an opportunity for discussion about simulator technology, bugs, and feature ideas.
  • These meetings are conducted (as a rule):
  • They are open to anyone with a concern / interest in the above topics, and form one of a series of regular / semi-regular User Group meetings conducted by Linden Lab.
  • Dates and times of all current meetings can be found on the Second Life Public Calendar, and descriptions of meetings are defined on the SL wiki.

Simulator Deployments

  • The Main and the majority of RC channels will all be restarted this week (Tuesday / Wednesday) with no updates deployed.
  • The exception to this is the Preflight RC channel which will be updated on Wednesday, April 17th, with the back-end support for the the glTF updates available in the Graphics Featurettes viewer (e.g. PBR terrain textures and mirrors.
    • Note that this deployment is for testing only.
    • Support for 2K texture will not be enabled simulator-side as a part of the initial deployment, as these are awaiting a couple of fixes to clear QA. Ergo, support for 2K textures within the preflight channel will be enabled later.

Upcoming Deployments

  • Back-end support for WebRTC Voice will be next to be deployed, and this will likely go to a Snack RC channel.  See my Week #12 summary for an outline of WebRTC voice.
  • The upcoming Spring Break RC release (yet to go to RC) will have a fix for the hovering-at-login issue.

SL Viewer Updates

No updates to the official viewers currently in the pipeline, leaving them as:

  • Release viewer: version7.1.5.8443591509, formerly the Maintenance-W RC (bug and crash fixes), version and issued March 29th, promoted April 9th.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Maintenance Y/Z RC ( My Outfits folder improvements; ability to remove entries from landmark history), version 7.1.6.8632452945, April 12.
    • Materials Featurettes RC viewer, version 7.1.5.8472515256, April 3
    • Maintenance X RC (usability improvements), version 7.1.5.8443777128, April 2.
  • Project viewers:

In Brief

  • Teleports / region crossings: the question was asked as to which would have the greater performance impact: a avatar with 10 attachments, each of a single linked part in each, or an avatar with 1 attachments of 10 linked parts.
    • The reply from Monty Linden was that – outside of script considerations – the difference is liable to be negligible (scripts being the major performance hit in terms of region crossings / teleports).
  • A discussion on attachment point in general, including:
    • An increase to the maximum allowed attachments (38), primarily to help deal with issues as specified in this Feature Request, if providing a function as outlined in the Feature Request was not on the cards. However, it was felt by some that attachment counts should not be increased until the maximums for allowed worn prims / scripts are brought down to realistic figures and enforced.
    • A suggestion that a couple of attachment points by reserved specifically for Experiences.
    • A request for updates to the particle system to work with rigged attachments (removing the need unrigged particle prims). However, as the simulator does not track attachment points (which would be required for this to work), it was seen as not doable.
  • A request was made for LL to offer an LSL function so creators could clamp raycasts to the region edge in order to stop the end-points going off-region (/simulator) and causing errors.
    • Whilst seen as doable, it was felt that as raycasting should not have end points beyond a region’s boundaries, a better solution might be to identify and fix the underpinning bug that is allowing it.
    • Fixing the issue might also allow LL to implement the idea outlined in llVisualizeRay – A way to see Raycasts, but using llCastRay rather than adding a new LSL function.
  • Please refer to the video for:
    • A discussion on HTTP request throttling.
    • A discussion om script modules / libraries.
    • General thoughts on region crossings.

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2024 week #15: SL TPVD summary

Morrigan’s Roadhouse, April 2024 – blog post

The following notes were taken from my audio recording and chat log transcript of the Third-Party Viewer Developer (TPVD) meeting held on Friday, April 12th, 2024. My thanks as always to Pantera for recording the TPVD meeting and providing the video, which is embedded at the end of this article.

  • The TPV Developer meeting provides an opportunity for discussion about the development of, and features for, the Second Life viewer, and for Linden Lab viewer developers and third-party viewer (TPV) / open-source code contributors to discuss general viewer development. This meeting is held once a month  the third or fourth Friday, at 13:00 SLT at the Hippotropolis Theatre.
  • In regards to meetings:
    • Dates and times are recorded in the SL Public Calendar.
    • Commence at 13:00 SLT on their respective dates.
    • Are conducted in a mix of Voice and text chat.
    • Are open to all with an interest in either content creation or viewer development.
  • The notes herein are a summary of topics discussed and are not intended to be a full transcript of either meeting.

Official Viewers Status

[Video: 00:29-1:19]

  • Release viewer: version7.1.5.8443591509, formerly the Maintenance-W RC (bug and crash fixes), version and issued March 29th, promoted April 9th.
  • Release channel cohorts (please see my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself).
    • Maintenance YZ RC ( My Outfits folder improvements; ability to remove entries from landmark history, version 7.1.6.8632452945, April 12.
    • Materials Featurettes RC viewer, version 7.1.5.8472515256, April 3.
    • Maintenance X RC (usability improvements), version 7.1.5.8443777128, April 2.
  • Project viewers:

General Viewer Notes

  • Maintenance X looks to be the next viewer in line for promotion.
  • The Graphics Featurettes viewer (PBR terrain and mirrors) is expected “soon”.
  • LUAU integration (client-side scripting API): still in the early stages, and not a lot available for testing via a test viewer or similar.

Graphics Update

[Video: 4:25-6:17]

  • A new glTF mesh importer has been made available via the content Creation Discord channel (which LL have requested I do not link to here – contact Vir Linden if you have a need to be on that channel) purely for the purposes of testing by content creators.
    • This allows for the importing and viewing of static glTF-compliant mesh models and seeing how the look in Second Life.
    • This is the first element within the “glTF Phase II” project.
  • Cosmic Linden is working on bug fixes for the PBR terrain support, and Geenz Linden is putting the finishing touches to mirrors, both in the expectation of a public-facing viewer being made available.
  • 2K textures is still subject to discussions on pricing, and may or may not surface in the Featurettes viewer’s initial release.
  • Simulator support for the upcoming Graphics featurettes is due to go the the Preflight channel in week #16. This will include 2K texture support, which will most likely be disabled pending a final decision on pricing, etc.

WebRTC Voice Update

[Video: 29:17-33:19]

  • See here for background.
  • A Project viewer is being put together, and this should be available viewer soon, and the code should be fairly stable.
  • Some testing has been carried out with WebRTC on Linux with good results.
  • Feature requests for WebRTC made via the WebRTC board on the SL Feedback Portal are being evaluated and some are being actioned, together with issues being investigated.
  • The test region webRTC1 (Aditi) now has an echo capability for testing WebRTC once the Project viewer is available (or for those on a test viewer).
  • There may well be a pile-on test at the WebRTC test regions as things progress to test the new voice capability – although this might be better suited to having a test region available on Agni.

In Brief

  • There have been requests to have meeting times across several of the User Group meetings altered to be more accessible to Europeans or for those elsewhere in the US, etc. These requests are under consideration within the various user groups where they have been raised.
    • It was also noted that it would be useful if the Agenda sections of the wiki pages for User Groups were actually maintained, so that people can at least see what is up for discussion from LL’s side ahead of meetings, to help in making informed opinions on whether or not to attend.
  • [Video: 18:48-23:22] Featurettes flags:
    • It was noted that the plan for viewer projects going forward is to utilise the idea of featurette flags (as with the Graphics Featurette viewer) and have capabilities / functions new to the viewer placed behind flags (debug settings) managed via the simulator.
    • This is a reversal of the “old” mechanism for viewer features, which was led by the view making specific UDP message requests to the simulator for specific feature capabilities / function, and the simulator then respond on a request-by-request basis.
    • The advantage of this is that it potentially allows for faster viewer development iteration: features can be added to project / RC viewers and placed behind flags potentially allowing for testing on Aditi, rather than having to wait for months (/years) for a project-related viewer to surface with everything in pace and then only get actual user testing.
    • The disadvantage is communicating what in the viewer code might be tested and what is awaiting the setting of a flag from the simulator.
    • As such, LL are aware of the need for clear communications with TPVs on projects, code, and flags.
  • A general discussion on UDP message formats.

Next Meeting

† The header images included in these summaries are not intended to represent anything discussed at the meetings; they are simply here to avoid a repeated image of a gathering of people every week. They are taken from my list of region visits, with a link to the post for those interested.