During the Content Creation User Group meeting on Thursday, November 29th, Oz Linden announced that Linden Lab will be open-sourcing the code used within the Linden Realms game to content / experience creators.
The aim of the move is to make the code available to (Premium) users wishing to build interactive experiences / games within Second Life, so they might study it, re-purpose elements from it, and even critique it.
The release, when it is made, will be of the latest iteration of Linden Realms, which was updated in October 2018 to provide a completely new look and offer a broader range of game elements. It is also supported by end-user documentation on how to play the game, which might also be useful to experience creators in generating their own supporting end-user games.
Making content like this available to a wider audience is something that has been requested on numerous occasions during Content Creation meetings. The move also fits into the broader pattern of the Lab involving creators and users in the development of capabilities within Second Life – as Vir Linden noted during the meeting when Oz made his announcement. Given that the code is to be open-sourced, it means that updates and improvements to it – or new capabilities / options added to it – could be contributed back to Linden Lab, and thus to others building experience-based games.
The move is also potentially in keeping the Lab’s hope to increase the Second Life user-base. Games are an obvious means of attracting new users to a platform, and providing the means for creators to develop and run more comprehensive games using mechanisms that both work and which can potentially be extended and enhanced. Coupled with the means to bring users directly into said games – such as by the new user API and / or Second Life Place Pages (although the latter do perhaps require further enhancements themselves to be more practical) – they might come to assist in attracting new users. Time will tell on that.
It’s not clear exactly when the code will be made available; as Oz linden noted, it requires careful checking to avoid the risk of code that could be exploited to the detriment of Second Life. Hopefully, there will be an official blog post when the code is made available to all.
On Monday, September 18th, 2017, Linden Lab announced the launch of their latest Experience Key based game for Second Life users to enjoy. Entitled Tyrah and the Curse of the Magical Glytches, it is something of a departure from previous games such as Linden Realms, PaleoQuest and the Horizons adventure. Not only is it grid-wide in nature (the first time Second Life experiences have been used on a grid-wide basis), it will in time also allow parcel holders to host the game on their land if they so wish – possibly attracting traffic to their locations.
I was able to see and try the game ahead of its launch, and thought I’d offer an overview and some feedback, as well as take the opportunity to ask a few questions of Dee and Patch Linden about the game and the reasoning behind it.
Tyrah and the Curse of the Magical Glytches is a combination hunt, capture game and first-person shooter. It builds on elements seen in previous games from the Lab, but is far broader in scope. There are two basic aims of the game:
Capture mischievous Glytches as they wander SL and perhaps gain gems from them, and / or an immediate prize of a Glytch – which might be a shoulder / head pet, held pet, or follower (all of which can be traded between users) or even complete avatars.
Collect coloured gems – which can be redeemed for weapons upgrades, and/ or access into the game’s bonus regions and / or prizes
A video outlines the game’s back story. I’m not going to say much on this other than, “alas, poor Magellan, I knew him, Horatio. A fellow of infinite drinking ability and most assured desire for food…” – or something (with apologies to W. Shakespeare, Esq).
There are several aspects to playing the game, which are covered in another video; but for those who prefer to read things, I’ve outlined them below.
Hartyshire is the heart of the game. Reached via the Portal Park, it is the place where people can learn more through the aforementioned videos, and where players obtain their Glytch Starter Kit, can upgrade their weapons, claim prizes or – gem and weapons upgrades allowing – access the special bonus regions. There is also a range of free gifts for visitors, whether or not they join the game. There are three important areas in Hartyshire:
The Gem Apothecary is where players can:
Obtain a game Starter Kit: with everything needed to start playing: a note card of instructions, the game HUD (see below) and a jar – your first Glytch catching weapon. The kit is delivered as a folder to your Inventory.
Upgrade their Glytch catching weapon: use gems given by Glytches to upgrade from jar through swatter and net to gun. Each weapon improves the chances of catching Glytches. Replacement weapons can also be obtained here.
Claim Gem Lottery Prizes: contains prizes from the Lab’s previous games, split into three groups – Common, Rare and Epic, corresponding to the three gem colours – Green, Pink and Blue. Prizes in each category can be obtained by redeeming the required gems of each colour.
The Gift Shop is where visitors to Hartyshire can collect game-related free gifts and hatch their SL14B gift egg to gain their first Glytch.
The Bonus Region teleport portals – of which, more below.
To play the game, players must wear the game HUD. Removing this at any time stops all game-play, saving the player’s current status (e.g. gems taken, current weapon upgrade, etc). Players can re-join the game at any time simply by wearing the HUD once more; there is no need to return to Hartyshire in order to do so. The Glytch catching weapon can also be worn, although the game will also function without it.
With the HUD worn, players click the Next Loc(ation) button to teleport to a location where they can hunt Glytches. On arrival, the Map can be opened to see where the Glytches are. A maximum of five Glytches can be caught per location, after which players should use Next Loc to move to another location to continue the hunt.
At the moment, Glytches can only be found on assorted Linden / LDPW regions and parcels. In the future, residents will be able to apply for their land to be added to the game – of which more anon.
Glytches can be hunted in either first- or third-person view, but must be captured in first-person (Mouselook) view by clicking on them with the left mouse button. Note the range at which a Glytch can be caught varies with the weapon being used, and not all captures will be successful.
A failure to catch a Glytch can result in it casting a spell on the hunter. They’ll also use spells if startled or to protect one another. Spells vary from silly dances to anvils dropping on heads, but they will allow the Glytch to escape by de-rezzing (another will rez nearby).
A successful capture will result in a cage appearing around the Glytch and a message displayed on the game HUD. The Glytch may also offer you a reward. This might be gems or it might be a Glytch prize – or both.
Note that when a glitch prize is given, players must switch to third-person view (ESC) and Accept the Glytch via the notification displayed in the top right of the viewer window. Failure to do so may result in the prize being lost. If the notification collapses before it is clicked on, it can be re-opened via the Notifications tray.
To help keep the game fresh, new Glytches will be added over time A wiki-based Glytchopedia will also be published in due course, listing all the Glytches.
Update, November 19th: some users on TPVs may find the gun used gun in Quest 3 of Horizons Experience doesn’t work with their viewer. The Lab is aware of the issues, and is investigating options for a fix. For the moment, those affected will need to swap to the official viewer, but only for Quest 3. Full details can be found in llTakeControl issue and the Horizons Experience.
On Tuesday, November 15th, Linden Lab announced a new Mainland community initiative called Horizons. First hinted at during the Meet the Lindens talks at SL13B in June 2016, it became the subject of widespread speculation when two testing environments related to it appeared on the Second Life world map in October, with Patch Linden further stirring up interest by posting some teaser images to his Profile feed.
Picking up on the SL13B hints, I contacted the Lab with the idea of covering Horizons. Patch and his team were very receptive to the idea, and as result, I had the opportunity to tour the regions ahead of the opening, and learn more about Horizons from Patch Linden and Naughty Mole of the Linden Department of Public Works (LDPW).
In short, Horizons is a new themed Mainland residential community built around a central, 6-region gaming environment called Horizons Experience. As I’ve covered the community aspects at length in New Horizons in Second Life, this article focuses solely on the new six-region gaming experience.
Horizons Experience essentially builds on the Lab’s work with PaleoQuest, the dinosaur themed adventure which opened in July 2015 (see Experiencing PaleoQuest, the Lab’s latest adventure in Second Life). As with PaleoQuest, players are tasked with completing a number of quests and multiple tasks in order to come to the rescue of Magellan Linden’s assistant, Tyrah, who is in deadly peril at the paws of the nefarious Doctor Talpa. Note that the game is on Adult rated regions, but this is not reflective of the games content.
“PaleoQuest was our most recent gaming project that we had put out at scale,” Patch said as we discussed the game ahead of our tour. “We took from that a lot of the game mechanics which people really enjoyed and liked, and we’re including them and a lot of new elements within the Horizons Experience.
“For example, one of the big new features is the ability to participate either as a player in the game or as an ‘explorer’ – someone who is not active in the game, but who can travel through the regions and observe as a bystander. With our other gaming experiences, you’re either in the regions with the intent to play, or you wouldn’t go. As Horizons is part of the Mainland, we felt it was important that people be able to drop in without disrupting the game-play.”
“We’re using different coloured indicator above people’s heads in the game regions to indicate whether they are a player or an explorer,” Naughty Mole added. “If they have a blue ball floating above them, they are an explorer. If they have an orange ball, they are a player. That way, the people in the game know who is who. Obviously, you can’t complete any of the quests as an explorer, nor can you receive any prizes; but you can walk or fly around and watch players (who can’t fly). Oh, and you can still be killed by any of the quest hazards!”
Given that Horizons Experience is sitting in the middle of a residential area where flying vehicles are permitted, I wondered if there was a risk of aircraft interfering with the game. “Flying vehicles can pass over the gaming regions,” Naughty Mole answered, “but they must keep above a certain height. If they are too low, they will get a warning, and if they don’t increase their height, they will be auto-returned and those on board will be transferred to a resurrection hub inside the gaming areas as explorers.”
“The six regions of the experience are all uniquely themed,” Patch resumed, “The first region you go into is the starting region, where residents are introduced to the quest and receive their game HUD. While there they can watch an in-depth tutorial video and background story video, see the payout stations or follow links to the Horizons Experience wiki page for more information. Beyond all this are the five gaming regions, which are linear, like PaleoQuest. Each must be completed before you progress to the next one.”
Horizons Experience can be accessed in a number of ways. Anyone in the Horizons regions can fly to the central gaming regions, or they can use the teleport portals located at the Horizons info hubs and community centres, and which are scattered across the residential regions. Direct teleport via the map is possible, and there is also a Horizons Experience gateway at the Portal Parks.
Naughty added, “When people first arrive, they are given the choice of being a player or an explorer. If they selected ‘player’ they are registered for the game and receive a HUD. If they remove their HUD, they become an explorer. If players leave the game regions, their HUDs are automatically removed. However, all progress up to the point where they removed their HUD is saved.
“Returning players arriving at the start area can use the Portal Room to jump directly to any quest they have previously completed, or go to the Quest they were on when they left the game. So, if someone left while trying the third quest, they can use the Portal Room to get to quests one, two or three, but they will not be able to jump to quests 4 or 5.
“Also, there are HUD kiosks throughout the quest regions, so any player who removed their HUD can get a replacement, and they will be asked if they would like to teleport to their last point of progress. Explorers who have never played the game can also use these kiosks to obtain a HUD, and they will be asked if they would like to teleport to the start of the first quest.”
Update: thanks to the efforts of one or more juveniles defacing the orginial, the proposal – originally referred to as a Google document in this article – has been converted to PDF format, and this article has been updated to reflect that fact, and how those with a genuine interest in the proposed capabilities can forward ideas and suggestions to the Lab.
Since the introduction of Experience Keys into Second Life to allow more convenient granting of permissions for the system to act on an avatar’s behaviour when engaged on a specific activity – such as a game or a tour – a commonly requested item has been the ability to for scripted forced sits to be made a part of the Experience process.
On Thursday, September 22nd, during the Server Beta user group meeting, Rider Linden announced he is working on just this capability – and that test regions are available on Aditi for Experience creators to test the capability as it stands.
The new LSL functions for Experience-enabled scripted forced sits form Project Espeon (after the Pokémon character). Rider has produced a proposal document on the new functionality, which can be read in PDF format, which he introduces as follows:
With the advent of Experiences Keys we would like to be able to allow scripts being run as part of an experience to force an avatar to sit in a particular location. This feature will be useful in an adventure game scenario where an avatar is forced to sit in a trap so that it may sync its animations with the avatar, or in an amphitheatre or classroom situation where a presenter wishes for all the other participants to remain seated.
We will add at least one new LSL script function that will force an avatar to sit on a particular prim and make adjustments to the existing llUnSit() function to perform the counter action.
llSitOnLink( ) – Function: integer llSitOnLink( keyagent_id, integerlink ); – mimic the behaviour of the rightclick “Sit Here” menu item. The avatar specified by agent_id is forced to sit on the sit target of the prim indicated by the link parameter. If the specified link is already occupied the simulator will search down the chain of prims in the linkset looking for an available sit target, as per the diagram at the top of this article.
PRIM_ALLOW_UNSIT – to be added to llSetPrimitiveParams( ) – When set on a prim that is running a script as part of an experience an avatar that is seated on the sit target and has agreed to participate in the experience will be unable to stand, select another prim to sit on or teleport to another location in the same region (inter-regional teleports will act as normal).
PRIM_SCRIPTED_SITS_ONLY – to be added to llSetPrimitiveParams( ) – Agents may only be seated on this prim using llSitOnLink(). Attempts to do a manual sit will fail. This flag applies even outside of an experience enabled region.
PRIM_SIT_TARGET – to be added to llSetPrimitiveParams( ) – The sit target if any defined for this prim. If the active value is 0 the sit target is deactivated, if it is nonzero the prims sit target is set to the indicated offset and rotation. As with llLinkSitTarget(), these values relative to the prim, however unlike llLinkSitTarget() an offset of <0.0, 0.0, 0.0> may be explicitly set.
Note that the above is in summary only, please refer to the Google document for the complete specifics.
Test regions have been set-up on ADITI, the beta grid, and those interested in testing the capabilities should join the Second Life Beta group on Aditi for access. The test regions are: Leafeon or Umbreon or Sylveon, with test content is available on Leafeon. If you wish to have your own Experience added to the regions for testing, contact Rider via IM. Similarly, if you have any suggestions or ideas for improving the proposal document or the functions, should raise a JIRA.
In May 2015, I wrote about the Lab’s work in adding Experience keys to their Learning Islands, the first in-world destination for new users joining Second Life through the Lab’s sign-up process. At the time, Peter Gray, the Lab’s Director of Global Communications, indicated the approach was one of a number the Lab were experimenting with, while subsequent to the article, Ebbe Altberg indicated that Lab was continuing with A/B testing of various approaches to getting new users started in Second Life.
Thanks to a nudge from Cube Republic, I’ve had the opportunity of trying-out one of the more recent aspects of this work, by paying a visit to one of a set of four Social Islands, which form the second stop incoming users make on their initial journey in-world, and which have been both redesigned by the Lab and which now also use Experience Keys to help new users gain greater familiarity with using Second Life.
The new Social Islands offer something of a Graeco-Roman feel (top image), presenting a number of circular structures linked by broad stairways and paths, sitting within a rocky island landscape. On arrival, newcomers receive a HUD which attaches to the to left of their screen before stepping through a set of welcoming messages to get them started in their explorations.
The HUD has a number of easy-to-understand icons (? = help; speaker icon = toggle HUD sounds on / off; – = minimise the HUD; Next Step = click to page through instructions, where relevant), and updates with messages and instructions as the user explores the island.
Central to the islands is a pavilion, where information boards provide basic help and support, and which provides access to the various activities on the island. The first of these can be accessed directly from the pavilion, and present users with the opportunity to practice using their camera, find out about building in Second Life and also learn about buying goods in-world and via the Marketplace.
Stairs leading down to the ground level from the pavilion provide access to further activities, such as learning to interact with in-world objects at a beach bar or by using swings in an orchard, or learning the basics of vehicle driving by steering a boat through a course set over shark-infested water (swimming very inadvisable!), and so on.
As the HUD indicates, completion of the various tasks earns the user Linden Dollars. These are not added to the avatar’s account balance, but are indicated by a second HUD, which is attached as soon as the L$ start being earned. The balance obtained can then be used in the island’s shop to buy clothing, shoes, hair, and skins and shapes as means of introducing people to the concept of buying goods in Second Life.
A further section of the activities area offers a basic overview to in-world building, complete with a video overview courtesy of Magellan Linden and a couple of interactive elements. As an aside, I have to admit to being slightly bemused that a certain British Tabloid and a former south London community newspaper are featured in one of the demonstrations, simply because it was so unexpected.
The final part of the island is the portal area providing onward access to the rest of Second Life. This follows pretty much the same format as other versions of the Social island: a set of portals defined by category – art, role-play, popular places, editor’s picks from the Destination Guide, the Portal Parks, music and adult – which will deliver a user selecting one of them to one of several potential destinations. The portals are presented via a video providing more information on exploring SL, and users approaching them are presented with / advised to take a Landmark for the island so they can find their way back, if needed.
The Main (SLS) channel was updated on Tuesday, March 1st, with the server maintenance package deployed to the three RC channel is week #8. This comprises a server crash fix and “minor internal improvements.”
The server deployment thread lists any RC deployments for the week as “TBD”. however, speaking at the Simulator User Group meeting on Tuesday, March 1st, Simon Linden indicated it is unlikely there will be any RC deployment until week #10 (week commencing Monday, March 7th 2016). These will apparently have an update that addresses a means by which a simulator can be intentionally crashed.
Currently, the official viewer from LL remain unchanged from the end of last week:
Maintenance RC viewer version 184.108.40.2061655, dated February 26th
HTTP updates and Vivox RC viewer version 220.127.116.111302, dated February 22nd
Quick Graphics RC viewer version 18.104.22.1681103, dated February 17th
Project Bento (avatar skeleton extensions) version 22.214.171.1240099, dated January 20th
Oculus Rift project viewer version 126.96.36.1995296, dated October 13th, 2015
Obsolete platform viewer version 188.8.131.520847 dated May 8th, 2015.
As noted in my last TPVD meeting notes, the Lab were awaiting an update to OpenSSL. This has now been released and there is minimal impact for SL. This therefore should require any fast-tracked update to the viewer.
The simulator user group meeting saw a general discussion about allowing broader access to the Experience Keys database (the KVP) without land owners necessarily having to grant permission to specific Experiences.
The idea here is that there are applications which rely on persistent data or utilise grid-wide data exchange (e.g. a teleport network, a vending system network, etc.), and applications which require script settings survive the script reset. Currently, the way to achieve this is to use external data stores (see BUG-11499 for one example).
Some feel that if there were a way to dissociate the KVP database from things like avatar influences, then it could be used for such applications, removing the need for external data stores and the rick of those data stores vanishing / not being available. However, this is not something the Lab is particularly keen on, for a number of reasons. For example, it could result in their servers storing a lot of data and carrying a lot of database quires and updates, something that might not scale terribly well with volumes and associated storage space cost. Nor would it necessarily safeguard the data any better (if the Experience owner downgrades to Basic or ceases paying their Premium subscription, the data will be lost).
During the discussion Oz indicated that the Lab has no plans to make grid wide experiences available any time soon, due to concerns about how “certain internal features” would scale.