Working with Command Scripts
Command Script – User Guide
The Command Script is Depence's text-based control language. With it you can select fixtures, set values, run effects, start/stop scenes and sequences, work with variables and chain scripts together – all in a simple, line-oriented syntax.
A script can be executed from three places:
Command Window
Type single commands interactively
Writes directly into the Programmer (live operation).
Script Editor
Create / test scripts
Writes directly into the Programmer.
Sequence – Script Block (TBlock_Script)
Execute a script automatically inside a show
Writes into the Sequence chase (does not touch the Programmer).
AI / MCP
Run a script via an AI tool call
Writes directly into the Programmer.
The language is case-insensitive.
SELECTandselectare identical.
1. General Syntax
One command per line. Empty lines are ignored.
Multiple selections / IDs are separated by comma:
SELECT FIXTURE 1,3,5.Ranges use
THRU:SELECT FIXTURE 1 THRU 10.Names containing spaces must be enclosed in double quotes:
STARTSCENE "Intro Look".Values are introduced with
@:SET VALUE @50%.=andTOare accepted as synonyms.Decimal separator is culture-independent – both
0.5and0,5work.Variables are referenced with
$name(after being defined viaVAR/PVAR) and are substituted automatically by the parser.
Typical order inside a block
2. Value Formats
Value formats are used wherever you see @<value>.
Percent
@50%
50 % of the feature's value range.
Full
@FULL
Highlight value (max., see FULLOPEN).
BPM
@120BPM
Speed as beats per minute (for effect speed).
Degrees
@90°
Pan/Tilt angle or FX phase.
Hertz
@5Hz
Strobe frequency.
Feature name
@RED, @OPEN, @PRISM1
Predefined feature / wheel slot.
Variable
@$myvalue
Value resolved from VAR / PVAR.
3. Selection – SELECT
Select fixtures
Select selection groups
Aggregate fixtures (e.g. fountain modules) are automatically expanded into their child fixtures.
Select individual features (channels)
Clear the selection
4. Setting Values – SET
Sets a value on the most recently selected channels.
Intensity / channel value
Specific feature
Indexed sub-groups / masters
Fade & Delay
Fade and delay times apply to the next SET and are reset to zero afterwards.
5. Programmer Lifecycle
FULLOPEN
Drives the selected fixtures to their highlight values (dimmer/shutter/…). Identical to the "Full Open" button in the Programmer.
RELEASE
Removes the selected channels from the Programmer (drops their values).
RELEASE ALL
Empties the entire Programmer (releases all values on all fixtures).
CLEAR
Resets the selection (channel values stay untouched).
6. Effects (FX) – SET EFFECT + Parameters
Effects are applied as an FX layer on top of the selected channels.
Distribution across the selection
|
no spread
/
left → right
\
right → left
>
outside → centre
<
centre → outside
Effects are removed again via RELEASE (on the selected channels).
7. Scenes – start & stop
Scenes (stored looks) are addressed by name.
FADE <seconds>– fade in/out time.DELAY <seconds>– wait time before the fade starts.
8. Sequences (Shows) – start & stop
Start a show in the Sequencer chase
Rewinds the show to position 0 and starts it in the normal Sequencer chase (multiple shows can run in parallel).
Start a show in the Programmer chase
Starts the show inside the Programmer chase (useful for previewing).
Stop shows
9. Batched Execution – BEGINSCENE / ENDSCENE
Mostly used in AI context (several tool calls in one session) to batch many commands and apply them only once the block is closed.
In the classic script path both commands are harmless markers (no-op) and can stay in place without side effects.
10. Variables – VAR / PVAR
Local script variable (VAR)
Lives only inside the current script.
Public variable (PVAR)
Writes into the global Panel & Logic variable pool and can be read by panels / logic items.
Syntax for both commands:
11. Chaining Scripts – CALL
Calls another script stored in the project, by name.
Handy to keep recurring building blocks (e.g. "all pumps off") in one place.
12. Scheduler – TIMEPLANER
Controls the scheduler of the current show player device.
13. Full Command Reference
SELECT FIXTURE …
Select fixtures by ID (lists, THRU, ODD, EVEN, STEP).
SELECT GROUP "…"
Select a selection group (folder path supported).
SELECT <feature> FROM …
Select individual features of the (pre-)selected fixtures.
CLEAR
Reset selection.
SET VALUE @…
Set channel value / intensity.
SET @FULL / FULLOPEN
Drive to highlight values.
SET <feature> @…
Set a feature directly (Dimmer, Pan, RGB, Gobo, …).
SET MASTER … @…
Set an aggregate master.
SET INDEX @n
Pick the nth element of an aggregate.
SET FADETIME @s, SET DELAYTIME @s
Timing for the next SET.
SET EFFECT <FX>
Assign an FX type (Sinus, Pulse, Ramp …).
SET SPEED/CENTER/AMPLITUDE/PHASE/OFFSET/MIN/MAX/REPEATS/WIDTH/CUTLEFT/CUTRIGHT
FX parameters.
SET WINGS/BLOCKS/PANORAMA
FX distribution across the selection.
RELEASE / RELEASE ALL
Release Programmer values.
STARTSCENE "…" [FADE s] [DELAY s]
Start a scene.
STOPSCENE "…" [FADE s] [DELAY s]
Stop a scene.
STARTSEQUENCE "…"
Start a sequence in the Sequencer chase.
PLAY "…"
Start a sequence in the Programmer chase.
STOP ["…"]
Stop a specific sequence, or all of them.
BEGINSCENE / ENDSCENE
Batched execution markers.
VAR <name> = <value>
Local variable.
PVAR <name> = <value>
Public variable.
CALL "…"
Run another script.
TIMEPLANER START/STOP
Enable/disable the scheduler.
14. Examples
Example A – Classic "Lights On" look
Example B – Fountain with a sine effect
Example C – Start a show automatically
Example D – Reusable building blocks
Script Reset:
Another script:
Example E – Variables for repeated values
15. Best Practices & Pitfalls
Mind the order:
SELECTfirst, thenSET. Without a selectionSETdoes nothing.Fade/Delay are "one-shot":
SET FADETIME/SET DELAYTIMEonly apply to the next value command and are reset to 0 afterwards – set them again before each block if needed.Quote names: scene / sequence / script / group names containing spaces or special characters must be wrapped in
"…".Decimal separator: both
0.5and0,5are accepted – scripts stay portable across locales.RELEASEvs.CLEAR:CLEARonly drops the selection;RELEASEactually removes values from the Programmer.PLAYvs.STARTSEQUENCE:PLAYstarts a show in the Programmer chase (preview),STARTSEQUENCEstarts it in the regular Sequencer chase.Script running inside a sequence: when a script is executed by a sequence's Script Block (
TBlock_Script) it writes into the Sequence chase, not the Programmer – soRELEASE ALLdoes not affect the Programmer in that case.Unknown commands are silently ignored; typos (e.g.
SELLECT) will therefore not raise an error – but they will also have no effect.
Last updated