To create and export a script for the ShangYi-TECH firing system, please follow these three steps:
- Design the show.
- Address the show (“Addressing > Address show”).
- Export the script (“File > Export > Export firing scripts“).
Step 3 creates the script file, which is a CSV file that you can import into the ShangYi-TECH software.
Figure 1 – ShangYi-TECH control panel
Table 1 – File format and encoding
File format | Extension | Text encoding | Field delimiter | End-of-line |
---|---|---|---|---|
Text | .CSV | UTF-8 with BOM (0xef 0xbb 0xbf) | Comma | CRLF |
The script contains rows for the firing events, i.e., unique combinations of module, pin, and ignition-time. Multiple effects can be combined on a single cue. The special characteristics of the script are shown in the following table:
Table 2 – Special characteristics
Special characteristics | Description |
---|---|
Sort order of rows | Rows sorted by segment and then by effect time. |
What rows represent | Each row represents a unique firing event, a module/pin/event-time combination. For example, a chain of five shells will be one row, not five. A pair of shells shot together from the same position will be one row, not two, even if the shells are different effects. A flight of shells shot together from multiple positions with the same module-pin using scab wire is still one row.
Events at different times are necessarily different rows, even if their addresses are the same. For example, two flame projector shots at different times, triggered by the same module-pin address, will be two rows because they are at different times. |
Header | The file contains a single header row with the column names in Chinese (域,点火时间,,地址,篇章), in the same format as the CSV data rows themselves. |
Multi-hit pins | Non-pyro effects like flames and relays can be triggered multiple times on the same module-pin address. The standard pyro addressing functions in Finale 3D assign pins sequentially, so it may be easiest to address multi-hit pins in Finale 3D by editing the script table by hand and then locking the edited rows so the show can be re-addressed for pyro without affecting them. |
Universes | A single script file for the show may contain multiple numbered universes (01-99), each universe applying to the corresponding controller.
The universe in the ShangYi-TECH script file corresponds to the Universe column of the script window in Finale 3D. For most firing systems, Finale 3D exports each universe of script events as a separate exported script file, but for the ShangYi-TECH firing system, Finale 3D will export a combined script file that includes the events for all ShangYi-TECH universes, with the universes specified in the script file in the first column (see Table 4 below). |
Minimum separation between cues | None required; millisecond resolution supported. |
Module specifications | Supports 100 modules (numbered 0-99), each module with 32 pins (numbered 0-31). |
Segments | ShangYi-TECH supports dividing a show into multiple segments corresponding to songs. By default, every song file you add to your show in Finale 3D corresponds to a separate segment, beginning with zero for the first and counting up. See segments for instructions.
Finale 3D provides an export option for ShangYi-TECH to export the script as a “One segment for entire show”, in which case the segment number will be zero for all rows in the exported file, or as “Multiple segments”, in which case the segment numbers correspond to the segment numbers of the songs. ShangYi-TECH requires that the segments begin with zero and count up consecutively — no gaps. This requirement applies to each universe separately, based on the events in each universe. For example, if a show has three songs defining segments 0, 1, and 2, and has two universes 01 and 02, then each universe must contain events in segments consecutively, beginning with zero. It would be an error if universe 01 contained events in segments 0, 1, and 2 while universe 02 contained events only in segments 0 and 2. |
Timecode | FSK timecode files for ShangYi-TECH contain a segment number embedded in the timecode signal along with the timing information. The segment number must correspond to the segment number in the associated script file. If you have a show with multiple songs, each song representing a segment, then you should export the show from Finale 3D using the “Multiple segments” export option, which will generate multiple script files, one for each song.
To generate the associated audio files that include the song audio on one channel and the timecode on the other channel, use the function, “File > Export > Export soundtrack…” and choose “Fire Pioneer FSK (one file per segment)” for one of the tracks. That will generate multiple WAV files, one for each song, with the embedded segment numbers corresponding to the segment numbers in the script file. If you want verify any timecode file is correct or ascertain what segment number it contains, please try the function, “File > Tools > Analyze timecode in soundtrack file…” This function works on all timecode files, whether they are generated from Finale 3D or from other software. |
Table 3 – Export options
Option name | Description |
---|---|
Segments | Either “Multiple segments” or “One segment for entire show” |
After the header, each row in the script has a number of fields separated by the comma character. The names of these fields and their descriptions are the following:
Table 4 – Specifications of script fields
Field name | Description |
---|---|
域 | Universe (controller number), formatted as two digits with leading zero, from 01-99. |
点火时间 | Event Time, e.g., 00:02.981. |
<blank> | Blank, reserved for future use. |
地址 | Firing system address, formatted as 0000, where the first two digits are rail (00-99) and the second two digits are the pin (00-31). |
篇章 | Segment integer from 0 to 249. |
An example script is shown below.
域,点火时间,,地址,篇章
02,02:07.760,,0000,3
02,02:17.760,,0001,3
02,02:27.760,,0002,3
02,02:37.760,,0003,3
01,02:47.760,,0004,3
01,02:57.760,,0005,3
01,01:37.760,,0000,5
01,01:47.760,,0001,5
01,01:57.760,,0002,5
01,02:07.760,,0003,5
Figure 1 – Example ShangYi-TECH script
Table 5 – Example files
Download link | Explanation |
test-shangyi-tech.csv | Example exported file (CSV) |
test-shangyi-tech.fin | Example show file |