nyuuzyou/wikis huggingface dataset:
UnPackerAll

=====Will Unpack all items of a box=====
// script created by SpiritWolf Chikuwa
//
// /!\ PUBLIC DOMAIN /!\
// You can Copy/Mod/Trans 
// Please, do not resell this script and give it full perm
// Just please leave this header intact
//
// Minor changes: (insert your name here and delete this comment if you do any mod of this script, thank you)
//
// Script start here:
list gInventoryList;
list getInventoryList()
{
 integer i;
 integer n = llGetInventoryNumber(INVENTORY_ALL);
 list result = [];
 for( i = 0; i < n; i++ )
 {
 result += [ llGetInventoryName(INVENTORY_ALL, i) ];
 }
 return result;
}
default
{
 state_entry()
 {
 gInventoryList = getInventoryList();
 }
 touch_start( integer n )
 {
 
 integer i;
 for( i = 0; i < n; i++ )
 {
 llGiveInventoryList(llDetectedKey(i), llGetObjectName(), gInventoryList );
 
 }
 }
 changed( integer change )
 {
 if ( change == CHANGED_INVENTORY )
 gInventoryList = getInventoryList();
 }
}
// llGetInventory number and name will scan all objects on the box.
// llGiveInventory will give you the content.
// See also llGetInventory and llGiveInventory on LSL Wiki for further informations.
Category:LSL Examples
Unassociated Sims

Unassociated sims are large groups of sims that cannot be grouped into a continent, microcontinent or sim cluster. They have an average sim density and the sims that form them are not disposed into a Geometrical pattern (square, diagonal, lines). These kind of structures form the space between sim clusters or microcontinents. They are a common feature of all Second Life oceans. An estimation is that the unassociated sims are about 30% of the total private-owned sims.
It is impossible to make a map or a list of unassociated sims. Also, it is very difficult to group these structures.
== Origins ==
Some unassociated sims are a result of degradation of a former sim cluster or microcontinent. This process is common when an estate is running out of money and needs to abandon part of its sims. Some of them are formed another way, by creation, deletion and movement of sims.
== Land ==
Unassociated sims may belong to larger estates that own microcontinents and sim clusters, but usually they are owned by small estates that own only one or a few sims. This is why they offer the highest variety. It is possible that near a dark vampire sim to find a large park with flowers and near an oasis of recreation to discover an adult erotic place.
Also, unassociated sims offer the highest diversity of Geographical features, that includes mountains, hills, plains, plateaus, submerged land, tunnels, caves, skyboxes and any possible thing. Vegetation varies up to unpredictable limits.
== Features ==
Unassociated sims are different from other structures on map. Private Land Geography Research shows important differences in percentage. For example, Gorean Sims are found more often, while the tropical beach paradise is more rare then on grouped map structures.
== Position ==
It is impossible to group all unassociated sims. Small grouping can be done into sim groups or sim cousters, but their borders are not clear and everybody might fix other borders. However, unassociated sims are a lot more frequent in some parts of the grid and cannot be found in other parts. See Oceans (and the links to each ocean) for more info.
== Number ==
They are 30% of all private-owned sims, that means about 6000 sims. This is comparable to all Linden-owned land. At such a great number, they should be treated with respect, but it will never be possible to make a complete article about them. Additional data can be obtained from Gridsurvey. Gridsurvey has information about all existing sims and even for vanished sims, including Coordinates that can help find the current position of that sim. From there, you can see pictuers token on almost every sim on Snapzilla (sometimes even from places with restricted access and also with useful information). Another useful link is SLuniverse.
== See also ==
Continent
Subcontinent
Microcontinent
Isolated Sim
Transcontinental Channels
Sim Cluster
Sim Group
=== Lists ===
List Of Continents
List Of Microcontinents And Sim Clusters
Oceans
Second Life Geography
Underpants

=== Feature Design Document ===
Underpants is Clothing. Underpants can be wholly or partially covered by Pants, a Dress, or a Jacket.
=== 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)
Undershirt

=== Feature Design Document ===
Undershirt is Clothing. The undershirt can be wholly or partially covered by a Shirt or Jacket. Transparent portions of the undershirt will show the current Skin.
=== 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)
Undine - WWII Microcontinent

