Command format

Commands to the lights are ; delimited list  of basic light commands.  Commands are processed in sequence and when possible at the same time. There is no cycle command or do command for the lights.

All commands have the same form:

<name> <command> <optional data>;
where name is the name of a light or the names of multipole lights separated by a :.  In addition a * will select all lights.

For multiple commands to the same lights only one selector is required, for example:

myLight b 0.5;on;
will set the light myLight to 50% intensity and then turn it on.

myLight b 0.3;colour <255,255,255>;user MASTER;on;
will set the light myLight to 30% intensity, it’s colour to white, select the master emitter and then turn the light on

myLight on; colour <255,0,0>;
will turn the light myLight on and while on while smoothly change its colour to red

myLight:myOtheLights b 0.5;on;
will set the light myLight and myOtherLight to 50% intensity and then turn it on.


Lights can use one or more emitters in addition to the light itself. An emitter is an extra prime which can be moved along the line joining the light to its target giving  zoom behaviour to the light.  If the light is zoomed out then the light has a wider coverage than if its zoomed in.  Typical emitters included in a light stack are:

  • WIDE – give wide angle illumination with  soft focus edge
  • ULTRA – gives very wide angle illumination, the maximum possible
  • SPOT –  a generic soft edged spot
  • HARD – a heard edge follow spot effect
  • SOFT – a soft edged follow spot effect
  • LEGACY – a legacy point light emitter
  • GOBO – one or more gobos which can be selected to project images
  • BEAM – beams count as emitters although they emit no light, currently there exists only one beam style though its always been intended to have more

Extra emitters can be added to the stacks as required.

Emitters are selected with the use command:

<name> use <emitter list>;

where nav is the usual colon separated list of lights and group names, and emitter list is a colon separated list of emitters.  The order of emits in the emitter list isn’t important, the light chassis will check and will only change the emitter selection on a light if absolutely necessary, it is safe therefore to issue use commands just to ensure you have the right emitter combination safe in th knowledge that if you have no action will be performed – it takes time to change n emitter and the light use be turned off while its done, this is automatic though not always welcome.

For example:

myLight:myOtherLight use WIDE:BEAM:on;zoom 80;
will ensure that the emitters for myLight and myOtherLight  re wide and beam, changing them if necessary, then they will turn on and the will both zoom to their 80% positions




Manual positioning

Lights can be positioned manually (not with a follow) by any of the following mechanisms:

  • manual pointing using the p command, for example p <x,y,z>, x y and z are coordinates relative to the current lighting centre (stage centre) where x is front/back relative to this, y is left/right n z is up/down
  • by targeting at transponder using the track command, for example track MYTARGET; which will point the selected lights either at a predefined target or at a transponder object with the appropriate name or at any object with a transponder script inside it.
  • by publishing a target to the light (s) and tracking it. Targets can be published at any time, for example publish MYTARGET:<x,y,z>, the syntax is critical, the name of the target must be in upper case and there most be no space between the target name and the : and the target values.

It is possible to precede the publish command with either abs or rel, abs is the default. Abs will rate the x y z part of the target as absolute region coordinates, real will treat them as coordinates relative to the current lighting centre, this means that lighting setups can be made away from the main stages. For example,

/5* rel;publish Z:<0,0,0>;

will define a target called Z at the lighting centre, this can be activated just by using

/5* track Z;


Light commands

B (rightness)

name b brightness;


  • brightness is a decimal number between 0 and 1.
  • name is the name of the light to influence, multiple selectors ware allowed

for example:

myLight b 0.5;
myLight1:mylight2 b 0.75;

On / Off

On and off turns the named light on and off, the light returns to its previous brightness setting when turn on.

name on | off;


  • name is the name of the light to influence

for example:

myLight on;
* off;


Colour changes the colour of the light.  The colour is written as a standard llScript vector where the 3 components defined the red, green and blue contributions.

name colour <g,r,b>;


  • name is the name of the light
  • rgb are numbers in the range 0..255

for example:

* colour <255,0,0>; will change all lights to red


Use lets you select the combination of emitters to use.

Emitters are added to a light by linking a suitable prim to the light (suitably centred on the lights local z axis) The name of the emitter is  set in the description field of the linked emitter prim.  The emitter can then be selected and if there is an associated controller for the light the emitter name will be displayed.

use emitter list;

where emitter list is a colon delimited list of available emitters.  The light itself is always called MASTER. If there is ab associated beam then it has the name BEAM and can be selected and deselected using the same mechanism (although it actually emits no light)


Zoom changes the position of the light emitter relative to the target, if th nonyl emitter is the master emitter (i.e. the llamp itself then this command has no obvious output although the zoom position is updated and stored and will be used when necesary)

zoom <percent>

where percent is the pecetnage of the distance between the m lamp and the current target.  0% places the emitter on the lamp and 100% places it on the target, emitters are usually pre adjusted so that a zoom of 80, 90% gives good spotlight behaviour while 20, 30% is more suitable for flood light behaviour.  Zooms can be negative in which case th emitter is placed behind the lamp and greater than 100 in which case the emitter is placed bayond the target.  Zoom has no effect if only the master emitter is selected – the emitter built into the lamp unit.

for example:

/5FS zoom 80;
will set the lights in the FS group to have a zoom setting of 80%

p (osition)

Position allows manual positioning of the lamp target. The position is an x,y,z blue relative to the current stage centre, for example <0,0,1> is a target position 1 m above the stage centre.


