nyuuzyou/wikis huggingface dataset:
LlSameGroup Test

[LLSameGroupTest]
[VERSION] 0.1
[LENGTH] 00:15
[TESTERS] 1
[OVERVIEW] This test has been designed to exercise the LLSameGroup LSL function.
[SETUP] This test requires 1 Tester and rezzable land
[*]
[0010] Right-click on yourself and Select "Groups" from the pie menu, Pick a group in 
which you are an officer, and Select "Activate"
[0020] Right-click on the ground and select "Create" from the pie menu and rez a default 
sphere
[0030] In Edit, Select "More >>" if neccesary then click the contents tab, and add the 
following script.
[SCRIPT] llSameGroupowner
[0040] In edit, click the General tab, and Check the "Share with group" Checkbox, 
Click "Deed" and acknowledge
[0050] Close the edit window
[0060] Left-click the sphere
[0070] The sphere will have chatted the Groups Key
[0080] Select and copy that key
[0090] Right-click on the ground and Select "Create" from the pie menu and rez a default 
cube
[0100] In edit, in the general tab set the group to a different one than your wearing to 
create the sphere (set group) is under creator and owner
[0110] Click the contents tab and copy the following script to the contents
[SCRIPT] llSameGrouptest
[0120] Double click on the script to open it and replace the "paste-id-here" with the key 
that was chatted earlier
[0130] Click save, and Exit the script and Edit windows
[0140] Verify the output from the cube is "NOT SAME GROUP, NOT SAME GROUP, SAME GROUP"
[0150] Delete your prims
[END]
[llSameGroupowner]
default
{
touch_start(integer x)
{
llSay(0,(string)llGetOwner());
}
}
[llSameGrouptest]
// llSameGroup test
string testSameGroup(key id)
{
 if (llSameGroup(id)) return "SAME GROUP";
 else return "NOT SAME GROUP";
}
default
{
 state_entry()
 {
 llSay(0,testSameGroup("paste-id-here") + ", " + testSameGroup(llGetOwner()) + ", " + testSameGroup(llGetKey()));
 }
}
Category:QA Portal
Category:Quality Assurance
LlSetColor/Newbie Notes

llSetColor changes the color of a prim, either on a specific side (face) or the entire prim.
Example: llSetColor(<r, g, b>, ALL_SIDES);
r, g, b: values for red, green, blue ranging from (black) to (white)
Each value must be between 0.0 and 1.0 inclusively.
Since this is a vector value, be sure to include the .
Example color values:
* = yellow
* = cyan
* = green
: means all sides of the prim will be changed to the new color.
If you use an integer value instead, only that side of the prim will be changed
Example: A cube has 6 sides, with values from 0 to 5. llSetColor(, 0); would change the top side of the cube to white.
For more information about color in LSL please continue reading here:
LlSetColor/Newbie Notes/ja

llSetColor はプリムの指定面、あるいはプリムの全ての色を変更します。
例: llSetColor(<r, g, b>, ALL_SIDES);
r, g, b: 赤・緑・青、の値で、それぞれが 0.0 から 1.0 の範囲をとります。
必ず の中に含まれるため、 ベクトル 値として書かれます。 (黒) から (白) の間の範囲になります。
色の値の例:
* = 黄色
* = シアン
* = 緑
:プリムの全面が新しい色に変わるということを意味します。数値を代わりに用いる場合、変えられるのはプリムの一面だけです。
例: 箱は 6 つの面をもっていて、値は 0 から 5 を用います。
*llSetColor(, 0);
上の例では白に箱の上の面が変わります。
LSL の色に関係する追加情報は で続きを読んでください。
LlSetLinkPrimitiveParams(PRIM TEXTURE ANIM & PRIM TEXT)

Add ability in llSetPrimitiveParams and llSetLinkPrimitiveParams to set texture animations and floating text.
The ability to set these parameters thru link message will reduce the number of scripts necessary in some more complex objects and thus reduce server load.
----
PRIM TEXT has been implemented for both llSetPrimitiveParams and llSetLinkPrimitiveParams functions. At July, 2012 not sure about PRIM TEXTURE ANIM. --Shadow Siamendes 10:21, 5 July 2012 (PDT)
==Already implemented==
As noted above, PRIM_TEXT already exists, and llSetLinkTextureAnim covers PRIM_TEXTURE_ANIM. Nelson Jenkins 19:53, 9 July 2014 (PDT)
LlSetNotecard

