Full RLVa Command List
Avatar
@adjustheight
Sets vertical offset raising or lowering the avatar with roughly a -200 to 200 range.
@adjustheight:<value>[;<factor>][;<distance>]=force
- [<factor>] - Optional factor defaults to 0.01
- [<distance>] - Optional distance that is generally not required.
Avatar Z Offset = ( <value> * [<factor>] ) + [<distance>]
The following all set the offset to 0.03
@adjustheight:3=force
@adjustheight:0.03;1=force
@adjustheight:0.01;2;0.01;1=force
@edit
Prevent editing objects rezzed in world and attached to the user
@edit=<n|y>
Any active selections will be dropped.
- Edit floater will remain open but switch to the build tab.
- New objects can be placed (from inventory and via build) but the selection instantly drops.
- Terrain can still be edited (terraforming & parcel division).
- Buying objects is not affected.
@fartouch
Limit touching to within the specified radius from the users centre. if set more than once, the lowest distance is in effect.
@fartouch[:<distance>]=<n|y>
- [:<distance>] - Optional parameter that allows a distance to specified, if omitted default is 1.5m
The user will be unable to touch, move or edit objects beyond the distance.
- Mouse cursor will not change to indicate objects out of range can be interacted with by touch.
- Edit selections will drop as objects go out of range.
- If a distance is omitted, prevents the user touching objects more
The distance is not an exception
Using @fartouch=n followed by @fartouch:20=n will set the fartouch distance to the default 1.5m instead of the intended 20m
Camera
@setcam
Attempts to claim RLVa camera control for this scripts containing object.
@setcam=<n|y>
Only one object can hold this behavior at a given time following the same concept as @setenv where a single object can exclusively lock control. Debug output will show "locked" as the failure message on subsequent attempts.
When an object holds the lock, all camera commands from all other objects will be ignored; when the object releases the lock all other camera behaviors will be restored.
@setcam_eyeoffset
Changes the default camera offset in the same way as changing the CameraOffsetRearView debug setting (the debug setting is not changed).
@setcam_eyeoffset[:<vector3>]=force
@setcam_focus
Moves the camera and focus to the specified position (user can still change focus afterwards).
@setcam_focus:<agent|object|position>[;<distance>;<direction>]=force
- <agent>|<object>|<position> - UUID of the object OR agent to focus on OR a position vector (in region coordinates)
- [<distance>] - Optional (calculated based on the object's size if omitted) distance of the camera to the focus
- [<direction>] - Optional (calculated on current camera if omitted) normalized directional vector
Focus on an agent (get your own UUID) from 20m away with your previous camera orientation.
@setcam_focus:<uuid>;20;=force
Focus on an object (rez a prim for this and grab its UUID), this will cause the camera to look at the plywood cube (filling the screen) along negative X.
@setcam_focus:<uuid>;;1/0/0=force
Now resize the prim (20x20x20m) and retry the command. You'll note that the plywood cube still fills the screen. If you omit the distance RLVa will calculate it based on scale so the object is always fully in view.
Focus on an Location.Move the camera to <128, 128, 75> looking down at the land.
@setcam_focus:128/128/75;;0/0/1=force
@setcam_focusoffset
Changes the default camera focus offset in the same way as changing the FocusOffsetRearView debug setting (the debug setting is not changed).
@setcam_focusoffset[:<vector3>]=force
@setcam_fov
Changes the camera's vertical field of view to the specified value (angle in radians).
@setcam_fov[:<angle>]=force
@setcam_fovmax
Limit the user's fov angle to a maximum value (angle in radians). Setting @setcam_fovmin & @setcam_fovmax to the same value locks the value.
@setcam_fovmax[:<angle>]=force
To set the minimum FOV to 90°
@setcam_fovmax:1.57=n
@setcam_fovmin
Limit the user's fov angle to a minimum value (angle in radians). Setting @setcam_fovmin & @setcam_fovmax to the same value locks the value.
@setcam_fovmin[:<angle>]=force
To set the minimum FOV to 45°
@setcam_fovmin:0.780=n
@setcam_unlock
Force the camera to remain focused on the user's avatar at all times, in effect, making them the fixed centre of the world. Formerly RLV command @camunlock.
@setcam_unlock=<n|y>
Possibly change: currently still allows free camera movement when controlled through by LSL.
Clothing & Attachments
@detach
Prevents an attachment from being detached (which attachment depends on how it's called) and removes specific attachments (depending on how its called!) See the examples below..
@detach[:@lt;attachment_point>]=<n|y>
- [:<attachment_point>] - Optional attachment point to target.
With no parameters, the specific attachment containing the calling script will be locked.
@detach=n
Specifying an optional attachment point name will cause that point to be locked, any attachments on that point will be locked and no other attachments may be added to it.
@detach:head=n
Calling the command with y unlocks the attachment containing the script.
@detach=y
@detach[:@lt;attachment_point>]=<n|y>
- [:<attachment_point>|<attachment>]=force
Using force removes an attachment, either by point name or UUID.
@detach:head=force
@detach:b7d41859-a37a-4989-9796-1056e72766ab=force
Using force on it's own will remove all non locked attachments.
@detach=force
Attachments using Nostrip can not be removed by scripted commands, this is by design and gives the user a manual override, intended for items such as hair, tails, or mesh bodies.
@detachthis
@detachthis[:<attachment_point>|<clothing_layer>|<attachment>]=force
@remattach
Removes an attachments by point or name.
@remattach[:<attachment_point>|<attachment>]=force
It's better to use @detach[:<attachment_point>|<attachment>]=force as that saves 3 bytes of script memory.
Instant Message
@startim
Prevents starting / opening a new IM conversation with another user.
@startim=<n|y>
- IM conversations already open when this command is applied will remain open.
- Incoming Teleport offers and inventory will function but not open a new IM window.
- Messages attached to teleport offers/requests sent from the user will be censored.
Attempts to start a IM session will present the user with "Second Life: Unable to start IM session with <target_user> due to RLV restrictions"
Location
@showloc
Primarily used to hides the current parcel and region location information from the user, typically replacing it with "(Hidden parcel), (Hidden region)".
@showloc=<n|y>
- Prevent creation of landmarks.
- Prevent opening the "Place Profile", "About Land" and "Region / Estate" floaters.
- Removes the "you are here!" sticker from any open Place Profile or Landmark.
- Close the "About Land" and "Region / Estate" floaters if open.
- User may open the world map & mini map however region names are removed.
- User may not offer teleports unless the target agent has map rights for the user.
- The location shown to the user on incoming teleport requests is censored.
- Object chat containing the location will be conditionally censored.
Local Chat
@sendchannel_except
Similarly to @sendchannel this limits channels the user can chat on. When set, the user can chat on all channels except the ones listed as exceptions. Has strict version @sendchannel_except_sec.
@sendchannel_except=:<channel>=<n|y>
@sendgesture
Prevents the user from playing gestures.
@sendgesture=<n|y>
Sitting
@sittp
Limit sitting on objects to within the specified radius from the users centre. if set more than once, the lowest distance is in effect.
@sittp[:<distance>]=<n|y>
- [:<distance>] - Optional parameter that allows a distance to specified, if omitted default is 1.5m
The distance is not an exception
Don't use @sittp=n followed by @sittp20=n since that will set the sit teleport distance to the default 1.5m instead of the intended 20m
Teleportation
@tplocal
Prevents local teleports either through double-click teleports or by typing the coordinates into the address bar or the world map.
@tplocal[:<distance>]=<n|y>
- [:<distance>] - Optionally specify the max distance for a permitted local teleport.
Location based teleports are now split between "local" and "remote" based on the distance between the user's current location and their destination. If the destination is further than 256m away the teleport is considered remote and subject to @tploc; if it's under 256m then it's local and subject to @tplocal.
Double-click teleporting in RLVa has always been subject to @sittp
This remains the case (i.e. @sittp implies @tplocal); this just formalizes local teleports and offers a way to block local teleports without impacting sit distance.
@tpto
Teleports the user to a specific location in either global coordinates OR region coordinates.
@tpto:[<region>/]<position>[;<lookat>]=force
- <position> - If only a position is supplied it must be in Global coordinates which requires some script to execute a dataserver query before calling the command.
- [<region>;]<position> - If a region AND position are supplied then conversion to global coordinates is handled by the viewer without need for scripted dataserver event.
- [<lookat>] - Optionally set direction avatar faces on arrival. (may not work for inter-region teleports)
Example command using [<region>;]<position> to send the user directly to region Kara, 128,128,10.
@tpto:Kara/128/128/10=force