Undine - WWII is a Microcontinent with transitory name A103. Its Coordinates are 691-694/904-909, Grid Sector F9, Western Ocean. It is made of 13 sims.
== Geography ==
South part is more elevated, central part is covered by water and North part is different. Mountains are present in South.
This is a military land. In South, there are both a Soviet base and an American base. In North, there is the base of the Afrika Korps (WWII means World War II) and there is the highest mountain (60 meters) near a railway.
== Land Status ==
Flying is not allowed.
Even if this is a military land, access is opened for public anywhere.
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Unescape

Takes a string and unescapes "\" style escape codes
Code 	Replace
\\ 	\
\" 	"
\s 	single space
\n 	new line
\t 	4 spaces (tab)
\uxxxx 	xxxx is a 4 char hex string, of the unicode character 0000xxxx
\Uxxxxxxxx	xxxxxxxx is am 8 char hex string, of the unicode character xxxxxxxx
\hXxxx... 	X is a hex character, it's value is the number of pairs of hex characters that follow it, xxx is a raw byte array of utf-8 characters, be sure they are valid characters
//===================================================//
// Combined Library //
// "Jan 2 2008", "04:48:12" //
// Copyright (C) 2004-2007, Strife Onizuka (cc-by) //
// http://creativecommons.org/licenses/by/3.0/ //
//===================================================//
//{
string Unescape(string a)//Mono Safe, LSO Safe
{
 string b = a;
 integer c = -1;
 integer d;
 integer e;
 integer f = 0; 
 string g;
 while(d = (-~(llSubStringIndex(b, "\\")))) //" //wiki highlighter bug
 {
 c += d;
 if(2 < (e = llSubStringIndex("uUhts\"q\\n",llGetSubString(b,d,d))))
 a = llInsertString(llDeleteSubString(a,c, (-~(c))), c, llGetSubString(" \"\"\\\n",e * (e != 3), e));
 else if(e==2)//hx[11,22,33,44,55,66,77,88,99,AA,BB,CC,DD,EE,FF]
 {
 if((f = llStringLength(b)) <= ((d) - ~(e = ((integer)("0x"+llGetSubString(b,(-~(d)),(-~(d)))) << 1))))
 {
 e = (f - d) & -2;
 b += "0";//a pad may be needed.
 }
 g = "";//flush the buffer.
 if((f = e))//this may look like a mistake, it's not
 {
 do
 g = "%"+llGetSubString(b,d + e, ((d) - ~(e))) + g;
 while((e -= 2));//(e-=2) > 0, e should always be even
 }
 a = llInsertString(llDeleteSubString(a,c, 2 + f + c),c, g = llUnescapeURL(g));
 c += (~-(llStringLength(g)));//add to c so we don't accidentily unescape result
 }
 else if(~e)// \uXXXX or \UXXXXXXXX
 {
 a = llDeleteSubString(a, c, ((e = 4 << e) - ~(c)));
 if(0 < (e = ((integer)("0x"+(llGetSubString(b, (-~(d)), d + e))))))
 {
 f = llCeil((llLog(e) / 0.69314718055994530941723212145818));
 f = (e >= 0x80) * ((f) + ~((((1 << f) - e) > 0))) / 5;//adjust
 g = "%" + byte2hex((e >> (6 * f)) | ((0x3F80 >> f) << !f));
 while (f)
 g += "%" + byte2hex((((e >> (6 * (f = ~-f))) | 0x80) & 0xBF));
 a = llInsertString(a, c, llUnescapeURL(g));
 }
 }
 b = llDeleteSubString(a,0,c);
 }
 return a;
}
string byte2hex(integer x)//Mono Safe, LSO Safe
{//Helper function for use with unicode characters.
 integer y = (x >> 4) & 0xF;
 return llGetSubString(hexc, y, y) + llGetSubString(hexc, x & 0xF, x & 0xF);
}//This function would benefit greatly from the DUP opcode, it would remove 19 bytes.
string hexc="0123456789ABCDEF";
//}
//Testbed
default
{
 state_entry()
 {
 llOwnerSay((string)llGetFreeMemory());
 string a = "-\\h3414243\\h3444546\\\"\\uFFFD";
 string d = Unescape(a);
 llOwnerSay(llList2CSV([a, d]));
 }
}
Ungewöhnlich strenge Firewalls verhindern Teleportieren

