Jump to content

Tools and Technology

  • entries
    126
  • comments
    916
  • views
    285,738

Contributors to this blog

About this blog

Entries in this blog

Signal Linden

Spring 2023 Scripting Summary


Tools & Technology

As spring winds to an end it may be a good time to stop and smell the Linden Scripting Language (LSL) controlled flowers. In the past year, Second Life's server team has placed an increased priority on delivering useful new functions and enhancements for scripters. This blog post contains highlighted features released in the past six months; maybe there's something you missed!

đŸ’Ÿ Linkset Data (LSD)

Likely the most prominent new feature introduced to LSL in recent history, Linkset Data (LSD) provides 128KiB of persistent memory which is shared by all scripts in an object. This functionality scratches several itches which have plagued scripters for some time: a desire for memory that persists between script resets and better conventions for inter-process/script communication. Prior to its introduction, many awkward techniques were used to persist and share data between scripts, including placing data in external HTTP APIs and using the age-old trick of storing data in object descriptions. No more! ⚡

At its core, LSD is a key-value database associated with the root object of a linkset. The data stored in LSD is persisted between script resets, object transfer and copying. In its simplest form, a script can write, retrieve and delete data using llLinksetDataWrite, llLinksetDataRead and llLinksetDataDelete while the event linkset_data may be used by any script in the object to be informed of changes.

More information on LSD, including examples, and information about all related library functions can be found on Second Life's wiki, Category: LSL LinksetData and on the great blogpost from resident NeoBokrug Elytis, Linkset Data (LSD) - A New Feature for Second Life.

🔍 List search, now with start and end

Lists can now be searched using llListFindStrided, and manipulated using llList2ListSlice, and llSortListStrided. Notably, llListFindStrided contains start and end parameters, which allow lists to be searched more quickly without many of the out-of-memory situations run into using llListFindList. You can even use llListFindStrided with non-strided data by giving it a stride of one. đŸ€«

Strided lists are commonly used to store structured data as LSL has no native map type. llListFindStrided and llSortListStrided should make it easier and more performant to work with lists.

✂ Replace substring

You can now find and replace segments of string in a performant way using llReplaceSubstring.

🔊 Linkset sounds

A handful of functions have been added which make it easier for a linkset to play multiple sounds simultaneously using a single script. This should be a boon for vehicle makers and anyone looking to layer and compose sounds.

🔐 Cryptographic functions

HMAC and RSA functions have been added to LSL. These will make secure communication between systems inside and outside of Second Life easier, and make it easier to do things like create a valid JSON Web Token (JWT).

🙂 Miscellaneous

  • Environment control - Scripts are able to control environment settings using two functions introduced in August 2022: llSetEnvironment and llReplaceEnvironment.
  • Simulator statistics - llGetSimStats has been enhanced with over 25 new statistics, mirroring much of the data displayed in the viewer statistics panel's Simulator section.
  • You can now set an object property that causes objects to die with no warning if they hit a no-entry parcel using llSetStatus(STATUS_DIE_AT_NO_ENTRY). This is useful for bullets and other objects that would otherwise become lodged in the air at parcel boundaries.
  • HTTP custom header size and accounting has been changed. Scripts are no longer limited to 8 256 byte custom header.  LSL Now provides a 4k pool of memory that may be used for custom headers in whatever way the scripter wants.

Wrap up

Phew. In all, more changes have been made to LSL in the last six months than several prior years combined. That's a lot, but we always want to hear more ideas about how best to improve LSL and the tools available to content creators. If you are interested in hearing about scripting and other areas of development, we encourage you to attend one of Second Life's user group meetings or submit your idea to Jira.

Many of the features in this post come from resident submitted requests. Thank you for loving Second Life just like we do.

Happy scripting!

Linden Lab

Mirrors, PBR Terrain, and 2K textures


Tools & Technology

Second Life is getting some new, exciting features that will make the world look even better.

Mirrors are arriving soon! While we love the realistic reflections PBR materials enable, mirrors take reflections to a whole new level.

You can create a mirror using a method similar to reflection probes, but with a twist -- when a reflection probe is set to use the “Mirror” option, all surfaces near the probe will exhibit a real-time mirror reflection, including PBR and legacy materials.

We chose this method to enable maximum flexibility.  For example, you can create a big wall of mirrors and have minimal performance impact regardless of how many mirrors are on that wall. As long as they’re aligned with the mirror reflection probe, they can all show a mirror reflection.

To conserve performance, mirrors are subject to some limitations. The Viewer will show the effect of only one mirror reflection probe at a time -- the one closest to your camera. Mirrors are planar, so they won’t work very well on the body of a car, for example. Like so many good things in life, mirrors are best enjoyed in moderation.

Mirrors-3.jpg

Applying PBR materials to terrain will be possible in the upcoming featurettes release. You will soon be able to apply most GLTF materials to terrain. Initially, PBR terrain will support normal maps and metallic-roughness maps. Emissive textures will not be visible on some machines and transparent materials are not fully supported. We expect PBR materials on terrain to vastly improve the beauty of SL -- because there’s a lot of terrain out there!

