Table of Contents

Start Functions Events Constants Types Language Articles

Events

Events are SL's method for notifying scripts about what's happening. Events do not execute concurrently: they run one after the other, and there's an event queue where they are stored waiting for execution of the last one to finish before the next one starts. The minimum delay between events is 0.022 seconds (one simulator frame). The function llMinEventDelay can set a higher minimum delay between events of the same type.

The event queue

If an event occurs while another event is being processed, the new event is placed in a queue, waiting for a chance to be executed.

The queue is able to hold up to 64 events. Certain events can appear in the queue only a limited number of times.

In some cases, events can be removed from the queue:

Some events are enqueued per prim rather than per script, meaning all scripts in the prim will receive them:

And some per object:

Event categories

Category Description
Detection Includes all events inside which detection functions are valid.
Touch Includes the touch_start, touch and touch_end events.
Collision Includes collision_* and land_collision_*.
Target Includes [not_]at_[rot_]target.

Event list

Here's a comprehensive list of the events that LSL supports:

a
at_rot_target
at_target
attach

c
changed
collision
collision_end
collision_start
control

d
dataserver

e
email
experience_permissions
experience_permissions_denied

h
http_request

http_response

l
land_collision
land_collision_end
land_collision_start
link_message
linkset_data
listen

m
money
moving_end
moving_start

n
no_sensor
not_at_rot_target
not_at_target

o
object_rez

on_rez

p
path_update

r
remote_data
run_time_permissions

s
sensor
state_entry
state_exit

t
timer
touch
touch_end
touch_start
transaction_result