__NOTOC__
Wenn Ihre Firewall den ausgehenden TCP-Port 12043 blockt, können folgende Fähigkeiten nicht genutzt werden:
:* Teleportieren
:* Anzeigen der Weltkarte
:* Durchqueren von Regionen
:* Ähnliche Aktivitäten 
Ursache hierfür ist, dass mit Second Life 1.13.2 Fähigkeiten bereitgestellt wurden, welche für die Kommunikation mit unseren Servern ausgehenden Traffic erfordern.
Bislang tritt dieses Problem nur sehr selten und nur in Verbindung mit ungewöhnlich streng eingestellten Firewalls auf. Es sollte den Großteil der Einwohner also nicht betreffen. Die Chancen stehen somit gut, dass dieses Problem bei Ihnen nicht auftritt. Sollte es jedoch auftreten, beachten Sie die folgenden Hinweise:
Um das Problem zu beheben, müssen Sie Traffic auf dem ausgehenden TCP-Port 12043 zulassen.
Bestimmte Firmenfirewalls, die alle ausgehenden TCP-Verbindungen blocken, müssen entweder:
# ausgehende Verbindungen zu diesem Port auf unseren Netzen öffnen;
# diese Verbindungen so handhaben, wie sie auch anderen HTTP- und HTTPS-Traffic handhaben (theoretisch durch Umleiten an einen Proxy).
Weitere Informationen zu Firewalls finden Sie unter:
:* Wie konfiguriere ich meine Software-Firewall?
:* Wie konfiguriere ich meine Hardware-Firewall? 
Für spezielle Hinweise beachten Sie bitte auch die Bedienungsanleitung Ihrer Firewall.
Weitere technische Details über Fähigkeiten, auch als „Sim-Caps” bezeichnet, finden Sie im offiziellen Linden-Blog-Beitrag „A big change you'll barely notice” (Sie werden's kaum bemerken) von Zero Linden.
Unicode In 5 Minutes

== Writing ==
Unicode is a standard for digital processing of written characters and text. By enabling the exchange of text data internationally, it is a foundation for global software.
== Characters ==
Unicode encodes characters, the smallest components of written language that have semantic value. It assigns each one a unique code point, or number. Code points are expressed as U+n where n is the number in hexadecimal.
== Variations ==
Unicode does not encode font or stylistic differences. For example, most forms of the lower case 'a' are the same code point, U+0061. However, for compatibility with other systems, variants are sometimes given independent code points.
== Allocation ==
The full Unicode codespace supports over a million code points, of which about 100k are currently assigned. The vast majority of characters used in modern languages are allocated within the first 65,536 code points, called the Basic Multilingual Plane. Notably, the first 128 code points are the same as ASCII.
== Encoding ==
For Unicode text to be transmitted or stored, it must be encoded into a sequence of bytes. UTF-8 and UTF-16 are common encodings that can handle the entire range of characters. Both are variable length encodings where some characters take more bytes than others.
ASCII, LATIN1 and SJIS are common encodings that are outside of Unicode. They cannot encode all characters. ASCII has the interesting property that all ASCII sequences are valid UTF-8 sequences and encode the same characters.
== Normalization ==
For a large variety of reasons, some texts can be represented in Unicode with more than one character sequence. Depending on the intended processing, text may need to be normalized into a particular style of sequence. For example, people expect the word "file" to sort and compare the same no matter if the first two letters are represented as two characters, or as a ligature. Unicode defines normal forms to convert text into a regularized form for text processing.
== Fun ==
The Unicode Standard is a fascinating document with many interesting write-ups about various writing systems, and pictures of fantastic characters. These are a few of my favorites.
----
* Peace in every language can be found at http://www.columbia.edu/~fdc/pace/
* More fun characters can be found at: http://www.inference.phy.cam.ac.uk/cjb/codepoints.html
* The Unicode web site has the freely available full standard, and wonderful code charts. Chapters 7 through 14 of the standard have interesting background information on each writing system supported.
* You can explore Unicode on your own computer:
** Linux: Try the application Gucharmap. In Ubuntu: Applications menu > Accessories > Character Map
** Mac OS X: In almost any application that has text, at the bottom of the Edit menu, choose Special Characters...
** Windows XP, Vista or 7: Run Character Map: Start menu > All Programs > Accessories > System Tools > Character Map
* Thanks to Poppy Linden for introducing me to Spidery Ha
- Zero Linden
- Edited by Elite Runner
== See also ==
* Awesomize your profile with Unicode and ASCII art
Unit tests