PBR terrain uses triplanar mapping, a texture-mapping technique which is new to Second Life. On steep slopes you will notice far less texture-stretching. To conserve performance, triplanar mapping will be enabled only when the graphics quality setting is set to “High” or greater.

PBR Terrain Demo - 3.jpg

With the advances in GLTF PBR Materials and upcoming Terrain materials, we know it is time to increase the texture size limit to 2K (2048x2048 pixels). We are approaching this change  carefully, and are still weighing pricing options for images larger than the current max size. 2K textures will allow artists to add significantly more detail to their creations and do things like efficiently consolidate more UV surface area onto a single asset.

Mirrors and PBR Terrain will be available on the Beta Grid (Aditi) to start with, on the following regions:

  • Rumpus Room 2048
  • Rumpus Room 2049
  • Rumpus Room 2050
  • Rumpus Room 2051

Interested in trying out these new features? You can download the Viewer here. Never accessed the Beta Grid before? Here’s information on how to access the Second Life Beta Grid: https://lindenlab.freshdesk.com/support/solutions/articles/31000156725-accessing-aditi

We can’t wait to see what fun and exciting new things residents create with these featurettes!

Linden Lab

We have some exciting news to share – Second Life is implementing support for WebRTC Voice!

What does this mean for you, our Residents?

  • higher quality audio for voice
  • improved security
  • removes external dependency on third party provider for voice
  • simple setup from behind firewalls, private networks
  • enables greater control of Voice from Second Life
  • WebRTC features, including: audio device selection, stereo audio, noise reduction, automatic gain control, echo cancellation and more!

We look forward to WebRTC Voice being available grid-wide and supported in our default Viewer, but only after feedback and hardening while deployed to the Beta Grid (Aditi).

Note, peer-to-peer voice calls, ad hoc voice calls, and group call behavior don’t rely on the Voice settings of the region. On the new viewer, incoming calls always work. Outgoing calls from the new viewer are WebRTC and won’t be received by the old viewer.

Interested in hearing these improvements for yourself? Download this early-in-development Viewer from here (scroll down to Roadmap) and go to these regions on Aditi WebRTC enabled regions on Aditi.

  • webRTC1 - secondlife://Aditi/secondlife/webRTC1/128/128/23
  • webRTC2 - secondlife://Aditi/secondlife/webRTC2/128/128/23

If you’re a developer and interested in integrating these changes into your project, go here https://github.com/secondlife/viewer/tree/webrtc-voice and see the documentation here.

Linden Lab

Moving From Jira, Pt. 3


Tools & Technology

Friendly Greetings!

As mentioned in our Pt. 2 blog post, we are excited to announce that the process of providing an archive of the Second Life Jira BUG project on GitHub is now complete! 

You can find the public BUG archive at https://github.com/secondlife/jira-archive/issues. The archive currently contains most of the previously public Jira tickets from the original Jira BUG project. However, there are some edge cases that we are still in the process of migrating. It does NOT include tickets that previously had restricted access.

We encourage you to use the Second Life Feedback Portal for any new bug reports or feature requests. Your feedback is crucial to our ongoing efforts to improve Second Life, and the feedback portal provides a convenient platform for you to share your thoughts and insights.

We appreciate your continued support and understanding as we work to enhance the Second Life experience. The migration to feedback.secondlife.com signifies our commitment to fostering a more collaborative and efficient environment for everyone in the Second Life community: providing feature request voting, a public roadmap, tighter integration into the engineering process, and more.

Thank you and see you on the Grid!

Second Life Team

Kyle Linden

We’re happy to unveil our experiments with using the Lua scripting language as part of our content and customization tool box. Possible areas of application include test automation, mods/plugins, and new options for content visible to the user, like HUDs, local content etc . Many other sandbox worlds use Lua and we are excited to see how this approach to content creation can enrich Second Life as well. 

 

For now, you can follow our development in github and we will let everyone know when a project viewer is ready for testing on the beta grid. 

 

To all Third Party Viewer developers, please let us know what you think about Lua in the viewer! 

Kyle Linden

PBR Materials Are Here


Tools & Technology

Greetings Residents!

Over the next several weeks PBR Materials will be rolling out across the grid. For those who do not know what PBR Materials are already, this post will explain what they are, how to use them and the benefits they bring.  This announcement is particularly of interest to residents who create inworld objects and avatar attachments.

PBR stands for Physically Based Rendering. PBR is a richer way of specifying the surface of an object that better simulates how objects appear in real life. PBR allows for realistic lighting for metals, plastics, leather, fabric, and more, including realistic reflections and bounce lighting.  The Second Life Viewer will now be able to display these more realistic-appearing objects in world, as well as allow creators to include this more advanced information in the object texturing.

GLTF stands for Graphics Library Transmission Format. This is a standard file format, common in computer graphics, that allows storage of  PBR information. GLTF files can be used by many 3D content authoring tools. Second Life will now support the import and export of GLTF files that contain PBR information.  Note that at this time only PBR Materials will be imported.  Full GLTF support will be available at a later date.

