Difference between revisions of "LSL Tutorial"

From Second Life Wiki
Jump to navigation Jump to search
(Add books section)
(17 intermediate revisions by 4 users not shown)
Line 4: Line 4:
'''[[Getting Ready to Learn LSL]]:''' Before learning LSL, it is helpful to learn the basics of Second Life. Here are some pointers to getting started.
'''[[Getting Ready to Learn LSL]]:''' Before learning LSL, it is helpful to learn the basics of Second Life. Here are some pointers to getting started.


'''[[Help:Getting started with LSL|Getting started with LSL]]:''' Tutorial for absolute beginners.  Basic SL inventory and navigation required.
'''[[Help:Getting started with LSL|Getting Started with LSL]]:''' Tutorial for absolute beginners.  Basic SL inventory and navigation required.


'''[[Hello Avatar]]:''' A place to try next after Getting Started in LSL.
'''[[Hello Avatar]]:''' A place to try next after Getting Started in LSL.


'''[[Chatbot]]:''' A short tutorial list of concise LSL statements that make the default wood box translucent and bouncy and then kick and spin it along, also a script to run such commands for you.
'''[[A Basic LSL Tutorial]]:''' A tutorial for people who are new to LSL scripting, with basic tasks and LSL scripting terms explained in quick short answers.


'''[[DialogMenus|Building a dialog menu step by step]]:''' A tutorial for learners on implementing a simple, starter dialog menu system. Designed to illustrate the basic principles in layman's English.
'''[[LSL 101: The Wikibook]]:''' A collaborative project to create a "complete" narrative guide to LSL scripting, starting with no assumptions of previous programming experience, and going to ... who knows where?


'''[[Video Tutorial/Script editor featurettes]]:''' Features of the inworld Script editor. Look at [[LSL Alternate Editors]] for external 3rd party editors.
'''[[Chatbot]]:''' A short tutorial list of concise LSL statements that make a default wood box translucent and bouncy and then kick and spin it along, also a script to run such commands for you.


'''[[LSL 101: The Wikibook]]:''' A collaborative project to create a "complete", narrative, guide to LSL scripting, starting with no assumptions of previous programming experience. and going to ... who knows where?
'''[[DialogMenus|Building a dialog menu step by step]]:''' A tutorial for beginning scripters on implementing a simple menu dialog system. Designed to illustrate the basic principles in layman's language.


'''[[A Basic LSL Tutorial]]:''' A tutorial for people who are new to LSL scripting, with basics tasks and LSL scripting terms explained in quick short answers for you.
'''[[Video Tutorial/Script editor featurettes|Video Tutorial: Script editor featurettes]]:''' Features of the inworld Script editor. Look at [[LSL Alternate Editors]] for external 3rd party editors.


== In-World Tutorials ==
== In-World Tutorials ==
'''[http://slurl.com/secondlife/Hyles/124/208/1002/?title=Linden%20Script%20Exhibition Free interactive in-world Linden Script Tutorial]:''' Bromley College has developed a free interactive scripting tutorial exhibition in-world.
You can also find the tutorial in-world by choosing '''Search > Classifieds''' and searching for the phrase '''linden script tutorial'''


'''[http://slurl.com/secondlife/Star%20Beach%20Island/150/212/22/?x=300&y=300&img=http%3A//cd.bromley.ac.uk/bteccourses/sl/images/shimmer_island.jpg&title=Learning%20in%20Virtual%20Reality&msg=Here%20at%20Shimmer%20island%2C%20I%20shall%20be%20exploring%20the%20potential%20of%20Second%20Life%20in%20support%20of%20my%20current%20trials%20with%20the%20Moodle%20vle%20for%20Virtual%20Learning.%20So%20please%20feel%20free%20to%20drop%20in%20for%20a%20chat%20with%20us%20to%20see%20how%20things%20are%20going.%20Regards%20Skipper%20Abel  Bromley College in-world Virtual Learning trials]:''' Please feel free to come over and look around
'''[http://slurl.com/secondlife/Star%20Beach%20Island/150/212/22/?x=300&y=300&img=http%3A//cd.bromley.ac.uk/bteccourses/sl/images/shimmer_island.jpg&title=Learning%20in%20Virtual%20Reality&msg=Here%20at%20Shimmer%20island%2C%20I%20shall%20be%20exploring%20the%20potential%20of%20Second%20Life%20in%20support%20of%20my%20current%20trials%20with%20the%20Moodle%20vle%20for%20Virtual%20Learning.%20So%20please%20feel%20free%20to%20drop%20in%20for%20a%20chat%20with%20us%20to%20see%20how%20things%20are%20going.%20Regards%20Skipper%20Abel  Bromley College in-world Virtual Learning trials]:''' Please feel free to come over and look around
Line 27: Line 24:
'''[http://slurl.com/secondlife/Horsa/43/236/84 Many free scripting tutorials that are easy to read at our College of Scripting, Music and Science]:'''  Come by to learn scripting and building.
'''[http://slurl.com/secondlife/Horsa/43/236/84 Many free scripting tutorials that are easy to read at our College of Scripting, Music and Science]:'''  Come by to learn scripting and building.


