Skip to main content

Overview

The Color Picker Update plugin automatically creates a complete color picker system for your fixture groups. It generates color presets for each group, creates sequences with color cues, and assigns them to executors for easy access.

Configuration Variables

groups
table
Array of group labels used for naming presets and sequences
grpStart
number
default:"1"
Starting group number in the show file
presetStart
number
default:"1"
Starting preset number for color presets
presetWidth
number
default:"16"
Number of preset slots allocated per group
execPage
number
default:"100"
Executor page number for color picker executors
execStart
number
default:"101"
Starting executor number on the specified page
seqStart
number
default:"300"
Starting sequence number for color picker sequences
colNb
number
default:"11"
Number of colors to include in the color picker
colSwatchBook
table
Names of colors used for labeling presets and cues
colSwatchIndex
table
default:"[1, 2, 3, 4, 6, 8, 9, 10, 11, 12, 13]"
Gel swatch indices corresponding to each color in the color book

What Gets Created

Presets

For each group, creates color presets using gel swatches:
  • Preset range: presetStart + (group * presetWidth) through +colNb
  • Each preset is labeled as “[Group] [Color]” (e.g., “A White”, “A Red”)

Sequences

Creates one sequence per group:
  • Sequence range: seqStart through seqStart + number of groups
  • Each sequence labeled with the group letter

Cues

Creates cues within each sequence:
  • One cue per color (11 cues by default)
  • Each cue labeled as “[Group] [Color]”
  • Cues reference the corresponding color presets

Executors

Assigns sequences to executors:
  • Executor range: execPage.execStart through execPage.(execStart + number of groups)

Usage

1

Configure variables

Edit the configuration variables at the top of the plugin file to match your show setup:
local groups = {"A", "B", "C", "D", "E", "F", "G"}
local grpStart = 1
local presetStart = 1
local seqStart = 300
local execPage = 100
local execStart = 101
2

Run the plugin

Execute the plugin by calling:
Plugin "ColorPickerUpdate"
3

Automatic execution

The plugin will:
  • Enter blind edit mode
  • Delete existing presets and sequences
  • Create new color presets for all groups
  • Create sequences and cues
  • Assign sequences to executors
  • Exit blind edit mode
  • Run validation macros

Function Reference

Main Functions

ColorPickerUpdate_Start()

Main entry point for the plugin. Orchestrates the entire color picker update process.
function ColorPickerUpdate_Start()
  -- Enters blind edit mode
  -- Deletes old presets and sequences
  -- Creates new presets, sequences, and cues
  -- Assigns sequences to executors
  -- Runs validation macros
end

Helper Functions

deletePresets()

Deletes existing color presets for all configured groups.

deleteSequence()

Deletes existing color picker sequences.

createPresets()

Creates color presets for each group using gel swatches:
-- Example: Creates preset 4.1 for Group 1, White color
cmd("Group 1 At Gel 1.1")
cmd("Store Preset 4.1")
cmd("Label Preset 4.1 \"A White\"")

createSequences()

Creates empty sequences for each group.

createCues()

Populates sequences with color cues, one cue per color per group.

assignSequences()

Assigns the created sequences to executors on the specified page.

Post-Creation Validation

After creation, the plugin automatically runs validation macros:
cmd("Go Macro 787; Go Macro 704; Go Macro 711")
cmd("Go Macro ALLWHITE")
cmd("Go Macro ALLRED")
cmd("Go Macro ALLYELLOW")
cmd("Go Macro ALLGREEN")
cmd("Go Macro ALLBLUE")
cmd("Go Macro ALLPINK")
cmd("Go Macro ALLRED")
The validation sequence cycles through different colors to verify that all presets and sequences are working correctly.

Example Output

With default configuration for 7 groups (A-G) and 11 colors: Presets created:
  • Group A: Presets 1-11 (White, Red, Orange, Yellow, Green, Cyan, Lavender, Blue, Violet, Magenta, Pink)
  • Group B: Presets 17-27
  • Group C: Presets 33-43
  • And so on…
Sequences created:
  • Sequence 300: Group A (11 color cues)
  • Sequence 301: Group B (11 color cues)
  • Sequence 302: Group C (11 color cues)
  • And so on…
Executors assigned:
  • Executor 100.101: Sequence 300 (Group A)
  • Executor 100.102: Sequence 301 (Group B)
  • Executor 100.103: Sequence 302 (Group C)
  • And so on…
This plugin will delete existing presets and sequences in the configured ranges. Make sure these ranges don’t conflict with other show elements.

Tips

Adjust presetWidth if you need to add more colors in the future. Setting it to 16 (default) leaves room for 5 additional colors per group.
The plugin uses Gel color swatches. Make sure your fixtures support the gel library, or modify colSwatchIndex to use different color sources.

Build docs developers (and LLMs) love