Important note: Until PBR server support is released across the entire Second Life grid, there is a risk of damaging content to which PBR Materials are applied, if rezzed or worn in a region that is not PBR-capable.

At present, you will need to use the latest Second Life release candidate viewer with PBR support 7.0.1.6658224456 and be on PBR capable regions running on BlueSteel and Le Tigre channels with build (2023-10-11.6488746491). To confirm you are using the correct viewer and server, while running Second Life open Help > About Second Life.

What are PBR Materials? Why would I use them in my creations?

The goal behind PBR Materials is Increased visual realism. One method of enhancing realism is to create scenes with real reflections which mimic how our eyes have learned to identify that a surface is metal versus plastic. The Viewer has always been open source and so we sought an open source solution, GLTF, to achieve this realism. GLTF was created by the Khronos Group https://www.khronos.org/, a standards body responsible for open standards such as OpenGL, OpenXR, Vulkan, and others.  

With this new Viewer feature, PBR Materials will automatically generate real reflections when applied to new or existing content. While we cannot go back and add PBR Materials to no-mod content -- only the original content creator can -- every effort has been made to preserve or improve all object appearances in world. The team has been working with content creators for many months, and we thank them all for their dedication to making Second Life the benchmark for beautiful inworld content.

What if you do not create content?

If you do not create inworld content or avatar attachments, you do not need to do anything as a result of these changes. You will begin to see more realistic reflections and lighting on objects inworld and for sale as creators adopt this new feature.

New Features 

The key additions and changes for PBR Materials are:

  • GLTF support for PBR Materials
  • HDR Environments
    • Auto exposure and tonemapping
    • The default environment of Second Life has always been a sunny day with blue skies and this will be more apparent now. 
  • Reflection Probes (automatic and manual)
    • Automatically generated by the PBR Viewer
    • Manually generated by content creators for interior spaces (requires lighting)
  • Materials system folder 

Benefits 

  • GLTF standards are widely accepted and utilized for content creation across many applications
  • PBR Materials objectively and subjectively look better
  • Real reflections automatically generated by the Viewer 
  • Increased compatibility with content creation tools e.g. Substance Painter, Blender

There is a wonderful video from Second Life University on our Youtube channel. We encourage anyone wishing to learn more to take a look: How to Create PBR Materials 

The Second Life Wiki has more technical information about GLTF PBR Materials and how to use them in the content you create.

Known Issues 

While our GLTF PBR Materials project is closer than ever to full release, there are some known issues and we know with broader release, more issues will be uncovered. If you see something, please say something, by filing a BUG report in Jira.

  • PBR material information may be lost from content on non-PBR aware regions
  • Underwater reflections are weird. We hope to fix this in a future release
  • Materials set to alpha mode Blend cannot be changed back to Opaque
  • MacOS performance issues
    • Poor performance on Apple Silicon when “Reflection Coverage” not set to “None”
    • Poor performance on Intel Macbooks when shadows are enabled
  • PBR Material limited permissions issues
  • Transition lines between overlapping manual probes
  • Semi-transparent fullbright objects slightly more opaque
  • Non-PBR enabled Viewers will show high packet loss on PBR aware regions due to the introduction of a new message.

There are inworld Content User Group Meetings we encourage you to attend to discuss your questions and give feedback.  For more information see Content User Group 

IMPORTANT: If content looks good in the Khronos GLTF Sample Viewer or Adobe Substance Painter but looks wrong when you import it into Second Life, please stop and file a bug immediately. Our goal is to adhere to the GLTF specification. Please do not modify content in Second Life to work around situations where the Viewer does not adhere completely to the GLTF spec.

Kyle Linden

GLTF PBR Materials Viewer and Server Update


Tools & Technology

Today we are happy to announce a significant update for both the Second Life RC (release candidate) PBR Viewer and GLTF project server. For PBR materials to render correctly in Second Life, residents must use the latest versions listed below. 

  • Second Life RC viewer version (7.0.0.581886) or newer.

And be on supporting GLTF server regions named "Rumpus Room 1-4" 

  • Second Life server version (2023-09-28.6340659568) or newer.

GLTF PBR Materials efforts were slowed recently by a potentially costly issue. PBR Materials contain a great deal of new information which is stored in the objects that use these materials. When such objects are updated, and updates happen surprisingly often, the entire set of information about the object is transmitted.  The amount of data transmitted multiplied by the frequency of transmission adds up quickly. Reducing the amount of data transmitted required a change to the protocol used for sending this information.

Many thanks to one of our resident beta testers, animats (Joe Magarac), for spotting this issue and reporting it swiftly.

These changes will allow creators to make richer, more realistic objects in world, so we believe that the efforts involved will pay off, and that all residents will enjoy the results of these changes.

More GLTF PBR updates are on the way, please stay tuned!

Kermit Linden

We have some important planned maintenance for our internal systems coming up on August 10th from approximately 6:00am - 7:30am SLT. In order to upgrade these systems, we will need to take several services down including: new logins, registration, marketplace, payments and payouts. There may be other errors or issues seen across the entire platform.

