2025 week #34: SUG meeting summary – more SLua and bits

Viper Isles – An Elysian Paradise, June 2025 – blog post

The following notes were taken from the Tuesday, August 19th, 2025 Simulator User Group (SUG) off-week meeting (which I refer to as the “SUG Leviathan Hour”). These notes form a summary of the items discussed, and are not intended to be a full transcript. They were taken from my chat log of the meeting and the video recording by Pantera, embedded at the end of this summary – my thanks to Pantera 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 is held every other Tuesday at 12:00 noon, SLT (holidays, etc., allowing), per the Second Life Public Calendar.
  • The “SUG Leviathan Hour” meetings are held on the Tuesdays which do not have a formal SUG meeting, and are chaired by Leviathan Linden. They are more brainstorming / general discussion sessions.
  • Meetings are held in text in-world, at this location.

Simulator Deployments

  • On Tuesday, August 19th, the simhosts on the SLS Mian channel were restarted without update.
  • on either Wednesday, August 20th or Thursday, August 21st, a new simulator update – code-named Grape Juice (Fig Newton having morphed into the network updates noted in my week #32 summary), should be deployed to one or more RC channels.

SLua Update

  • A recap of the recent work on SLua, as given by Harold Linden at the week #33 Leviathan Hour “off-week” meeting. In short:
    • Changes to the Luau garbage collector which means that it can run a lot faster now, so scripts have to pause less and run out of memory less.
    • llGetFreeMemory() and llGetUsedMemory() have been fixed “to return something sensible under SLua”.
    • This sparked a conversation on Mono memory usage, with Harold noting that the memory usage presented by ll.GetFreeMemory() in Mono has little relation to how much memory is actually being used; the value given is basically how many “memory fun bucks” a script has left. He noted it is also on his list to get an accurate measurement including JIT cache overhead, etc.
  • Limits on memory use have not been settled as yet, but testing indicates that SLua generally uses less memory than Mono under a typical workload, with Harold noting:
I imagine that no matter what we do, memory limits are going to be higher than they were on Mono. Having tiny memory limits has created perverse incentives to just do things like split things into many scripts that communicate over link messages that end up bogging the sim down more than if everything was in one script … I have felt all the multi-script pain, I’m interested in preventing that pain in SLua
    • This sparked a discussion on memory use and limits in general, which ran through the rest of the meeting.
  • Harold Linden has also drafted a proposal for event handling and multi-timer support under SLua, which is described as “roughly inspired by Node’s ‘EventEmitter’ stuff, so you can do ‘LLEvents.on(“touch_start”, some_function)’ and such”.
    • Scripters are encouraged to read and comment on it.
    • There was also a conversation on SLua event handlers during the meeting.
  • The above also folded into it a discussion of on_error events.
  • Signal Linden is working on scoping SLua milestones and shepherding release and projects, together with planning SLua documentation (wiki).

In Brief

  • Monty Linden has “up-cycled” the Experience KVP store – that is, implemented a new package with reliable data retention, under the same version number.
  • Pepper Linden noted that a new Conductor was rolled out onto Agni last week, which – subject to further adjustments – should improve packing of regions onto simhosts.
  • Rider Linden is about to start a “research spike” into creating an official SL plugin for VSCode for better external editing. He was particularly interested in hearing what people would like to see in this.
  • User Henri Beauchamp has been investigating the issue with avatar attachments rezzing (e.g. following a TP or after logging-in, particularly in “busy” regions), and noted that it appears that the server sometimes just does not send all avatar attachments.
    • A report on this issue has also been filed (see: Avatar attachments STILL failing to appear in busy regions).
    • Monty Linden noted that he is also tracking a set of attachment failures (symptoms: the TP completes (TeleportFinish received), when the avatar is in a new region but none of the scripted attachments is realized in the target region).
    • Rider Linden indicated that the Canny report has been triaged, and his hope is to fix the underlying issue(s) rather than “cover it with a band aid to hide it”.
  • A general discussion on animation improvements, notably linked to script limitations with furniture (e.g. each agent sitting on an item of furniture requiring a dedicated script to handle animations). This in turn followed into a discussion on inverse kinematics (IK).

Date of Next Meetings

  • Formal SUG meeting: Tuesday, September 2nd, 2025.
  • Leviathan Linden: Tuesday, August 26th, 2025.

† 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.

2025 week #33: SUG Leviathan Hour – SLua and bits

Diamond Moon Village, June 2025 – blog post

The following notes were taken from the Tuesday, August 12th, 2025 Simulator User Group (SUG) off-week meeting (which I refer to as the “SUG Leviathan Hour”). These notes form a summary of the items discussed, and are not intended to be a full transcript. They were taken from my chat log of the meeting.

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 is held every other Tuesday at 12:00 noon, SLT (holidays, etc., allowing), per the Second Life Public Calendar.
  • The “SUG Leviathan Hour” meetings are held on the Tuesdays which do not have a formal SUG meeting, and are chaired by Leviathan Linden. They are more brainstorming / general discussion sessions.
  • Meetings are held in text in-world, at this location.

Simulator Deployments

  • There are no planned deployments to any channels this week, only restarts.

In Brief

  • Harold Linden – SLua:
    • Has been working on “some major garbage collector surgery” so  that memory usage is “properly less than Mono” and general memory profiling will be much better under SLua.
    • The garbage collector is good with creation and deletion of lots of small objects, with Harold noting:
SLua is weird in that most of the objects managed by the GC are built-in things that will never go away as long as the script is running, so I’ve changed the GC to ignore those entirely to make garbage collection much much faster … I’ve added some code to the GC that’s inspired by some work that was proposed for Lua proper that makes the GC get more aggressive if it thinks it might run out of memory soon .. Luckily GC is _incredibly_ cheap now so you could run it tens of thousands of times a second and it wouldn’t make much of a dent.
The event style will be similar to the EventEmitter API in JS `whatever.on(‘someevent’, callback)` with an alternative form that’s similar to how they’re currently specified … It’ll return a handle you can use to unsubscribe … I’m writing a pure-SLua implementation of the new event API first so people can comment on it before it’s solidified as production code, I’ve got a WIP version but I’m just sorting out some unsubscription bugs; the most notable ones, lists-in-lists and the ability to use dictionaries / objects.
    • He also indicated the the LSL → SLua compiler “will be open-source once we’ve start the beta phase on Agni so people can feel free to improve it. It’s much more approachable than the current compiler.”
    • Overall, the hope is to start beta testing of SLua on Agni in the next few months; ahead of that, Harold hopes to get an updated alpha to Aditi (the Beta grid) “to make sure events are sound”.
  • Leviathan provided an update on another issue he has been looking into – a bug that would sometimes cause objects to not show up on login. In providing his update on this work, he noted:
The repro case we had was delicate and would not always show up. In any case that work finally merged into the next server update. The problem was: we were clearing out the server’s “interest list” info on login that would cause the viewer to have to re-request static/cacheable data. With the change going forward we now do a better job of resetting your interest list when you arrive at your final position in the region (on login or teleport from far away). This causes the stuff to show up maybe just a second or two sooner, and less likelihood of some stuff being missing.
  • However, regarding the issue of issue of some people experiencing failures on logging-in (see my summary of the previous Leviathan Hour), Leviathan noted the fix he thought he had isn’t going to help. Instead, he was able to get a reliable repro which has helped better pin down the problem, which he described thus:
It turns out… if you login with lots of inventory folders at a lull in the traffic in SL you will be more likely to succeed. The system will happily handle 100k inventory folders in less than 10 seconds when the database and login.cgi servers are not under load. However, when things are busy the viewer might decide to timeout after 40 seconds. So… Signal has an idea for how to reduce the problem. It turns out you can configure Mysql server and clients to use gzip data transmission. This would happen between login.cgi and the database, while the login server is trying to compile the big chunk of data that it sends back to your viewer. Perhaps that idea will just help login.cgi and the database keep up and the problem may happen less frequently. That is the status of that.

He further noted another workaround would be to tweak the viewer’s timeout on that particular HTTPS request. This approach would allow TPVs make suitable changes and help their users get around the issue.

  • Restoring LindenWorld:
    • This has been a repeated request – to have LindenWorld (the Lab’s first attempt at a virtual environment) “brought back to the grid”, which has had pretty much the same answer with each request.
    • In essence – the LindenWorld code is very different to the Second Life code; it is incompatible with the current account system. While these problems could be fixed, they would require time and effort.
    • Harder to solve, as noted by Leviathan at this meeting, are matters of all the backend support: asset system, user database, spaceserver, etc.
    • All of this would divert developer resources from Second Life, it “would require an unknown amount of backburner work. Couldn’t be done as a first priority”.

Date of Next Meetings

  • Formal SUG meeting: Tuesday, August 19th, 2025.
  • Leviathan Linden: Tuesday, August 26th, 2025.

† 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.

2025 week #32: SL SUG meeting

Caerleone Manor, May 2025 – blog post

The following notes were taken from the Tuesday, August 5th, 2025 Simulator User Group (SUG) off-week meeting (which I’ll be referring to as the “SUG Leviathan Hour” going forward). These notes form a summary of the items discussed, and are not intended to be a full transcript. The notes were taken from my chat log of the meeting and Patera’s video, which is embedded at the end of this article – my thanks to her 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 is held every other Tuesday at 12:00 noon, SLT (holidays, etc., allowing), per the Second Life Public Calendar.
  • The “SUG Leviathan Hour” meetings are held on the Tuesdays which do not have a formal SUG meeting, and are chaired by Leviathan Linden. They are more brainstorming / general discussion sessions.
  • Meetings are held in text in-world, at this location.

Simulator Deployments

  • On Tuesday, August 5th, the majority of the grid – SLS Main channel and RC channels – was updated with simulator update 2025-07-25.16512260888.
  • The purpose behind this en masse restart (the first in a long time) was to account for network changes intended to allow the Lab to spread simhost servers across across multiple AWS availability zones (not necessarily AWS global regions).
  • As a result, there will be no RC channel restarts on Wednesday, August 6th.

AI Summit and Tools

  • Week #31 saw a Linden Lab summit on brainstorming how to use AI moving forward and experimenting with possible uses.
  • It is possible this summit may have caused the announcement on the forthcoming suspension / closure of the Character Generation project also made public during that week (see: LI announce a pause in the current SL AI character designer project).
  • As a result, Leviathan Linden has been exploring how hard it would be to use AI assistants to replace the llmath code in the viewer with GLM (graphics library math), a more standard and faster library; however, this is turning out to be more of a challenge than anticipated, with “lots of changes”, requiring care with the work.

SLua Update

  • Signal Linden defined the next goal for SLua is to roll it out to some Agni (Main grid) regions in a limited fashion. However there is work to be completed ahead of this happening – such as the project being made production ready, and “real” documentation assembled, and the inclusion of a new API for event handling.
  • Such a partial deployment would obviously be for testing purposes, and would mean that SLua scripts would only run on regions with the server-side support.
  • It was suggested that those regions offering building / scripting courses are considered for inclusion in Main grid SLua testing.
  • There is a concern that due to the amount of CPU time consumed even when idling, there is a concern that all script time in a region with a large number of SLua scripts could be consumed by idling scripts. This lead to a discussion on scripts, loads, scheduling and script times.

In Brief

  • As well as experimenting with GLM, Leviathan Linden has also trying to get some old server projects merged and shipped:
    • A slight speedup of scene load at login (and maybe less frequent missing content on arrival).
    • Compressed data from login.cgi for faster download of initial login data (and maybe fewer failed logins for people with lots of inventory folders).
  • Leviathan also hopes soon start working on the WebRTC voice streaming system.
  • Rider Linden is hoping to complete the LSL land functionality work he’s been developing for the Moles. This will include a llSetParcelForSale function (name still to be finalised at the time of writing).
  • Rider is also looking to expand llRequestInventoryData. There have already be requests for it to encompass to get information like tint and alpha from PBR textures, and sound and animation length.
    • Additional suggestions include PBR properties like metallic/roughness; animation priority; last attach point/position/rotation for a worn item, and last rezzed/in-world position/rotation.
  • Pepper Linden:
On the Conductor front, it’s been moving through QA, and we anticipate an Aditi and Agni rollout within the next week. During the initial roll out, we’ll be keeping the packing mode the same, and later on, turning on our new ‘packing’ logic (how we place regions on servers).
Some minor notes on our Discord integration for community servers, I had promised that we’d get that out relatively soon but unfortunately Discord has rolled out a UI change to profiles that’s now hiding the connection details, so that’s something we’ll need to figure out and handle before releasing it.
  • Monty Linden is finishing-up work to move the experience KVP store.
  • Signal Linden has been working on multiple projects:
    • Putting together release plans for the next viewer release.
    • Coordinating with contributors on viewer Discord integration, apple silicon support and other projects.
    • Following up on the August 5th deployment, and preparing to put some simhosts into another AWS availability zone.
  • As noted in my week #31 TPVD meeting notes, Camera Constraints Bug (below -0 metre altitude) has been filed. This affects all v7 viewers – but Kirsten Lee (Kirsten’s Viewer) has filed a possible fix.
  • The mention of the llSetParcelForSale function resulted in a discussion on land rentals in the second half of the meeting – specifically around the use of texture  / signs at altitude advertising regions / parcel available for rent, when looking at the world map.

Date of Next Meetings

  • Formal SUG meeting: Tuesday, August 19th, 2025.
  • Leviathan Linden: Tuesday, August 26th, 2025.

† 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.

2025 week #31: SUG Leviathan Hour

TNC Commons, May 2025 – blog post

The following notes were taken from the Tuesday, July 29th, 2025 Simulator User Group (SUG) off-week meeting (which I’ll be referring to as the “SUG Leviathan Hour” going forward). These notes form a summary of the items discussed, and are not intended to be a full transcript. The notes were taken from my chat log of the meeting and Patera’s video, which is embedded at the end of this article – my thanks to her 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 is held every other Tuesday at 12:00 noon, SLT (holidays, etc., allowing), per the Second Life Public Calendar.
  • The “SUG Leviathan Hour” meetings are held on the Tuesdays which do not have a formal SUG meeting, and are chaired by Leviathan Linden. They are more brainstorming / general discussion sessions.
  • Meetings are held in text in-world, at this location.

Simulator Deployments

  • There are no planned deployments to any channels this week, only restarts.

In Brief

Also refer to the video for the full meeting.

  • Leviathan has turned his attention back to the issue of some people experiencing failures on logging-in, which he describes thus:
So… the problem is the login.cgi computes a big “viewer return value” (aka the VRV) which it sends back [to the viewer]. It has “Content-type: llsd+xml” header on it, and can be several MB in size. It contains, among other things, the list of your friends, groups, and a skeleton summary of all of your inventory folders. When the data package is very big and your download rate is low… it can take a while for it to arrive. If it takes too long the viewer can timeout on the request… even though login.cgi thought it “succeeded” and sent an alert to the Region where you were supposed to arrive.

– Leviathan Linden

Leviathan believe one aspect that makes the VRV so big is the number of folders within inventory (not the contents of folders, just the count of folders). However, Leviathan believes he has a solution (which is pending deployment):

So anyway: a relatively simple change on the login server allows the data to be gzipped, which can speed up the transmission … The Second Life Viewer (SLV) uses libcurl for its http requests, and it can handle gzipped data implicitly. Any viewer that picked up that capability from SLV should see benefits when login gets the update.

– Leviathan Linden

  • Another issue Leviathan is looking into a bug where Premium+ users can’t upload mesh for L$0 after crossing a region boundary, although he hasn’t found a root cause as yet.
  • There is apparently some exploratory work going on with in the engineering team(s) on the potential to use AI tools for code generation.
  • An update to SLua is in development, and might be deployed to Aditi (the beta grid) in the next week or so.
  • A general discussion on the (currently stalled) game_control project. As noted in my previous Leviathan Hour summary, the game_control work (and the work for a Linux version of the SL Viewer) is currently archived during the most recent switch to the viewer development and release workflow.
  • A Function to Detect Right click (which has it own debate) was raised. Leviathan Linden noted there subject is stalled. This led to an extended discussion on the ticket, and the issue(s) it encompasses. This discussion extended to one on Touch Pointer Capture, together with ideas for extended mouse hover operations, and expanded use of the mouse scroll wheel.

Date of Next Meetings

  • Formal SUG meeting: Tuesday, August 5th, 2025.
  • Leviathan Linden: Tuesday, August 26th, 2025, due to Leviathan being on vacation (unless he can find a volunteer to fill-in for him).

† 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.

2025 week #30: SL SUG meeting

Lavender Springs, May 2025 – blog post

The following notes were taken from the Tuesday, July 15th, 2025 Simulator User Group (SUG) meeting (“off week”). They form a summary of the items discussed, and are not intended to be a full transcript. The notes were taken from my chat log of the meeting  – no video this week.

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):
    • Every other Tuesday from July 8th, 2025, at 12:00 noon SLT.
    • In text (no Voice).
    • At this location.
  • Meetings 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.
  • The term “off week” is used to describe meetings held by Leviathan Linden on those weeks when a “full” Simulator User Group meeting is not scheduled to be held.

