Creating A Flying Pet: Lesson 2 Chat Log
Catfart Grayson: one second, Im going to make a copy of the chat so far and drop it in a notecard
onionpencil Musashi: excellent plan!
Catfart Grayson: hmm having a buit of trouble bear with me
Catfart Grayson: right, you should be able to bye the screen for 0 dollars now
Catfart Grayson: Ive put the transcript onto a card inside
Elle Pollack un-crashes, will stop using SL and the GIMP at the same time now
Catfart Grayson: lol
Xander Moe: lol
Catfart Grayson: how we doing?
Ariel Monde: heh, Gimp and SL at the same time User here
Iamnot Prefect: lol ya i have a gig of ram... and they get unhappy when i run them at the same time.. but no crashing
Rhiannon Chatnoir: good
onionpencil Musashi: ok
You: fine proceed
Arda Fauna is online
Catfart Grayson: right, anyone need a comfort break before I start again?
Hokuto Gorham: no
onionpencil Musashi: ok here
Morlee Moreau: luckily, my sl butt doesnt get sore
Xander Moe: mine does
Catfart Grayson: Ok, so how are ppl with Link messages?
Rhiannon Chatnoir: ok
Dr Tapioca: okay
Hokuto Gorham: un linked
Carrina Hathor: ok
Iamnot Prefect: ok
Xcaliber Zadoq: don't know
Ariel Monde: a quick review on it please? it was a while ago
neand Fleming: no clue
Azazel Czukor: sketchy but I'll figure it out
Xander Moe: uhh heh
Elle Pollack: Haven't tried to figure them out yet
Alan Kiesler: I understand the basics.
Xander Moe: no idea
Catfart Grayson: sorry lagged here a sec
You: i find one that works and copy paste it
Candide LeMay: http://secondlife.com/badgeo/wakka.php?wakka=HomePage is your friend
Catfart Grayson: SO link mesage are used to allow different scripts in the same object pass information
Dr Tapioca: lsl wiki
Catfart Grayson: they can be in different prims if you want
Catfart Grayson: for our pet, we are going to use a link message from the brain to the movement script
Catfart Grayson: telling it where to move to
Catfart Grayson: and one from the movement script to the brain, when it reaches the target
Catfart Grayson: As usual in LSL, there is a function to send a link message
Catfart Grayson: it takes four parameters
Catfart Grayson: num, str and id can contain whatever you want, as loing as its a integer, string and id whichis a bit limited
Catfart Grayson: and linkset determines where the link message will be sent
Catfart Grayson: linknum can have several different values
Catfart Grayson: do you want me to go through these?
Xcaliber Zadoq: yes, pls
Catfart Grayson: OK, the asumptio here is that we have an object comprising several linked prims
Catfart Grayson: if we set linknum to LINK_ROOT, then the message will only be sebnt to
Catfart Grayson: scripts that are actuall in the root prim of the object
Catfart Grayson: if its in a child prim, it wont get the message
Catfart Grayson: LINK_SET sends the lin mesage everywhere
Catfart Grayson: LINK_ALL_OTHERS sends the link message to all prims except the prim the script is in
Catfart Grayson: and LINK_ALL_CHILDREN sends the message to all prims except the root prim
Catfart Grayson: or, you can actually set it to the actual link number of the prim if you know it
Catfart Grayson: Happly, we will only ever be using one of these values, no need to remember them all
Hokuto Gorham: :)
Catfart Grayson: so jus to recap that
Catfart Grayson: we are going to use this function to send out a link message
Catfart Grayson: Linknum says where to send the data to
Catfart Grayson: and the data can be an integer in num, a string in str, and a key in ID
Catfart Grayson: Just a few thoughts here on what we want out of our link messages
Catfart Grayson: we want to be able to send several different items at the same time
Catfart Grayson: we want several different messages we want to send other data types besides string integers and keys
Catfart Grayson: sometimes we just want to send a simple stop message
Catfart Grayson: so our system must cater for quite a lot
Catfart Grayson: This is an example of one way we could design it
Catfart Grayson: If we put each script in a prim, and use Linknum
Catfart Grayson: we can send each message straight to the script that needs it and only that script
Catfart Grayson: but, sometimes we may want to send a message to two scripts, and what if we dot have a prim for every script?
Catfart Grayson: so not too good
Catfart Grayson: this way is better
Catfart Grayson: If we set Linknum to LINK_SET, every message goes to every script
Catfart Grayson: doesnt matter which prim the script is in
Catfart Grayson: we can then use the num variable to tell which message is which
Catfart Grayson: so num = 1 could be a move message
Iamnot Prefect: is there a performence impact using this vs direct messaging?
Catfart Grayson: num = 2 could be the stop mesage etc
Catfart Grayson: Iamnot, not that Ive noticed, but Im only firing off my scripts evey 0.5 seconds or so
Catfart Grayson: in theory more scripts are having to check
Catfart Grayson: each message to decide if it is a message for it or not
Gino Medici: is there a SL equivalent of enums for the numbers?
Catfart Grayson: but I dont think its a norticiable drop
Iamnot Prefect: ok i would think with low script count(less then say 10) prob not much diference
Catfart Grayson: enums?
Gino Medici: Labels for the numbers, rather than 1,2,3 etc.
Catfart Grayson: ah, no Im afraid not
Gino Medici: ok :(
Alan Kiesler: You can set those yourself, imnot, if worried about that.
Catfart Grayson: OK Im going to try and finish this bit of design and then leave it there for today
Xcaliber Zadoq: examples R helpful
Catfart Grayson: now this design is good, and probalby the usual way you will see link messages used
Catfart Grayson: but does suffer from one diadvantage
Catfart Grayson: if you try and combine scripts from different creators, you can have clashes
Catfart Grayson: If you have a movement system that uses 1 to represent a move
Catfart Grayson: and someone else has a combat system that uses 1 to represent a hit
onionpencil Musashi: oops
Catfart Grayson: if you try and combine them together you could have problems
Catfart Grayson: not very likly I'll admit, but I like to think ahead
Catfart Grayson: this is the system I use
Catfart Grayson: I set num to 150 everytime
Ariel Monde: and we will use this system for the rest of this class ?
Catfart Grayson: now I can filter out MY mesages from anyothers that are running
Catfart Grayson: Ariel yes
Catfart Grayson: if I mix my messages with someone lese, the chances of a clash are very reduced
Gino Medici: ah ok - thats more like enums :D
Catfart Grayson: plus, I can make my scripts open source, if someone elses scipt wants to
Catfart Grayson: send a message to one of my scripts, they know to use channel 150
Catfart Grayson: right, so we are using linknum as LINLK_SET all the time
Catfart Grayson: num is going to 150, or what ever number you choose for your scripts
Catfart Grayson: which means we are going to have to put all the data
Catfart Grayson: and the message type into the remaining data filed, which is a string
Catfart Grayson: Im ignoring the key field at the moment
Catfart Grayson: everyone happy?
Gino Medici: yep
Catfart Grayson: so thats what we need, and a quick browse trough the WIki
Catfart Grayson: brought this up
Catfart Grayson: a nice method of comapcting all our data into a string and
Catfart Grayson: decoding the other end
Catfart Grayson: Now Im going to leave it here
Catfart Grayson: Next time we will start going into the actual code
Catfart Grayson: we are going to use in our link messages
Rhiannon Chatnoir: will you be giving us the slides and notes for this second part as well
Catfart Grayson: and take a look at the design of the brain script
onionpencil Musashi: would be helpful if doable
Catfart Grayson: Rhiannon, Id prefer to leave that till the end
Rhiannon Chatnoir: and, when is the second session happening
Rhiannon Chatnoir: ok
Catfart Grayson: Next Sunday, same time same place
onionpencil Musashi: same bat time and channel i think ;)
Candide LeMay: don't forget your homework folks ;-)
Buwaya Edelbrock: Ok.
Catfart Grayson: lol
rocky Erato: lol
Dr Tapioca: my dog already ate mine
Catfart Grayson: Ok thanks agin for coming, I hope it was usuful a
Catfart Grayson: and I look forward to seeing you next week
onionpencil Musashi: thansk!
rocky Erato: thanks
Rhiannon Chatnoir: thank you
Hokuto Gorham: cool stuff
Gino Medici: Cool - Thanks Catfart. Looking firward to next week! :D
Azazel Czukor: thanks much Catfart that was awesome
Catfart Grayson: thankyou all. Oh if you havnt done so, pop over to Fujin to check out some of my other creations
Hokuto Gorham: sure
Morlee Moreau: where is that?
Dr Tapioca: lol
Elle Pollack: *snerk*
Rhiannon Chatnoir: check his profile
Catfart Grayson: whoops
Morlee Moreau: ok, thanxz
Catfart Grayson: whistles
Catfart Grayson: right, I must go thanks again for coming
Catfart Grayson: see you later
Ariel Monde: Catfart, i plan to teach some classes myself.. where do you get this blackboard object ?
Catfart Grayson: ariel, chase me later Il drop you a copy off
Zina LeMay: catfart, are you teaching a beginners course?
Iamnot Prefect: the URL for that page is http://secondlife.com/badgeo/wakka.php?wakka=ExampleArgumentMultiplexing for anyone that wants it
Catfart Grayson: whoops, just want to capture that chat log
Ariel Monde: okay... i hope to find the one that can read the notecard and snapshots/textures and use the scrolling feature.
Catfart Grayson: Zina, no try James Otis's clasess they are very good
Zina LeMay: thanks
onionpencil Musashi: yes they are
Candide LeMay: ok catfart i will teach Inventory 101 once i get the approval from Haney Linden
Catfart Grayson: gak I hate trying to copy from the history window
Candide LeMay points at ctrl-a ctrl-cAriel Monde:)
Back To The Create A Flying Pet Home Page
Back To The Script Library
Comments (0)
You don't have permission to comment on this page.