'''[http://swiss-projects.ch/secondlife-tutorial Swiss Projects Tutorial, the Swiss Tutorial for Second Life®; interactive, inworld and in the Web, in German]:''' das schweizer Tutorial zu Second Life®; interaktiv, inworld und im Web, in deutscher Sprache. SLURL: '''[http://slurl.com/secondlife/swiss%20projects]'''
'''Swiss Projects Tutorial, the Swiss Tutorial for Second Life®; interactive, inworld and in the Web, in German:''' das schweizer Tutorial zu Second Life®; interaktiv, inworld und im Web, in deutscher Sprache. SLURL: '''[http://slurl.com/secondlife/swiss%20projects]'''


== External Tutorials ==
== External Tutorials ==
'''[http://www.ddj.com/dept/ai/197008520?pgno=1 Using LSL introductory tutorial]''' Dr. Dobb's tutorial
'''[http://www.ddj.com/dept/ai/197008520?pgno=1 Using LSL introductory tutorial]''' Dr. Dobb's tutorial


'''[http://www.slbuilding.com/Clock_video.html Building a Clock in Second Life - Full Video Tutorial]:''' Video tutorial for building and scripting a clock.
'''[http://xahlee.org/sl/ls.html Linden Scripting Language (LSL) Tutorial]''' Xah Lee's tutorial on LSL