As soon as the work is complete we will post an update on our Status Blog atSecond Life Status, so be sure to subscribe to updates to be notified as quickly as possible.

We apologize in advance for this disruption and especially appreciate your patience.

While we aren't expecting any in-world problems once the maintenance is complete, if you notice any new issues with everyday operations, please let us know as quickly as possible. You can file a Jira issue to communicate directly with our development team, or contact our support team if that's more convenient. No one knows the world of Second Life as well as Residents, and we value your input and assistance as we continue to update the grid's fundamental technologies. Thank you!

Signal Linden

Server Release 2023.07


Tools & Technology

This week we rolled a maintenance update to Second Life's production grid. This release contains a handful of small features and bug fixes as well as some housekeeping and internal improvements to how we address assets.

Scripting

Detect Animesh

You can now detect whether a prim is mesh or has animesh enabled using llGetPrimitiveParams:

Delete, Count multiple linkset values based on pattern

It's now possible to delete and count multiple Linkset Data (LSD) values based on a regex pattern. This should simplify bulk deletion of values:

When multiple keys are deleted using llLinksetDataDeleteFound the linkset_data event will be called with the action LINKSET_DATA_MULTIDELETE.

Estate management

Backend changes have been made to support an expansion of estate manager and ban list entries. This bump will be available to users as part of a future viewer update.

  Old value New value
Estate manager limit 15 20
Estate ban list limit 500 750

Bug Fixes

  • BUG-233830 - Issue with llRequestAgentData() & DATA_PAYINFO never updating.

As usual, see the full list of bugs and features on the release notes.

Happy summer. 🌇

Signal Linden

We’re opening a small set of sandboxes for testing in preparation of introducing GLTF PBR content to the main grid. Please note, these regions are experimental – any content created or modified on these regions and then used in regions that are not materials enabled may exhibit undefined behavior and become permanently damaged. Such content should not be offered on Second Life's Marketplace until future notice. In order to view PBR materials you must use the GLTF Material Import Project Viewer.

As we roll out GLTF PBR materials in the coming weeks, expect a patchwork of support for material assets across the grid.  A quick way to tell if the region you’re on is materials enabled is to check if “Build->Upload->Material
” is enabled:

unnamed.png

On materials enabled regions, this option will be available and allows for the import of PBR materials from GLTF assets. Only materials are imported at this time –you must still import meshes via COLLADA.  Future work will add support for GLTF scenes and models, but you can start building with GLTF PBR materials today.

Currently support is limited to a handful of regions that have been carefully selected. If you want to experiment with materials in a sandbox setting visit one of the following regions:

Download the Viewer here
For more technical input, please file a Jira

- Second Life Viewer Team

Signal Linden

Coming Soon: Server Release 2023.06


Tools & Technology

Second Life's next Server regular maintenance release is scheduled to roll out to the full grid next week (2023/06/27.) This update contains quality of life improvements for builders and several bug fixes.

Building

Max linkset size now 64 meters

The maximum size for a linkset has been 54 meters since 2010. This has posed problems for builders as it is smaller than the maximum object size of 64m. In order to allow creators to do things like create a house out of a single large mesh object and link furniture on either sides of it we have bumped the max linkset size to match max object size.

235013538-261a9502-621f-4b76-8d31-0bc03b3fd2a9.png

Old (54m) and new (64m) max linkset sizes.

Scripting

HTTP PATCH and HEAD support

Scripters who interact with external web services and APIs can now use HTTP PATCH and HEAD methods with llHTTPRequest.

Ability to detect bot status

You can now detect if an agent is an identified scripted agent ("bot") using llGetAgentInfo.

llCreateLink sleep time reduced

Scripts can now create links 10x faster: llCreateLink sleep time has been reduced from 1s to 100ms!

Bug fixes

  • Fixed an issue where groups could be accidentally disbanded when removing a single agent
  • Fixed an issue where group owners could not leave a group
  • Fixed an issue that would prevent objects with LinksetData containing certain keys could not be rezzed or attached

For a complete list of features and bug fixes see the release notes: 2023-06-09.580543

Cosmic Linden

As you may know, Second Life is soon adding the ability to import and edit GLTF Physically-Based Rendering (PBR) Materials. This upgrade to Second Life's graphics engine allows for more realistic surfaces, better reflections, and a more modern workflow for artists. You can learn more about PBR materials on our wiki, or try it out on the beta grid using its Release Candidate Viewer, available here.

We thought we'd give you a sneak peek of one of the features we are working on next: high resolution PBR terrain textures. While this work is early in development, we will discuss ideas and development at the Content Creator meetings, which all residents are welcome to attend. In the near future, a PBR Terrain viewer will be available on the Alternative Viewers page. We look forward to your feedback, and in the meantime, enjoy the pictures!

pbr_terrain_mountain_pass_001.jpg

pbr_terrain_icy_sea_001.jpg

pbr_terrain_muddy_shore_001.jpg

Kyle Linden

📱 Important Announcement: End of Support for Second Life 32-bit Windows Viewer and Updated Minimum System Requirements for MacOS to 10.13 đŸ–„ïžđŸ•’