== Why unit test? ==
To reduce the amount of risk associated with refactoring legacy code, and to prove the functionality and interface of new code, use unit tests.
In an environment where the code base is highly interdependent, rapidly changing, and expected to provide consistent functionality across years of use, unit tests are one of the few reliable and scalable ways to ensure the code continues to function across time and platforms.
Unit tests facilitate and provide:
* Confidence when changing a component that the end behavior is consistent or changes are detected and addressed appropriately.
* A wide variety of code examples for using our classes and functions.
* Confidence that the code continues to function across third party library, system library, or system image upgrades.
== Our Frameworks ==
We have several types of unit tests, each with their own mechanisms.
* Project-level C++ unit tests
* System-level C++ unit tests
* Project-level python unit tests
* System-level python unit tests
* (more?)
Details on how to run, write, and build each are as follows.
=== Project-level C++ unit tests ===
Please see
* How to add unit tests to C++ code
for the basic tutorial. For a step-by-step narration, please see
* C++ Unit Testing - How It Works
* C++ Unit Testing - Case Study
* C++ Unit Testing - FAQ
=== System-level C++ unit tests ===
This method of unit testing is deprecated. Please migrate any tests you have in indra/test/ using the project-level C++ test method. If you can't do that, consider making the test into an integration test.
We have a set of tests located in indra/test which are built and run automatically as the tests_ok target in the cmake build.
The test framework is currently only set up to test the library functionality.
We use the TUT Framework since it requires no runtime library, and was incredibly simple to integrate.
There are special linden enhancements to the tut framework available in indra/test/lltut.h.
=== Project-level python unit tests ===
Documentation forthcoming.
=== System-level python unit tests ===
These are started by indra/test/test.py.
== When to write unit tests ==
Write tests under any or all of these conditions:
* After writing your functionality declaration but before implementation. At this point, all tests will fail, and you know you are done when all tests pass. 
* After you believe a class or library is complete. This is a good time to explore the edge cases.
* When a bug has been reported, and you need to make the smallest possible piece of code which exposes the bug.
Thanks for testing!
== Need to change the framework? ==
There's a testplan and code to help you test your changes at How to test unit test infrastructure changes.
== Useful Links ==
* The LL Unit Test page
* The tut framework doc
* Exploring the C++ Unit Testing Framework Jungle
* Working Effectively with Legacy Code by Michael Feathers: Much of that book discusses techniques for minimizing the risk of teasing apart difficult classes in order to test them.
Category:Automated Testing
Universal Attribute Changes for Pathfinding

= Introduction =
Setting up a region for pathfinding can be time consuming. To make the process faster, we've added a new Region Debug Console command to bulk-update the pathfinding properties of objects in a sim. This new command is called 'update-pathfinding-objects'.
Warning: Please read the instructions before running update-pathfinding-objects in your region. While this command is reversible in the sense that all specified objects can be set back to 'movable obstacle' or similar, it is theoretically possible to permanently break certain scripted objects.
= How to update objects =
* Login to the region you wish to update
* Enable the Develop menu in Viewer Preferences, by enabling Preferences -> Advanced -> Show Develop Menu.
* Open the Region Debug Console. Either use the keyboard shortcut CTRL+SHIFT+~, or open via the menu: Develop -> UI -> Region Debug Console
* At the console's prompt, type 'help update-pathfinding-objects', and review the available options. Here are the options at the time of writing:
 > help update-pathfinding-objects
 update-pathfinding-objects [region|parcels|group_parcels|owner|linden] [unscripted|scripted|all] [walkable|obstacle|movable]
 Bulk mode change for objects in this region.
 region: all objects in the region (requires EM status), parcels: all objects in parcels you own,
 group_parcels: all objects in parcels owned by your active group, owner: all objects owned by you in the region,
 linden: all unscripted Linden Content in region (requires admin privileges) set walkable.
 Note that phantom, dynamic, temporary, and llSetKeyframedMotion-animated prims are never updated.</pre>
* Type the command that matches what you want. The console will provide feedback about how many objects were actually changed by the command:
 > update-pathfinding-objects parcels unscripted obstacle
 Set 7 objects to obstacle.