'''[http://people.cc.ku.edu/~grobe/intro-to-LSL/ Using the Linden Script Language]:''' A very comprehensive tutorial on basic scripting from Kan-ed.
'''[http://people.cc.ku.edu/~grobe/intro-to-LSL/ Using the Linden Script Language]:''' A very comprehensive tutorial on basic scripting from Kan-ed.
'''[http://johannahyacinth.blogspot.com/2006/12/scripting-basics-part-1.html Scripting Basics (Part 1)]:''' Scripting basics from Johanna Hyacinth.  Also try [http://johannahyacinth.blogspot.com/2006/12/scripting-basics-part-2_18.html part2] and [http://johannahyacinth.blogspot.com/2006/11/lsl-magic-barrier.html part3].
'''[http://stonedchipmunkrocks.googlepages.com/peternelson%27sguidetolsl Peter Nelson's Guide to LSL]:''' A series of LSL tutorials from Peter Nelson. A work in progress.
'''[http://dev.aol.com/article/2007/04/second-life A New Hampshire Coder in Linden Lab's Court]:''' An article on dev.aol.com discussing software engineering strategies for LSL
'''[http://slifeguide.googlepages.com/scripting.html Scripting in Second Life]:''' by oceanspray
'''[http://wintermute.linguistics.ucla.edu/lsl/ Programming in Second Life]''' tutorial for teen grid and others
'''[http://www.wakatech.com/articles/lsl-scripting-basics/configuring-lsl-scripts-using-a-notecard/ Configuring LSL Scripts Using a Notecard]''' Tutorial on configuring with notecards.
'''[http://hobblescripts.com/index.php?option=com_content&view=article&id=2:lsl-scripting-tutorial&catid=5:tutorial&Itemid=3 An easy to follow tutorial for LSL]''' Guides you through creating your first fun script explaining the basic language features.


== Scripting Tools ==
== Scripting Tools ==
Line 65: Line 48:
* '''[http://www.3greeneggs.com/autoscript/ Autoscript]''' - Ann Enigma's versatile tool lets you make a script with a few clicks, then examine and edit it further. Easily add interactivity to your objects and get started scripting! Available in Français and Deutsch too.
* '''[http://www.3greeneggs.com/autoscript/ Autoscript]''' - Ann Enigma's versatile tool lets you make a script with a few clicks, then examine and edit it further. Easily add interactivity to your objects and get started scripting! Available in Français and Deutsch too.


* '''[http://web.mit.edu/~eric_r/Public/S4SL/ Scratch for Second Life]''' - Eric Rosenbaums’s exciting app (for Mac and Windows) in development which lets you arrange scripts visually as if they were Legos. I haven’t had a chance to even scratch (ha!) its surface yet, but watch Eric’s video to better understand:
* '''[http://web.mit.edu/~eric_r/Public/S4SL/ Scratch for Second Life]''' - Eric Rosenbaums’s app for Mac and Windows which lets you arrange scripts visually as if they were Legos. I haven’t had a chance to even scratch (ha!) its surface yet, but watch Eric’s video to better understand:


* '''[http://particles-lsl-generator.bashora.com/ Particle script generator]''' - This formatted webpage may be easier to use than SL’s own script editor. Change your parameters and try it out inworld.
* '''[http://particles-lsl-generator.bashora.com/ Particle script generator]''' - This formatted webpage may be easier to use than SL’s own script editor. Change your parameters and try it out inworld.


* '''[http://www.heatonresearch.com/examples/particle/particle.html Encog's Particle Machine]''' - "The particle machine allows you to specify particle effects and see them created in the Second Life world."
* '''[http://www.miceonabeam.com MiceOnABeam Visual Scripting Tool]''' - MiceOnABeam is a visual programming tool that generates LSL scripts for SL. You choose among graphical modeling components to specify the program flow of your script in terms of states and the events that transition between the states. You can then use the built-in LSL Action Wizard or insert your own LSL code to specify what happens when an event occurs. The program then generates the LSL code for the model to form a complete script for the SL environment. Check out the demo video '''[http://bit.ly/ihCqyf here]''' or on '''[http://www.youtube.com/watch?v=LBA8wvoA9EI YouTube]'''. A Free version can be downloaded from '''[http://www.miceonabeam.com here]'''.
 
* '''[http://ugleh.com/llDialog.php Dialog Menu script generator]''' - Ugleh Ulrik's Dialog Menu generator creates a menu for even the basic Scripters.
 
* '''[http://www.miceonabeam.com MiceOnABeam Visual Scripting Tool]''' - MiceOnABeam is a visual programming tool that generates LSL scripts for SL. You choose among graphical modeling components to specify the program flow of your script in terms of states and the events that transition between the states. You can then use the built-in LSL Action Wizard or insert your own LSL code to specify what happens when an event occurs. The program then generates the LSL code for the model to form a complete script for the SL environment. Check out the demo video '''[http://bit.ly/ihCqyf here]''' or on '''[http://www.youtube.com/watch?v=LBA8wvoA9EI YouTube]'''. A Free version can be downloaded from '''[http://www.miceonabeam.com here]'''.  


== Books on LSL ==
== Books on LSL ==
Line 79: Line 58:
----
----


* '''[http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470171146.html Creating Your World: The Official Guide to Advanced Content Creation for Second Life]''' - '''Creating Your World''' is a Linden Labs-approved text book on content creation, including a chapter on beginning scripting and LSL.  There is a free sample chapter (on building) available at the publisher's site. The book is available from [http://www.amazon.com/Creating-Your-World-Official-Advanced/dp/0470171146/ bookstores] everywhere.
* '''[http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470171146.html Creating Your World: The Official Guide to Advanced Content Creation for Second Life]''' - '''Creating Your World''' is a Linden Lab approved text book on content creation, including a chapter on beginning scripting and LSL.  There is a free sample chapter (on building) available at the publisher's site. The book is available from [http://www.amazon.com/Creating-Your-World-Official-Advanced/dp/0470171146/ bookstores] everywhere.


* '''[http://syw.fabulo.us Scripting Your World: The Official Guide to Second Life Scripting]''' - '''Scripting Your World''' is a Linden Labs approved reference on LSL and an example-based textbook on LSL scripting.  The first chapter (a language reference) is available for free from the publisher and the support site. The authors have published additional [http://syw.fabulo.us/wiki/Bonus_Material free chapters] on a variety of topics. Scripting Your World is available from [http://www.amazon.com/Scripting-Your-World-Official-Second/dp/0470339837/ Amazon] and other online and physical bookstores, in paperback and several electronic forms.
* '''[http://syw.fabulo.us Scripting Your World: The Official Guide to Second Life Scripting]''' - '''Scripting Your World''' is a Linden Lab approved reference on LSL and an example-based textbook on LSL scripting.  The first chapter (a language reference) is available for free from the publisher and the support site. The authors have published additional [http://syw.fabulo.us/wiki/Bonus_Material free chapters] on a variety of topics. Scripting Your World is available from [http://www.amazon.com/Scripting-Your-World-Official-Second/dp/0470339837/ Amazon] and other online and physical bookstores, in paperback and several electronic forms.


* '''[http://www.heatonresearch.com/category/programming-language/linden-scripting-language Jeff Heaton's books on LSL]''' '''Introduction to Linden Scripting Language for Second Life''' and '''Scripting Recipes for Second Life''' are independent books on scripting.  Much of the content is available at the Heaton Research website as free articles. The books are available from bookstores as well as electronically.
* '''[http://www.heatonresearch.com/category/programming-language/linden-scripting-language Jeff Heaton's books on LSL]''' '''Introduction to Linden Scripting Language for Second Life''' and '''Scripting Recipes for Second Life''' are independent books on scripting.  Much of the content is available at the Heaton Research website as free articles. The books are available from bookstores as well as electronically.

Revision as of 17:42, 14 August 2013

Beginner Tutorials

Getting Ready to Learn LSL: Before learning LSL, it is helpful to learn the basics of Second Life. Here are some pointers to getting started.

Getting Started with LSL: Tutorial for absolute beginners. Basic SL inventory and navigation required.

Hello Avatar: A place to try next after Getting Started in LSL.

A Basic LSL Tutorial: A tutorial for people who are new to LSL scripting, with basic tasks and LSL scripting terms explained in quick short answers.

LSL 101: The Wikibook: A collaborative project to create a "complete" narrative guide to LSL scripting, starting with no assumptions of previous programming experience, and going to ... who knows where?

Chatbot: A short tutorial list of concise LSL statements that make a default wood box translucent and bouncy and then kick and spin it along, also a script to run such commands for you.

Building a dialog menu step by step: A tutorial for beginning scripters on implementing a simple menu dialog system. Designed to illustrate the basic principles in layman's language.

Video Tutorial: Script editor featurettes: Features of the inworld Script editor. Look at LSL Alternate Editors for external 3rd party editors.

In-World Tutorials

Bromley College in-world Virtual Learning trials: Please feel free to come over and look around

Many free scripting tutorials that are easy to read at our College of Scripting, Music and Science: Come by to learn scripting and building.

Swiss Projects Tutorial, the Swiss Tutorial for Second Life®; interactive, inworld and in the Web, in German: das schweizer Tutorial zu Second Life®; interaktiv, inworld und im Web, in deutscher Sprache. SLURL: [1]

External Tutorials

Using LSL introductory tutorial Dr. Dobb's tutorial

Linden Scripting Language (LSL) Tutorial Xah Lee's tutorial on LSL

Using the Linden Script Language: A very comprehensive tutorial on basic scripting from Kan-ed.

Scripting Tools

These tools are designed to ease the process of scripting, whether it's autogenerating scripts or helping you to edit them. Some of them were featured in Torley's Autoscript post:

<videoflash>xW619vHfYeg</videoflash>




  • Con Wylie's Script Generator - Con Wylie's up-to-date tool lets you create a script in a few seconds. A easy to use interface helps you to create your script. this tool is updated weekly, so remember to visit to see what new scripts you can make! The tool can be downloaded for offline use. For when you are on the move a downloadable iOS webapp is just a click away with offline use as well

Torley Linden's Post about Con Wylie's Tool - Con Wylie has an improved LSL Script Generator, so if you’re new at scripting or just want the convenience of making object interactivity easy, check it out!


  • Autoscript - Ann Enigma's versatile tool lets you make a script with a few clicks, then examine and edit it further. Easily add interactivity to your objects and get started scripting! Available in Français and Deutsch too.
  • Scratch for Second Life - Eric Rosenbaums’s app for Mac and Windows which lets you arrange scripts visually as if they were Legos. I haven’t had a chance to even scratch (ha!) its surface yet, but watch Eric’s video to better understand:
  • Particle script generator - This formatted webpage may be easier to use than SL’s own script editor. Change your parameters and try it out inworld.
  • MiceOnABeam Visual Scripting Tool - MiceOnABeam is a visual programming tool that generates LSL scripts for SL. You choose among graphical modeling components to specify the program flow of your script in terms of states and the events that transition between the states. You can then use the built-in LSL Action Wizard or insert your own LSL code to specify what happens when an event occurs. The program then generates the LSL code for the model to form a complete script for the SL environment. Check out the demo video here or on YouTube. A Free version can be downloaded from here.

Books on LSL

These are real-world books with significant content on LSL and the process of scripting.


  • Scripting Your World: The Official Guide to Second Life Scripting - Scripting Your World is a Linden Lab approved reference on LSL and an example-based textbook on LSL scripting. The first chapter (a language reference) is available for free from the publisher and the support site. The authors have published additional free chapters on a variety of topics. Scripting Your World is available from Amazon and other online and physical bookstores, in paperback and several electronic forms.
  • Jeff Heaton's books on LSL Introduction to Linden Scripting Language for Second Life and Scripting Recipes for Second Life are independent books on scripting. Much of the content is available at the Heaton Research website as free articles. The books are available from bookstores as well as electronically.