Category:LSL Library

From Second Life Wiki
Revision as of 09:12, 7 November 2011 by Kira Komarov (talk | contribs)
Jump to navigation Jump to search

Script Library

NOTE: Please add you scripts to this page and then add them to a category on the Categorized Library page.

Come to this page to see complex examples that show how to combine parts of LSL.

Go to the LSL Examples page to see brief examples of how to use parts of LSL

Why collect complex examples here? Well, ...

There are many scripts that have become buried in the old forum Scripting Library, the 2010 library archive, or the current LSL Scripting Library; were lost with the death of the early scripting forums; or sit idle in inventories that could be useful and should be more accessible.

Other scripters may be in the same situation. This wiki is a well-suited medium for a script library. Feel free to add your scripts to the script library by creating new pages for them and linking to those pages here.

Note that there are many more scripts in the LSL Library here, but you can't get to them if you don't know they exist, because they are subpages now, instead of an automatically updated category. Good luck searching.

Visit the new Categorized Library which might help make it easier to find a script by the type of script it is. Please note, to wiki editors, if you want your script to appear on the category page after adding it to this library you need to also add it to the category library page as well.

Rules for posting:

  1. Your script must be tested and working. If it's not, stick it in your user-space until it is. This is a list of working, usable scripts.
  2. Add a link to your script's page here. Link back to this page from your script's page. Start your page with {{LSL Header}}.
  3. Do not add scripts that duplicate the same functionality as an existing script or built in function. If yours does, explain why.
  4. Do not list simple scripts here. Include those among the LSL Examples instead.

LSL Script Library