Attention Second Life community members! We have some important news to share regarding software compatibility and system requirements. Please read this post carefully to ensure a smooth transition.

As of July 1st, 2023, we will be ending support for the Second Life 32-bit Windows Viewer and updating the minimum system requirements for MacOS to 10.13. This decision is made to align with the evolving technology landscape and to ensure the best performance and security for our residents.

👉 Second Life 32-bit Windows Viewer:

The 32-bit Windows version of the Second Life Viewer will no longer be supported. Moving forward, we will focus our efforts on the 64-bit version, which provides improved stability, enhanced performance, and better utilization of modern hardware. We encourage all residents to transition to the 64-bit version to continue enjoying the latest features and updates. After July 1st, we will continue to allow the last supported version of the Second Life 32-bit Windows viewer to log in indefinitely. 

👉 MacOS 10.13 Minimum Requirements:

Starting July 1st, MacOS 10.13 (High Sierra) will be the minimum requirement for running Second Life. This decision is driven by the need to utilize the latest advancements in operating systems and maintain compatibility with the most up-to-date technologies. Users on MacOS older than 10.13 will need to upgrade their operating system to a newer version to access future Second Life viewer updates.

We understand that change can be challenging, but this step is necessary to provide the best and most secure experience for our residents. We highly recommend keeping your software and hardware up to date to benefit from enhanced performance, security patches, and new features.

If you are currently using the 32-bit Windows Viewer or running MacOS older than 10.13, please take the following actions:

1ïžâƒŁ Second Life 32-bit Windows Viewer Users:

If you are running a 32-bit version of Windows, you will first need to update to a 64-bit version of Windows before attempting to update Second Life.

  • Ensure your computer meets the system requirements for the 64-bit Viewer.
  • Back up your preferences and settings before making the transition.
  • Download and install the 64-bit version of the Second Life Viewer.

2ïžâƒŁ MacOS Users Older than 10.13:

  • Check the Apple support website for information on upgrading your operating system.
  • Upgrade to a supported version of MacOS that meets Second Life's minimum requirements.
  • Before upgrading, backup your important files and make sure your system is compatible with the newer version of MacOS.

We apologize for any inconvenience this may cause and appreciate your understanding and cooperation. If you have any questions or need further assistance, please reach out to our support team, who will be happy to help you.

Thank you for being a part of our Second Life community, and we look forward to continuing this virtual journey together!

Linden Lab

A Light in the Cloud: A Migration Update


Tools & Technology

A Light in the Cloud - A Migration Update.png

Hi Residents!

I’ve come to ask for a favor.

We’re in a really exciting time in the history of Second Life. We’re in the home stretch on moving the grid to the cloud. We hit a fun milestone a few days ago, and now there’s over 1,000 regions running in the cloud!

Everyone in the Lab is working hard on this project, and we’re moving very quickly. I just got out of a leadership meeting where we went over what’s currently in flight, and there’s so many things moving that I lost track of them all. It’s amazing!

The favor I’ve come to ask you for is your patience.

We’re doing our very best to fix things that come up as we go. This means that we might need to restart regions more often than you’re used to, and things may break just a little more often than we’ve all been accustomed to.

In order to get this project done as fast as possible and minimize the time (and resulting bugs) we have to spend with one foot in our datacenter and the other in the cloud, we don’t want to limit ourselves to restarting regions just once a week. We’re ready to get this project done! We’ve seen how much better Second Life runs in the cloud, and we’re ready to have everyone on the grid experience it.

I’m sorry that things might be a little rough over the next few weeks. It’s our goal to finish the cloud migration by the holidays, so that everyone, Resident and Linden alike, can have a nice quiet holiday with our friends and families.

We can’t promise we’ll make it by then, but we’re sure giving it all we’ve got. The mood around the Lab is really positive right now, and we’re all working hard together to make it happen. I’m really proud to be a part of the team that’s transforming Second Life as we know it.

Thanks so much for hanging in there with us. We know it’s frustrating at times, but it won’t last for too long, and there’s a better future on the other side of this. We truly appreciate your understanding and patience as we finish up this project.

Thanks everyone. 💜

April Linden,
Second Life Operations Manager
 

Linden Lab

We recently made changes to the Marketplace that had some results that our community was not expecting. So we want to clear up confusion about the Marketplace and go over our current and upcoming changes.  

Recently we made a change to the default sort for merchant stores to "newest first" instead of "relevance." This was done to prevent old or outdated products from being the first thing shoppers see when visiting a merchant store, and we have seen increased sales across the Marketplace as a result. 

This is just one of the tweaks we have made to the Marketplace and we have plans for further updates in the near future that we hope will continue to improve the Marketplace experience for both shoppers and creators. 

To clear up some of the confusion around how the Marketplace works and give more insight on how to best use the Marketplace, we have put together some answers to frequently asked questions. 

When using product search 

Your product may not be appearing in the same position as it used to in relevance sort for product search for a number of reasons.

  1. Titles matter. The title of your product needs to contain the search terms that have been entered into search.
  2. How well it sells matters. This looks at the number of sales over a given period of time. 
  3. Keywords included in the product listing. Keywords need to contain the search terms that have been entered into search. 
  4. What features you have matters. Features need to contain the search terms that have been entered into search. 