Simulator Deployments

  • There are no planned deployments to any channels this week, only restarts. Although the Main channel apparently had some issues on Tuesday July 22nd, leading to multi restarts for some regions.

In Brief.

  • Rider Linden is working on a few new script features that the moles need for an upcoming project. These mostly deal with land and being able to transfer or sell land using a script.
  • Pepper Linden has been working on a re-write of LL’s Conductor service, and is currently wrapping this up as it goes through QA. The Conductor service is responsible for placing regions onto servers, and the re-write is designed to allow the team responsible to more optimally place regions and prevent things like ‘hot-spots’ (e.g. one region on a host using more resources than it should and starving other regions of CPU time).
  •  Signal Linden is working on number of projects:
    • Making “shovel-ready” tasks for open source contributors. This includes: bringing back legacy search; implementing drag-and-drop uploads; resizing large textures before uploading; etc.
    • Looking at bounty/reward platforms for compensating people for working on initiatives LL hasn’t got much traction on.
    • Getting budget approval for taking SLua to production and merging some “nice small fix-up PRs” on the LSL-definitions repo.
  • The idea in having a series of defined tasks for contributors is to have more people contributing upstream to the viewer and providing “ready to go” code and thus free the Lab’s core viewer team to focus on larger viewer projects.
  • Having the ability to replace mesh / prim HUDs with something more suitable was discussed. One suggestion has been the development of an HTML5/CSS/JS solution of some sort. However, this would require quite a bit of both viewer and server work; as such, a proof of concept from the community would go a long way towards getting some server attention on it.
    • Some concerns were raised about this leading to people having to connect to unknown external websites.
    • Another suggestion was for a  small mobile subset of SVG within SL, although this is a potential awkward solution as it doesn’t allow thing like buttons lighting up on HUDS when moused-over.
    • This led to a discussion on options (HYML5, SVG, some form of modal system built-into the viewer, using MOAP / CSS, with various opinions being expressed.
  • glTF mech import:
    • As reported in my CCUG meeting notes, this is to go to “beta” with the next viewer update.
    • Full glTF scene import is regarded as “seriously deprioritised”, with Signal Linden expressing a preference for keeping it so until it can be implemented server-side.
    • There s a report that a change in the glTF uploader broke the glTF scene rendering. no further details available.
  • The plan to replace the SL Wiki (powered by Media Wiki) with a new documentation platform was discussed (see:  Modern Documentation Platform: docs.secondlife.com).
  • As of the next official meeting, the Simulator User Group will be at a new location (still TBC at the time of writing). What this should look like was a source of extended discussion, as was whether or not Simon Linden’s home (the meeting place until now) should be left intact or destroyed (“destroyed” won that part of the discussion).

Date of 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 rooftop of people every week. They are taken from my list of region visits, with a link to the post for those interested.

2025 week #29: SL SUG meeting (“Leviathan Hour”)

La vie en Rose, April 2025 – blog post

The following notes were taken from the Tuesday, July 15th, 2025 Simulator User Group (SUG) meeting (“off week”). They form a summary of the items discussed, and are not intended to be a full transcript. The notes were taken from my chat log of the meeting and Patera’s video, which is embedded at the end of this article – my thanks to her 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):
    • Every other Tuesday from July 8th, 2025, at 12:00 noon SLT.
    • In text (no Voice).
    • At this location.
  • Meetings 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.
  • The term “off week” is used to describe meetings held by Leviathan Linden on those weeks when a “full” Simulator User Group meeting is not scheduled to be held.