integer llSetNotecard(string name, array data);
Saves the content of the data back as lines
to the notecard name. Returns 0 if saving fails or 1 if ok.
----
 has refused on many occasions over the years to implement any function that results in writing or changing the contents of notecards. The reason given for this is that under the current implementation, when notecards are changed, a new asset is created, which is perfectly logical as they don't know how many copies of a notecard exist (updating one copy should not update all copies). The alternatives are to use script memory or offsite storage via , or . -- Strife Onizuka 16:18, 27 July 2007 (PDT)
LlSetPayPrice Test

[LLSetPayPriceTest]
[VERSION] 0.1
[LENGTH] 00:10
[TESTERS] 1
[OVERVIEW] This test has been designed to exercise the LLSetPayPrice LSL function.
[SETUP] This test requires 1 Tester and rezzable land
[*]
[0010] Right-click on the ground and select "Create" from the pie menu and Rez a cube
[0020] In edit click the "more >>" button if neccesary and insert the following script
[SCRIPT] llSetPayPricetest
[0030] Close the edit window
[0040] Right-click on the cube and choose "Pay"
[0050] Verify the buttons are the default: quick pay of 1, 5, 10, 20 and "0" (or last payed value, possibly blank) is in the Amount field.
[0060] Click cancel
[0070] Left-click on the cube
[0080] Right-click on the cube and choose "Pay"
[0090] Verify the buttons are: quick pay of 10, 20, 30, 40 and "100" is in the Amount 
field.
[0100] Click cancel
[0110] Left-click on the cube
[0120] Right-click on the cube and choose "Pay"
[0130] Verify the buttons are: quick pay of 1, 5, 10, 20 and "100" (or last payed value) 
is in the Amount field.
[0140] Click cancel
[0150] Left-click on the cube
[0160] Right-click on the cube and choose "Pay"
[0170] Verify only 1 quick pay button shows ($10) and the Amount field is hidden.
[0180] Click cancel
[0190] Left-click on the cube
[0200] Right-click on the cube and choose "Pay"
[0210] Verify only the Amount field is visible and it has a value of 100
[0220] Click cancel
[0230] Right-click and edit the cube, go into the contents and delete the previous script 
and replace it with the following
[SCRIPT] llSetPayPriceclear
[0240] Close the edit window
[0250] Left-click on the cube
[0260] Right-click on the cube and choose "Pay"
[0270] Verify the buttons are the default: quick pay of 1, 5, 10, 20 and Pay: "0" (or last payed value, possibly blank) is in the Amount field.
[0280] Click cancel
[0290] Clean up your prims
[END]
[llSetPayPricetest]
<lsl>
// llSetPayPrice test
// Each line (5 parameters) of buttons are the paremeters to 1 llSetPayPrice call
list buttons = [100,10,20,30,40,
 PAY_DEFAULT,PAY_DEFAULT,PAY_DEFAULT,PAY_DEFAULT,PAY_DEFAULT,
 PAY_HIDE,10,PAY_HIDE,PAY_HIDE,PAY_HIDE,
 100,PAY_HIDE,PAY_HIDE,PAY_HIDE,PAY_HIDE];
integer i = 0;
default
{
 touch_start(integer num)
 {
 llSetPayPrice(llList2Integer(buttons,i),llList2List(buttons,i+1,i+4));
 i += 5;
 if (i> llGetListLength(buttons)) i = 0;
 }
 
 money(key id, integer amount)
 {
 llSay(0,"Recieved $" + (string)amount + " from " + llKey2Name(id));
 }
}
</lsl>
[llSetPayPriceclear]
<lsl>
// llSetPayPrice clear
default
{
 touch_start(integer num)
 {
 llSetPayPrice(PAY_DEFAULT,[]);
 }
 money(key id, integer amount)
 {
 llSay(0,"Recieved $" + (string)amount + " from " + llKey2Name(id));
 }
}
</lsl>
Category:QA Portal
Category:Quality Assurance
LlTargetOmega test

