nyuuzyou/wikis huggingface dataset:
CI Microcontinent

A218 or CI is a Microcontinent found at Coordinates 727-735/943-945, Grid Sector G9, Western Ocean. It is made of 5 sims, placed in a similar form with the C letter. It is a tropical beach paradise, with many islands and a lot of ocean water. Islands are covered with sand and tropical vegetation.
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Oceans
CLUB SCHOOL

== Founders: ==
Lias
blady
== Total Group Members: == 
250
== Group Charter ==
Tao of Volunteers
== Mission Focus & Statement ==
*Main Focus: New Resident Basics/General Help
*Other: Language, New Resident Basics, General Classes, Specific Country, Special Interest
We are a broadly focused group who volunteer to help new and seasoned residents. Meeting, greeting and answering questions is our specialty!
== Best Practices: ==
*Locations: Infohubs, Welcome Areas, Orientation Islands
*Resources: Volunteer Portal , Knowledge Base , SL Volunteer Education Center
== Group Representatives: ==
* Jason
* Salvas
* blady
* Devlin
== Group Documentarians: ==
* blady
* Salvas
== Requirements to Join ==
Teachers must be two months old and have the time to teach a 45 minute class once a week at the same time on the same day. CLUB SCHOOL is an open enrollment group available for anyone to join to be informed about free Second Life classes offered to everyone. Multi-lingual Teachers and students are welcome. To become a CLUB SCHOOL TEACHER please contact Lias Leandros.
== Links ==
== Projects ==
== Memorable Triumphs ==
== History ==
Category:Resident Help Network Applicants
CMake

CMake is a system for generating per-platform build files. Visit cmake.org for general information about CMake. 
Linden Lab switched to CMake for building the Second Life viewer (starting with version 1.21); we are currently using version 2.8.10.2
= Introduction to CMake =
CMake has the advantage of generating per-platform build files for us. On Linux, it will generate Makefiles and KDevelop project files. On OS X, it will generate Makefiles and Xcode project files. On Windows, it will generate Makefiles (for nmake) and Visual Studio project files.
All of the "smarts" stay in the CMake files, so there's just one authoritative source of build knowledge. This means that people can use the development environment they prefer without having to worry so much about breaking other people's builds. Because CMake files are plain text, merging is easy, as is maintaining experimental patches.
CMake tells your build system how to rebuild its input files when it detects changes to CMake's configuration files. This means that you only need to run cmake once. After that, make or your IDE should keep the CMake files and its own project files in sync for you.
= Performing a build with CMake =
Our builds are now managed one layer further out then CMake, using Autobuild; starting there is recommended.
Per platform build instructions for CMake-based builds of the Second Life viewer are available for these platforms:
* Microsoft Windows
* Mac OS X
* Linux
= Modifying CMake Files =
== What to modify ==
'TODO - discuss structure of CMake files
= Patching guidelines =
We welcome your patches! We can't test on every permutation of platform, compiler, IDE, and libraries, so if you have problems that you can fix, please contribute your fixes and we'll do our best to ensure that you only have to fix problems once.
If you're sending patches in, please follow a few simple guidelines:
* Follow the existing coding style in the CMake files. I don't like code shouting at me, so prefer lowercase letters.
* One logical change per patch.
* Use spaces for indentation, not tabs.
See Submitting patches for more details.
Category:Open Source Portal
Category:Compiling viewer
CMake Build Artifact Management Specification

This high level specification describes how CMake can support a feature crucial to our development organization, namely the ability to organize, build and manage reusable binary components (aka "artifacts").
This feature exists for the Java build system "Maven" and is a central piece for any large scale java development. The idea is to port this feature for use with non-java projects.
See also: http://vtk.org/Bug/view.php?id=8471
= High Level Specification =
We have an artifact server. This can be any old service that accepts a
PUT and a GET. This is where we store the single file representation of
an artifact (aka "zipfile", "package", "tarball", "rpm", "deb"....).
Artifacts are probably best created via the existing CPack code. The
main difference between the existing packages and an artifact are the
inclusion of a CMake fragment which contains:
* Name of the artifact
* Version
* Platform / Generator
* Dependencies to other artifacts.
The definition of that metadata is within the project generating the
package containing the artifact.
The location and the rules for mapping artifact names, versions and
platform ids to artifact server URLs can be part of a project
definition, or can be set globally.
The existence of that project within the current CMake run indicates
that the artifact is to be built, not downloaded. A successful build may
upload the artifact to the artifact server.
The absence of a project within the current CMake run indicates that the
artifact is to be downloaded and installed. The CMake fragment in the
package is then included in the current CMake run and recursively
resolved. Should the desired version and platform/generator for a
specific artifact not exist, then build stops with an error.
CPP Book Recommendations