Rig will for selected lights to find the location of their associated support and then to move to it and reattach.

name rig;


  • name is the name of the light

for example:

* rig;
will re attach all lights


Track forces a light or set of lights to determine a transponder position and then point at it, the move to the new position uses the current move time and is performed smoothly in conjunction with any other commands (if possible).  If the transponder can’t be found then no move is made and the entire command sequence is aborted.

for example:

* track MYTARGET;
will move all lights to point at the transponder MYTARGET


In general lights are placed in groups. Each group typically will included several lights and each light can be in many groups.  Groups are usually named to reflect the use the group of lights will be put to.  Most of the groups are set up automatically by the controller but you can manually add lights to groups to suit particular requirements.

name group groupName
where the named light or light group or combination is put into the group groupNam. For example

FS1:FS2 group follow;
which will lights FS1 and FS2 (or groups of that those names) into the group follow

Chassis commands

there are a set of commands which can be sent to the lamp chases – the coordinating script for one or more lights.


Delete the light stack


Rebuild the light stack


Force the stack to correctly re attach its various parts


re scan the stack and collect together any wayward beams and emitters


Set allows the setting of several configuration commands:

set beam transparency glow
set the amount of transparency nd glow to use for the beam effect for a chassis

set emitter emitter width
set the width of the beam for specified emitter

set overrange distance
set the distance beyond the target position the light will extend its lighting range to

set falloff distance
set the rate of fall off for the lights

For example

set beam 0.005 0.01;
set emitter hard 3;
set overrange 2;
set falloff 0;

Trackers and following

Setting up

Wear the tracker to use it, When attaches the red indictor light will come one, this confirms that the tracker has managed to contact the follow controller and is in proper communication.

All trackers have a unique identity, that identity os the key of the avatar wearing the tracker (or if it is a simple tracker script then the key of the object containing the script).  the controller and tracker together perform all necessary conversions between object / avatar names and their respective keys.  If you are brave you can do this yourself but it really is much better to let the controller manage the conversions.

To initiate a follow using the controller all that needs to be done is to select the name of the object or avatar to follow, select the light or lights to follow with and then to select the TRK command.  The selection of lights and name can be in any order.

it is possible to command the controller to set up a track using chat commands, This is useful if your not near the controller or if you want to embed a tracliing set up in a controller preset.  In this case the commands are:


follow <name> <group name>;

<name> is: if the target is an avatar the first part of a legacy user name or if the name is presented in dot format then the name to the left of, but no including the dot. if the target is an object then the name is the normal object name.

The basic command syntax is the same as the normal light syntax, commands can be combined on a single line and each command must bone terminated with a semi colon

Assuming that the control channel for the main controller is 12 then, for example:

/12follow gary FS;
will task lights in group FS to follow “gary”

/12follow oliver G1;
will task all liughts in group G2 o follow oliver


Cancel will clear a previously set follow task.

cancel <light group>;

Select one or more lights or light groups on the controller and press the VAN button, followed for those lights will be cleared. It is safe to clear follows on targets and lights on which no follow has been set, so as a safety exercise it is useful to select ALL lights on the controller and then press the CAN button to cancel all follows.

 Be Warned
selecting ALL and pressing TRK will tsk all lights and may not be the result you expected or required

Additionally, when a light has an active follow its green follow indicator will light and correspondingly if a tracker is acting as a follow target its green indicator light will also turn on.  For trackers, the cyan activity light will illuminate when the tracker transmits position and posture information.

Assuming that the controller command channel is 12 then:

/12cancel FS;
will clear all follows active on the FS light group

Background information

When a follow is set up either using the controller or manually, the controller allocates a control channel to be used by the tracker and the following lights, This channel is transmitted to the track and us then sued by the tracker for transmitting position information, in addition it is transmitted to the tasked lights so they know which channel to listen to.  It’s the receipt o this channel which enables both the track and the light to know when tracking is enabled and therefore when to turn on their green follow lights.  Sending channel 0 disables and tracking/

There are other tracker commands which can effect the performance of the light follow.  The whole system does its best to minimise the amount of data which is transmitted.  the tracker only transmits when the target actually moves or first starts to move or stops, for continues movement the tracker transmits at a defined rate, by default this is approximately 200mS.  In good sim conditions this can be reduced to typically 100mS to achieve closer and more smooth tracking.  Usually there are system resets on the controller to do this but this can also be set by hand using the interval command


This command sets the tracker position update interval.  Please note that the syntax of this command is different to most of=ther commands.

interval:<time interval>


time interval is the update interval, typically for fast updates – 0.1

Note there is no trailing semi colon and there is a colon between interval and the time. for example, if the tracker command channel is channel 13 then:

will change the update interval to 100mS


Trackers contain a one way intercom, specifically for shouting cues. this is most easily used win the headset, see headset

The Stage

The light scripts understand where the stage is, its orientation and its size.  Pointing the lights is totally dependent on the stage being correctly set.  One set however, whatever its orientation the lights can try from left to right, front to back and up and down.  the stage centre / top of stage position has coordinate 0,0,0

Also if the stage is correctly set the lights can be set to turn themselves off and on as their target position enters or live the stage area.

myLights auto on 3;
for example where the 3 in the example is the auto  on off time

Conversely auto off disables auto mode.

The stage see, location and orientation can be set manually using the home, size and orientation commands or it can be set using the lighting setter prim, which also makes proper definitions available for the standard stage position, UpStageCentre, DownStageCentre, etc