Category:Test Scripts
== Tests for llTargetOmega ==
=== Test 1 ===
1) Create two boxes near each other, one above the other.
2) Add the following "TargetOmega cycling" script to each box.
3) Link the boxes together.
4) Click each of the boxes several times to cycle through rotating, rotating at increased speeds, and stopping.
5) Attach the object while it's rotating and verify it continues to rotate.
6) Detach to inventory, then attach it again, and verify it rotates at the same speed.
7) Click each of the boxes several times to cycle through rotating, rotating at increased speeds, and stopping.
8) Drop the object on the ground while it's rotating and verify it continues to rotate.
//// TargetOmega cycling
float rate = 0.0;
default
 {
 touch_start(integer total_number)
 {
 rate += 2.5;
 if (rate > 10.0) rate = 0.0;
 llOwnerSay("rate = " + (string) rate);
 llTargetOmega(<0,0,1>, rate, 0.1);
 }
}
////
=== Test 2 ===
1) Create 2 boxes
2) Add the following Rotate Script to one box
//// Rotate Script
default {
state_entry() { llTargetOmega(<0,0,1>, 1, 1); }
}
////
3) Make both boxes physical.
4) Link the rotating box as a child to the other box.
5) Verify the scripted box no longer rotates.
6) Toggle the linked set non-physical, then physical again.
7) Verify the scripted box is once again rotating, and that the linked set can be pushed around.
=== Other tests to add ===
* Rotating around an axis of <0,0,0>
* Physical llTargetOmega prims and objects.
LlUnsit with Animation

Hi. this is a script from someone I talked to cause I really wanted a script like this and he helped ALOT thanks so much Randur Source, so here is the script :).
<lsl>
////////////////////////////////////////////////////////
//Randur Source's Script.//////////////////////////////////////////////////////////////////
//This script has a GNU License.
//The script *MUST* not be sold under any Circumstances,Not even for 1L$.. This script is Free Public Script..//////////////////////////////////
//For your copy of the License//////////////////////////// 
// Do Not Change Anything Below..Or Above This Line./////
////////////////////////////////////////////////////////
default
{
 changed(integer change)
 {
 if (change & CHANGED_LINK)
 {
 integer cnt;
 for (cnt = llGetNumberOfPrims(); cnt >= 2; cnt--) // prim 1 is root prim
 {
 key id = llGetLinkKey(cnt);
 if (llGetAgentSize(id) != ZERO_VECTOR) // it's an avatar!
 if (id != llGetOwner())
 llRequestPermissions(id,PERMISSION_TRIGGER_ANIMATION);
 }
 }
 }
 
 run_time_permissions(integer perm)
 {
 if (perm & PERMISSION_TRIGGER_ANIMATION)
 {
 llStopAnimation("sit"); // was already stopped when unsitting, but do this anyway, no harm
 key id = llGetPermissionsKey();
 llUnSit(id);
 string anim = llGetInventoryName(INVENTORY_ANIMATION,0); // use the first animation in inventory
 if (anim != "")
 llStartAnimation(anim); // be carefull, if the anim is looped, it will never be stopped
 llInstantMessage(id,"You are not the owner and will be animated!"); // This InstantMessage's the target and says the message given above...
 }
 }
}
</lsl>
This Script Does Work...
LlWanderWithin debugging

<lsl>
float speed = 2.0;
vector wanderRange = <15.0, 15.0, 15.0>;
 
debugMsg(string msg)
{
 //llOwnerSay(msg); //comment this line out to turn off debug messages
}
 
setup()
{
 llDeleteCharacter();
 llResetScript();
}
 
doStuff()
{
 llWanderWithin(llGetPos(), wanderRange, []);
}
 
default
{
 state_entry()
 {
 llCreateCharacter([CHARACTER_DESIRED_SPEED, speed, CHARACTER_ORIENTATION, VERTICAL, CHARACTER_RADIUS, 0.2, CHARACTER_LENGTH, 0.5]);
 doStuff(); //either replace this with your functionality or replace the function doStuff()
 }
 
 //touch_start(integer total_number)
 //{
 // setup(); //comment this handler line out when done testing unless touch events desired
 //}
 
 on_rez(integer start_param)
 { 
 setup(); 
 }
 
 path_update(integer update, list none)
 {
 if (update == 0) //near goal
 {
 debugMsg("");
 }
 else if (update == 1) //goal reached
 {
 debugMsg("");
 }
 else //errors
 {
 debugMsg("");
 }
 llOwnerSay("Got a pathing failure " + (string)update);
llDie();
 }
}
</lsl>
LlWriteToNotecard