Though the Second Life Client is not recommended as a first programming project due to its massive size and complexity, there are a few books that may help you find your way through the code if you're familiar with basic programming theory.
==Thinking in C++ Series==
Full texts for all books available at Bruce Eckel's website
*Thinking in C++ Volume 1
**Great intro to C++ for those familiar with programming, or as a refresher for those that haven't seen it in a while 
*Thinking in C++ Volume 2
**Covers using the STL, exceptions, and other more advanced parts of the C++ language
==Other Books (available through places like amazon)==
*If you've never touched programming before and absolutely, positively want to learn C++ first (really, really not recommended)
**C++: How to Program - Dietel & Dietel
**Accelerated C++ - Andrew Koenig and Barbara Moo
*Books for sharpening your C++ skills:
**Effective C++ - Scott Meyers
**More Effective C++ - Scott Meyers
**Exceptional C++ - Herb Sutter
**More Exceptional C++ - Herb Sutter
*Books for understanding some of the design tactics in the code base
**Design Patterns - Gamma et. al. (The Gang of Four Book)
***There's singletons, factories, and other patterns scattered throughout the code, and while explained in many places on the web, this is the book that really started it all
**Modern C++ Design - Andrei Alexandrescu
***Introduction to Template Metaprogramming. If you get anywhere near the boost library, it's a good idea to know what's going on under the hood.
CT Project Overview

__NOTOC__
This article is supposed to document already translated Knowledge Base articles and those where the translation is in progress. It is connected to the Community Translation Project.
It is currently pseudo-alphabetic, which means, that all articles starting with A are in the subsection A, but that the subsection itself is only very loosely sorted.
The overview needed to be split in half and is now located at CT Project Overview/1 and CT Project Overview/2. Use the navigation bar on top and bottom of the two pages (as well as here) to navigate:
Category:Localization
Calas Galadhon Microcontinent

A125 or Callas Galadhon is the temporary name of a Microcontinent found at Coordinates 791-793/1340-1343, Grid Sector G13, Northern Ocean, close to IGBC Continent. It is made of 11 sims and is compact.
This microcontinent has low stone mountains and endless forests, while in other places water vegetation covers large swamps. There are also many paintings visible. This microcontinent is ideal for recreation in nature and in its club. There is a lot to visit and no restricted access.
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Oceans
Calleta Monorail

Calleta Monorail is a new multisim railway system, created in Calleta City, Heterocera.
In summer 2014, Ralf Halfisch railway complex vanished from its previous location (close to Anilis) and moved in Calleta City. The result was an economic boom for the city, highly affected by the death of West Atoll Railroad. Many parcels from Columbia, Cecropia and even Calleta were included into this great rail project. Construction advanced very fast.
There are actually two monorail branches and a railway. All 3 have the same terminal station, close to a harbor. The first monorail connects this harbor with Calleta sim Union Station, in Calleta. The second one, moves to West, to Cecropia, where it stops at TV Tower, close to GSLR tracks. The railway is connected to main rail network in Columbia. Monorail lines are elevated, except for small parts of their routes. They use the same model of track used in some parts by East River Railway and use vehicles similar to those existing on Second Norway Railway or German Railway, with a modern design. 
The other Monorails on the grid use suspended vehicles, but Calleta Monorail uses a wide track.
Automated Transportation is present. There are trains moving on the two monorail lines. No vehicle is currently driving on railway. Also, at every hour, a ferry is connecting the harbor with Purple Docks. The connection to Calleta Sim Union Station is very important, because it connects the monorail system with entire network system of Heterocera, with GSLR, with SLGI Trains and Yava Script Pods that transit the area.
NOTE: Calleta Monorail was removed during the transformation of Calleta City Airport to Smugglers Port in late 2017.
== See also ==
Second Life Geography
List Of Railways
Calleta City
Heterocera
Calleta Union Station

