Preparing your show for exporting a firing system script for flames depends on both your flame system and your firing system. Some firing systems and flame systems by the same manufacturer are set up to communicate by a manufacturer-specific protocol. Other DMX-based flame systems work generically with any firing system that can provide a DMX signal.
Preliminary set up
There is a set of preliminary instructions for preparing your show that you need to do no matter whether your systems are communicating with a manufacturer-specific protocol or generically with DMX. In both cases, you need to start with these steps:
- Set up separate “Flame Positions” and “Pyro Positions.” (A) As described in the Flame systems basic instructions, create separate positions in Finale 3D for pyro and for flame. If in the real world a single position serves pyro and flame, then in Finale 3D split the position into two separate positions, one for flame and one for pyro. (B) Edit the position properties of the flame positions, and in the “Edit position properties” dialog, select your firing system and select the “flame unit” or “flame device” or “DMX device” module type for your firing system from the available options. (C) Edit the position properties of the pyro positions, and again select your firing system and this time select the appropriate module type that is NOT a “flame unit” or “flame device” or “DMX device” module type. For DMX-based systems, please see Table 1, below, for further instructions about which module types to use if there are multiple options.
- Set the “Start Module” for the positions. (A) Edit position properties for every position, and in the “Edit position properties” dialog set the “Start Module” field to the module number of the flame unit, for flame positions, and to the module number (or first module number if more than one will be required) for the pyro at the pyro positions. (B) If you are using firing system modules that output both pyro ignitions and DMX signals, then add 100 or 300 or 900 (the number depends on your firing system, see Table 1) to flame position module numbers. Thus, for example, pyro module 10 and flame module 110 may correspond to the same module in the real world, with address 10. (C) If you are using separate modules for flame positions and pyro positions, then you do not need to add anything to the flame position module numbers.
- Set the “Section” of positions that share modules. If any single module is to serve more than one position, then (A) in the “Edit position properties” dialog assign a unique section name to each set of positions that are to share the same module (separately for flame and pyro), and (B) remove the “Position” constraint in the constraints paragraph (Paragraph #3) of the “Addressing > Address show” dialog to allow positions in the same section to share modules, and (C) assign a unique section name to each individual position that is not in a sharing section to prevent them from sharing modules. Sharing modules across positions is common practice for pyro also, not just flame, and is described in more detail here. Several flame examples requiring shared modules are: 1) the Piroshow firing system uses the same global DMX universe across all modules, so if you are using Piroshow then you must put all flame positions in the same section for sharing modules; 2) if you are daisy-chaining multiple flame units at different positions together driven by a single module, then obviously all those positions must be in the same section for sharing modules (specifically the module that is driving all of them).
Additional DMX set up (DMX systems only)
If your firing system and flame system are connected by DMX, then please follow these steps:
- Set the “DMX Channel Base” for positions. (A) Decide if independent DMX devices will use different channel ranges in the same DMX universe, or same channels in different DMX universes. If you have multiple DMX devices in your show that are independent, then they obviously need separate DMX addresses somehow. They either need to be in separate DMX universes, or they need to use non-overlapping ranges of DMX channels in the same DMX universe. Most DMX devices have a configurable channel offset, so configuring the DMX devices to use non-overlapping ranges of DMX channels is usually possible, but it may be easier to put your DMX devices in separate universes if you know that each of them will be driven by a separate firing system module that provides an independent DMX universe. Please see Table 1 for specific instructions per firing system. (B) If your DMX devices are to use non-overlapping ranges of channels, then edit the position properties of each flame position and set “DMX Channel Base” to separate the channel ranges of the DMX devices. Since DMX device personalities usually begin with channel 1, then setting the DMX Channel Base to 0 or leaving it blank will indicate the channel range beginning with 1; setting the DMX Channel Base to 10 will indicate the channel range beginning with 11. (C) If your DMX devices are all in separate universes then you can leave the DMX Channel Base blank if the devices are configured to start with channel 1; if the devices are configured to start at channel N, then set the DMX Channel Base to N – 1.
- Add safety channel effects to the show if required. If your flame system requires a safety channel set to ON to operate, then (A) create one new flame position for each DMX universe in the show specifically to hold “Safety Channel Effects” and configure the position to share modules with other positions sharing the same DMX universe, as described above in Preliminary set up, step 3. A safety channel effect is an effect that simply sets a specific DMX channel representing the safety channel to an “on” value (usually 255) for a duration, and sets it back to “off” (usually 0) at the end of that duration. (B) Your flame unit DMX devices probably have configurable safety channel numbers. If you configure a flame unit to have safety channel number = N, then please set the DMX Channel Base of the flame position housing that flame unit = N – 1. (C) After setting up the flame positions for safety channels, add safety channel effects to those positions and edit their durations in the script table window to make them extend over the periods of time for which the safety channels should be on. You can unhide the Duration column in the script window from the blue gear menu in the upper right. The ability to edit durations in the script window for safety channel effects is unusual. For most effect types, the duration is an intrinsic property of the effect and can therefore only be edited in effects window as part of the definition of the effect, not in the script window as part of an instance of the effect. The reason editing the duration in the script window is supported for safety channel effects is that its Type is “not_an_effect” (more details). A safety channel effect is in the Generic Effects collection, called “DMX Safety Channel”. You can add multiple safety channel effects to the same flame position if you need gaps in the safety channel time ranges.
Additional non-DMX set up (non-DMX systems only)
If your firing system and flame system are from the same manufacturer, the flame system may connect directly to the firing system controller, instead of connecting to modules that are connected to the firing system controller. The direct connection is simpler, and in some cases supports special features enabled by the manufacturer. If your flame system connects directly to the firing system controller, then please follow these steps:
- Galaxis firing system and G-Flame units. To design a show for the Galaxis firing system with G-Flame units, please set the “Module Type” of the flame positions to the “G-Flame Unit” option; and set the “Module Type” of the pyro positions to be any of the other options. When connected to the Galaxis firing system, G-Flame units operate as a special type of module. Like pyro modules, the G-Flame units have module addresses, but unlike pyro modules, the G-Flame units do not have any physical pins for igniting fireworks. The pin numbers (Galaxis calls them output numbers) for G-Flame units are the sequential flame triggers. Each flame shot is represented by a unique pin number beginning with 1 and increasing sequentially up to 999. Thus the number of used pins is the number of flame shots on the G-Flame unit (additional details here).
- Explo firing system and Explo flame units. To design a show with Explo flame units using Finale 3D, please set the “Module Type” of the flame positions to “Explo Flame Unit”, and set the “Module Type” of the pyro positions to be any of the other options. When connected to the Explo firing system, Explo flame units operate as a special type of module. Like pyro modules, the Explo flame units have module addresses, but unlike pyro modules, the Explo flame units do not have any physical pins for igniting fireworks. The pin numbers of Explo flame units have a special meaning for some types of Explo flame units, and are ignored by others. Explo X2 Flamer units support 66 pre-defined flame programs, or macros, that cause the flame to project at a specific angle or to animate across a sequence of angles. In the exported SHW script file, the pin number in the “Box/Nr” field represents the triggered flame program number for the flame unit. The Generic Effects collection in Finale 3D includes 66 pre-made effects corresponding to the Explo flame programs, GFX9001 to GFX9066. These Explo effects all have realistic simulations and correct parameters representing the flame program numbers that get carried through into the script when you address the show and into the exported SHW file when you export. Thus, to design a show with Explo X2 Flamer units, please use the pre-made Explo effects from Generic Effects to fill the pin numbers correctly in the exported script (technical details here).
Table 1 – Instructions for DMX-capable firing systems
|Firing system||Pyro and DMX on same module||DMX universes||Instructions for setting “Start Module”||Instructions for setting “Module Type”||Instructions for semi-auto firing|
|Piroshow||YES||One global DMX universe; all module addresses serve the same DMX universe.||Assign “Start Module” = 101 for all DMX (flame) positions, or any number from 101 to 199; set all DMX positions to have the same “Section” name; let the “Addressing > Address show…” function assign the module addresses for pyro positions.||Assign “Module Type” = “Piroshow 30 Channel” for the pyro positions, and “Piroshow DMX Device” for the DMX positions.||The exported script will be semi-auto if any event contains a valid “Track“; tracks may be integers 0-99 or letters followed by integers in that range (example: “1” and “Trk1” are both okay). In the exported script, a “PAUSE” event will be inserted before each change of track. The event times remain relative to zero; not relative to the beginning of the track. Tracks must be in chronological order in the Finale 3D show.|
|PyroSure||YES||Each module address is a separate DMX universe.||For each pair of pyro and flame positions associated with a module, assign “Start Module” = X (for your choice of X) for the pyro position, and assign “Start Module” = X + 300 for the flame position. In the exported script the DMX modules will be written out modulo 300 (example: 110 written as 10), and will therefore be equal to their associated pyro module numbers.||If the show is to be semi-auto, use the semi-auto module types for pyro and flame positions (“PyroSure Semi-Auto” and “PyroSure DMX Device Semi-Auto”, respectively. If the show is to be a standard script, use the other module types (“PyroSure Standard Script” and “PyroSure DMX Device”).||For semi-auto shows, set the “Module Type” of the pyro and flame positions to “PyroSure Semi-Auto” and “PyroSure DMX Device Semi-Auto” respectively. Set the “Track” field of script events to indicate the segment number for each segment of effects that are fired together; valid tracks are integers 0-99 or letters followed by integers in that range (example: “1” and “Trk1” are both okay).|
|Pyromac||YES||One global DMX universe; all module addresses serve the same DMX universe.||Assign “Start Module” = 901 for all DMX (flame) positions; set all DMX positions to have the same “Section” name; let the “Addressing > Address show…” function assign the module addresses for pyro positions.||Assign “Module Type” = “Pyromac 32 Channel” or any of the other non-DMX options for the pyro positions, and “Pyromac DMX Device” for the DMX positions.||The exported script will be semi-auto if any event contains a valid “Track“; tracks may be integers 1-9999 or letters followed by integers in that range (example: “1” and “Trk1” are both okay).
In the exported script, the “Cue” field contains the track number formatted with four digits, 0001-9999, if set; otherwise it contains the same-time cue count in the same format. Tracks must be in chronological order in the Finale 3D show.
|FireTek||YES||Each module address is a separate DMX universe.||For each pair of pyro and flame positions associated with a module, assign “Start Module” = X (for your choice of X) for the pyro position, and assign “Start Module” = X + 100 for the flame position. The FireTek firing system interprets the DMX module numbers as the number in the script minus 100, making the module numbers in the pyro and flame position pairs refer to the same module in the real world.||All FireTek modules that support DMX must use the DMX options for “Module Type“. For the flame positions specifically, set the “Module Type” to “FireTek DMX Device” (the word “Device” means flame unit in this context). For the pyro positions, set the “Module Type” to “FireTek M48” or “FireTek M96” or “FireTek DMX M48” or “FireTek DMX M96” to match your hardware. FireTek has the requirement that DMX modules can only be used with other DMX modules, so if your show has any DMX-based flame units then you need to use the DMX capable module hardware (“FireTek DMX M48” or “FireTek DMX M96”) for the pyro positions.||The exported script will be semi-auto if any event contains a valid “Track“; tracks may be integers 0-99 or letters followed by integers in that range (example: “1” and “Trk1” are both okay).
In the exported script, the “Sequence” field contains the track number. Tracks must be in chronological order in the Finale 3D show.
Table 2 provides example files of a simple combined flame and pyro show using MAGICFX Flamaniac flame units, exported by various firing systems; in addition to example files for the directly connected firing systems and flame units (Galaxis and Explo). To understand the DMX exports and the MAGICFX Flamaniac examples, it is useful to begin by looking at the movie render and reading the bullet point summary below. Then open the show file (.fin extension) in Finale 3D and take a look at the script. Most of the set up configuration for DMX shows is in the position properties, so you can see all the configuration settings by selecting the menu item “Window > Positions window” and taking a look at the properties of all of the positions laid out in a table (see Figure 1, below). After looking at the show’s configuration, do the menu item “Addressing > Address show…” to watch the show get addressed again, and then do “File > Export > Export firing system script(s)…” to export it for your firing system. That will produce the same exported script file as included in the table below, which you can download.
- The show has six (6) shells, three (3) DMX safety channel events, and sixty-three (63) DMX flame shots across nine MAGICFX Flamaniac flame units, using their “Mode 1” configuration in which different angles are different DMX channel offsets.
- The show is divided into three sections. In the standard script exports, the three sections just play one after another. In the semi-auto script exports, the three sections would be triggered separately on the controller by the operator.
- The DMX safety channel for the flame events is split into three separate events, covering the three flame sequences in the show. Each event begins 1/10th of a second before the sequence and ends a little after the sequence. These three DMX safety channel events were added to the timeline from the effect palette. Then their durations were manually edited in the script table window to cover the required time periods. You need to unhide the “Duration” column in the script table window from the blue gear menu in order to edit the durations. The DMX safety channel event applies to channel 1 plus the “DMX Channel Base” from the position. In the show, the DMX safety channel events are at the “Safety” position, which has DMX Channel Base = 0. Thus the DMX safety channel events apply to channel 1.
- The “Module Type” fields are specified in the position properties. The default Firing System and Module Type shown in the “Addressing > Address show…” dialog do not apply (the default firing system is generic CSV, to make it clear that the default does not affect anything in this example).
- In the real world, the show represents nine flame positions, and one pyro position. The flame positions are all driven by the same module, using different channel ranges in the same DMX universe. The channel ranges are 11-15, 21-25, 31-25, etc. The module number is 10. In all these examples, module number 10 is also the pyro module, because the firing system modules in these examples are two-in-one modules with a DMX output side and a pyro pins side. In the script in Finale 3D, the DMX side is referenced as module number 110 (i.e., X + 100, or X + 300, depending on the firing system). In the exported script the DMX module numbers are 10, 110, or 910, depending on the firing system.
- In the real world, you would need to configure the MAGICFX Flamaniac flame units to listen to the chosen channel ranges for their positions, which simply means setting their base channel to 11, 21, 31, etc. (in their “Mode 1” configuration). You also need to configure their DMX safety channel number = channel 1.
Figure 1 – Select the menu item “Window > Positions window” to see all the position properties.
Table 2 – Example files
|magicfx_example_render.mp4||Movie render of the MAGICFX examples|
|magicfx_piroshow_standard.fin||Example standard show using Piroshow, MAGICFX|
|magicfx_piroshow_standard.txt||Example standard exported script using Piroshow, MAGICFX|
|magicfx_piroshow_semi_auto.fin||Example semi-auto show using Piroshow, MAGICFX|
|magicfx_piroshow_semi_auto.txt||Example semi-auto exported script using Piroshow, MAGICFX|
|magicfx_pyrosure_standard.fin||Example standard show using PyroSure, MAGICFX|
|magicfx_pyrosure_standard.wyh||Example standard exported script using PyroSure, MAGICFX|
|magicfx_pyrosure_semi_auto.fin||Example semi-auto show using PyroSure, MAGICFX|
|magicfx_pyrosure_semi_auto.wyh||Example semi-auto exported script using PyroSure, MAGICFX|
|magicfx_pyromac_standard.fin||Example standard show using Pyromac, MAGICFX|
|magicfx_pyromac_standard.txt||Example standard exported script using Pyromac, MAGICFX|
|magicfx_pyromac_semi_auto.fin||Example semi-auto show using Pyromac, MAGICFX|
|magicfx_pyromac_semi_auto.txt||Example semi-auto exported script using Pyromac, MAGICFX|
|magicfx_firetek_standard.fin||Example standard show using FireTek, MAGICFX|
|magicfx_firetek_standard.csv||Example standard exported script using FireTek, MAGICFX|
|magicfx_firetek_semi_auto.fin||Example semi-auto show using FireTek, MAGICFX|
|magicfx_firetek_semi_auto.csv||Example semi-auto exported script using FireTek, MAGICFX|
|demo_explo_flame.fin||Example show using Explo, Explo X2 Flamer|
|demo_explo_flame.shw||Example exported script using Explo, Explo X2 Flamer|
|demo_explo_flame.mp4||Movie render of the Explo X2 Flamer example|