We have adjusted the weighting of each of these factors with the last search upgrade. This is something we actively monitor and adjust and your product may have ranked higher in relevance under the previous weighting. 

When viewing a merchant store

Relevance sort requires a search term to really function in the way it is intended. When viewing a Marketplace store page or the product search with relevance sort enabled and no search term, you will get unexpected results. 

Prior to the Marketplace search upgrade, when viewing a merchant store with no search term, relevance sort used to take into account the number of sales of your items over periods of time. So high selling items used to sort to the top even if there was no search term applied. Now when viewing a merchant store with no search term the relevance sort will function the same as best selling sort (not the best selling merchant report). Since best selling only indexes the top 50k best selling items across the entire Marketplace, best selling sort will only look up data from that index. If your items do not fall into the top 50k they will all be ranked the same. This is why your best selling sort may not match your best selling reports. In short, your items will only have a sales rank if they fall into the top 50k. Best selling sort has always functioned this way and has not changed. 

With that in mind, we are currently working on a change to allow best selling to now index each merchant’s store individually instead of just the top 50k items. This will allow shoppers to see any creator’s best selling items when viewing a store page. We hope this will be a better long-term solution than the previous relevance sort and clearly communicate to shoppers what are the most popular products in a creator’s store. 

As always, we are also continuing maintenance and have a planned release Monday April 10th to fix a bug impacting merchant product listing enhancements. 

We have seen good sales results with our current changes and are very excited for our upcoming improvements. As is the industry standard for online marketplaces we will continue to improve and make changes based on our own internal data and community feedback. Our top priority is the best experience for our Marketplace creators and shoppers and we hope these changes will bring us closer to that goal. As always, if you find that Marketplace isn’t working the way you’d expect, please let us know!

Happy shopping and selling!

Linden Lab

Marketplace offline April 6th, 5am -8am SLT


Tools & Technology

We have some important upgrades planned for our database back end. To ensure the best possible transition to the updated version, we're taking the extra precaution of taking the Second Life Marketplace offline from 5am - 8am SLT on April 6th, 2023. L$ transactions will not be impacted. As soon as the work is complete, we'll post an update on our Status Blog at status.secondlife.com, so be sure to subscribe to updates to be notified as quickly as possible. 

We apologize in advance for this disruption and especially appreciate your patience as we prepare for future projects which depend on this work.

While we aren't expecting any in-world problems once the maintenance is complete, if you notice any new issues with everyday operations that impact Second Life inventory - updating/copying/modifying items, changing outfits, giving an object to another Resident, etc. please let us know as quickly as possible. You can file a Jira issue to communicate directly with our development team, or contact our support team if that's more convenient. No one knows the world of Second Life as well as Residents, and we value your input and assistance as we continue to update the grid's fundamental technologies. Thank you!

Signal Linden

Shutting Down LSL XML-RPC


Tools & Technology

LSL XML-RPC is a deprecated method for communication between remote systems and LSL scripts. Its use has been cautioned against since the introduction of LSL HTTP-In functionality in 2009. We plan on shutting down LSL XML-RPC completely on June 1st, 2023.

Rationale

As of 2023/03/21, the average amount of traffic served by XML-RPC has dwindled to a few dozen requests per hour. Considering this extraordinarily low amount of traffic and the fact that LSL's more modern HTTP in/out functionality has been available for over 16 years, maintaining LSL XML-RPC infrastructure does not represent a good use of development resources. We'd rather spend time developing new features! 😉

Timeline

  • April-May 2023 - One or more unannounced circuit-breaker exercises will be performed by temporarily blocking incoming LSL XML-RPC traffic. This will give residents and Lindens a chance to experience XML-RPC shutdown and perform any required corrective actions (Upgrading scripts to HTTP-In, etc.) before permanent shut down.
  • May 2023 - XML-RPC will be permanently disabled on RC regions
  • June 2023 - Incoming LSL XML-RPC traffic will be permanently blocked across the grid.

Running LSL scripts that use XML-RPC functionality will continue to function to the extent they can with XML-RPC functions no longer doing anything. If you have functionality that depends on XML-RPC, please migrate your scripts and supporting services to HTTP-In.

If you have questions or concerns feel free to attend the Simulator User Group meeting, held Tuesdays, 12:00 PM Pacific in Denby.

Update: 2023/05/03 - XML-RPC circuit breaker has been left open, as we have not received any indication of XML-RPC impacting production systems. This post's timeline has also been updated to reflect the RC deploy schedule.

Linden Lab

Inventory Service improvements coming!


Tools & Technology

As mentioned in the forum, we have been working on improvements to the inventory service. Second Life's agent inventory service (AIS) handles all agent inventory operations that happen in Second Life. We uncovered some additional issues last week, fixed (and tested!) them, and will be deploying AIS this Wednesday, March 22nd. We expect downtime to be minimal.