Calleta Union Station is a central connection point linking all of the major transportation centers with the gateway to the Heterocera continent. It is located in Calleta, which is the central hub of Calleta City.
== History ==
Calleta Union Station was originally developed in early 2014 as an 1890's themed urban grunge station to fit in with the overall theme of the Calleta area. In early 2018, the station changed hands and was renamed Smugglers Calleta Station and operated in partnership with what was then known as Smugglers Port. 
The station theme was updated to a 1940's style theme and transformed to better integrate with Smugglers Port and other areas around Calleta.
In November of 2019, the station was changed back to the original name of Calleta Union Station as Smugglers Port changed ownership and was renamed to Port Calleta.
Calleta Union Station and Port Calleta continue to operate as a joint transportation hub serving the southwest area of Heterocera, also known as Calleta City
== Facilities ==
Facilities at Calleta Union Station include:
* 1940's themed passenger rail station.
* Rail stand with rail lines connecting the GSLR and SLRR mainlines.
* Warehouse and garage rentals for freight services.
* Extensive underground tunnel system connecting several facilities in Calleta and Cecropia regions.
* GFS Fuel System for trains passing through the station.
* Mini mart and Tigerfuel (GFS) station at the Calleta West Annex.
* Marina with three boat slips.
== Services ==
GTFO (Get The Freight Out) Hub.
Ana Infinity tour cars make regular stops at the station.
Other private rail services also make frequent stops here.
== Group Affiliations ==
Calleta Union Station is affiliated with several Second Life® based groups:
* Port Calleta
* IAPS in SL (Institute of Avatar Passenger Science in Second Life)
* Drivers of SL
* RTCSL (Rail and Train Center of SL)
* Get The FREIGHT Out! (GTFO!)
Camera-based Input

On the SLDev mailing list, Philip Linden asked: "Has anyone here worked with camera-based gesture recognition before? How about OpenCV? Is OpenCV the best package for extracting basic head position/gesture information from a camera image stream? Merov and I are pondering a Snowglobe project to detect head motion from simple cameras and connect it to the SL Viewer."
Philip added a specific project proposal for first phase Gesture Recognition. Linden Lab's goal is to have an intern work this summer to achieve a first step of simply using a regular camera (no markers or other hardware) to enhance the visual commmunication of the avatar by triggering gestures and head movement in response to what the camera sees. Community help with this project is welcome!
A very long thread followed:
sldev thread about camera-based gesture recognition
Quick Summary:
Several replies immediately followed that suggested hardware options beyond a normal webcam. These mainly included 3D cams and remote sensors. The discussion thread continued into details of what to expect from different device drivers. The details ranged from ability to track eye gaze to comments about the device's user-friendliness. Later on in the discussion, several people described needs on the interface, and this discussion quickly went into generic and universal interface design. As the thread quited down, at least a few people seemed to agree that a simple generic interface is a good start point. More specifically, one that can use input from a normal webcam, recognize a few common gestures, and play the related avatar animation much like one now can type /yes or /no and have the head nod. It was also mentioned that the simple interface would not require server changes to implement. Further discussion points out the distinction between SL gestures and human gesture and suggests that basic tracking is the low-hanging fruit rather than a simple interface.
----- 
I tried hooking up a webcam head tracking system to the joystick input of SL, via the utility faceapi2ppjoy. Worked fine, but my attempt to track the viewport based on my head position made me nauseous. ;-)
-- Latha Serevi, March 2010
------
Category:Snowglobe
Camera following prim

