User Tools

Site Tools


Currently to do

This is just a scratchpad of what to do next in this wiki - feel free to register and contribute.

Missing articles

# ID Links
1personality:compatibility_attributes4 : Show backlinks
2macros:control_structures:menulink4 : Show backlinks
3personality:attribute_id3 : Show backlinks
4macros:syntax:referingmacros2 : Show backlinks
5webapi:boolean2 : Show backlinks
6macros:syntax:codeblocks2 : Show backlinks
7macros:type:acwframerate2 : Show backlinks
8macros:function:programmer.editor.fixtures.incrementdimmer2 : Show backlinks
9macros:identifier:macroid2 : Show backlinks
10external:midi_notes_and_cc2 : Show backlinks
11ai:modules:display:video_out2 : Show backlinks
12external:midi_feedback2 : Show backlinks
13external:msc_-_midi_show_control2 : Show backlinks
14macros:property:custom1 : Show backlinks
15macros:function:chases.play1 : Show backlinks
16webapi:requests:playbacks_replaceplaybackcue1 : Show backlinks
17macros:syntax:start_end1 : Show backlinks
18macros:type:menuitem1 : Show backlinks
19webapi:requests:playbacks_storecue1 : Show backlinks
20macros:type:object:selection1 : Show backlinks
21webapi:requests:timecode.timecodeone.setstarttime1 : Show backlinks : Show backlinks
23webapi:requests:programmer_editor_fixtures_setcontrolvaluebyname1 : Show backlinks
24webapi:requests:selection_context_programmer_selectfixture1 : Show backlinks
25macros:property:handles.colours.changepage1 : Show backlinks
26macros:property:handleoptions.playbacks.priority1 : Show backlinks
27macros:function:fixtures.patch.freezefixtures1 : Show backlinks
28macros:function:lockmode.lockconsole1 : Show backlinks
29personality:attribute_function1 : Show backlinks
30macros:function:editor.timelines.setcontexttimeline1 : Show backlinks
31macros:property:palette.numeric.inputvalue1 : Show backlinks
32macros:property:playbacks.editor.times.cuefadeouttime1 : Show backlinks
33macros:control_structures.pause1 : Show backlinks
34external:midi_show_control1 : Show backlinks
35macros:control_structures.start_end1 : Show backlinks
36macros:namespace:timelines1 : Show backlinks
37macros:property:playbacks.editor.times.cuespeedmultiplier1 : Show backlinks
38ai:modules:display:aioutputrenderer1 : Show backlinks
39macros:converter:math.enumasstringequalityconverter1 : Show backlinks
40webapi:requests:actionscript_setproperty_string1 : Show backlinks
41webapi:requests:handles_playbacks1 : Show backlinks
42macros:property:handles.playbackwindow.changepage1 : Show backlinks
43macros:syntax:customvariables1 : Show backlinks
44webapi:requests:handles_setlegend1 : Show backlinks
45webapi:requests:handles_setsourcehandlefromhandle1 : Show backlinks
46webapi:requests:macros:run1 : Show backlinks
47personality:attribute_group1 : Show backlinks
48webapi:requests:palette:numeric:inputvalue1 : Show backlinks
49webapi:requests:playback1 : Show backlinks
50webapi:requests:playback_x1 : Show backlinks
51webapi:requests:playback_x_cue_y1 : Show backlinks
52macros:function:programmer.editor.fixtures.setselectedcontrolsfrozen1 : Show backlinks

To Do

complete articles

see above


See below for the planned structure of types, object types, identifiers


  • Elaborate on identifiers.
  • Examples
  • Groups


not yet possible

all the tbd's


debugging macros

sACN triggers

  • trigger a master (e.g. speed) in order to fade it over time
  • trigger macros on single cues
  • invert something (but why…)
  • virtual Capture multipatch
  • size master?




external control


Forum done until 01.03.19

setting timecode via WebAPI doesn't need a TimecodeTime object:



Timecode.TimecodeOne.SetStartTime and TimecodeTime object, see

(Gregory, 27.08.2018)
Unfortunately no I don’t think there is any way to tell for sure. However generally older parts of the software such as Handles and Palettes will require function calls whereas newer or rewritten code such as Edit Times, Playback Options, Timecode and Capture settings will normally respond directly to the property changes. This is mainly because the latter was not always possible and we don’t generally rewrite working code unless there is a need to as this runs the risk of introducing bugs.

is there a way to tell whether setting a property is enough (like in ActionScript.SetProperty(“Playbacks.Editor.Times.PlaybackReleaseTime”, time:0) ) or both must be done (property set AND function applied, like with lockState)?

Gregory, Email 11.12.19 re. new variables: automatic definition of variables: gregory_variables.pdf

Toggle Trigger Mappings in v12, see and, and toggletriggermappings.xml

However this start/end thing prevents macros to load in versions pre 14

