So let's say I want to learn LSL...
|
Marianne McCann
Feted Inner Child
Join date: 23 Feb 2006
Posts: 7,145
|
12-27-2006 10:16
(Mods: posted here for general response; feel free to move to scripting tips if necessary.)
I've reached a point in Second Life where I can do a lot with a prim. I know my way around textures. I'm getting to be okay with animations. Yet there is one frontier that I've only scratched the surface of: scripting using LSL.
I'm not a total newbie when it comes to scripting. I first learned such on AOL's old proproietary language. I've done some rudimentary JavaScript on the web, and know my way around HTML.
I've taken a few in-world classes that include scripts, but most only scratch the surface, providing pre-written scripts and having a student change a value here and there. This is great, but only gets my feet wet.
So my question is this: What would those here who do know their way around a script suggest to me as a way to really learn what I'm doing with LSL? Any suggestions?
Mari
_____________________
  "There's nothing objectionable nor illegal in having a child-like avatar in itself and we must assume innocence until proof of the contrary." - Lewis PR Linden "If you find children offensive, you're gonna have trouble in this world  " - Prospero Linden
|
RobbyRacoon Olmstead
Red warrior is hungry!
Join date: 20 Sep 2006
Posts: 1,821
|
12-27-2006 10:36
In the 14 years that I have been programming, I have had to learn many new languages, from embedded C++ to javascript to domain-specific language, etc. The one thing that always works best for me personally is to find an idea for something I actually want to make. This should be simple enough to not be completely overwhelming, but just barely complex enough to actually make you seek out information on how various tasks are accomplished. Because it is something you personally are interested in, you will be motivated to learn and will be proud of your accomplishment. What might that kind of project be? I suspect the things that are interesting "my first LSL project" ideas are very different between you and me, but maybe a "eject from my land" device that listens on channel 86 (haha) for a partial avatar name and scans for someone with that name and uses llEjectFromLand() to get rid of them. Such a device is not terribly complex, but involves using listens (to hear your command), sensors (to find a matching avatar), string comparison (if you don't want it to be case sensitive, and also for partial name matches), and such nifty LSL functions as llUnSit() and llEjectFromLand(). It is useful, makes you learn a few things, and is fun to show to friends (haha). Yeah, probably not your cup of tea on that particular project, but I hope you get the overall idea  Oh, and the LSL wiki is your bestest buddy 
|
Nyoko Salome
kittytailmeowmeow
Join date: 18 Jul 2005
Posts: 1,378
|
12-27-2006 12:36
don't be afraid of 'reinventing the wheel' - it's the best way to learn, really, and who knows? you might do it just the -right- way, -your- way, and make a little from it.  a 'simple' radio is simple enough, but when you want to add a spiffy 'chooser' dialogbox, gets more complex... then you find out that storing frequencies in lists is memory-inefficient, so start packing into strings and making a solid set of functions around that... and then all that may need a notecard reader to allow easy updates to a preferences card in the radio... you get the idea  and along the way, you've built a lot of pieces you'll need for other projects.
_____________________
 Nyoko's Bodyoils @ Nyoko's Wears http://slurl.com/secondlife/Centaur/126/251/734/ http://home.comcast.net/~nyoko.salome2/nyokosWears/index.html "i don't spend nearly enough time on the holodeck. i should go there more often and relax." - deanna troi
|
Krazzora Zaftig
Do you have my marbles?
Join date: 20 Aug 2005
Posts: 649
|
12-27-2006 13:08
oh another huge piece of advice or two. Never be afriad to ask and everyone is different. I ask a question and I get the same answer back...looking ten different ways o.O That boggles my mind heavily so usually I have to step back and go "help" or take the best one and crank it out.
|
Ishtara Rothschild
Do not expose to sunlight
Join date: 21 Apr 2006
Posts: 569
|
12-27-2006 21:04
All I ever did to learn scripting was to read the LSL101 tutorial on the Wiki: http://www.lslwiki.com/lslwiki/wakka.php?wakka=LSL101After spending 20 minutes on reading it, I started to script and learned the rest as I went along. I never programmed much before, only a little Basic (Commodore's C64 Basic, Blitz Basic on the Amiga and later Visual Basic on the PC), plus some Java Script. I've always been afraid of C, without a reason as it turned out (supposed that LSL is quite C-like).
|
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
|
12-27-2006 21:22
From: RobbyRacoon Olmstead What might that kind of project be? I suspect the things that are interesting "my first LSL project" ideas are very different between you and me, but maybe a "eject from my land" device that listens on channel 86 (haha) for a partial avatar name and scans for someone with that name and uses llEjectFromLand() to get rid of them. There are a number of LSL Tutorials, you can find a list here: http://www.lslwiki.com/lslwiki/wakka.php?wakka=LSLTutorialsAnd you could add a Dialog box to show avatar names that matched the search. Another good starter project is an avatar radar, which rezzes icons for each user at 1/128th scale (with floating text above the names). Requires, rezzing, listens, inter-object communications, sensors and a little vector math. (for general use it can stay, seen this question enough times in the script tips may get a few more takers with it here)
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river. - Cyril Connolly
Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence. - James Nachtwey
|
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
|
12-27-2006 22:06
I would say.. dig into that big box of freebies you surely have in inventory, and start looking at the old, crusty models. FInd a moddable one, with a moddable script. MOve the scripts into a new model, and then start tinkering with the script to make it do what you want it to. The LSL Wiki is your friend here.. it's kind of hard to navigate sometimes, but almost every command is explained in kinda good detail. So with a freebie script, and the wiki to look things up, you can make a bunch of really good things.
For me, the projects that SHOULD have been first are as follows.
Floating Text A poseball A "flip titler" (floating text that responds to chat) A Rezzer A Gun (slightly upgraded rezzer) A holographic keyboard (changes modes based on an if) Something that changes between two modes via chat commands (open, closed, or hide/.show) A HUD device that "says" the commands to the attachment
MOst of these things can be built in a few hours, with a basic example freebie, and the wiki.
The best resource I can recommend, is the Scripting Tips forum. Very often you can get an answer in a short period of time, and the people there tend to be more than willing to meet with you in world if you're stuck. Combine that with the help of a couple of good friends with the know-how.. and you are well on your way.
_____________________
 ● Inworld Store: http://slurl.eclectic-randomness.com ● Website: http://www.eclectic-randomness.com ● Twitter: @WinterVentura
|
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
|
12-27-2006 22:11
From: Winter Ventura The LSL Wiki is your friend here.. it's kind of hard to navigate sometimes, but almost every command is explained in kinda good detail. So with a freebie script, and the wiki to look things up, you can make a bunch of really good things.
Not only should you make the wiki your friend, you should make it your friends friend. Create an account on the wiki and you can modify pages. Is a sentence awkward worded? Please change it. Know just how the documentation on a function could be better written? Please change it. Before you make any major changes please take a look at the Style Guide, so your changes fit in with the style of the wiki.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river. - Cyril Connolly
Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence. - James Nachtwey
|