= Introduction =
A reasonably simple demo of a prim that follows your camera around (as long as you are wearing the special attachment that makes it work). This was inspired by a request for a light that would follow the camera around, but can be used for all sorts of other things as well. Presumably.
= Usage =
To use these scripts, stick the CameraMaster script into the root prim of an object, and wear that object. (Anywhere on the body; wearing it as a HUD attachment hasn't been tested.) Then stick the CameraFollowerPrim script into the prim that you want to follow your camera around (it should be a non-physical prim; phantom is probably also a good idea). As you move your camera around (alt-click and so forth, you know), the prim will follow the camera-point around (which can, for obvious reasons, make it hard to see the prim!).
= Limitations and Notes =
The prim that moves will move rather jerkily, but very fast. Smoother (but generally slower) motion could be gotten by making the moving prim physical, and using llMoveToTarget rather than llSetPos. If you prefer smoother motion for some reason. I haven't tried that variation, but it ought to be relatively simple.
You can change the channel that the scripts use to communicate, and the frequency with which it updates the prim's position, by altering the obvious constants in the code. You can also make the moving prim go to some offset from the camera position, rather than right on the camera position itself (a meter above it, say) by changing OFFSET in the follower script (to, say, <0,0,1>).
To make the prim stop following your camera, detach the attachment.
= The Code =
You may do anything you like with this code, without limitation. As far as I'm concerned. As long as it's not anything mean. You shouldn't be mean.
The CameraMaster (for the attachment):
// Put this in an attachment and it will continuously broadcast your camera position
float DELAY = 0.5;
integer CHANNEL = -85847;
default
{
 attach(key id)
 {
 if (id != NULL_KEY)
 llRequestPermissions(id, PERMISSION_TRACK_CAMERA);
 else
 llSetTimerEvent((float)FALSE);
 }
 run_time_permissions(integer perm)
 {
 if (perm & PERMISSION_TRACK_CAMERA)
 llSetTimerEvent(DELAY);
 }
 timer()
 {
 vector cameraPosition = llGetCameraPos();
 llRegionSay(CHANNEL, (string)cameraPosition);
 }
}
The follower, for the moving prim:
// Put this in a non-physical prim, and it will move to (an offset from) places that it hears about.
integer CHANNEL = -85847;
vector OFFSET;
integer listenHandler;
init()
{
 llListenRemove(listenHandler);
 listenHandler = llListen(CHANNEL, "", NULL_KEY, "");
}
default
{
 on_rez(integer start_param)
 {
 llResetScript();
 }
 changed(integer change)
 {
 if (change & CHANGED_OWNER)
 llResetScript();
 }
 state_entry()
 {
 init();
 }
 listen(integer channel, string name, key id, string message)
 {
 key owner = llGetOwner();
 key otherOwner = llGetOwnerKey(id);
 if (otherOwner != owner)
 return;
 vector destination = OFFSET + (vector)message;
 llSetRegionPos(destination);
 }
}
Camp

=How To Camp / What Is Camping?=
Camping is when somebody pays you to sit (or dance, or sweep the street, or wash the windows ...) at their land; the longer you stay the more you earn. Typical rates are L$1 per five to twelve minutes. At today's exchange rate, you would need to camp for at least 23 hours to earn one U.S. dollar.
Camping typically happens in shops, malls and clubs, and the reason it occurs is that the owners want to make their place seem more popular than it really is. Statistics on sites' traffic are published regularly, e.g. on the "popular places" tab of the Search window, and the owners are paying you (the camper) to help them cheat the system. Don't feel too bad about camping, though: everyone has done it for some amount of time, at least when they were newbies.
Camp/ru

= Что такое кэмпинг? =
Кэмпинг - это когда кто-то платит вам за то, что вы сидите (танцуете, подметаете улицу, моете окна и т.д.) на его земле. Чем дольше вы это делаете, тем больше вы заработаете. Чтобы заработать один игровой доллар обычно уходит от пяти до двадцати минут. При сегодняшнем обменном курсе вам потребуется около 24 часов кэмпинга чтобы заработать один доллар США.
Кэмпинг обычно практикуется в магазинах, на рынках, в клубах. Владельцы этих мест таким образом достигаают того, что место выглядит популярным. Статистика локаций (traffic) регулярно публикуется, в частности во вкладке "популярные места" ("popular places") в окне поиска, и владельцы платят за кэмпинг чтобы поднять популярность своей локации. Не стесняйтесь заниматься кэмпингом, если нужны средства. В конце концов, все были когда-то новичками и зарабатывали таким образом.
Однако, у кэмпинга есть и недостаток: это далеко не самое интересное и продуктивное занятие в игре. Ведь в SecondLife ежеминутно происходят интересные события, существует множество локаций, которые можно посетить и людей, с которыми можно встретиться. Так что не злоупотребляйте кэмпингом.
CampFire Script

Here's a nifty little script I created to give a campfire the appearance of flickering flames. To use, simply drop the script, along with a sound of choice, into a prim in the campfire and watch it glow!
<lsl>
// Created 09-26-2010 by JC Jones, SL name JC Zepp. Feel free to distribute or modify, but leave the header intact and leave the script full permissions. DO NOT RESELL THIS SCRIPT AS IS.Feel free to donate to JC Zepp inworld if you find this script useful. To use simply drop this script into a prim in your campfire along with a nice fire crackle sound. put the name of your sound in the script where indicated 
default
{
 state_entry()
 
 {
 
 llPlaySound("put your sound name here", 0.25);
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.55, 7.20, 0.65]);
 
 {
 
 llSetTimerEvent(0.05);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.5, 7.8, 0.25]);
 
 {
 
 llSetTimerEvent(0.12);
 }
 
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.55, 6.8, 0.35]);
 
 {
 
 llSetTimerEvent(0.08);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.45, 8.0, 0.15]);
 {
 
 llSetTimerEvent(0.12);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.50, 7.0, 0.45]);
 
 {
 
 llSetTimerEvent(0.10);
 }
 
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.65, 8.0, 0.25]);
 
 {
 
 llSetTimerEvent(0.08);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.50, 7.5, 0.55]);
 
 {
 
 llSetTimerEvent(0.08);
 
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.45, 7.0, 0.25]);
 
 {
 
 llSetTimerEvent(0.12);
 }
 
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.6, 8.0, 0.35]);
 
 {
 
 llSetTimerEvent(0.08);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.40, 7.0, 0.15]);
 {
 
 llSetTimerEvent(0.12);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.65, 8.50, 0.45]);
 
 {
 
 llSetTimerEvent(0.10);
 }
 
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.55, 7.50, 0.25]);
 
 {
 
 llSetTimerEvent(0.08);
 }
 llSetPrimitiveParams([PRIM_POINT_LIGHT, TRUE, <1, 0.5, 0>, 0.45, 8.90, 0.55]);
 
 llResetScript();
 } 
 
}
</lsl>
Can we have sex