Simulator Deployments

  • There are no planned deployments to any channels this week, only restarts.

SL Viewer Updates

  • Default viewer 7.1.15.15596336374 promoted June 12 – No Change.
  • Second Life Project glTF Mesh Import, version 7.1.14.15976006598 July 2 – No Change.
    • This is an early Alpha release with some of the rough edges and already resolved many bugs and crashes, although more are to be found, together with general feedback from the community. Please read the release notes if you intend to test this viewer.
  • Second Life Project Lua Editor Alpha (Aditi only), version 7.1.12.14888088240, May 13 –  No Change.

In Brief

Also refer to the video for the full meeting.

  • Leviathan has been working on resolving a exploit which – although this is not certain) he may have accidentally introduced into the simulator code during her first stint at the Lab(!).
  • Further work on the game_control project for the viewer remains in hibernation.
    • The core code was in a viewer development branch that was archived during the most recent switch to the viewer development and release workflow.
    • While much of it has been “salvaged” from the retired dev branch, it still needs to be approved for porting and merging into a current development repository.
    • There are also functional questions to be addressed – such as what to do about keyboard-only users and game_control.
  • Work on the Linux version of the official viewer also appears to be “stuck” in the archived develop branch.
  • Leviathan asked if anyone has tried to use the SL raw terrain save/load system, and if so, whether they have found it works correctly. There are apparently some bugs within it, and he’s trying to determine how best to prioritise it for fixing.
    • The general consensus at the meeting was getting the OK to update, port and merge the game_control code should be a higher priority than the terrain save/load.
  • A general discussion on porting features / capabilities to / from Firestorm (and on offering Pull Requests to Firestorm for code such as game_control).
  • A brief indication of “prioritisation competition” for viewer-side features at the Lab: some developers prefer to develop the code and build a functional UI to access it, then polish the latter; others (and management?) prefer code that is put forward with a complete, polished UI design.

Date of Next Meeting

  • Tuesday, July 22nd, 2025

† 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.