Post deploy, if you notice any new issues with everyday operations that impact Second Life inventory - update/copy/modify items, change outfits, give an object to another Resident, etc. let us know and file a Jira issue!

Linden Lab

PLEs Making Things Right


Tools & Technology

Good afternoon everyone,

As mentioned in our previous blog we encountered a bug that was preventing PLEs (product listing enhancements) from updating correctly. Since the bug prevented merchant ads from working as intended for an extended period, we have decided to make things right. Today we will be issuing PLE credits for time lost during the outage. So anyone with an active/expiring (which is active but won’t renew) PLE as of Monday, March 13th will get 14 days added to their account. 

You can see the added time on the MKT Subscription page by looking at the new expiration date. For example, if you bought a 30-day sub on say, March 3rd, your end date will show an end date of April 16th. Please let us know if you are having any trouble or didn’t receive the extra time. 

Happy shopping and selling!

Linden Lab

Updates to Marketplace Search


Tools & Technology

Last week we blogged about moving to an updated version of ElasticSearch, the application we use to do full-text searches on Marketplace. After successfully upgrading from 2.3 to 8.4 we have been closely monitoring usage and feedback from our merchants and Residents. This has led us to make a few tweaks to how our new search system works.   

In the coming days we will be changing the following:

  • A bug where featured listings are not being updated properly.
  • We have removed the 50-page cap on search results. Our statistics showed that few people look at higher-numbered pages. In addition, page load time is increased by loading more result pages into memory. But you have spoken, and we’re removing the cap.
  • A search string such as “blue shirt” will return results that contain both the term “blue” and “shirt” instead of including results that contain “blue” or “shirt.” This behavior is changed if you use advanced features such as quotes, boolean operators (AND, OR, NOT), or asterisks. Make sure to check the tooltip next to the search field for help with boolean operators.

    For example:
    image2.png

    image1.png

    The above search term will now return results in the center of the diagram.

We hope these changes will improve everyone’s Marketplace experience while also enjoying the advantages of ElasticSearch. We continue to monitor how search performs for everyone. If you find that after these changes, Marketplace search still isn’t working the way you’d expect, please let us know! We value everyone’s thoughts and we thank you for your patience as we continue to make search better. 

Happy shopping and selling!

Linden Lab

Viewer Profiles: Everything old is new again!


Tools & Technology

With our latest release we’d like to welcome back Viewer Profiles! The Second Life viewer has made the transition back to an integrated Profile floater. This is the place to find more information about any Resident including a bio, picks, and more!

image1.png

Residents may still use web-based profiles in a web browser. However this change brings back a more responsive experience in the Viewer as well as giving you the information you’re most interested in seeing on the first page. 

As part of this change, Groups now moves to the main tab.  This change also means that hiding Groups no longer requires opening and viewing each one.  Just click on the eye next to the group to hide or show.  

A big thank you to the Firestorm Viewer team for your contribution!

How things have changed

The viewer Profile, as opposed to the web Profile, shows all of your Second Life Bio, Feed, Picks, Classifieds and Real Life bio when viewed by other residents logged in to Second Life.

The Feed will remain a web property displayed in the Profile floater in its own tab.

Interests are accessible on the old web Profiles but will no longer be included in the viewer Profile.

Linden Lab

Hello Residents!

We’ve just released an update to our previous Maintenance viewer (here). We introduced a media playing bug last time and this update fixes that.

More information on the previous bug here.

Work around for the previous bug here.

Please feel free to try it out and let us know of specific problems by filing a Jira.

Thank you for your patience as we worked through this problem! 
 

Linden Lab

Upcoming Security Improvements to Second Life


Tools & Technology

Hello Residents!

If you run an inworld service that logs in as a scripted agent (aka, a bot), or maintain a Third Party Viewer, please pay attention. This blog post is for you. :)

We are making some changes to improve the security of Second Life!

On November 1st, 2021 we are going to be discontinuing the use of two older security protocols, TLS 1.0 and TLS 1.1, on our login services. We’re doing this to increase the security of everyone on the grid.

In March of 2021 the Internet Engineering Task Force (IETF) officially deprecated these two older protocols, and now we’re gonna do the same. TLS 1.0 was released in 1999, and TLS 1.1 was released in 2006, and while they’ve had a good run, it’s time for them to enjoy a nice retirement into Internet history.

On Wednesday afternoon this week we inadvertently turned off TLS 1.0 and TLS 1.1, and we received reports that several inworld services (such as older bots and some very old Third Party Viewers) were unable to log in. Since we hadn’t given Residents any warning this was going to happen, we turned them back on this morning. We want to make sure folks have a chance to update their services before we turn them off again permanently on November 1st, 2021.

If you were impacted by the sudden removal of these older security types this week, we’re sorry they were turned off without warning. We should have communicated it better. We also want to thank you for taking the time to improve the security of your service! The grid will be safer for us all as a result.

For everyone else, you have nothing to do! Our viewer, and almost all of the popular Third Party Viewers have been using the latest versions of TLS for years. You’re all set!

Looking forward to a more secure Second Life,
April Linden, Gridbun

Linden Lab

