nyuuzyou/wikis huggingface dataset:
Give InvItem every n hours

This script will give an inventory item on touch only every n hours, even if somebody touches the object more than once.
// Idea and written by Criz Collins
// Don't sell this FREE script!!!
string giveitem = "name of item in objects inventory";
float giveevery = 24; // hours!
/////////////////////////////////////////////
list visitors;
list lastsent;
integer n;
default
{
 on_rez( integer param )
 {
 llResetScript();
 }
 changed(integer change) 
 {
 if (change & CHANGED_INVENTORY) 
 {
 llResetScript();
 }
 }
 
 touch_start(integer total_number)
 {
 for (n=0; n<total_number; n++)
 {
 integer giveallowed = FALSE;
 integer index = llListFindList( visitors, [ llDetectedKey(n) ] );
 if (index == -1)
 {
 visitors = visitors + [ llDetectedKey(n) ];
 lastsent = lastsent + [(integer)llGetUnixTime()];
 giveallowed = TRUE;
 }
 else
 {
 if (llList2Integer(lastsent, index) <= ((integer)llGetUnixTime() - (giveevery * 60 * 60)))
 {
 list replacer = [(integer)llGetUnixTime()];
 list newlastsent = llListReplaceList(lastsent, replacer, index, index);
 lastsent = [];
 lastsent = newlastsent;
 giveallowed = TRUE;
 }
// else giveallowed = FALSE;
 }
 if (giveallowed)// == TRUE
 {
 llGiveInventory(llDetectedKey(n), giveitem);
 }
 }
 }
}
Criz Collins 11:14, 11 June 2008 (PDT)
Give random object

