nyuuzyou/wikis huggingface dataset:
Third Party Viewer Directory/GroupTools

== GroupTools==
GroupTools is a text only client with a small set of features compared to many other clients.
The main focus is to make SecondLife residents experience with group activities more barable since sending multiple notices and IM's can be a hassle and very time consuming.
A few other features are available as well, and more might become available in the future too.
GroupTools is based on the OpenMetaverse library sourcecode
Third Party Viewer Directory/Kirstens

== Kirstens Viewer==
A Perpetual alpha/beta viewer based on a mixture of code with experimental features aimed specifically at experienced end users, or adventurous residents.
It is similar to the official viewer in most respects, and adheres tightly to LL coding standards,and LL source code. It does feature a custom interface, Anaglyph 3D,and various smaller features and tweaks particularly in how the grid is presented to the user, the viewer also dabbles in aggressive and hardware specific platform compilations and parallel code builds of both the main executable and supporting files.
It must be stressed that stability can vary wildly! This viewer should be considered supplementary to any official client.
Third Party Viewer Directory/Lovense

== Lovense Viewer==
Lovense Viewer allows you to immerse yourself in a heightened virtual experience as your Lovense toys seamlessly synchronize with the movements and actions of fellow Second Life residents. The Lovense Viewer is redefining the boundaries of pleasure in the virtual realm, offering a thrilling journey where every encounter becomes a sensorial experience. Efforts are being invested in boosting stability and performance by delivering bug fixes and performance enhancements.
Third Party Viewer Directory/METAbolt

== METAbolt==
METAbolt is a text client with rich features to enable users to perform most important functions in SL.
The aim of METAbolt is to provide a thin client which people can use:
* at work
* on the move
* on low spec machines
* on low/metered internet bandwidth
* to keep connected to SL while working on processor intensive software such as Photoshop, Visual Studio and many others
* PC/Laptops with no graphics cards or with SL incompatible graphics cards
* to run useful bots such as customer services, modelling, security and direct group invites.
METAbolt is fully accessible and compatible with JAWS.
METAbolt works in SL as well as any other grids based on OpenSIM. However, METAbolt is primarily developed for SL.
Third Party Viewer Directory/Megapahit

== Megapahit==
The name can also be pronounced like "megabyte". Just with a 'p'.
Some of the things that this fork prioritises are:
that users from arbitrary platforms (not just the most popular ones) get to experience, at least the vanilla flavour of, connecting to Second Life;
and that the viewer uses as few bundled libraries as possible, which can also result in the distributions being only in.. megabytes.
Any features that would make Megapahit distinctive on the surface are expected to be later as this fork develops in time.
Third Party Viewer Directory/MetaChat

== MetaChat==
MetaChat is a text-only viewer for all Virtual Worlds based on the OpenSimulator software for 3D worlds.
There is no 3D view, this is a text-only viewer.
Add accounts from different worlds with different start locations.,
See your friendlist, read messages or write
Chat with groups, see group infos or write group notices
Chat in open world 
Move around a mini-map, teleport to landmarks
See your inventory, preview textures or pictures
Third Party Viewer Directory/Mobile Grid Client