Name Creator Description
Script Vitality plug-in Jenna Felton Uses vehicle technology to allow scripts (in same prim) to run in 'dead', i.e. no-script areas.
1st necessity of SL Beer Dailey Monitors for avatars and (de)activates scripts states to control script performance/lag.
SetLinkText Tacusin Memo Custom function like llSetText only applying to linked sets.
3D Radar Jesse Barnett Rezzes a ball for each avatar in range. Each ball tracks its own AV and displays distance.
AbcText Ange Capalini EXPERIMENTAL Hyper low prim Display. only 2 prims for 25char.
Access (NewAge) Asia Snowfall An easy to use script for permissions on who can use the script, Public/Group/Owner
Aim Detection Dugley Reanimator Monitors for avatars and reports back to owner about who is aiming at them.
AnkleLock Kira Komarov An ankle lock script and attached animation to fix your displaced shoes. This will help if your shoes look displaced when you sit in certain poses or when your animation overrider is active.
AntiDelay Node Xaviar Czervik Uses llMessageLinked to stop those pesky delays.
AO Overriding Pose Ball Jesse Barnett No more turning your AO off and on when you sit down
ARCFOUR Strong Encryption Implementation Nekow42 Zarf An LSL implementation of ARCFOUR, the most popular stream cipher still in use. It is licensed under a Creative Commons Attribution 3.0 license.
Artillery Kira Komarov An artillery gun script, performing the necessary calculations based on a user-chosen velocity, in order to hit a designated target avatar.
Assembly-Like Programming Language Xaviar Czervik A compiler that runs assembly-like programs.
Associative Array (Dictionary) Emulator Alynna Vixen This library provides a set of functions for using a list as an associative array where string based keys can refer to one or more variant elements.
AvatarFollower Dale Innis Allows one avatar to automatically follow another.
Avatar Radar (NewAge) Asia Snowfall Version 1.2; A nice new avatar radar script i just finish that you can place in your hud, Also features avatar locator
Base2Dec Siann Beck Convert a number to decimal from any base.
BaseN Nexii Malthus Variable base compression, dynamically maps to usable UTF code points.
Basic Encryption Modules Beverly Larkin Basic encryption scripts, allows you to encrypt a float and shout it to another prim on a randomly chosen channel.
Be happy Emmas Seetan Basic smile attachment script, makes your avatar smile.
Best Neighbor Doran Zemlja Reduce ad clutter by hiding ads when users are on their own land nearby.
BigNum Library (RSA Encryption) Xaviar Czervik A BigNum Library for dealing with big numbers! Specialized for modular multiplication, and RSA encryption.
Binary Clock Fox Diller A Binary Clock.
BinaryDecimalConverter Soundless Smalls Converts a binary value to a decimal value and vice versa.
Blacklist and Remote Kill Chase Quinnell Blacklist(denial of use) or a creator kill script(can delete someone's item by command on private channel)
Bookmark URLs Rolig Loon Dialog driven HUD reads bookmarked URLs from notecards and navigates directly to them with user's in-world browser.
Bubble Gum Kira Komarov A script to create a bubble gum effect with sounds and animations.
Builder's Buddy Tool Newfie Pendragon Script to easily move/rotate large builds that exceed the linkable size limit (30 meters).
Button Click Detector Sendao Goodman Use llDetectedTouchUV to determine which button was pressed on a texture.
Camera following prim Dale Innis Pair of scripts to make a prim follow your camera position around (for lights etc).
Camera Sync Meyermagic Salome and Nomad Padar A system to synchronize the cameras of two avatars.
Chatbot Anonymous Compile and run the LSL you type on a channel, faster than you can thru the 2007-08 SL GUI.
Chat Logger (GPL) Nobody Fugazi Chat logger which requests permission from participants before recording them.
Chat Relay grumble Loudon A Chat relay which can be routed using a path header and won't echo.
ClickAndDrag Nexii Malthus Click and Drag user interface elements using dynamic feedback
Code Racer Anonymous Race two versions of code forever, to see which runs faster.
Code Sizer Anonymous Count the bytes compiled from source code, to measure how to write small code.
Color Changer Void_Singer Dialog driven color changer. Supports 16million+ colors, web color codes, multiple targeted prims, with save and recall.
Color Changer Plus Neo Calcutt A color changer with 14 colors, a random function, and a custom vector function.
Color Conversion Sally LaSalle Convert between Red Green Blue (RGB) and Hue Saturation Value (HSV).
ColorConvert Siann Beck Convert color values to vector from RGB, hex or HTML color name.
Color script Masakazu Kojima Script for changing colors trough a listener with pre-defined colors.
Combined Library Strife Onizuka Library of mostly encoding and decoding functions, some more useful then others.
  • String functions: Replace / Trim right / Trim left / Trim both
  • Unicode conversion: UTF8 to Unicode / Unicode to UTF8
  • List functions: Replace / Compare
Computer:jaycoonlanguage jayco121 Bing A language written in LSL that is meant for my computer (available at the shop).
Configuration Notecard Reader Dedric Mauriac A script to read configuration information from a notecard. Parses notecard to extract key words and their assigned values. Allows for comment lines and many more useful features.
Configuration Notecard Reader (advanced) Lear Cale Robust configuration notecard reader; supports multiple notecards with same suffix, handles reconfig on inventory change, and does not usurp the default state.
Conversation Relay Jippen Faddoul Chat relay which requests permission from participants before relaying their messages. Also includes their attachments. (ToS compliant).
Curtain script Zilla Larsson A simple script to retract/stretch curtains, blinds, bedcovers and more
Cycle Dialog Items w/ Callback Hawkster Westmoreland A customizable way to cycle dialog items with pagination
Dataserver API Revolution Perenti Dataserver Framework for Notecards.
Date Library Corto Maltese Date library, based on number of day since march 3rd 1600, can be used to calculate weekday, date differences, and date offset, and date formating.
Day of the Week DoteDote Edison Function to get day of the week from llGetUnixTime.
Days in Month IntLibber Brautigan Clicking on it returns the number of days in the present month. Useful for scripting calendars and tier systems that need to know the number of days in the month at hand or to calculate for any month. Even adjusts for leap years.
Deed Tools Falados Kapuskas Tools that allow the creator to modify Group-Owned (Deeded) Objects via chat.
*DS*_DEMO_Shield Daemonika Nightfire With this script, it is impossible to use these scripts in copied (Copybot) object.
Describe Chatter Anonymous Chat to see yourself as others do.
Dialog Control Nargus Asturias A (not-so) simple dialog & menu control script. Call dialog and receive selected value via link_message(), with built-in timer and link_message() notification on time out. Supports multi-pages dialog and numeric property dialog. Button text and dialog's returned value can differ.

Latest version also has Dialog Menus Control built-in; which allow multi-level menus through SL dialog system.

Dialog Menus (multiuser) SimonT Quinnell Menu dialog handler that supports multiple menus open at once from the single script. Displays multi-page menus if necessary as well as allowing for fixed header and footer buttons. Timeouts as well as Text and button size limits are handled.
Dialog Number Pad DoteDote Edison Use a dialog to accept positive integer input from users.
Display Names Radar Cerise Sorbet Simple HUD type avatar radar that can show display names and script memory usage
Display Names to Key Joran Yoshikawa Simple way to get UUIDs from displaynames
*DS*_Display-Username_Online_Indicator Daemonika Nightfire This simple hover text-based script is used to shop owners in Second Life, customers at the current display name and user name to display publicly. Additionally shows the status of the Userkey and online. Furthermore, there are click of a chat link that opens the profile owner.
Displayer Script Akinori Kimagawa Display Words On Top Of An Object
Distributed Primitive Database Kira Komarov The distributed primitive database (DPD) is a database which is meant to survive entirely in SL by using redundancy, replication and time synchronisation to maintain the consistency of the dataset contained in the DPD node/primitives spread out between regions and even grids. Similarly to the Intercom, the robustness of the theory would allow users to maintain a cross-grid database; as of 30 of August 2011 I have managed to couple and replicate data between the two grids by using the methodology described in the script article.
Drink script Emmas Seetan Used mainly for food and drink in Second Life.
*DS*_Single_AO-Sit Daemonika Nightfire Posescript for use with or without AO and with or without Animation. With the menu it is possible the seated Avatar to move.
DropBox Dimentox Travanti This is a Drop box which allows people to drop certain items in a object & has many config options.
Efficiency Tester Xaviar Czervik Tests the speed of a function.
Email2IM DoteDote Edison Send IMs to SL friends via email (translate emails from friends into IMs).
Encrypted Region-wide chat Kireji Haiku (talk|contribs) Encrypted Region-wide chat
ExplodingObjects Dale Innis Causes an object (of the appropriate type) to explode on command.
FadeEasy Nika Rugani The easy way of fading objects in or out (Using llSetLinkAlpha)
FastConeSpread Nexii Malthus Fast Algorithmn to achieve cone spread, main use in weaponry systems.
Fast List Prim Contents PixelProphet Lane Fast and efficient method to print Object Inventory (Name, Type and next Owner permissions)
Find Avatar Key Huney Jewell Explores UUID of avatar whose name is said in local chat or who touches the prim.
First Name Letter Prize RaithSphere Whybrow Gives a prize if the person who sits on it's first letter of first name matches the random letter!
Fix_Small_Prims Emma Nowhere Finds and adjusts the smallest prims in a linkset so that it can be scaled down further.
Flight Assist Kira Komarov Flight feather / flight band implementation supporting various commands and allowing you to fly above the clouds.
Float2Hex Strife Onizuka Very useful for transporting floats.
Float Box Contents Rolig Loon Displays object inventory in hover text, identified by type and updated marquee-style.
Follower Unknown, uploaded by Slik Swindlehurst Makes an object follow the nearest person. Do not use for griefing.
GA Event Notifier Victor Hua Gathers seven days event data from a Google calendar and display it through a simple interface. The lsl script can access several calendars at once through seperate php files. One file per calendar. Host the included php on your own web server.
Geometric Library Community Project A substantial amount of various geometric functions for intersection and other purposes of 3D maths.
Get Profile Picture Valentine Foxdale Sets the texture of the object to profile picture of the person that touches ot
GetTimestampOffset Siann Beck Returns llGetTimestamp() with an hour offset.
Give InvItem every n hours Criz Collins Will give an inventory item on touch only every n hours, even if somebody touches the object more than once.
Give random object Emmas Seetan Touch to receive a random object in the prim's inventory
Giver Kira Komarov A menu-driven script that will hand out the objects in a prim. Supports multiple pages.
Google Charts Dedric Mauriac Create links to display raw data as a chart image.
Google_Translator Ugleh Ulrik Translates spanish to english, and its simple to make it any other way.
Go transparent when walking Emmas Seetan An attachment that goes invisible when you walk and visible when you don't walk.
Greeter Kira Komarov A multi-purpose greeter with multiple options (IM, landmark, notecard, URL, visitor statistics, shared access and compatible with the Mail system) that could work for shops, clubs, galleries and any other public place.
Group Authorization Chase Quinnell Checks to see if object is set to appropriate group (checks by group key)
Group Information v1.0 Tyrennic Rivera When clicked the prim will show group information (set on the prim) from the official Second Life Search page.
Group key finder Emmas Seetan Touch to find the key of the group
Group Privacy Chance Unknown Security device to insure members of a group can have a private area. Deactivates when nobody present.
Hello Avatar Linden Lab SL's default script.
Hello Avatar Companion Chase Quinnell Companion to the original Hello Avatar script
Hierarchics Nexii Malthus Advanced script to create an efficient self-aware hierarchic structure.
Hierarchics2 Nexii Malthus Second generation, one script per object. Only two functions, can be embedded in others. Uses the new llSetLinkPrimitiveParamsFast/llGetLinkPrimitiveParams functions.
High-Capacity Greeter-Counter Rolig Loon Uses a memory compression algorithm to store hashed visitor UUID's in a string instead of using a list.
Holodeck Revolution Perenti Home Rezzing System (Open Source).
Hologram Ange Capalini Create a hologram based on the persistence of particles.
HUD Dots Radar Cerise HUD target example, draws dots on the HUD over avatars in view.
Intercom Kira Komarov A system allowing region-wide and grid-wide (as of 30 of August 2011, it also works grid-wide, a test was performed by linking up the chat between the OSGrid and SecondLife) mass chat relay. By using this you can relay a main chat across multiple regions or grids. The script was initially meant as a mid-way project in order to test and gather information for the Distributed Primitive Database.
Interpolation Library Nexii Malthus A small set of interpolation functions.
Intra-Region Update Server Emma Nowhere Centrally update objects such as Freeview screens or teleport pads within a region that are configured by notecards or contain modifiable objects or media assets.
Inventory_Based_Menu Revolution Perenti Inventory Based Menu System.
iTunes RPC Fox Diller iTunes RPC via LSL llEmail and llRemoteDataReply.
Jingle Kira Komarov A script that will make a primitive emit a sound when you wear it and walk around. Ideal for bells, footsteps and so on...
Kilt / Skirt Editor Brangus Weir This changes all the parameters of all the flexis in the link set in one swell foop!
Keypad Door Tdub Dowler Door and keypad with changeable code. Follow instructions carefully!
Key2Name Nika Rugani Key2Name service where a user no longer needs to be in the same region to get users name
Last Sound System Babbage Linden An LSL Last.fm client.
LibraryDisplayLandScreenshot Jon Desmoulins A modified version of LibraryDisplayProfilePic using the new PARCEL_DETAILS_ID Implemented in Server v1.36
LinkNumber-List_in_llSetLinkPrimitiveParamsFast Daemonika Nightfire Changed several prims in linkset with the same parameters, with a list. Without separate llSetLinkPrimitiveParams for each prim. (ideal for show/hide effects)
Limit Vendor Kira Komarov This is a vendor supporting any number of items with different prices which will only dispense a certain number of individual items by setting limits for each item based on a notecard configuration.
Linkset resizer Maestro Linden Systematically rescales a linkset by moving and resizing each prim (by using llGetLinkPrimitiveParams and llSetLinkPrimitiveParamsFast)
Linkset resizer with menu Brilliant Scientist A menu-driven script that rescales a linkset by moving and resizing the prims using llGetLinkPrimitiveParams and llSetLinkPrimitiveParamsFast functions. Based on Linkset resizer.
Pointing Stick rhonin Nissondorf A device that takes controls of your arrow keys and directs the device in the relative direction its pointing, forward and back of course.
Gun Script rhonin Nissondorf Shoots out "ammo" from the root prim of your "gun".
Linkset Resizer 2 Emma Nowhere A more user-friendly resizer script designed for either drop-in use by the end-user or builder or for use in products. Based on Fix Small Prims.
List2CSV Kunnis Basiat List2CSV & CSV2List that include preserving type and escaping characters.
list_cast Fractured Crystal Casts a list of strings into the type they appear to be. Designed for preprocessing user input for feeding into llSetPrimitiveParams
Listener Script Emmas Seetan Use to listen to other people's conversations (Like spying)
List: Find Last Index Void Singer Returns the last index of searched item in a source list. (backwards version of llListFindList)
List: Multi Find Void Singer Returns the first found index of multiple search items in a list. (Multi-item version of llListFindList. Fwd and Rev versions included)
List: Reverse Void Singer Returns an input List in reverse order
LinksetIndexing Nexii Malthus Functions for indexing a linkset by patterns or names down to their linkset numbers.
Live Event Timeout Kira Komarov A script which will set the the music URL back to a radio station of your liking when a DJ leaves or forgets to switch back the URL after a live event. It takes multiple DJs, using a notecard and several configuration parameters.
Load URL Emmas Seetan Touch to get a dialog to visit the URL inside the script.
lsDancemachine Kephra Nurmi Low lag client server dancemachine.
lsDeejay Home Edition Kephra Nurmi Client server media control for music, video, youtube, pictures, and texture animations.
lsDialog Kephra Nurmi Universal notecard driven menu dialog system.
lsDisplay Kephra Nurmi Picture cycler with preloader.
lsDistributor Kephra Nurmi Simple 'try' and 'buy' vendor system.
LSL_languageAPI Gypsy Paz Multi-lingual API from notecard based language files
Mail Kira Komarov An system for sending objects to multiple recipients automatically supporting shared access and Greeter compatible auto-subscriptions.
Mandelbrot Explorer Babbage Linden An interactive fractal explorer.
Materialization Effects Overbrain Unplugged Special effects to add to rezzing events to simulate a teleportation or materialization.
Materialization Effects 2 Nika Rugani More efficient and faster version of Materialization Effects by Overbrain Unplugged.
Memory Module Kira Komarov An example of pseudo-persistent variable in-world storage.
Merge Sort Xaviar Czervik Implements a Merge Sort in LSL, however this code is 300(ish) times slower than llListSort. Don't use this in a script!
Minesweeper Xaviar Czervik A simple minesweeper game.
Mood Color Changer Kira Komarov A script that changes the color of all primitives in a linkset depending on the smileys the owner types on the main chat.
Morse Code Bobbyb30 Swashbuckler A script that allows for the conversion to and from morse code and can "play" morse code.
Multi-displays Texture Cycler Nargus Asturias A simple texture rotator designed for multiple display screens. With delay between each screen AND delay between each loop.
Multi Item Rezzer Jesse Barnett A rework of my old High Altitude Rezzer. Place the objects that you wish to choose from to be rezzed inside. Sit on the rezzer and pick the item and the height. It will go to target height and rez the object.
Multirezzer (on collision) Beet Streeter Spawns up to 10 objects when the object containing the script collides with a user.
Myriad Lite Preview 4 RPG System Allen Kerensky Working preview of the Myriad Universal RPG System by Ashok Desai, converted to LSL as a roleplay meter with quest NPC and goals, hand-to-hand and melee close combat, ranged combat, armor, healing, bullet, firearm, holster, and practice target
Name2Key in LSL Maeva Anatine Get the Name2Key feature inside your scripts. Works even on lastly subscribed avatars.
Name2Key Nika Rugani Newest and fastest Name2Key search, While the database is small it is also connected to Second Life's search.
NexiiText Nexii Malthus Text Renderer, specialised in features, performance and a compact nature. It features unique per character control, such as Colour, Bold, Italics, Underline, Stroke, Icons. The high performance means it comes in at a 5 char / prim ratio, but it is perfect where highly dynamic and rich text is required.
NexiiText2 Nexii Malthus Second Gen Text Renderer. Same as above but features use of PRIM_LINK_TARGET and an awesome dynamic prim allocation architecture.
No Auto-Return Bella Clarity To stop your long and hard builds from getting returned in sandboxes (only single prims, though!).
No Auto-Return NR Jor3l Boa This really works (29-05-09), needs a nearby region to do the trick and avoid auto return. (Tested on Blue and Rausch)
No Auto-Return (Multi) Xaviar Czervik A revision of Bella's that works for multi-prim objects.
No Limit Teleporter Morgam Biedermann Teleport to infinite altitudes (up to 4096m)
Object Size Chase Quinnell Gets the dimensions and footprint of a linkset
Object to Data Xaviar Czervik Turns an object into text (and back). Allows people to transfer objects through notecards (or otherwise).
Online Indicator Kristy Fanshaw Will show if the user is online or not. Displays users profile picture and allows to send IM's to user. Also gives a link to open the users profile
Open Group Join Alicia Stella User Touches Object to Join Group from Group Info window, (no bot.)
Open Prim Animator Todd Borst Single script prim animation tool. Menu driven, easy to use.
Open Zyngo Skin Installer Tmzasz Luminos A Simple Script designed to install skins on the popular Skill machines.
One Script, many doors Kyrah Abattoir Door script able to manage more than 50 linked doors from a single script instance.
ParseString2List Strife Onizuka Same as llParseString2List and llParseStringKeepNulls, but not limited to 8 spacers or separators. Thus substitute a call to the llParseString2List and llParseStringKeepNulls functions by a call to ParseString2List whenever you have more than 8 separators or more than 8 spacers.
Password Generator Syntrax Canucci This is an over-complicated, semi-complex password generator, which goes through multiple steps.
Pathfinder Babbage Linden A potential field based pathfinding library.
Personal ATM Machine Jessikiti Nikitin Allows deposits and withdrawals into another of your accounts, without the account being logged in.
Phantom Child Aeron Kohime Causes a child in a link set to become phantom without the entire object becoming phantom.
PHP_RegionFunctions Gypsy Paz and Zayne Exonar Three useful PHP functions to get region info
PhysicsLib Nexii Malthus Interesting set of fun physics functions.
Play and Loop Sound Bella Clarity Very short and simple script; plays and loops a sound in an object.
Posing Stand Bella Clarity Just a pose script to edit attachments more easily.
PosJump Uchi Desmoulins A much more efficient alternative to the popular warpPos function for bypassing 10m distance-moved limitations.
Puppeteer Kira Komarov A simple puppeteer script that will allow you to record and animate prim movements and rotations.
Prefix Calculator Xaviar Czervik A calculator that evaluates expressions in prefix notation.

+ 3 4 = 5. * + 1 2 + 3 4 = 14.

Profile Generator Kira Komarov A cynical script for generating boilerplate profiles by based on cliches and profile memes.
Profile Picture Jor3l Boa A working profile picture script with the new SecondLife API (1/11/2011)
Progress Bar Nexii Malthus Flexible and powerful little function for creating progress bars useful in hovertext.
Pseudo-random Number Generator Xaviar Czervik Generates a Pseudo-random number between -0x7FFFFFFF and 0x7FFFFFFF
Quick Collar Kira Komarov A simple, no-bulk, no external database and essential feature-packed RLV collar script for your pleasures.
Quicksort Kira Komarov LSL implementation of the Quicksort algorithm.
Quiz From Notecard Rolig Loon A multiple-choice testing script that reads questions and answer choices from a notecard and presents them in dialog boxes.
Racter Kira Komarov In-world, multi-purpose chatterbot (Eliza/A.L.I.C.E. inspired) supporting multiple configurable hot-swappable brain-files with a wide range of applications.
Rainbow_palette Rui Clary Build a color picker, using only one prim, and a few lines of code.
Random Gaussian Number Generator Vlad Davidson Generates a random number drawn from a normal (Gaussian; bell-curve) distribution, based on a specified mean/stdev
Random AV Profile Projector Debbie Trilling Randomly selects an AV from a crowd & then projects their profile picture as a 'holographic' image
Random Object Vendor CodeBastard Redgrave Simple vendor that gives out random objects when paid the right amount
Random Password Generator Jor3l Boa Generate Random passwords based on String Length.
RavText Ravenous Dingo An alternate to XyText. This is a lightweight, multiple font 10 character text display system. It only supports uppercase alphanumeric text and a few special characters, but it is very fast, renders quickly and supports multiple fonts. It is meant for specialized use when all that is desired is basic, fast text display and the extra "bells and whistles" are not needed.
Real Object Inventory To Dialog PixelProphet Lane Display any amount of items contained in an Object in a Dialog, regardless of item name length.
Rental Box, Simply Sendao Goodman Simple explanation of how to make rental boxes.
Rental Cube Hank Ramos Simple cube for renting out a space.
Remote Texture Loader Bobbyb30 Swashbuckler A set of scripts for remotely loading textures within a sim. This means that a single "texture server" can manage multiple changing billboards within a sim.
Region Frames Per Second Heymariou Mystakidou Says the region name and frames per second out loud on command.
Security Orb Kira Komarov A regular security orb that ejects people from a land parcel supporting a menu configuration and a notecard based access list.
Resizer multi-prims Christy Mansbridge 1 Mono script to resize object (1 to 256 prims) by blue menu. Avoid risk to break the build by increasing link distance.
sbDialog Siann Beck A simple replacement function for llDialog. It re-orders the button list so that the button values, as passed to it, display left-to-right, top-to-bottom. It also opens a listen on the specified channel, and returns the handle.
Scheduled Payments Kira Komarov A script that will allow you to make scheduled (and reoccurring) payments to multiple avatars via a notecard.
Scheduler Haravikk Mistral Schedule multiple events using a single script timer
Scheme Interpreter Xaviar Czervik A scheme interpreter capable of handling most scheme expressions, including lambda and lists.
Script Override Functions Revolution Perenti bypass default strings, integer etc in chat channel.
Scripted Attachment Detector Bobbyb30 Swashbuckler A script that will display avatars wearing scripted attatchments in hovertext. This may be worn as an hud or rezzed.
Self Upgrading Script Enhanced Cron Stardust Keeps only latest version of the script on prim (even with multiple adds of the same script!)
Sensor Visualizer Cerise Sorbet Shows the size and shape you get with llSensor range and arc parameters
Serverless Key Exchange Sendao Goodman Maintains a network of object keys without using an external server.
SHA1 Hash Strife Onizuka Performs a SHA1 Hash on an input text. Similar to MD5 only (slightly) more secure.
Shoutcast - radio controller v0.3 (remake of similar scripts) Logic Scripts Control your shoutcast radio stations with this shoutcast controller. Uses notecard for info about genres and stations and menu to select the station. Sends info to Xytext display.
Show Agent Script Count and memory PixelProphet Lane Fast and efficient method to display the amount of scripts and memory usage for an agent
Sim Map Particle Projector Jesse Barnett Displays a floating map of the sim the script is in.
Sim Restart Logger Kyrah Abattoir Counts region restarts and displays log of last 9 restarts together with region FPS and dilation.
SIM status Kira Komarov A script that will scan and display the status of SIMs (up, down, starting, stopping, unknown, crashed) from a notecard in the same prim as the script.
Simple Elevator in a Box Hank Ramos Simple elevator example.
Simple Pay Door Giygas Static Simple door you pay to get access.
Skillingo AntiHack Script Tmzasz Luminos A simple Protection script for skillingo thats modifyable to work with other machines.
Skunk Money Hank Ramos Fun gambling machine of yesteryear, which only supports freeplay now due to SL regulations against gambling.
SLateIt Babbage Linden An augmented virtual reality HUD.
SLetanque Babbage Linden An LSL petanque game.
SLURL HUD CodeBastard Redgrave Touch this HUD to get a SLURL through IM, email and floating text.
BuildSlurl (NewAge) Archile Azalee A way to create a SLurl in a single function BuildSlurl
SL Mail V1.2 Flennan Roffo Second Life mail client V1.2 (released sept'07). Send and receive mail from within Second Life from and to any address. With Address Book function and many chat commands. V1.3 is upcoming soon!
SL NTPoHTTP client SignpostMarv Martin Second Life Needs Time Parsing over Hyper Text Transfer Protocol

Emulates the function of llGetWallclock for any timezone by using SLOpenID's SLNTPoHTTP service. Also supports ISO 8601 and RFC 2822 timestamps. Script is dependent upon an external service operated by the author!

Smile Kira Komarov An extended smile script supporting two smiles (extendable via a list) and a time delay triggering them at random.
Smooth Rotating Door Toy Wylie A script for doors that open and close smoothly using llTargetOmega
Smooth Sliding Door SimonT Quinnell A script for sliding doors that open and close smoothly using llMoveToTarget. Asjusts for prim orientation.
Song Requests Kira Komarov Helper script for DJs, allowing listeners to request songs and make dedications.
Speed Tester Bobbyb30 Swashbuckler Similar to the Efficiency Tester, this script allows you to test the speed of a particular function or snippet with multiple trials giving min/max/avg/median and the standard deviation.
Spiral Staircase Generator Meyermagic Salome Generates nice looking spiral staircases without much hassle.
Static_URLs Jor3l Boa How to generate a static url for HTTP-In temporal limitations.
String Compare Xaviar Czervik Compares two strings and reliably returns either 1, -1, or 0 if they are the same.
Synchronize Cay Trudeau Makes synchronized start to a task on even/odd seconds
String: Reverse Void Singer Returns an input string in reverse order
String: Last Index Void Singer Returns the last index of search found in string (the backward equivalent of llSubStringIndex)
Tail Messages (NewAge) Asia Snowfall A super nice easy to use script for those non-scripters out there! NewAge coding has done it again where you no longer need to scroll up and down adding buttons and adding messages, Features a tag system (you'll see what i mean :P)
Taper Door (minimalistic) Kopilo Hallard A basic script for doors which open and close using taper.
Teleport HUD Jesse Barnett WORKS TO 4096 METERS!! Very user friendly teleport HUD. Add destinations by touching "Add" & naming destination in chat. Automatically gets sim name and coordinates. Will only display the destinations in the sim you are currently in. Demonstrates more advanced list manipulation and stride functions.
Teleporter (landmark based) Void_Singer Uses Landmarks to offer map teleports. Works as Hud or inworld objects, just drop in landmarks and go.
Text Scroller Fred Gandt A simple text display object that scrolls text (applied as a texture) from right to left (like those LED signs) in a continuous loop.
Texture Changers Bobbyb30 Swashbuckler A collection of texture changing scripts.
Texture Management Revolution Perenti Dialog Menu based Texture Selection.
Texture Slide Xen Lisle Slides a texture on mouse movement
Tic Tac Toe CG Linden Step by step demo on how to implement a larger scripting project
TightList Strife Onizuka Tight List is a family of functions for encoding lists as strings and then decoding them back into lists.

There are two flavors: TightList and TightListType. TightListType preserves types and uses a 6 char header, while TightList uses a 1 char header that doesn't preserve type.

Timer Module Isabelle Aquitaine Manage multiple timers via linked messages.
Timestamp:
Unix time code to list format
Void Singer converts Unix timestamps to their [Y, M, D, h, m, s] equivalents (ex: 1234567890 to [2009, 2, 13, 3, 31, 30])
Timestamp:
List format to Unix time code
Void Singer converts [Y, M, D, h, m, s] timestamps to their Unix equivalents (ex: [2009, 2, 13, 3, 31, 30] to 1234567890)
Timestamp:
Weekday from Unix timestamp
Void Singer Gets weekday from Unix timestamps (ex: "Friday" from 1234567890)
Timestamp:
Weekday from (Y, M, D) format
Void Singer Gets weekday from (Y, M, D) timestamps (ex: "Friday" from (2009, 2, 13))
Tipjar Kira Komarov This is a fully fledged tipjar supporting shared access, split profits, inviting to group, handing over gifts, maintaining statistics of who tipped most and who tipped in general, eliminating deed to group and comes with an innovative feature: it periodically moves around from avatar to avatar in the room and returns back to its initial position after a sweep. This way your tijpar will not be static, but participate in the party!
Touch A Quote CodeBastard Redgrave Touch an object to read quotes sequentially from a notecard
Touring Balloon Hank Ramos Automated touring balloon with many options from long ago. Always seems to work on one SL release, and not the other.
Towncrier Kira Komarov A simple towncrier to be used in role-play SIMs or wherever there is a need to broadcast news in random intervals.
Trivia Kira Komarov A trivia game engine with provided ready-made notecards.
Under Age Boot Chance Unknown Security device example to teleport home accounts below a minimum age limit; can be useful in combating free griefer accounts.
UNDO_PosRot Rolig Loon Allows user to undo position and rotation changes that have been made "manually" to any or all prims in a linkset.
Universal Translator Hank Ramos Chat listener that handles seamless translation of public chat between 50+ written languages without the need for configuration. Handles numerous avatars, auto-detects languages, and works together with multiple copies of translators to spread-workload using a sophisticated back-end communications sub-system.
Unix2DateTime Flennan Roffo Conversion from Unix time (llGetUnixTime()) to date and time string and vice versa.
Unmutable Descript Nagger Bobbyb30 Zohari To nag avatars to take off their scripted attatchments.
Unpacker On Rez (NewAge) Asia Snowfall A very simple to use script for all you creators out there, This script will enable you to send out boxed items and make it easier for users to unpack, Also features auto die on completion. Very simple to configure!
Unpacker On Touch (NewAge) Asia Snowfall Exactly like Unpacker On Rez, But changed some things about to make it Unpack On Touch
Update distributor Dale Innis Distribute an object (like a project update) to a list of people named in a notecard.
UUID2Channel Project Neox Optimised version of the original key2channel generators.
UUID Song Generator Sendao Goodman Translates a UUID into a simple song and plays it.
VirtualID URL Mapper for HTTP-in Cenji Neutra A script showing how to setup a static URL of the form <your-alias>.obj.virtualid.info which maps to the dynamic HTTP-in URL LSL generates and keeps it up-to-date.
Visitor Greeter Void_Singer Reduced spam visitor greeter, highly configurable, easy to modify.
Visitor Logger (Web/Basic) Buddy Sprocket A very basic visitor logger - log visitors in SL to a text file on your web-site.
Visitors Kira Komarov A series of scripts to hold lists of visitors taking into account display names and supporting tracking multiple visits.
Vote Simple JB Kraft Simple vote collector. One avi, one vote.
Walking Sound (NewAge) Asia Snowfall Very powerful walking sound script, Featuring customer ability to add their own sounds with the API Sound Feature!
Wanderer Kira Komarov A script that can be used to randomly move a prim around relative to its origin point. Can be used for breeders, robots, birds and other applications where a primitive has to move around by itself.
WarpPos Keknehv Psaltery Non-physical movement without the 10m limit.
Wiki3DBuilder Wiki3DBuilder1.0 Salahzar Stenvaag Allows a group of people to collectively build up complex 3D mindmaps with connected concepts. Uses particles for connections and low prim usage. Nodes can be textured, colored, changed form size moved collectively by everybody and can distribute notecards, landmarks, URL, objects, textures. I provide two version 0.1 and 1.0 and probably next version will communicate with moodle and sloodle external websites.
Window Control Emmas Seetan For window opacity, helpful for buildings.
WHMcs SecondLife plugin Alicia Sautereau Linden Dollar payment plugin for the WHMcs hosting portal.
XTEA Strong Encryption Implementation Morse Dillon An LSL implementation of XTEA (eXtended Tiny Encryption Algorithm). This is the first known public release of a 'real' strong encryption implementation in LSL and is released under the GNU General Public License (GPL).
XyText Xylor Baysklef Display text (up to 10 characters) on a prim. Use as many prims as desired.
XyyyyzText Criz Collins Display text (up to 10 characters) on a prim. Displays different text for each line instead of one single text, that will be broken into the next lines. Watch here for what that means: http://screencast.com/t/1wMLujLcEO
XyzzyText Thraxis Epsilon and Gigs Taggart Display text (up to 10 characters) on a prim. Way more efficient than XyText.
Youtube TV Morgam Biedermann Watch your favorite Youtube videos / auto set the texture to the parcel media texture.
Zero Lag Poseball Jippen Faddoul and Daemonika Nightfire A simple poseball with no lag
Zigzag Sequence Project Neox Zigzag sequence generator I developed while scripting checkers
Input number of seconds, get a string back that shows days, hours, minutes, seconds Fire Centaur Returns a string that displays days, hours, seconds
Random Giver Prim Damian Darkwyr A randomized item giver with a game-like twist
Client Specific Contents Giver Damian Darkwyr Give Contents only to users of a specific Client. Such as Phoenix, CoolVL or 2.0

Support Script Library

These are scripts in other languages, intended to be run on other systems that support scripts written in LSL

Name Creator Description
phpPathfinding Nexii Malthus PHP script for offloading complex pathfinding operations away from heavy use simulators onto external servers. Primarily A* Algorithm. Flexible -- works with any type of node graph. Public Domain. Clean and minimalistic code.
Calendar Image UUID API Ina Centaur API that gives the UUID of an image of a calendar image give month and year arguments.
HTTP Post request to a PHP server Corto Maltese This small library allows you to make simple POST requests to your website. The libraries allow you to get your request through the variable $_POST on the server. It also include a basic security mechanism aimed to stop hacking. Comprises of LSL client script and PHP server script.
Key2Name.php Ina Centaur Get Avatar's Name using Second Life search service. (like in LSL Key2Name)
Lame Object DNS and Cross Sim Messaging Liandra Ceawlin Simple, cheeseball method of doing cross-sim communications with http-in and an external object DNS service.
LSL Minify Kira Komarov LSL Minification and obfuscation tool written in JavaScript. Contains a form on the wiki using a widget where you can post LSL scripts to be minified as well as the source-code. For another full-screen demo you may check it on my website. To use, paste any LSL code and press ctrl+alt+enter to get the minified version.
llXorBase64StringsCorrect SignpostMarv Martin An implementation of llXorBase64StringsCorrect in PHP- should be useful if you're using llXorBase64StringsCorrect to do cryptography work in LSL2 and posting it out to the web via llHTTPRequest.
lsl_fu.php SignpostMarv Martin A basic OOP'd PHP Class containing VeloxSeverine's $_POST fixer and Marv's own eccentric ideas for "fixing" things.
Name2Key.php Jor3l Boa Get Avatar's UUID using Second Life search service. (like in LSL Name2Key)
Public Object DNS Liandra Ceawlin Public object DNS-like system running on GAE, for http-in. Hopefully scalable enough for wide-spread usage.
Silo Zero Linden General purpose data store in PHP. Use this to persist arbitrary data from LSL via llHTTPRequest. See:
Silverday ObjectDNS Till Stirling Dynamic Object-DNS-System to provide dynamic mapping of LSL-URLs to persistent domains. Features include redirect service, password protected domains, write protected domains, LSL-API for all necessary functions, optional web-interface.
SLDB Luc Aubret Flexible web database storage using PHP/MySQL. Used to store per-user field/value pairs from in-world objects using llHTTPRequest.

See Also

Articles