== Yes, the random object giver ==
Place this in an object with a big inventory (well, doesn't have to have LOTS in it) and touch to receive a random object.
//Emmas Seetan
default
{
 touch_start(integer num_detected)
 {
 // the key of the avatar touching
 key id = llDetectedKey(0);
 integer randomIndex = llGetInventoryNumber(INVENTORY_OBJECT);
 // random >> [0.0, max)
 randomIndex = (integer)llFrand(randomIndex);
 string itemName = llGetInventoryName(INVENTORY_OBJECT, randomIndex);
 llGiveInventory(id, itemName);
 }
}
Giving gifts from the Marketplace/pt

= Dando presentes a partir do Marketplace =
É fácil oferecer um presente do Marketplace do Second Life a uma amiga(o)!. No Second Life os presentes também são chamados pelo seu termo em inglês: gift.
== Comprando e enviando um presente ==
Para cada presente faça o seguinte:
* 1. Encontre um item que você deseja dar de presente no Marketplace do Second Life. Você pode descobrir itens navegando pelo site ou indo na Busca.
* 2. Na página do item que deseja dar de presente, clique em: Pôr no carrinho como presente.
* 3. Aparece a janela: Digite o nome e sobrenome SL do destinatário. Coloque o nome de quem você deseja dar um presente e clique em: Localizar residente.
* 4. Se você gostaria de incluir uma mensagem junto ao presente, digite um texto.
* 5. Clique em: Pronto.
O presente está agora em seu carrinho de compras.
=== Quando você terminar de compras:===
* 1. Clique no alto da página a direita em: Carrinho, para visualizar o seu carrinho de compras.
As compras destinadas a presentes são indicadas como: Presente para destinatário e tem um ícone de uma caixa de presente ao seu lado.
* 2. Clique em: Editar a mensagem do presente, se você gostaria de reeditar a mensagem do presente, e então clique em: Salvar.
* 3. Complete o processo de pagamento, como normalmente o faria, ou seja, clique no botão: Ir para o caixa.
* 4. Espere por uma reação de satisfação de sua amiga(o).
	
== Veja também ==
* Abrindo caixas
* Comprando no Marketplace do Second Life
Category:Ajuda Portal
Glenn's Tips for Businesses

Suggestions for getting started in Second Life
*Instead of Help Island, visit the Shelter. This is a place for new Residents run by Residents. I've always found them friendly and helpful.
*Visit Dublin, usually there are people hanging out dancing and chatting there at one of several 'bars'. But it's also a cool recreation of downtown Dublin. Likewise Diegoland (virtual San Diego) - lots of events, and a nice recreation of "old town" San Diego.
*Take advantage of the classes and support for new users at New Citizens Incorporated (NCI) - Kuula or Hamnida Islands. Check out the Events listing for other classes and events.
*Visit the International SpaceFlight Museum - built by volunteers - Spaceport Alpha
*Read some of the back issues of Second Opinion, and visit some of the Top 10 sites listed (top 10 waterfalls, top 10 gardens, etc.): Best Bets, Fab Five and Best Bets.
*Try your hand at building at the Ivory Tower Library of Primitives. Sandboxes and building tutorial sites tend to be busy and good ways to meet people.
*See the real-time US weather map at School.
*Visit Reuters to get the latest news.
*Visit Weather Channel's Weather Island and go surfing, biking or skiing (and meet others).
*Get the book "Second Life the Official Guide" - it's got lots of good suggestions of places to go and things to do in Second Life.
Gloves

=== Feature Design Document ===
Gloves is Clothing.
=== Functional Spec ===
(none)
=== Test scripts ===
(none)
=== Discussion for future improvements ===
(none)
=== Relationship to other features ===
 List of features that need to be tested when this feature changes, and why. 
(none)
=== User Guides ===
(none)
Glow Rendering FAQ

==Introduction==
In v1.15, a 'Glow rendering' experimental feature has been added to the client viewer for Second Life. This article describes what it does and how to enable it.
===What is Glow Rendering===
Glow rendering is a realtime operation whereby another pass is made on a 3d accelerator card's final output to generate a low-resolution map comprising of any items that are lit up via the 'light' parameter that can be set on Prims for local lighting or set to full-bright (i.e. simulating actual lighting), as well as natural phenomena such as the sun and moon.
The result is a simulated bloom around light sources of any sort on the grid.
===Requirements===
Glow Rendering requires a card that can handle vertex shaders in OpenGL. this would include any OpenGL-compatible, hardware accelerated 3D graphics card from the GeForce FX series onwards (or its ATi equivalent).
It is also important to note that this feature, when enabled, can cause a modest performance loss, as each frame has to impose additional calculations to add glow to lights and lit surfaces. As it is a experimental feature, not all cards may support it even if they support vertex shaders in hardware, and it may crash the client in some cases.
===How to Enable===
# Bring up the Preferences panel from Edit menu > Preferences...
# Go into Graphics Detail under Preferences.
# Look for a option named 'Enable Vertex Shaders'. If SL detects that your graphics card can support vertex shaders properly, this option will selectable, and should be checked. (Optional, but recommended) - set the Lighting Details parameter to 'Nearby Local Lights' as well for more glows in an inworld scene.
# Enable the client debug menus if they are not already enabled by pressing ctrl-alt-shift-D (Mac users sustitue Ctrl with Cmd, please)
# Go into the client Menu and select 'Debug Settings'.
#Type 'Renderglow' into the upper dropdown of the debug settings panel to call up the parameter to enable 'RenderGlow'... and change the Boolean dropdown that appears below the parameter's description to 'True'.
#Put sunglasses on your avatar, start squinting. Serve with ice lemon tea.
==Proof of Concept==
The best way to prove that a experimental feature works is to try it with stuff that might benefit from it... such as these:
* 
Logan Linden's Office : Before(left) - typical prim build, with some shiny. After(right) - notice the glow of the building. This confers it a certain additional mystique. Your mileage may vary.
--More to come--
Graphics Card
Go transparent when walking

== A what? ==
An attachment that goes invisible when you walk and when you stop walking it becomes visible again. I don't know what this could be used for, though.
key owner;
default
{
 on_rez(integer start_param)
 {
 llResetScript();
 }
 changed(integer change)
 {
 if (change & (CHANGED_OWNER | CHANGED_INVENTORY))
 llResetScript();
 }
 state_entry()
 {
 owner = llGetOwner();
 llSetTimerEvent(1.0);
 }
 timer()
 {
 integer ownerInfo = llGetAgentInfo(owner);
 if(ownerInfo & AGENT_WALKING)
 llSetAlpha((float)FALSE, ALL_SIDES);
 else
 llSetAlpha((float)TRUE, ALL_SIDES);
 }
}
GodExpungeUser

==Message Layout==
{
	GodExpungeUser	Low	NotTrusted Zerocoded
	{
		AgentData		Single
		{	AgentID		LLUUID	}
		{	SessionID	LLUUID	}
	}
	{
		ExpungeData	Variable
		{	AgentID	LLUUID	}
	}
}
==Usage and Notes==
Category:Messages
GodKickUser

==Message Layout==
{
	GodKickUser Low NotTrusted Unencoded
	{
		UserInfo		Single
		{	GodID			LLUUID	}
		{	GodSessionID	LLUUID	}
		{	AgentID			LLUUID	}
		{	KickFlags		U32	}
		{	Reason			Variable	2	}	
	}
}
==Usage and Notes==
Category:Messages
GodUpdateRegionInfo

==Message Layout==
{
	GodUpdateRegionInfo Low NotTrusted Zerocoded
	{
		AgentData	Single
		{	AgentID			LLUUID			}
		{	SessionID		LLUUID			}
	}
	{
		RegionInfo	Single
		{	SimName			Variable	1	}	
		{	EstateID		U32				}
		{	ParentEstateID	U32				}
		{	RegionFlags		U32				}
		{	BillableFactor		F32			}
		{	PricePerMeter 		S32			}
		{	RedirectGridX 		S32			}
		{	RedirectGridY 		S32			}
	}
}
==Usage and Notes==
Category:Messages
God Mode

"God Mode" is the term used to describe the enabling of administrative tools and features in the Second Life Viewer.
Although the features and menus are compiled into the viewer, if an unauthorized user attempts to enable "God Mode" via , or the Develop > Request Admin Status menu option, a dialog is displayed informing the user that "Request for special powers failed. This request has been logged." The options available to an authorized user can still be viewed via the Develop > Show Admin Menu menu option- although "God Mode" appears to be enabled, the server will not act upon any attempts to use them.
== What it can do? ==
In Linden-owned grids (such as Agni), "God Mode" enables Linden Lab employees to perform tasks entirely in the viewer, such as:
* edit land or region info
* kick or freeze avatars,
* claim land or objects to themselves
* Log everyone out of Second Life
"God Mode" also allows parcel restrictions such as "no fly" to be ignored.
== What do they use it for? ==
Linden Lab employees may use "God Mode" for many reasons, including the privacy granted from being invisible to sensors, reclaiming abandoned land and dealing with griefers.
== God Mode Levels ==
The Viewer source code shows that there are several levels of "God Mode" (each level has all the previous levels' powers):
=== GOD_NOT ===
Value: 0
Presumably the default "God Mode" status given to every logged-in user
=== GOD_LIKE ===
Value: 1
* rename objects without modify permission
=== GOD_CUSTOMER_SERVICE ===
Value: 100
* Toggle character geometry
* Take copy
* Owner To Me
* Set To Linden Content
* Claim Public Land
=== GOD_LIAISON ===
Value: 150
* Enable land auction
=== GOD_FULL ===
Value: 200
* Difference from GOD_LIAISON not apparent.
=== GOD_MAINTENANCE ===
Value: 250
* Difference from GOD_FULL not apparent.
== Footnotes ==
== Related Articles ==
* God Mode LSL Functions
GodlikeMessage

==Message Layout==
{
 GodlikeMessage Low NotTrusted Zerocoded
	{
		AgentData 		Single
		{ AgentID LLUUID }
		{	SessionID	LLUUID		}
	}
	{
		MethodData 	Single
		{	Method		Variable 1 }
		{	Invoice		LLUUID	}
	}
	{
		ParamList		Variable
		{	Parameter	Variable 1 }
	}
}
==Usage and Notes==
Category:Messages
Good - Evil Microcontinent

A160 is the temporary name of this Microcontinent. It is located inside Grid Sector I9 (but has a sim in H9), in Western Ocean, South to Caledon - Winterfel and West to Estate Continent. The name Good - Evil is not official, it comes from the name of the sims. Coordinates are 899-903/947-949.
== Structure ==
It is formed of 11 sims and have a compact shape. There are two sims named Good and Evil, one close to the other. The other sims have more evil names then good names.
== Geography ==
All landscape is dark-urban, with almost no water and no unbuilt land. Inhabited Land is 100% here. There are a lot of buildings, partially abandoned, streets, tunnels and garbage. Night is fallen forever over this land. Don't expect to find flowers here, more likely you will find toxic waste and war zones.
== Land Status ==
The microcontinent is a large roleplay and combat area. 
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Oceans
Good Building Practices

Getting Started 
Topics from the Second Life Knowledge Base for new builders who want to learn how to create content in Second Life.
* Using the Build Tools - How to create simple objects using the 3D modeling tools provided in the Second Life Viewer.
* Building tips - General tips that may help new content creators.
* Uploading assets - How to upload textures, sounds, animations and more.
* Object permissions - An overview of the object permissions system and how to set next-owner permissions on your creations.
* How to move a build - Tips on how to move a large, multi-object build from one place to another.	
 Getting Started 
Topics from the Second Life Knowledge Base for new builders who want to learn how to create content in Second Life.
* Using the Build Tools - How to create simple objects using the 3D modeling tools provided in the Second Life Viewer.
* Building tips - General tips that may help new content creators.
* Uploading assets - How to upload textures, sounds, animations and more.
* Object permissions - An overview of the object permissions system and how to set next-owner permissions on your creations.
* How to move a build - Tips on how to move a large, multi-object build from one place to another.	
 Featured Article 
{|
	
=== Build Tools ===
Get started with building in Second Life by learning the basic Build Tools described in this article. Even if you don't plan to become a master builder, these tools are essential for placing, moving, and rotating objects in the Second Life world.
 Learn more...	
__NOTOC__
= Resident contributions awaiting official approval =
If you'd like to contribute some of your own best practices for efficient content creation, please link to them in this section so that Linden Lab subject matter experts can verify them before they are added to the official guide.
Google

Google Inc. is a major advertising company, although most commonly known for their search engine.
Linden Lab purchased a Google application for the Second Life search.
Linden Lab participated as a mentor for the Google Summer of Code in 2008 and 2009.
See also the Google Summer of Code/Linden Lab entry, as well as the result of 2008th Summer of Code: Mesostructures.
== Related Links ==
*Homepage: Google.com
*Wikipedia article on Google
Google Charts

This script allows you to take an existing list of values and represent it as a chart using Google's Chart API. The example here takes a list of visitors per hour and represents it as a bar chart. The simpleEncoding method provided by Google has been converted to LSL script.
Example
string simpleEncode(list values, float min, float max)
{
 string text = "";
 float range = 244 / (min - max);//4 * 61
 integer index = -llGetListLength(values);
 do
 {
 integer type = llGetListEntryType(values, index);
 if(type == TYPE_FLOAT || type == TYPE_INTEGER)
 text = llGetSubString(llIntegerToBase64((integer)(range * (min - llList2Float(values, index)))), 4, 4) + text;
 else
 text = "_" + text;
 ++index;
 }
 while (index);
 return text;
}
string cleanup(float value)
{
 string str = (string)value;
 if(value >= 10.0)
 return llGetSubString(str, 0, -8);
 integer i = -1;
 while(llGetSubString(str, i, i) == "0")
 --i;
 if(llGetSubString(str, i, i) == ".")
 --i;
 return llGetSubString(str, 0, i);
}
string chartUrl(list values, list captions, integer yDivisions)
{
 integer min = llFloor(llListStatistics(LIST_STAT_MIN, values));
 integer max = llCeil(llListStatistics(LIST_STAT_MAX, values));
 string url = "http://chart.apis.google.com/chart"
 + "?chs=200x125"
 + "&chd=s:" + simpleEncode(values, min, max)
 + "&cht=lc"
 + "&chxt=x,y"
 + "&chxl=0:";
 integer index = -llGetListLength(captions);
 do
 {
 url += "|" + llEscapeURL(llList2String(captions, index));
 ++index;
 }
 while (index);
 url += "|1:";
 ++yDivisions;
 float range = max - min;
 index = 1;
 do
 {
 url += "|" + cleanup(((index * range) / yDivisions) + min);
 ++index;
 }
 while (index <= yDivisions);
 return url;
}
default
{
 state_entry()
 {
 // PUBLIC_CHANNEL has the integer value 0
 llSay(PUBLIC_CHANNEL,
 chartUrl([8,8,3,2,1,5,3,2,2,3,1,4,6,3,4,7,5,6,5,5,4,5,5,6,4], ["4AM", "4PM", "4AM"], 0));
 }
 touch_start(integer total_number)
 {
 llSay(PUBLIC_CHANNEL,
 chartUrl([8,8,3,2,1,5,3,2,2,3,1,4,6,3,4,7,5,6,5,5,4,5,5,6,4], ["4AM", "4PM", "4AM"], 0));
 }
}
Google SoC 2008

Linden Lab was accepted as a mentoring organization for the Google Summer of Code program this year. Two proposals were accepted:
* Screen-space Ambient Occlusion
** Student: Alexander Yuan
** Mentor: Runitai Linden
** Tracking issue: 
** Abstract: Screen-space ambient occlusion (SSAO) is an approximation of ambient occlusion, the idea that parts of an object which are crowded by other objects are occluded from the sky, and therefore are lit less from diffuse sky lighting. Thus, these areas should be darker than those which are more open to the sky. Traditional implementation involves raytracing and is too slow for real-time graphics. Instead, SSAO uses only surfaces which are present in screen space, and approximately calculates the concavity of a point compared to the other surfaces which have been drawn. This application proposes that SSAO should be implemented for Second Life.
* Proposal #2: Implementing a C++ library for per-pixel displacement mapping
** Student: Ravish Mehra
** Mentor: Qarl Linden
** Tracking issue: 
** Abstract: Mesostructures are fine details on the surface and its rendering has become a hot topic in computer graphics. It is chiefly due to the amount of realism and visual effects (like occlusion, self-shadow and correct silhouettes) achieved by it. Techniques most commonly used in games and implemented in most game engines are Normal mapping, bump mapping which are not able produce such rich visual effects. The most traditional technique proposed for rendering such fine details was Displacement mapping. But due to the large number of vertices involved this technique is very slow and no where close to real time. In recent years, this problem is being seen from a different perspective via Per-Pixel displacement mapping. This technique tries to achieve the same visual effects and realism as displacement mapping but does so in pixel domain. In recent years, lots of approaches have been proposed under per-pixel displacement mapping like Relief mapping, View dependent displacement mapping(VDM), Generalized displacement mapping(GDM), cone step mapping, sphere tracing using distance functions, pyramidal displacement mapping to name a few. The main project is to develop an easy-to use library for doing per-pixel displacement mapping. The main focus will be to provide per-pixel displacement mapping support for height field, non-height field & dynamic height field mesostructures. The effects being targeted are self shadow, silhouettes and 3D imposters.
More information about Linden Lab's participation in Google Summer of Code can be found at the Google Summer of Code/Linden Lab entry.
Google SoC 2009

Linden Lab will apply to be a mentoring organization for the Google Summer of Code program this year.
== Ideas ==
Below is a list of possible ideas for Google Summer of Code participants. The issue numbers associated with these provide more details.
* - Create a means to use an external editor intelligently for scripting in Second Life.
* - Use streaming media image-feed to drive sculpties
* - Provide a deformation editor for sculpties in the Second Life viewer
* Provide a Blender extension for visually editing sculpties
* Integrate the Cairo graphics library into the viewer so that any Cairo-supported image type (SVG, PDF, whatever) can be uploaded as an image.
Other possible ideas are available looking at the list of feature requests for the Second Life viewer. Be careful looking through this list, since many of the projects listed there are not suitable for completion as a summer project. Contact us on IRC, mailing list, or whatever works best for you if you have any questions about anything you see.
Previous years: 2008
Google Translator

Google Translator by Ugleh Ulrik
Google Translator keeps their translated data in a Array. You can see this by looking at the HTTPRequests.
The URL is this
http://translate.google.com/translate_a/t?client=t&text=words here&hl=en&sl=es
This will make it go from Spanish to English. Then all you need to do is do a string replacement.
key http_request_id;
string transtring = "";
string nothing = "";
string name;
string somestring;
string strReplace(string str, string search, string replace) {
 return llDumpList2String(llParseStringKeepNulls((str = "") + str, [search], []), replace);
}
default
{
 state_entry()
 {
 llListen(0, "", NULL_KEY, "");
 }
 
 http_response(key request_id, integer status, list metadata, string body)
 {
 if (request_id == http_request_id)
 {
 list trans1 = llParseString2List(body, ["\"orig\""], []);
 transtring = strReplace(llList2String(trans1,0), "{\"sentences\":[{\"trans\":\"", "");
 nothing = strReplace(transtring, "\",", "");
 nothing = strReplace(nothing, ",", "");
 nothing = strReplace(nothing, "\\" + "\"", "\"");
 if (somestring != nothing){
 llSay(0, nothing);
 }
 llSetObjectName("es2en Translator");
 }
 }
 listen(integer channel, string name, key id, string message)
 {
 somestring = message;
 if (name == llKey2Name(llGetOwner())){
 transtring = llEscapeURL(message);
 http_request_id = llHTTPRequest("http://translate.google.com/translate_a/t?client=t&text=" + transtring + "&hl=en&sl=es&tl=en&pc=0", [], "");
 llSetObjectName(name);
 }
 }
 
}