== Mobile Grid Client==
Mobile Grid Client is a Second Life messaging client for Android powered devices like the Motorola Droid, the Samsung Galaxy S (I9000), Galaxy Tab, the Google Nexus One and a lot of other devices (see: http://en.wikipedia.org/wiki/List_of_Android_devices).
* Local chat and instant messages - converse with your friends, groups or someone else.
* Teleport to other regions and nearby avatars.
* Region map with accurate positions of other avatars.
* Profiles - look at your own and others profiles.
* Designed with usability in mind - simple and intuitive to use, tap chat and instant messages to get more information about the sender.
* The unique always on feature - stay logged in while answering a phone call or carrying the phone in your pocket.
* and much more...
To get the latest news about Mobile Grid Client visit us at http://www.facebook.com/mobilegridclient or follow us on http://twitter.com/mgclient
Third Party Viewer Directory/Pocket Metaverse

== Pocket Metaverse==
iPhone and iPad Client for Second Life® - Log into Second Life at any time from your iPhone or iPod Touch. The most complete mobile client for accessing Second Life, providing easy access to all major functions. Use Pocket Metaverse to stay in touch with your Second Life friends while you're at work or away from your computer. If you do business in Second Life, you will find this an invaluable tool for reading and responding to notecards left for you by your customers.
Pocket Metaverse provides the following features:
*Instant Messaging & Chat
*Friends List with Who's Online
*World Map and Teleporting
*MiniMap with Who's Nearby
*Profiles, Groups, Search
*Giving, Receiving, and Managing Inventory
*Read Notecards and view Snapshots and Textures
*Upload and Download from the Photo Album and Camera
*Payments
*Parcel Media
*Much More!
Third Party Viewer Directory/Radegast

== Radegast==
Light-weight feature rich non-graphical client, ideal for situations where full 3D rendering client is less than ideal option, for instance, an office environment, running on low performance computers and similar.
Radegast supports full array of Second Life communications features, group and inventory management, friends list and many others.
Bundled Speech plug-in with its text-to-speech and speech-to-text capabilities and adherence to standard accessibility APIs, greatly enhances Second Life experience for the users who depend on such software. (Accessibility enhancements are currently only supported on Windows)
Third Party Viewer Directory/Restrained Love

== Restrained Love==
The RLV enhances your experience when you use it in conjunction with RLV-compatible objects, that are very common around the SL grid now. It is primarily intended to be used by BDSM fans with BDSM oriented objects in-world, which are able to restrict the user from detaching items, receiving IMs, hearing chat, teleporting etc. It can also be useful for totally PG purposes, such as forcing to teleport somewhere (facilitating transport networks), changing the Windlight settings through scripts (helping sim owners), preventing from teleporting out of a maze, etc.
Please note:
:This viewer was formerly known as "Restrained Life Viewer", and changed name to "Restrained Love Viewer" to comply with the TPV policy. It still stays broadly known as simply "the RLV".
Third Party Viewer Directory/Singularity

== Singularity==
A viewer based on familiar 1.x User Interface with many Emerald-style usability enhancements and extended tools for content creators, both thanks to Ascent Viewer heritage.
For roleplaying, Singularity adds RLVa to support RLV-compatible scripted attachments.
Extensive effort is being put to further improve stability and performance by implementing own bug fixes and performance improvements, backporting Viewer 2 and Viewer 3 technology.
We firmly believe that we can maintain the viewer in the long run and keep it compatible with Second Life while taking advantage of new and upcoming advances and retaining the classic user interface.
Third Party Viewer Directory/SpeedLight

== SpeedLight Web Viewer==
SpeedLight is 100% web-based viewer which does not require any downloads. It can be used both in desktop and mobile browsers, allowing to switch between devices without logging out.
Supports multiple avatars (with a possibility to switch between them). Tested to work in Windows, Linux, Mac, Android, iOS.
 
Regular viewer features:
* Teleport to SLURLs and regions
* View local map and nearby residents
* Search for SL residents
* Access local chat
* Read and send IMs
* View groups
* Access group chat
* Browse and manipulate inventory
* Send inventory items to residents
* Send money
Unique features:
* Switch between devices (desktop, mobile) on the fly
* Multi-avatar support
* Keep avatars online while browser is closed
* Access avatar from anywhere
* View IMs history while avatar offline
* Keep and view L$ transactions history
Third Party Viewer Directory/UKanDo

== UKanDo==
UKanDo gives a whole new perspective in Second life by using a camera placement adopted by the vast majority of third person video games.
Also includes RLV along with plenty of other useful tools. It won’t have all the gadgets/gizmos a lot of the bigger viewers have, the aim is to keep it as lite as possible with only the fixes, gadgets and gizmos we need to keeping the Viewer stable and up-to-date! The Avatar happy! And to aid with building!
Tic Tac Toe

This example will demonstrate how to execute a larger project. Some of the techniques on display here are a little overkill for just coding Tic Tac Toe, but should provide a nice framework for more complex projects.
The game code is expressed in 6 steps.
A working version of this game can found at: http://slurl.com/secondlife/Longfellow/193/60/25
Category:LSL Library
Tic Tac Toe/Game Logic One

Now we're ready to flesh out the game. We get a little stricter in our if else cascade and keep track of who's turn it is. We also record the game state.
// Message constants
integer MSG_RESET = 0;
integer MSG_TOUCH = 1;
integer MSG_SET_X = 2;
integer MSG_SET_O = 3;
integer MSG_IDLE = 4;
integer MSG_IDLE_TOUCH = 5;
// Game timeout
integer GAME_TIMEOUT = 20;
// Game state
key player_x;
key player_o;
string turn;
string game;
update_game(string player, integer move)
{
 game = llInsertString(llDeleteSubString(game, move, move), move, player);
 llSay(0, "game = "+game);
}
default
{
 state_entry()
 {
 player_x = NULL_KEY;
 player_o = NULL_KEY;
 game = "---------";
 turn = "x";
 llMessageLinked(LINK_ALL_CHILDREN, MSG_RESET, "", NULL_KEY);
 state playing;
 }
}
state playing
{
 link_message(integer from, integer msg_id, string str, key id)
 {
 if (msg_id == MSG_TOUCH)
 {
 llSay(0, "touch from "+(string)from);
 if (turn == "x" && NULL_KEY == player_x)
 {
 player_x = id;
 update_game(turn, from-2);
 turn = "o";
 llSetTimerEvent(GAME_TIMEOUT);
 llMessageLinked(from, MSG_SET_X, "", NULL_KEY);
 }
 else if (turn == "o" && NULL_KEY == player_o)
 {
 player_o = id;
 update_game(turn, from-2);
 turn = "x";
 llSetTimerEvent(GAME_TIMEOUT);
 llMessageLinked(from, MSG_SET_O, "", NULL_KEY);
 }
 else if (turn == "x" && id == player_x)
 {
 update_game(turn, from-2);
 turn = "o";
 llSetTimerEvent(GAME_TIMEOUT);
 llMessageLinked(from, MSG_SET_X, "", NULL_KEY);
 }
 else if (turn == "o" && id == player_o)
 {
 update_game(turn, from-2);
 turn = "x";
 llSetTimerEvent(GAME_TIMEOUT);
 llMessageLinked(from, MSG_SET_O, "", NULL_KEY);
 }
 }
 }
 timer()
 {
 llSetTimerEvent(0);
 state idle;
 }
}
state idle
{
 state_entry()
 {
 llSay(0, "state idle");
 llMessageLinked(LINK_ALL_CHILDREN, MSG_IDLE, "", NULL_KEY);
 }
 
 link_message(integer from, integer msg_id, string str, key id)
 {
 if (msg_id == MSG_IDLE_TOUCH) state default;
 }
}
A note about data structures... as you know, lsl doesn't have any. All it has is lists and strings. Use strings. Lists are worthless unless you have wildly heterogenous data, a need for a little extra speed and not much data:
* Strings are slower, but use memory more efficiently
* Lists are faster, but gobble up memory at an alarming rate
Store constant width fields in constant length records - your strings can be as long as can fit into whatever remains of the 16k allocated to your script.
If you run out of memory, a common technique is to write data server scripts with just a tiny query API via linked messages.
Everything is there except for the game end checker. If the game ends by winning, we'd like to highlight the winning squares, which would require adding a message and code to the 9 scripts in the X/O boxes. I guess 9 isn't too bad, but still annoying to have to open 9 inventories, delete and drag in a new verion of the script. It's easy to misclick, and becomes old pretty quick - and there is a better way...
Tiki - JC Microcontinent

Tiki - JC is a Microcontinent formed of 8 sims, located at Coordinates 506-508/1146-1148, inside Grid Sector E11, Far West Ocean. The name is not official, it comes from some of the sim names, that contain the words Tiki and JC. Also, the Second Life Geography team proposed a transitory name, A091.
== Position ==
The microcontinent is placed at the border of A089 Sim Cluster and can be considered a part of it. On map, it is placed far to West, near the place where sims end and void ocean begins. It is compact, almost forms a square, so it is les svisible. Other sims have JC in their names, outside of the microcontinent. This has something to do with the estate (see below).
== Geography ==
Tiki - JC is flat land. Almost all surface is smooth, sometimes with decorative water. Ground texture is sand.
What makes Tiki - JC different and most notable is the high amount of objects in open air. There are not many buildings, but objects are. There are shops and many other things, but everything is in opened air, not inside buildings. Another notable thing is the presence of torches.
== Land Status ==
There is only one estate in the microcontinent, that has JC in its name. This estate owns sims not only inside the microcontinent, but also at some distance. That is the origin of the JC name.
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Oceans
TimeAPI Clock Script

This is a script that I made using LSL's HTTP request function to get the time from the Internet via TimeAPI.com. It gets the time from TimeAPI.com and shows the current time.
== Script ==
key reqKey;
default
{
 state_entry(){
 llSetTimerEvent(1);
 }
 
 http_response(key req_id, integer status, list metadata, string body)
 {
 if (req_id == reqKey)
 {
 if(status == 200) {
 llSetText(body,<1,1,1>,1.0);
 } else {
 llSetText("ERROR",<1,0,0>,1.0);
 }
 }
 }
 
 timer()
 {
 reqKey = llHTTPRequest("http://www.timeapi.org/utc/now?format=%25H:%25M:%25S", [HTTP_METHOD,"GET"],"");
 }
}
Since llGetWallClock() returns Pacific time and llGetGMTClock() returns UTC and that counts seconds since midnight, this script shows time in UTC, Eastern Time, Central Time, Mountain Time, Pacific Time, Alaska time, Hawaii time, CET, EET or Moscow time.
You can customize the display of the clock by editing the format. (This requires understanding for Ruby coding) For reference, please see http://apidock.com/ruby/Time/strftime
For infomation on TimeAPI, please see http://www.timeapi.org/
The HTTP clock script is open-sourced and it is in the public domain. You can contribute to it and use it in your projects.
Note: If you happened upon this script for the time retrieval API, see the Talk page for suggestions regarding alternatives.
Category:LSL Examples
Tiny

An extremely small avatar, usually a furry, designed to resemble an animated stuffed animal.
Resident was the first one who made a tiny avatar in Second Life. Tinies can't be created by just lowering the size of an avatar, via the appearance menu, since the smallest avatar size is still too tall for a tiny. They need special animations to fold/crush the avatar to a tiny size. Afterwards, prims and invisiprims are used to hide the rest of the regular avatar mesh.
The option to upload rigged mesh to the Second Life grid also made it possible to create small mesh avatars, often not bigger then 1/4 or a 1/3 of the normal sized avatar. The regular avatar mesh is hidden by wearing an alpha layer and the rigged tiny mesh body is worn as an attachment.
== Related Links Tinies==
* Second Life Wikia: Tinies
* Blog: Tiny is as tiny does
* Blog: Tinies for Biggies
== Related Links Small Mesh Avatars==
* Blog: Pocket Avatars, small mesh avatars: Frequently Asked Questions
* Blog: Pocket Avatars, small mesh avatars FAQ
Tips and Tricks: Ten Tips on Creating Machinima in Second Life

The following is excerpted from the June 2006 issue of Second Opinion, our official newsletter.
----
Ten Tips on Creating Machinima in Second Life
Machinima is the art of making real movies in virtual worlds. Movies made in Second Life use the world's building, scripting, and avatar customization tools, working in real-time collaboration with people around the globe.
You can use Second Life as your own virtual back lot, soundstage, choreography studio, costume and prop repository, and special effects house. Eric Linden, Linden Lab's machinima expert extraordinaire, gives ten tips for creating machinima in Second Life.
* Set up screen capture software. I recommend downloading FRAPS to capture your footage. FRAPS captures very clean footage while maintaining the best possible frame rates.
* For dolly shots, contact Alt-Zoom Studios to get their free, scripted camera object. This is currently the best-scripted camera in Second Life, and will give you the ability to capture smooth camera moves.
* Try to isolate your action in a way that prevents extraneous background objects and scripts from coming into view. This will help you maintain a more consistent frame rate, especially if there is a lot of action in the scene.
* Try capturing in Mouselook Mode. You can get smoother camera movements this way.
* Try to capture footage in a larger format than what you plan to deliver it in. For example, I always capture at 640x480 when I know my output is going to be 320x240. You'll maintain higher quality throughout the editing process this way.
* Try to limit the number of actors in any given scene. Having a lot of avatars within a scene, especially if they are all using unique animations or have a lot of attachments, will reduce your frame rate.
* Always capture several frames in front of and at the end of your action. This helps greatly when you're editing scenes together.
* Try not to move the camera too fast; this can be confusing for the audience and disrupts continuity.
* Try several views of the same action sequence. Capture more than you think you will need. You can always delete. This will allow you to make more creative decisions when you're editing.
* Hide the Second Life UI (Ctrl+Alt+1) when capturing.
Have fun making movies and be sure to check out Eric's film,Silver Bells and Golden Spurs!
Tips for building efficiently with prims

=== Better Building with Primfficiency! ===
As you may already know, "prims" are the basic building blocks used to create all objects in the Second Life virtual world. Combining prims and shaping them allows you to come up with some complex contraptions and interesting visual wonders. "Primfficiency" is the art and science of mastering prim shaping to achieve great results. Think of "prim efficiency + proficiency". There are a number of benefits to learning the ways of the prim:
* You can achieve some pretty tricked-out shapes using a single non-sculpted prim
* Your building skills will increase naturally while exploring the possibilities; and
* By conserving objects, you'll have more to use on a given parcel of land.This is very important if you find yourself running out of prims.
Here are some examples of primfficiency, complete with screenshots:
=== Save some stairs ===
Two stair steps can be made with a single prim.
# Rez (create) a box.
# Rotate and stretch it out a little.
# Set Path Cut Begin = 0.125 and Path Cut End = 0.875.
While this may look unexceptional at first glance, stairs can be long, so the savings quickly add up.
=== Sit pretty (but not primmy) ===
The "one-prim bar stool" is a longtime commodity in the Second Life virtual world, and if you've never figured out how to do it before, here's the recipe. And it's FREE!
# Start out by rezzing a tube.
# Stretch it so it's taller.
# Set Hole Size Y = "0.50". Profile Cut Begin and End = "0.25" and "0.95", respectively.
# Then carve out your new seat by making Hollow = "85".
You can also set a click action on your stool so you can sit with a single left-click. How?
# Select the General tab in the edit tools (or right-click on the stool and select Edit from the pie menu).
# Near the bottom, select the drop down menu under the When Left-Clicked option then select Sit On Object.
# Close the edit window and left-click your bar stool! Voila!
Here's a video of this trick:
=== Reinvent the wheel ===
The most common way to make a vehicle wheel is to flatten a cylinder. The end result tends to look rather flat, especially if you're adding texture. A more dynamic way to do this is:
# Rez a ring and set both Twist Begin and End = "90" and Hole Size X = "0.75".
# Still look too flat? Lower Profile Cut End to taste, say, "70" and make Hollow = "25" and you're cooking!
The picture shows each face (area) of the prim as a different color. And it need not just be tires: you can make dishes, containers — whatever you want your newly wrangled, multi-faceted ring to be!
Category:Content creation
Toggle States

=====Toggle via State Change=====
An example script showing how a state change can be used to switch between two script modes, in this case, On or Off. When the script first runs, it begins in the default state and the state_entry event is executed. When a user interacts with the object by touch, the script switches to the on state. The on state executes its state_entry event, then waits for a user's touch to trigger a state change back to the default state.
 
// Toggle On-Off via State
default {
 state_entry() {
		// run this code when entering the default state
		// displays red "OFF" as floating text above the prim
		llSetText("OFF", <1,0,0>, 1.0);
	}
 touch_start(integer num_detected) {
		// when touched, switch to state named 'on'
		state on;
	}
}
state on {
	state_entry() {
		// run this code when entering state 'on'
		// displays green "ON" as floating text above the prim
		llSetText("ON", <0,1,0>, 1.0);
	}
	touch_start(integer num_detected) {
		// when touched, switch to the default state
		state default;
	}
}
Category:LSL Examples
Tohl777 Microcontinent

Tohl 777 is a Microcontinent with transitory name A186, Coordinates 1050-1054/1163-1166, Grid Sector J11, Little Northern Ocean.
== Structure ==
It is made of 8 sims and has not a compact shape. All sims share a common name (Tohl777).
== Geography ==
This is a tropical beach paradise, with more Water surface then dryland. Unlike other tropical islands, Tohl islands have replaced palm trees with other types of trees. In many places, between islands water is not deep, so you can travel from an island to the other one just by walking. Ground texture is sand for islands and coral for submerged land. Inside oceans, fish is abundent, including sharks and dolphins.
This is a good place for sailing, but beware of submerged mountains.
== Land Status ==
Almost all water is Protected Land. Islands are Inhabited Land, with a few exceptions that are for sale or for rent. Except for a few ban lines, no access restrictions exist.
== See Also ==
Second Life Geography
Oceans
List Of Microcontinents And Sim Clusters
Tombstone Railway

Tombstone Railway is the smallest multisim railway. It is located in Arizona/Tombstone Microcontinent. It passes through 4 sims and is formed of two distinct rails. It looks like they are made for different train models.
The North railway connects the sims Tombstone Benson and Tombstone Willow. It is not as large as a classic Heterocera railway, but it has visible, sculpted rails. A train is ready to go accross the sims on command.
The South railway forms a large circle through sims Tombstone Arizona and Broken Rose. It is not sculped railway, just drawed on prims. Distance between rails is smaller then at the North rail. No train was seen on this railway.
Automated transportation does not exist and these rails are not made for public trains to rezz. After all, they are in a combat area, where themed clothes are required.
== See Also ==
Second Life Geography
List Of Railways