I suggest to use llSetNotecard instead.
----
 has refused on many occasions over the years to implement any function that results in writing or changing the contents of notecards. The reason given for this is that under the current implementation, when notecards are changed, a new asset is created, which is perfectly logical as they don't know how many copies of a notecard exist (updating one copy should not update all copies). The alternatives are to use script memory or offsite storage via , or . -- Strife Onizuka 16:18, 27 July 2007 (PDT)
LoadURL

==Message Layout==
{
	LoadURL Low Trusted Unencoded
	{
		Data	Single
		{	ObjectName		Variable	1	}
		{	ObjectID		LLUUID			}
		{	OwnerID			LLUUID			}
		{	OwnerIsGroup	BOOL			}
		{	Message			Variable	1	}
		{	URL				Variable	1	}
	}
}
==Usage and Notes==
Category:Messages
Localization Central

Localization Central is a region owned by Lexie Linden and provided for the Second Life CT Projects group. Only group members can enter the island. To join the group, please read about the current Community Translation Projects and sign up.
The island currently provides a meeting area, as well as an area for terraforming tests and parcel media tests.
In the middle of the island is a building which contains an Office Hour (OH) subscribtion board. Via the board, you'll be able to subscribe to Office Hours of localization Lindens. The board will send you 3 reminders per office four. One at SL midnight before the OH, one 1 hour prior the OH and a last one 10 minutes prior the OH, always containing a SLURL to the location where the OH takes place. To unsubscribe, just click the board and the Lindens name again. You'll receive a message when the operation was successful. 
== Test Locations ==
The test area provides different parcels for media icon hover tests. Go to and press to highlight property lines. You'll see some 16m² parcells, all with different parcel settings (enlarge the image on the right). Make sure to activate streaming media in your preferences (see image).
*Streaming music
*Media: Audio
*Media: Web
*Media: Image
*Media: Movie
*No Media
There is also one parcel that is a damage enabled, no fly, no push, no build, no script, no voice area.
At each parcel, hover above the icons and review if the hovertext has the right translation. 
Next to the hover icon tests is one parcel that has ban lines shown. Walk into the banlines and review the dialog message in the lower right corner.
In front of the parcel with banlines is a parcel with a Land sale test. Please IM Zai Lynch when you'd like to use the parcel for this test and it will be set up for you. 
Once it's set up, you can review the buy parcel dialog. Buy the parcel for L$0 and test i18n test strings the about land window. Set it for sale again and review the sale land dialog box. 
Next to the parcels is a wall with some prims placed on top of it. There are currently 4 of them which contain scripts. Click one after another and follow the instructions / review the dialogs.
== Suggest Improvements ==
The island is missing any special feature? Please suggest it at the CT Project Mailing list! 
== Related Links ==
*Localization Functional Tests
*CT Projects
*CT Project Mailing list
*Mentor Linguists
Category:Localization
Localization Portal

__NOTOC__
The following projects and pages all have the same goal in mind: To help make Second Life and its documentation available in multiple languages.
	
== Wiki Articles in need of translation ==
You can always help to translate wiki pages at any time. The following links will show you articles in need of translation for each language:
==LSL Project==
The focus of this project is to translate the LSL Portal.
* LSL Portal Translation Project
* LSL portal translation group in world
* More coming!
== Projects led by Residents==
Focus: Wiki and inworld content
* Project:Languages
** see the discussion on Project talk:Languages
* Project:I18n
** see the discussion on Project talk:I18n
** :Category:I18n project members
== Links To Helpful Resources ==
* Template:Multi-lang
* :Category:Languages spoken by Residents
* Video Tutorial for Wiki Translations by Zai Lynch
Category:Portals
*
Localization Vendor Localizers

