Unofficial LSL Reference

[[functions:llsay]]


Unofficial LSL reference

User Tools

Login

You are currently not logged in! Enter your authentication credentials below to log in. You need to have cookies enabled to log in.

Login

Forgotten your password? Get a new one: Set new password

Function: llSay

llSay(integer channel, string message)

Say a message on the given channel with a range of 20 metres.

Parameters

channel

Determines the channel that message will be sent on. Channel can be any integer, positive or negative. Channel 0 is open chat (also known as PUBLIC CHANNEL). Channel DEBUG_CHANNEL will send the message to the Script Warning/Error window.

message

Contains the text to be said.

Notes

  • Text said via llSay can be heard up to 20 metres away from the prim the script is in.
  • Messages sent on channel 0 or on DEBUG_CHANNEL, are throttled to a rate of about 200 every 10 seconds, per region, per owner/user.
  • message can be a maximum of 1024 bytes when translated to UTF-8. The allowed number of characters can vary depending on what characters the message contains. For example, it allows:
    • up to 1024 UTF-8 characters in the ASCII range such as A or %,
    • up to 512 two-byte UTF-8 characters such as И or £,
    • up to 341 three-byte UTF-8 characters such as ツ or €,
    • etc. or a mixture of them.
  • Negative channels are typically used for inter-object communication.
  • A script cannot hear anything said by any script within the same prim. This avoids recursion problems. It can hear text sent from a script in another prim within the same object, if it's within range.
  • Attached objects in avatars can't be heard by other avatars if the avatars can't see nor hear each other due to parcel privacy settings. They still can be heard by other objects, though.

Short examples

// Send the text "Hello, friends" on channel zero. It will appear
// in the chat window of any avatar within 20 metres.
llSay(0, "Hello, friends");
llSay(PUBLIC_CHANNEL, "Hello friends"); // Variant of the above

// Send the text "Error in the script!" to the script warning/error window
llSay(DEBUG_CHANNEL, "Error in the script!");

Complete examples

llSay-example.lsl
default
{
    touch_start(integer count)
    {
        // Send a message on a specific negative channel
        // The message will only be received by scripted prims that are listening on that channel
        // and are within 20 metres of this prim.
        llSay(-123456, "I was touched by " + llDetectedName(0));
    }
}

See also

  • llWhisper for a 10 metres range version.
  • llShout for a 100 metres range version.
  • llOwnerSay to say something to the owner only.
  • lRegionSay to say something in a certain channel to every avatar/prim in the region (but channel 0 is disallowed).
  • llRegionSayTo to say something to a specific avatar or prim in the region.
  • llInstantMessage to send an instant message to the specified avatar (can be across regions).
  • llListen to listen to what avatars or scripts say in a certain channel, and the accompanying listen event.