Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Interesting snippet on how listens are processed

Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-13-2007 15:45
This was in the sldev mailing list today. Kelly Linden was responding to a post on listens and said something interesting:

"You are pretty close. The actual order of events is:
1. Chat that is said gets added to a history.
2. A script that is running and has a listen event will ask the history
for a chat message during its slice of run time.
3. When the script asks the history for a chat message the checks are
done in this order:
- channel
- self chat (objects can't hear themselves)
- distance/RegionSay
- key
- name
- message
4. If a message is found then a listen event is added to the event queue.

The key/name/message checks only happen at all if those are specified of
course.

So, the most efficient way is llRegionSay on a rarely used channel."
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Osgeld Barmy
Registered User
Join date: 22 Mar 2005
Posts: 3,336
11-13-2007 18:34
interesting that it will filter the channel before self, wonder how much overhead could be killed by that being re-ordered
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
11-13-2007 19:48
I like that it is better to use llRegionSay instead of llShout, llSay or llWhisper.
Kind of surprised me but then when you think about it, I guess it makes sense. One less thing for the simulator to process, it doesn't have to check the distance of the different objects to see which is in range.

heehee I guess if I was a simulator then it would be a major bitch if one object was talking to another using llWhisper but the objects were 10.001 meters apart :)
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Teddy Qinan
Registered User
Join date: 10 Mar 2007
Posts: 34
11-13-2007 19:54
From: Osgeld Barmy
interesting that it will filter the channel before self, wonder how much overhead could be killed by that being re-ordered

You would increase overhead. Think about it, checking channel would remove many more messages than checking self would, so the other way around your checking self on a whole bunch of messages that you are about to discard when you check channel.
Osgeld Barmy
Registered User
Join date: 22 Mar 2005
Posts: 3,336
11-13-2007 22:44
From: Teddy Qinan
You would increase overhead. Think about it, checking channel would remove many more messages than checking self would, so the other way around your checking self on a whole bunch of messages that you are about to discard when you check channel.


good point
Debbie Trilling
Our Lady of Peenemünde
Join date: 17 Oct 2006
Posts: 434
11-14-2007 01:57
Interesting item, Jesse. Thx.

It is kinda counter-intuitive to me that llRegionSay would be more efficient than llShout, llSay or llWhisper "on a rarely used channel" but now I know I can see why that might be & will make sure I use it.

...learn something new everyday, or usually with LSL, far more than one-a-day! :)