The purpose of this page is to allow Localizers and their team to post all questions they might have about the Second Life projects they are working on.
We hope it will make communication and the exchange of information easy and smooth between our respective teams!'''
Style guides can be found at:
French:
http://wiki.secondlife.com/wiki/Guide_de_style
German:
http://wiki.secondlife.com/wiki/German_Style_Guide
Japanese:
http://wiki.secondlife.com/wiki/%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%AC%E3%82%A4%E3%83%89
Brazilian:
http://wiki.secondlife.com/wiki/BR_Portuguese_Style_Guide 
Spanish:
http://wiki.secondlife.com/wiki/Spanish_Style_Guide
----
===SL WORK===
http://work.secondlife.com
Files were sent to Localizers on Aug.13th 2009
Files were sent back from translation on Aug. 26th 2009 as expected.
*For any question/comment about SL work in French, please click here.
*For any question/comment about SL work in Brazilian Portuguese, please click here.
*For any question/comment about SL work in Spanish, please click here.
*For any question/comment about SL work in German, please click here.
*For any question/comment about SL work in Japanese, please click here.
*To view feedback about the translation, click here.
----
===SL.com and Landstore===
sl.com
Landstore
*For any question/comment about SL.com and Landstore in Brazilian Portuguese, please click here.
*For any question/comment about SL.com and Landstore into Castilian Spanish, please click here.
*For any question/comment about SL.com and Landstore into Italian, please click here.
Localization Vendor Localizers ES

===Localization of Second Life Work into Castilian Spanish===
The purpose of this page is to facilate communication between Linden Lab and the Localizers Spanish team working on the localization of the SL Work project.
Please enter your question on this wiki and I will do my best to provide an answer!'''
*Question:
This sentence in "SL_Work_EN_strings.po_es" looks incomplete, could you please check it?
"By setting objects to group ownership, you give any member of a specific group to edit content"
Answer:
Hi there,
I had this same question from the German translator. I think this should answer your question:
I think there is something missing in this sentence. It should be:
By setting objects to group ownership, you give any member of a specific group the right to edit content.
Meaning, that if you build an object, you can set it so that it is owned by a specific group. The members of this group will then be able to edit the content of this object.
If you open the Viewer, go to a sandbox (land where you can build), click on "Build" and create an object, then go to the tab "General", on there you can "Set" an object to a group. Unfortunately I don't speak Spanish but in the Viewer the following translation was used for "set" > "Configurar"
I can't see the context, to me this sounds very viewer specific. I am surprised to have this sentence on sl work!
Does this help? Let me know if you need more info. Cheers, Simone 
----
===Localization of secondlife.com and Landstore into Castilian Spanish===
*Question:
Hi, I have another query, this time about "strings.ini" in Landstore: Are we supposed to translate names like Ruth's Retreat, Hill and Dale, Loch Lake, etc.?
Answer:
Noelle:
We did translate those in French, Japanese and German. For French, you can check here: https://land.secondlife.com/fr-FR/private-regions.php
You can switch languages in the upper left corner of the page!
*Question:
In "strings.po", what do you mean with "throb"? 
Answer:
Noelle:
I believe this should not be translated!
Localization Vendor Localizers Feedback

===SL Work: Feedback on the French translation===
Overall, the quality of the translation is excellent. If flows well, the meaning is accurate, faithful to the source, and sounds very natural in French. Thank you!
Just a couple of mistakes I have found while reviewing:
1. Two grammar mistakes:
* The Gold Solution Provider Program is the first of its kind in the virtual worlds industry, reflecting the strength, longevity, and unique ability for users to create and own their content on the Second Life platform.
Was translated as : Le Programme Gold des prestataires de services est le premier en son genre dans le secteur des mondes virtuels, et reflètent la puissance, la longévité et la capacité unique qu’offre la plate-forme Second Life aux utilisateurs qui souhaitent créer leur propre contenu.
"reflètent" should be "reflète".
*When you join Second Life, you have a standard set of avatars to choose from.
Quand vous adhérer à Second Life, vous pouvez choisir parmi une série d’avatars standard.
should be: Quand vous adhérez à Second Life, vous pouvez choisir parmi une série d’avatars standard.
2. One terminology issue:
Linden Lab Privacy Policy
was translated as:
Politique de confidentialité de Linden Lab
it should be:
Règlement sur le respect de la vie privée de Linden Lab
===SL Work: Feedback on the Japanese translation===
Excellent quality. Thank you!
===SL Work: Feedback on the German translation===
Locked