Example for version checking, syntax of nested quotes etc.

  <macro name="Set PB 903 legend" id="Macros.SetPB903Legend">
      <step condition="Math.String.StartsWith(System.SoftwareVersion, '13')">{
        ActionScript.SetProperty("Handles.PendingLegend", "This is v13");

Example for reversing, offsetting and restarting shapes (Matias Muccillo), see


Elaborate on trigger software usage on Software List, e.g. Show Cockpit from

matias Mucillos setup macro: mm_store_playback_test.xml

new way of writing conditions, use of variable, cast doesn't work inside clock - see Gregory's mail of 21.04.2021 and (this is a further development from Playback - Set fade-in time

set halo colour, see Gregory's email 07.01.19:

  <step>ActionScript.SetProperty("Handles.PendingHalo", colour:"#ffff0000")</step>

link macro to cuelist cue, Sebastiaan Groen (Messenger 02.06.21)

  <step>ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", handle:"Location=Playbacks,1,1")</step>
  <step>Playbacks.Editor.CueSelection.SelectCueByNumber(handle:"Location=Playbacks,1,1", 1)</step>
  <step>Playbacks.Editor.Macros.AddLinkFromId("Avolites.Macros.OpenWorkspaceWindow")</step> <!--example Macro-->

additionally add/remove macros as per Roger Piqué (messenger 14.04.22): roger_addmacro.xml

selection by pattern which is always done through RunCommand, see Quick-Create groups additionally Gregory's comment, email 10.06.21:

It won’t make much difference but in principle you could select the group and set the pattern in one command e.g. Command.RunCommand(“GROUP 1 PATTERN 1.1”). The function used when holding down a group is slightly different Command.RunGroupCommand(Group.CurrentGroupUserNumber, “PATTERN 1.1”) which ends up running the same command string as above but changes an option for how the group is toggled. From what I can tell the difference is that RunGroupCommand will deselect fixtures it they are already selected but the normal command will always add to the select and never remove. Even though the factory macro sets the Selection.Context.Global.RepeatPattern property it does not look like the software normally does this and will therefore leave it as the user has last set it.

select handle to set opions: select_handle_for_setting_options.pdf

all user settings: missing_settings.xml, settings_neu.xml

set timeline cursor position:

ActionScript.SetProperty("Editor.Timelines.ContextTimeline.CursorPosition", Timecode.AsObservable(Timecode.MakeTimecodeTime(1, 00, 00, 00, false, 100))) 

(messenger Roger Pique 06.04.22)

Gregory Haynes on time objects and timeline functions: gregory_timeline.pdf

first timeline examples:

<?xml version="1.0" encoding="utf-8"?>
  <!-- play/pause by usernumber 1 -->
  <macro id="Avolites.Macros.Timeline1.Play" name="Play Timeline 1">
  <macro id="Avolites.Macros.Timeline1.Pause" name="Pause Timeline 1">
  <!-- play/pause by location - playbacks page 1 slot 1 -->
  <macro id="Avolites.Macros.TimelinePB1.1.Play" name="Play Timeline PB 1.1">
  <macro id="Avolites.Macros.TimelinePB1.1.Pause" name="Pause Timeline PB 1.1">

Gregory (21.07.22): Off Palette Groups: offpalettegroup.xml

Gregory (15.08.22): no numbers in property names gregory_no_numbers_in_property_names.pdf

Gregory (13.01.23): invert selected fixtures gregory_toggleinvert.pdf

I didn't find a way to retrieve the usernumber of the current layout. But if you can live with using the legends (Layout 1, Layout 2 etc. - or you change the coverterParameter accordingly) then this would work:
<macro id="Avolites.Macros.SelectLayout_2" name="Select layout UN 2">   
  <active binding="{propertyLink id='Editor.Layouts.ContextLayout.Legend' converter='Math.EqualityConverter' converterParameter='Layout 2'}"/>

Titan Tricks

Windows Registry Editor Version 5.00
"VersionDateTime"="2028-08-14 05:49:32"


AI knowledge base

  • d4mance/BC 2014
  • d4mance/BC 2016
  • patches from forum
  • pictures on welcome pages/section headers
  • how to make use of a patch on the performance page (Patch IO, texture port), and how to set its thumbnail
  • Pip and Multi Screen projects
  • Multiviewer (TH):
    • RenderToTexture
    • Sample Texture Region
    • Clear
    • Render Merge
    • output/Window (off/on by Artnet)
  • clock/countdown (SB/Arran)
  • controlling from Q-Sys via UDP, text scroller (project A. Keil June 2020, with help from TH and CA)

Ai tricks and pitfalls

  • renumbering fixtures
  • no audio files on the performance page!
  • how to enable tap tempo (tap widget, system settings, Beat settings per tile)
  • antialiasing (double resolution, see movingscreens/email)
  • what is saved where
  • how to save and use clip collections
  • how to create a project thumbnail
  • wrong codec may even disturb playmodes
  • MPEG Streamclip for transcoding
  • MIDI trigger on the performance page requires MIDI notes - ControlChange doesn't work here

Is there a wiki plugin to show a number of random pages from the namespace, e.g. in Ai/Examples?

Types/Identifiers Hierarchy

identifiers (essentially this is the most common ways to idetify particular items)
  Clear mask: Intensity=1, Positions=2, Colours=4, Gobos=8, Beam=16, 
    Effect = 32, Special = 64, FX = 128, Time = 256  also see AcwRecordMask?!?


Discussion threads

Change Pages with Timecode 2023/10/16 17:20 Sebastian Beutel 2 Comments
Inhibit selected fixtures dimmer 2023/02/28 12:25 Sebastian Beutel 1 Comment
Set a Handle's Halo 2021/05/29 18:08 Sebastian Beutel 2 Comments
Delete Workspace X 2018/06/12 13:05 Sebastian Beutel 1 Comment
Timecode - Toggle On/Off for particular playback 2017/11/20 16:39 Sebastian Beutel 1 Comment
Playback - Set Paging to Never Hold 2017/11/20 15:52 Sebastian Beutel 1 Comment
MIDI Note On/Off 2017/11/20 15:15   1 Comment
Macro - Export Macro 2017/10/29 15:42   1 Comment
todo.txt · Last modified: 2023/10/15 08:12 by icke_siegen