Sure you can -- cybersex is quite common around here. Remember, if you're reading this notecard, you're an adult, and everything is allowed here between consenting adults. You should stick to areas, though (learn more about maturity ratings). Be warned, while cybersex is mostly done through chatting, most people also use all sorts of visual props -- many of those who "animate" your avatar, and the triggers for those animations are inside "pose balls", usually found on furniture. Blue is for male avatars, pink for female avatars, but some creators tend to use other colours as well :)
Also, respect people's lifestyles. You'll see all sorts of sexual behaviour here -- don't be too harsh in judging others. Remember, anything is fair between *consenting adults*, and we're quite a lively bunch in SL :)
Capabilities

The viewer (and other client applications) can request capabilities from the simulators to gain access to certain features.
* Map from public URL to private URL
** e.g. https://sim1001:12041/cap/uuid1
* Cap set 
:<map>
 <key>Asset upload</key>
 <uri>URI1</uri>
 <key>Seed capability</key>
 <uri>URI2</uri>
</map> 
* Viewer knows public URL
* Internally, backbone stores both public and private URL
Flow for getting capabilities
* Viewer contacts login server requesting a particular capability
* Login server contacts sim
* Sim contacts backbone, sending a private uri corresponding to an action or service
* Backbone generates and returns a public uri corresponding to the private uri
Notes:
* Do not rely on the form of a capability, other than it must be or . Capabilities from the same source needn't point to the same host or port, and the path needn't start .
* To get a list of the capabilities that the latest Second Life client is requesting, use this commandLinden Lab moved from BitBucket to GitHub; this is the updated link.:
curl https://raw.githubusercontent.com/secondlife/viewer/contribute/indra/newview/llviewerregion.cpp | grep 'capabilityNames.append' | sed -E 's/(.*)"([[:alnum:]]+)"(.*)/\2/g'
See also: Tao Takaishi's blog discussion of capabilities
: Some of the capabilities are listed on Current Sim Capabilities.