=== Feature Design Document ===
(none)
=== Functional Spec ===
* Locking an object will keep your from accidenally moving or modifying your object.
* Trying to take a locked object to inventory triggers a confirmation dialog box.
* A locked object will display as (no modify) in your inventory.
* You can avoid selecting locked objects by turning on Tools menu > Select Only Movable Objects.
* "Locked" has some other functionality piled on it, but I don't recall it at the moment.
=== Test scripts ===
llGetInventoryPermMask Test
llGetObjectPermMask Test
=== Discussion for future improvements ===
(none)
=== Relationship to other features ===
 List of features that need to be tested when this feature changes, and why. 
Grant Modify Rights - Can people with granted modify rights edit your locked objects? 
Deed Objects - Can people in the grouo edit your deeded/locked objects? 
Share Objects with Group - Can people in the grouo edit your deeded/shared objects? Only if they have the group selected?
Collaborative Building - Is locking objects useful for Collaborative Building or only individual building.
=== User Guides ===
(none)
LogDwellTime

==Message Layout==
{
	LogDwellTime	Low	Trusted Unencoded
	{
		DwellInfo	Single
		{	AgentID		LLUUID	}
		{	SessionID	LLUUID	}
		{	Duration	F32		}
		{	SimName		Variable	1 }
		{	RegionX		U32		}
		{	RegionY		U32		}
	}
}
==Usage and Notes==
Category:Messages
LogFailedMoneyTransaction

==Message Layout==
{
	LogFailedMoneyTransaction	Low Trusted Unencoded
	{
		TransactionData	Single
		{	TransactionID	LLUUID	}
		{ 	TransactionTime	U32		} 
		{	TransactionType	S32		}	
		{	SourceID		LLUUID }
		{	DestID			LLUUID	}	
		{	Flags			U8		}
		{	Amount			S32		}
		{	SimulatorIP		IPADDR	}	
		{	GridX			U32		}
		{	GridY			U32		}
		{	FailureType		U8		}
	}
}
==Usage and Notes==
Category:Messages
LogLogin

==Message Layout==
{
	LogLogin Low Trusted Unencoded
	{
		AgentData		Single
		{	AgentID			LLUUID	}
		{	SessionID		LLUUID	}
	}
	{
		Data		Single
		{	ViewerDigest	LLUUID	}
		{	LastExecFroze	BOOL	}
		{	SpaceIP			IPADDR	}
	}
}
==Usage and Notes==
Category:Messages
LogParcelChanges

==Message Layout==
{
	LogParcelChanges	Low	Trusted	Zerocoded
	{
		AgentData		Single
		{	AgentID		LLUUID	}
	}
	{
		RegionData		Single
		{	RegionHandle	U64		}
	}
	{
		ParcelData		Variable
		{	ParcelID		LLUUID	}
		{	OwnerID			LLUUID	}
		{	IsOwnerGroup	BOOL	}
		{	ActualArea		S32		}
		{	Action			S8		}
		{	TransactionID	LLUUID	}
	}
}
==Usage and Notes==
Category:Messages
LogTextMessage

==Message Layout==
{
	LogTextMessage Low Trusted Zerocoded
	{
		DataBlock	Variable
		{ FromAgentId	LLUUID }
		{ ToAgentId	LLUUID }
		{ GlobalX	F64 }
		{ GlobalY	F64 }
		{ Time		U32	} 
		{ Message	Variable	2 } 
	}
}
==Usage and Notes==
Category:Messages
Login Protocol

The login protocols are being reworked and the documentation is in a state of constant change. Several different procedures for logging in are currently valid. The various links below discuss/describe them in more detail, often with sample source code in Python to illustrate what is going on:
* Login protocol for versions older than 1.18.5.3
** Current_login_protocols
** Authentication Flow
* Login protocol for 1.18.6+
** Viewer Authentication
* Second level protocols
** Current_Sim_Capabilities
* Future Directions
** Second_Life_Login_API_Strawman
** AWG_flows_login
* Deprecated in favor of:
** Open Grid Protocol
* Example Code
** Example_protocol_code
* See also
** AW_Groupies#Documenting_current_protocols
Category: Architecture Working Group