* After you are done, press the viewer's "Rebake region" button to apply the changes to the navmesh.
= Notes =
* This command does not affect the following types of objects
** Phantom (so movable phantom, material volumes, and exclusion volumes are never affected)
** Physical
** Temp-on-rez
** Volumedetect
** Pathfinding characters
** Objects worn as attachments
* As always, be careful when you apply changes to scripted objects. If a scripted object is set to obstacle or walkable via update-pathfinding-objects, any LSL calls to move an object or otherwise affect its physics shape will fail. In some cases, this may cause the script to permanently malfunction.
* Restrictions on who can run update-pathfinding-objects
** Only region owners / estate managers can change objects at the 'region' scope
** Only Lindens can use the 'linden' scope; this mode is intended to be run on mainland regions
** The 'parcels' and 'group_parcels' options only perform an action if you own any parcels in the region or if your active group owns any parcels in the region, respectively.
** Anybody can use the 'owner' scope in any region, since this scope only affects objects owned by your avatar.
----
Return to Good_Building_Practices
__FORCETOC__
University Sim Cluster

A006 or University is an unofficial name of a Sim Cluster located inside Coordinates 1147-1153/1294-1302, Grid Sector K12, Eastern Ocean. This is a place where teen estates own land, majority of them owning a single sim. Access is restricted on majority of these sims.
== See Also ==
Second Life Geography
List Of Microcontinents And Sim Clusters
Oceans
Unix2GMTorBST

__NOTOC__
== Function: string Unix2GMTorBST(integer ); ==
Convert a Unix time (time in seconds since 01-01-1970) to a date in the form Day-of-week + YYYY-MM-DD HH:MM + GMT or BST
Day-of-week will be a 3-letter day, and the string ends with "GMT" or "BST" as appropriate, with correct 1-hour adjustment for BST
e.g. Wed 2013-12-25 06:48 GMT
For a version giving output as PDT/PST see http://wiki.secondlife.com/wiki/Unix2PST_PDT
== Specification ==
// Omei Qunhua Jan 2013
list weekdays = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
// Convert a Unix time in seconds to Day-of-week + YYYY-MM-DD HH:MM + GMT or BST
string Unix2GMTorBST(integer insecs)
{
 string str = Convert(insecs);
 if (llGetSubString(str, -3, -1) == "BST") // if the result indicates BST ...
 str = Convert(insecs + 3600); // ... Recompute at 1 hour later
 return str;
}
// This leap year test is correct for all years from 1901 to 2099 and hence is quite adequate for Unix Time computations
integer LeapYear(integer year)
{
 return !(year & 3);
}
integer DaysPerMonth(integer year, integer month)
{
 if (month == 2) 	return 28 + LeapYear(year);
 return 30 + ( (month + (month > 7) ) & 1); 		// Odd months up to July, and even months after July, have 31 days
}
string Convert(integer insecs)
{
 integer w; integer month; integer daysinyear;
 integer mins = insecs / 60;
 integer secs = insecs % 60;
 integer hours = mins / 60;
 mins = mins % 60;
 integer days = hours / 24;
 hours = hours % 24;
 integer DayOfWeek = (days + 4) % 7; // 0=Sun thru 6=Sat
 integer years = 1970 + 4 * (days / 1461);
 days = days % 1461; // number of days into a 4-year cycle
 @loop;
 daysinyear = 365 + LeapYear(years);
 if (days >= daysinyear)
 {
	days -= daysinyear;
	++years;
	jump loop;
 }
 ++days;
	
 for (w = month = 0; days > w; )
 {
	days -= w;
	w = DaysPerMonth(years, ++month);
 }
 string str = ((string) years + "-" + llGetSubString ("0" + (string) month, -2, -1) + "-" + llGetSubString ("0" + (string) days, -2, -1) + " " +
	llGetSubString ("0" + (string) hours, -2, -1) + ":" + llGetSubString ("0" + (string) mins, -2, -1) );
 string GMT_BST = " GMT";
 integer LastSunday = days - DayOfWeek;
 // BST is from the last Sunday in March to the last Sunday in October
 if (month == 3 && LastSunday > 24) GMT_BST = " BST";
 if (month > 3) GMT_BST = " BST";
 if (month == 10 && LastSunday > 24) GMT_BST = " GMT";
 if (month > 10) GMT_BST = " GMT";
 return (llList2String(weekdays, DayOfWeek) + " " + str + GMT_BST);
}
== Example ==
default
{
 state_entry()
 {
	llSay(0, Unix2GMTorBST(llGetUnixTime() ) );
 }
}