Introducing the 360 Snapshot Tool


Tools & Technology

Elvion
See full 360 Image by Alexa Linden on Flickr

You can now take a 360-degree snapshot of a location in Second Life. Better than a simple panoramic image, the 360 snapshot covers 360 degrees in all three dimensions, allowing you to see everything both above and below your avatar as well, as though the image is projected on the inside of a sphere. Technically speaking, the snapshot is an equirectangular image projection. Better than a static image, the 360 snapshot can be clicked and dragged so you can move your ‘camera’ anywhere in the snapshot, at any angle, as if you are inside it. 

When opened, the tool quickly creates a low resolution preview taken from the location of your in-world camera. You can click and drag on the preview image in all directions to see if you like it. Re-frame your shot by moving your camera in-world and creating another snapshot. 
 

Speed and quality

Snapshot creation speed depends on your computer’s graphics capabilities. It’s not necessary to use preview quality while you are composing your snapshot, but if a higher quality level is slow on your computer, you can save it for the final snapshot. While a snapshot is being created, Second Life may appear to freeze. Just give it some more time to finish.

The quality of the snapshot is also affected by your graphics preferences (Me > Preferences > Graphics). You may have turned off features such as shadows and water reflections to make Second Life run faster, but for your 360 snapshot you may want to change some settings. The Hide Avatars checkbox is good for when you want to take a landscape shot but you don’t want to wait until no one is at that location.
 

How to use the saved snapshot

The snapshot will be saved in .jpeg format, which does not require a special viewer. All web browsers can display it, so you can add it to your social media feed or your favorite photo-sharing service. Check out these 360 snapshots from Alexa Linden -- and don’t forget to click and drag on them! 

We hope you enjoy the new 360 Snapshot feature and we can’t wait to see what you create with it!
 

Known Issues

We are aware of some issues in this first Project Viewer which we will address later:

  • It is possible that some things in the world will be missing from the snapshot. Make sure everything in-world loads before you take the snapshot. Rotating your avatar will ensure everything around you loads.
  • Snapshots may be corrupted on some systems with older or less powerful graphics cards, or if your graphics settings are turned down low. Try changing your graphics settings in Preferences.
  • Higher quality snapshots may take a long time to create. We’ll continue to work on increasing the speed.

 

Download the Viewer here. UPDATE: The 360 Snapshot feature is now in the official Second Life viewer, download the latest version now!

For more technical input, please file a Jira. 
 

Linden Lab

New Voice Improvements!


Tools & Technology

Happy Wednesday everyone!  

Today we released the latest Maintenance Viewer Build.  Among a slew of fixes and improvements is a key feature we want to highlight: ability to tweak your Voice Activity Level. Lately we’ve had increasing problems with voice cutting out, at events or just talking to friends nearby.  With these changes you will have a way to easily manage the problem. It’s been working seamlessly in our internal testing, including large events. 

Voice Activity Detection
This Viewer exposes 3 VIVOX VAD (Voice Activity Detection) variables via Debug Settings and disables the (previously enabled) automatic mode. By making changes to these variables, we should be able to come up with a collection of settings that we can base new default values on in settings.xml.

The Debug Settings are:

  • VivoxVadAuto
    • Enable (1) or disable (0) automatic VAD - you will almost certainly want this set to 0 [off] and change things using the other settings
  • VivoxVadHangover
    • The time (in milliseconds) that it takes for the VAD to switch back to silence from speech mode after the last speech frame has been detected.
  • VivoxVadNoiseFloor
    • A dimensionless value between 0 and 20000 (default 576) that controls the maximum level at which the noise floor may be set at by the VAD’s noise tracking. Too low of a value will make noise tracking ineffective (A value of 0 disables noise tracking and the VAD then relies purely on the sensitivity property). Too high of a value will make long speech classifiable as noise.
  • VivoxVadSensitivity
    • A dimensionless value between 0 and 100, indicating the ‘sensitivity of the VAD’. Increasing this value corresponds to decreasing the sensitivity of the VAD (i.e. ‘0’ is most sensitive, while 100 is ‘least sensitive’)

The default values (updated) are (using VIVOX names):

  • VivoxVadAuto: 0 (disabled)
  • VadHangover(s): 2000 (Valid values are 1 - 60000 milliseconds)
  • VadSensitivity: 0 (Was 43 - valid values are 0 - 100)
  • VadNoiseFloor: 576 (Valid values are 0 - 20000)

Early testing suggests that VivoxVadNoiseFloor can only be changed by restarting the Viewer or teleporting away and coming back (needs a new voice connection) but the other 2 work in real time as you change them. After some initial testing with VIVOX, we have settled on starting from VivoxVadSensitivity set to 0. This will result in no dropouts because the microphone is sending everything to the voice channel. However, in a noisy environment (talking in background, vacuum cleaner, TV on etc.) it will also transmit that too. With modern microphones with built-in noise cancellation, sending everything may be a good thing as the microphone may have done all the heavy lifting of noise cancellation first.

Please try it out and let us know what you think!  If you’re experiencing any bugs, please let us know!

×
×
  • Create New...