Total found:2861
If you want to include flames or other simulations in a show design but you would like to exclude them from the firing system script, you can change their "Type" to "not_an_effect". The Type field controls a number of factors, such as whether an effect requires an e-match, whether it fits in a single-shot rack or a mortar rack, whether its duration is adjustable, and a few more factors in addition to the present factor of whether the effect receives firing system addresses. The complete list and explanation of types and the factors they control is, Why is ‘Type’ so important? What depends on it?. Figure 1 – The "Type" field affects whether the effect receives firing system addresses. Figure 2 shows one of the flame effects from the default "Generic Effects" collection. It has the type "flame". A quick glance at the table in Why is ‘Type’ so important? What depends on it? will show that effects with type "flame" do receive firing system addresses (or DMX addresses depending on the firing system type). If you want to exclude them from getting firing system addresses, change their type to "not_an_effect". You can change the type by double-clicking the cell in the effect window and manually typing the other type. There are 14 pre-defined type possibilities to choose from. Figure 2 – Change the Type to "not_an_effect" to exclude the effect from firing system addresses. After you change the type to "not_an_effect", the table in the effect window looks like Figure 2. If you then address the show with "Addressing > Address show", the flame effects will have blank cells in the "Rail" and "Pin" column, as shown in Figure 3. Figure 3 – Script lines with the Type "not_an_effect" will not receive firing system addresses. The firing system export function, "File > Export > Export firing system script(s)" may give a warning that some effects are missing assignments, but the warning mentions that the usual reason is an empty cue, and it is not anything to worry about.
After you lay out the racks in the rack layout view, the addressing functions like "Addressing > Address show" may fill in the firing system pin numbers starting with the wrong rack, from your perspective. To fix the problem, you can adjust the order of the racks. Figure 1 – If you would prefer the top left tube to be module 50, pin 0, the racks are in the wrong order. The rack layout of Figure 1 shows six 3" racks in two clusters. The addressing function appears to assign firing system module and pin numbers starting with the right cluster of three racks, wrapping around to the left cluster of three racks. The tube in the top-left (circled in Figure 1) is thus assigned a firing system address of module 51, pin E. It would be natural to want something different. Perhaps you want this tube to have the address: module 50, pin 0. The reason the racks on the right are assigned the lower firing system addresses is that their rack numbers are lower numbers than the rack numbers of the racks on the left. The rack numbers are shown in the "Rack" column in the table below the rack diagram. The three selected racks (circled) have the rack numbers 39, 40, and 41, as you can see in the three selected rows in the table in Figure 2. Figure 2 – To correct the problem, move the three racks on the right to be "last". To force the three racks on the right to be addressed after the three on the left, select them and right click on them to do the function "Renumber left to right" from the context menu, which brings up a dialog with a field, "Starting with rack number", and with a checkbox, "Start after all other racks". To move these three racks to last, just check the checkbox and click okay. Figure 3 – The "Renumber left to right" function changes the rack numbers in the "Rack" column. The "Renumber left to right" function changes the rack numbers in the "Rack" column, making them larger than any other rack numbers. Notice in Figure 3 that the three selected racks that used to have rack numbers 39, 40, and 41 now have rack numbers 45, 46, and 47, making them last. Figure 4 – After you adjust the rack numbers in the "Rack" column, the addressing function assigns addresses in the correct order. Once you've changed the rack numbers to be in the order you want, repeat the "Addressing > Address show" function to re-assign firing system addresses, considering the racks in order. You can achieve the desired result shown in Figure 4 -- the top-left tube having the address: module 50, pin 0! You may also find it easier to edit the rack numbers directly in the table by hand instead of using the "Renumber left to right" function. Rack numbers need to be unique, which means it is difficult to swap two numbers without temporarily assigning one to a temporary number to move it out of the way. Renumber functions In addition to the "Renumber left to right" context menu function, the main menu item "Racks > Renumber all racks consecutively" will compact all the rack numbers to a consecutive sequence from 1 to N by eliminating any gaps. Please see Renumber racks for examples and more information about renumbering racks.
If a shoot site will be used over and over again for repeated events, such as in a theme park, the shoot site may be pre-configured with a fixed number of stationary mortars at pre-defined angles and with pre-defined firing system wiring. Take a look at Figure 1, below. Figure 1 – Launch position with 32 tubes at pre-defined angles and with pre-defined module and pin numbers. The rack layout of Figure 1 represents a launch position labeled B02 with two Pyrodigital modules, 79 and 7B. The tubes in this launch position are modelled in Finale 3D as individual single-tube racks. There are 32 tubes at this launch position, and thus there are 32 racks, represented by the peach and green squares. The peach squares are 5" tubes and the green squares are 6" tubes. Additionally, all 16 of the 5" tubes on the left side are tilted 10 degrees to the left. Only two of the 6" racks on the right side are tilted to the left (the rest are straight up). All of the 5" tubes on the right are tilted 10 degrees to the right. Further to the specifications of this launch position, the 16 tubes on the left are all constrained to module 79, and to pin numbers counting from 0 to F beginning with 0 in the lower left, then 1 above it, then 2 on the bottom row again, then 3 above it, etc.; the 16 tubes on the right are all constrained to module 7B and to pins in a similar order beginning with 0 in the lower left. Not all of the tubes are filled in this example, which is why some of the tubes do not have pin numbers in them, but you can observe that all of the tubes that do have pin numbers are laid out consistently with these specifications. Imagine that the specifications illustrated by Figure 1 are pre-defined by the shoot site. Then any show design that is compatible with this shoot site must have effects that fit in these specific tube sizes at these specific angles -- and the firing system addresses of the effects must match the pre-defined modules and pins of the tubes that the effects go into. This section shows how to set up your shoot site in Finale 3D such that the addressing functions will assign firing system addresses in keeping with these complex specifications of the shoot site. Setting up the shoot site in Finale 3D The addressing functions in Finale 3D like "Addressing > Address show" assign firing system module and pin numbers to the effects, and additionally rack and tube numbers if you've added racks to the launch positions. To set up the shoot site for pre-wired tubes as shown in Figure 1, you need to, Create definitions of the racks, specifying the size and "Pre-wired pins" option. Add all 32 racks to the rack layout and tilt them to the correct angles using the blue control point in the lower right. Specify the "Pre-Assigned Rails" for the launch position (79 and 7B in this example). Specify the module and pin numbers for all 32 racks exactly as you want them to be laid out. Step 1: Creating the rack definitions Creating the rack definitions may be the simplest step of all. The shoot site of Figure 1 requires only two rack definitions, a 5" and a 6" rack. Both racks have a single tube. Both racks are mortar racks with the "Pre-wired pins" option of "Specified by Custom Rack Field". Figure 2 shows the dialog for creating one of these racks: Figure 2 – Definition of a single-tube rack for a pre-wired shoot site. Step 2: Adding the racks to the launch position Once you've created the two rack definitions, you can add all 32 rack instances to the launch position by clicking on the rows representing the racks in the effects window while viewing the launch position in the rack layout window. It is easiest to do this by hand, one at a time. For each one that needs to be angled, you can click on the blue dash control point in the lower right corner of the rack and drag it to tilt the rack to the correct angle. After completing this step, your launch position should have peach and green squares looking like Figure 1, although no pin numbers or module numbers yet. Step 3: Specify the "Pre-Assigned Rails" Knowing that your launch position is to use modules 79 and 7B, edit the position properties for the launch position and type in "79,7B" into the "Pre-Assigned Rails" field. The terms "Rail" and "Module" mean the same thing unless the firing system partitions its module pins into slats (Rails). Since the Pyrodigital firing system does not do that, the terms "Rail" and "Module" are synonymous. Setting the Pre-Assigned Rails for the position allocates those specific modules to the position. You can edit position properties by right clicking a position in the 3D view, or by clicking the "Edit rails" link at the bottom of the rack layout view, or by opening the positions window and editing the Pre-Assigned Rails column. Editing the numbers in the positions window is the quickest user interface if you are configuring multiple launch positions. Figure 3 – Pre-allocating specific rails (modules) for the launch position. Step 4: Specify the module and pin numbers for the racks Refer again to Figure 1 and look at the numbers circled in red. The table in this diagram has a lot of the columns hidden in order to make the columns important to this example more visible (hint: to hide columns, right-click on the column header and select "Hide column" from the context menu; or click on the blue gear menu in the upper right). The two red circles show the "Custom Rack Field" and the "Pre-Wired Rails" for the racks in the launch position. These fields are editable. You can click on a rack in the rack layout view to select it in the table, and then you can edit these two field values for that rack. If you recall in Step 1, you defined the racks with the "Pre-wired pins" option of "Specified by Custom Rack Field". That option enables you to specify different pins for each rack instance in the position. Since these racks have just a single tube each, each rack needs only a single number, representing the pin number pre-wired to its one and only tube (if the rack had multiple tubes you can specify a comma-separate list of pin numbers instead of a single number). So, for this example, just fill in the desired pin number for the tube in the "Custom Rack Field" of the rack representing the tube. The "Pre-Wired Rail" field sets a constraint that the rack is only compatible with a list of one or more specified rails. In this example, each rack has one tube so it obviously involves only one module. Simply type the appropriate module number into the "Pre-Wired Rail" field of each rack. What next? Steps 1-4 complete the setup of the shoot site for pre-wired tubes. After completing these steps, you can design a show and assign firing system addresses with "Addressing > Address show" or any of the other addressing options. Finale 3D will assign firing system addresses consistent with the specifications you've laid out. Looking back again at Figure 1, notice that some of the pin numbers in the counting sequence appear to be missing. The second green square, for example, which would be expected to house pin 3, is empty. Why is that? The show design for this example has only one 6" shell aiming to the left 10 degrees. Thus that tube cannot be used for anything. Since the tube cannot be used for anything, neither can the pin that is pre-wired to it. Pin 3 of module 7B must be unused for this show design. While designing a show you can check at any time if your design fits in the constraints of your shoot site by clicking "Addressing > Address show" and seeing if there are any errors. If your show design uses angles or sizes that you don't have in the shoot site, you'll find out about it with errors in the summary dialog from the addressing function.
Unless otherwise specified, the tubes in racks will load top to bottom when addresses are assigned. Of course you can drag-and-drop the pins in the racks to rearrange the tube assignments in the rack layout view, but if you know that you want to snake the loading order back and forth as shown in Figure 1, then you can save some time by indicating that alternating racks have reversed tube loading order. The "User settings > Reverse tube loading order on alternating racks" setting will cause the "Racks > Add racks for show" and other rack adding commands to reverse the tube loading order of alternating mortar racks in every size-angle group of racks (excluding cake, candle, and single-shot racks). Figure 1 – If "User settings > Reverse tube loading order on alternating racks" is ON, then "Add racks for show" will reverse the loading order of alternating mortar racks within a size-angle group. If you add racks individually by clicking on them in the effects window, then they'll be inserted into rack layout with the standard tube loading order. To reverse the tube loading order on specific racks, shift-click to select all the racks you want to reverse, then right-click on any of them and do the command "Reverse tube loading order" from the context menu, as shown in Figure 2. The small bar at the top of the rack indicates that its tube loading order is reversed. Figure 2 – Right-click on a rack to reverse its tube loading order individually, as indicated by the small bar above the rack. Racks with multiple rows of the tubes will load top to bottom, left to right. If you want alternating rows of the multi-row rack to load tubes in reverse, snaking up and down as in Figure 3, then check the "Alternating" box in the rack's VDL as shown in Figure 4 by right-clicking the rack and doing "Edit this rack VDL" from the context menu. Figure 3 – A multi-row rack can be configured to have alternating row tube loading orders. The "Alternating" checkbox applies to the definition of the rack, meaning that it will apply to all instances of the rack in the show. That is in contrast to the "Reverse tube loading order" command applied to any individual rack instances, which just reverses the loading order of the selected rack instances specifically. Figure 4 – Multi-row racks like the one in Figure 3 can be set to alternate in the rack VDL specifications.
The Chain Specifications report contains the information to required to build all the chains in the show. An example report is shown in Figure 1. The first few rows of this example report represent same-effect chains, which only require one row to describe each chain. The rows near the bottom of the report, for chain number 10, 11, and 12, require multiple rows to represent the chains because the chains are made of multiple effects. Even chains made of multiple effects are represented efficiently in the report. Chain 12, for example, begins with three shells of the same type, so all three of them can be represented in a single row, with their delays listed together in the Chain Gap column. Figure 1 – The Chain Specifications report contains the information to build all the chains in the show. The first column in the Chain Specifications report is the "Chain Reference" field from the script. The Chain Reference is the identifier that associates all the items in the chain as part of the same chain. The Chain Reference isn't very important during scripting, and it is often hidden in the script window in Finale 3D. You can unhide the Chain Reference column, and turn off "Show one row per chain" from the blue gear menu in the upper right to see that the Chain Reference is the same number for all the items in the same chain. That number also determines the order of the rows in the report. The screen shot of the script window shown in Figure 2 shows the five items with Chain Reference = 9, which are displayed in a single row in the report in Figure 1. Figure 2 – The Chain Reference column in the script window holds the chain numbers shown in the Chain Specifications report. Chain Reference numbers are assigned sequentially to chains at the time the chains are created or inserted into the show. If you later delete chains from the show while editing your script, that will leave gaps in the sequence of Chain Reference numbers. You can see a gap, for example, after chain 3 in Figure 1. It's natural to interpret first column of the Chain Specification report as counting the chains. If you look at the last number in the report and it says 12, you might naturally assume you've got 12 chains to build. To eliminate the confusion, it's a good idea to remove the gaps by doing the command, "Script > Chains > Renumber chains...", which brings up the dialog shown in Figure 3, before printing the Chain Reference report. Figure 3 – Renumber chains from the script menu to sort the chains in the report and to eliminate gaps in the number sequence.. While you are at it, you can decide exactly how you want the rows of the Chain Specification report to be sorted. You can sort by address, position, size, etc., whatever is most optimal for your chain building process. The Chain Specifications report is fully customizable, like all the other reports. If you would prefer to see chain delays relative to the first item instead of delay gaps between the items, you can change the report to show the "Delay" column instead of the "Chain Gap" column, which will result in the report shown in Figure 4, in comparison to Figure 1. Figure 4 – Customize the Chain Specifications report to show delays relative to the first item instead of the gaps. If you edit the report template from the blue gear menu of the script window, you can see the specific criteria that guarantee the proper rows are combined in the report. Fields like the Delay field and the Chain Gap field in the script table automatically do the right thing by showing all the delays of the combined items. The fields of the script window that make the Chain Specifications report possible are a little complex in their definitions. If the standard Chain Specifications report works for you, there's no reason to concern yourself with more detail than you need, but if you are going to create your own custom Chain Specifications report, you made need the information of Table 1. Table 1 – Script fields that make the Chain Specifications report possible Column in script window Explanation Chain Reference The unique identifier of the chain; all items in the chain have the same Chain Reference. Delay The delay relative to the first item in the chain (not necessarily the previous item). When multiple rows are combined, the Delay field combines the delays of the individual rows, separated by asterisks. Chain Gap The delay relative to the previous item in the chain. When multiple rows are combined, the Chain Gap field combines the delays of the individual rows, separated by asterisks. The first Chain Gap in the combined sequence is therefore always zero. Chain Row For chain items, the Chain Row counts the contiguous runs of same-effect items in the chain, which maps to the row count for each item of a multi-effect chain that is represented by multiple rows in the standard Chain Specifications report. For example, the first three items of chain 12 in Figure 1 have Chain Row 1, and are thus combined on the same row; the next three items have Chain Row 2, 3, and 4. The final two items both have Chain Row 5. Is Chain True if the item has a valid Chain Reference, and false otherwise.
To create and export a script for the Dance Of Fire 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 TXT file that you can import into your firing system, or edit in a text editor. Figure 1 – The Dance Of Fire firing system The exported script is a human-readable text file that contains only the essential information for a firing system controller to fire the show -- the ignition time, module, pin, and effect name. Table 1 – File format and encoding File format Extension Text encoding Field delimiter End-of-line Text TXT ASCII Tab CRLF The script contains rows of data fields separated by tabs. There are no header rows or comments. The special characteristics of the script are shown in the following table: Table 2 – Special characteristics Special characteristics Description Sort order of rows Rows are sorted by ignition time. What rows represent Each row identifies a unique firing pin ignition (i.e., unique module-pin address on the firing system). Module/pin addresses The Dance Of Fire system employs modules with 12 slats of 10 pins each, for 120 pins in total per module. Finale 3D represents the firing system addresses as three part addresses, module-slat-pin, and converts the addresses to module-pin addresses with pin numbers relative to the module in the exported script. Special characters Fields include ASCII characters other than: ' , ; " tab and newline and other control characters. Each script row has the fields shown in Table 3. Table 3 – Specifications of script fields Field name Description Event Time The exact time of the firing system's "ignition event" (application of a voltage to a pin) that ignites e-matches or triggers a sequencer that ultimately leads to the ignition of effects. Format is H:MM:SS.DD. Module Number The module number (without the slat number). Pin Number The pin number, relative to the module. Description The name of the effect. The example displayed script in Figure 2 below and the corresponding exported script in Figure 3 illustrate the translation of module-slat-pin addresses in Finale 3D to module-pin addresses in the exported script. Figure 2 – A script showing sixteen addresses on module 01, the first ten on slat 01 and the remaining six on slat 02 The pin addresses beginning on row 11 of Figure 2 are relative to the slat number in the Finale 3D script table, but are converted to be relative to the module itself in the exported script shown in Figure 3. The standard labels templates in Finale 3D for stickers will show module-slat-pin addresses, but if you would prefer to create labels with module-pin addresses you can customize the labels template, and use the "Pin Absolute" field or "Module/Pin Address" field instead of the "Address" field. Instructions are here: Labels basic instructions. 0:00:02.76 1 1 Red Chrysanthemum 0:00:02.86 1 2 Red Chrysanthemum 0:00:02.96 1 3 Red Chrysanthemum 0:00:03.06 1 4 Red Chrysanthemum 0:00:03.16 1 5 Red Chrysanthemum 0:00:03.26 1 6 Red Chrysanthemum 0:00:03.36 1 7 Red Chrysanthemum 0:00:03.46 1 8 Red Chrysanthemum 0:00:03.56 1 9 Red Chrysanthemum 0:00:03.66 1 10 Red Chrysanthemum 0:00:03.76 1 11 Red Chrysanthemum 0:00:03.86 1 12 Red Chrysanthemum 0:00:03.96 1 13 Red Chrysanthemum 0:00:04.06 1 14 Red Chrysanthemum 0:00:04.16 1 15 Red Chrysanthemum 0:00:04.26 1 16 Red Chrysanthemum Figure 3 – Exported Dance Of Fire firing system script corresponding to the script of Figure 2 Table 4 – Example files Download link Explanation test_danceoffire.txt Example exported file (TXT) test_danceoffire.fin Example show file
The effect window in Finale 3D displays a collection of effects that you can choose from the blue selector in the upper right -- Generic effects, Per-show effects, My effects, and others. You can use the filters and search box at the top of the effects window to further refine the results, but it remains the case that all the effects shown in the effects window at one time come from a single collection, chosen from the blue selector. One of these collections is Per-show effects. The reason the collections are split out from one another is that they are saved in different places. Generic effects is a read-only default collection of 6000 effects that is part of the downloaded software itself. My effects is a read-write personal collection of effects associated with your user account, saved to the cloud whenever you do the "Sync to network" command. Read-only supplier catalogs, and Finale Inventory accounts also show up in the list of collections. What distinguishes the Per-show effects from all the other collections is that it is saved as part of the show file. That's why it is called "Per-show" effects. Figure 1 – Per-show effects is one of the effects collections that the effect window can display. The saved show file contains its own Per-show effects to avoid having any external dependencies on outside effects collections or databases. You can send a show file to a friend, and the friend can open it in his Finale 3D with all the effects in tact, no matter what other effects collections your friend has access to. You see that the Per-show effects is associated with a particular show if you select the Per-show effects in the effects window and then switch between viewing different shows from bottom of the Windows menu in the main Finale 3D menu bar. When you do so, the content of the effects window will change to show the effects of each show. What is in Per-show effects, exactly? If you create a show with three or four different effects in the script, and then look at the show's Per-show effects, you won't be surprised to see that it contains the same three or four effects you used in your script. You might be surprised, however, to see what happens if you delete those effects from the script: nothing. The Per-show effects will still contain the effect definitions of the effects that you inserted into the script and then later deleted. Thus it isn't always the case that the Per-show effects contains exactly those effects currently in the script and nothing more. In general, it will contain all effects that have ever been in the script, even if they've been deleted. If you have effects in the Per-show effects that are leftover from previous versions of the script and you want to delete them to clean up the collection, there's a command to do exactly that: "Effects > Delete unreferenced Per-show effects". How do effects get into Per-show effects? Whenever you insert an effect into the script from any collection, the effect definition will be copied from that effect collection to the show's Per-show effects automatically. If an effect with the same part number is already in the Per-show effects, then you'll get a warning dialog asking, "That effect is already in the Per-show effects. Update the effect?" It is possible that the effect already in your Per-show effects by that part number has a slightly different definition from the effect you are inserting -- or an entirely different definition if it happens to be a different effect! The Per-show effects is organized by part number. Every part number is unique. Thus if you insert an effect into the script whose part number matches a part number already in the script, the Per-show effects is going to end up with a single effect definition associated with that part number one way or the other, and all of the events in the script referencing that part number are going to use that effect definition. While it might be confusing that inserting an effect into a script could alter the appearance of existing effects already in the script, it is ultimately a good thing. You wouldn't want a show to have two different looking effects associated with the same part number, because then how would you ever generate a complete product list for the show? The unique part numbers requirement guarantees that the show remains consistent. Quotas, and effects without definitions The function, "File > Import > Import quotas..." reads in a CSV file with two columns: part number and quantity. The data in this file represents what products are planned to be used in a show, and in what quantities. The quotas show up in the "Quota" column of the effect window, and if they are non-zero, then the cells change color from green to white to red depending on whether the script contains too few, just right, or too many of each item. Sometimes people script shows to match a sales order or a packing list, which may be the source of the part numbers and quantities. When you import quotas into a show either with the import function or from Finale Inventory, the quotas get stored as part of the show. You would expect that, because if you save the show and re-open it, the quotas are still there to use as a reference for scripting. You might wonder, how are the quotas stored in the show file? As you may guess, the quotas are stored in the show's Per-show effects, which you can see if you import quotas and then look at the Per-show effects. You may see something odd, though, if you look. The imported rows in the Per-show effects contain only the part number and the quota quantity --- and none of the other fields of information. The reason is that the imported file contains only part numbers and quantities, and nothing else. The other fields remain blank because the information is missing. By themselves, the part numbers in the Per-show effects aren't enough to insert into the script without definitions, so you need to switch to the collection of effects in the effects window that that has those same part numbers and their definitions also. When you insert effects into the show, you should insert them from the effect collection that has the definitions. The previous section, "How do effects get into Per-show effects?" explained that when you insert an effect, it updates the definition in the Per-show effects. You can see how that is important for inserting effects matching imported quotas. When you insert effects from the collection with definitions, those definitions will be copied into the Per-show effects, updating all the missing fields of information. One final explanation completes the story of importing quotas. After importing quotas, if you switch to a collection of effects containing the proper effect definitions for those part numbers (i.e., not the Per-show effects), you will see the imported quotas in the Quota column. That might lead you to wonder if the quotas mysteriously got imported into a collection other than Per-show effects. The answer is no, the quotas were not imported into the other collection, and they are not part of the other collection. The quotas of the Per-show effects "show through" for the matching part numbers of whatever collection you are viewing in the effects window. In that way, the quotas are similar to the "Used" quantities. The used quantities are calculated dynamically by counting the effects in the script, and thus the used quantities also are not part of the viewed collection. Creating effects in Per-show effects When you create effects with the menu item "Effects > Create new effect..." you get to select a part number for the new effect and what collection it goes into. The My effects collection is the most common destination, since it is a personal collection for each user. A common work flow is to create and customize effects in the My effects collection, and then if you have a shared effects list as a company account, you can copy/paste the rows from the My Effects into the other collection when you are ready. It is also possible to create effects and save them directly in the Per-show effects. There is nothing wrong with that, as long as you keep in mind that the effect definitions are only saved as part of the show. You can copy/paste the rows from the Per-show effects to any other collection whenever you want, so it is not an important decision. Racks in the Per-show effects Just as the events in the script refer to part numbers and effect definitions in the Per-show effects, so do the racks in the rack layout refer to part numbers and rack definitions in the Per-show effects. Thus the Per-show effects actually holds more than just effects; it holds racks too. It is just called Per-show effects because that is what people usually think about most.
To create and export a script for PyroMaster, 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 with a .PME extension that you can import into your PyroMaker firing system software, or Excel. Figure 1 – A 24 pin Slave 24 PyroMaster module. The PyroMaster system uses some information that is not represented in Finale 3D, and has some concepts that have representations in Finale 3D under different names. Table 1 shows the terms used by the PyroMaster system and their corresponding terms in Finale 3D. Table 1 – PyroMaster terms and their representation in Finale 3D PyroMaster Term Corresponding Term in Finale 3D Explanation Device ID (nothing) The Device ID is a long hardware ID, analogous to a MAC address, that uniquely identifies a physical device like a Slave or Replicator. User Address (nothing) The User Address is a shorter, user-defined identifier that stands for a specific Device ID. Use the PyroMaker software to associate your own user-defined User Addresses with the fixed Device IDs of your hardware. Module and Pin Module and Slat and Pin for SL-240; Module and Pin (no Slat) for SL-24, SL-48, SQ-48 In the PyroMaster system, each Slave or Sequencer device has a contiguous range of pins (24, 48, or 240). Replicator slats can be configured to map their 12 pins to arbitrary subsets of the Slave or Sequencer's pins. Thus PyroMaster Slave and Sequencer addresses only include a module number and pin number; Replicator pins are aliases of those addresses. In Finale 3D, the 24 and 48 pin devices also have contiguous ranges of pins, but the 240 pin device has 20 banks ("Slats") of 12 pins each. The banks of the 240 pin device are identified by the slat number in Finale 3D, from 1-20, which must be combined with the pin numbers to yield pin addresses in the contiguous range from 1-240. Pin 1 of bank 2 corresponds to pin 13 of the contiguous range; pin 1 of bank 3 corresponds to pin 25; etc. Consider a front of five positions firing 12 shots at varying times. This example could be implemented with one SL-240 Slave module with five banks of pins distributed by way of Replicators to each of the five positions. You can address this example in Finale 3D by specifying that the five positions in the front are part of the same "Section"; and specifying that the section uses the module type pyromaster_sl240_20x12; and specifying constraints that modules can be shared across positions in the same section but slats cannot. The resulting addresses will be XXX-1-1 through XXX-1-12 in one position; XXX-2-1 through XXX-2-12 in the second position, and so on up to XXX-5-1 through XXX-5-12 in the fifth position (XXX being whatever module number is assigned). Use the PyroMaker software to assign User Addresses of Replicators for the addresses of all five positions, and to allocate an SL-240 to serve the Replicators (six pieces of hardware in total). The script file exported from Finale 3D contains only the rail and pin addresses of the firing system hardware, not the Device IDs or User Addresses. After importing the Finale 3D script into PyroMaker, you need to assign a User Address to each unique rail address per position from the Finale 3D script. If the same rail address is used in two or more positions, each position will require its own User Address for the rail address, as each User Address represents a physical piece of hardware that is located at one position or the other, even if both pieces of hardware are firing the same rail and pin address. Using the PyroMaker software you must also create a mapping of the User Addresses to the fixed Device IDs of the physical hardware. In future releases, Finale 3D may provide a feature to assign User Addresses automatically, and Finale 3D may include them as a new field in the exported script. If you assign User Addresses within Finale 3D, you can use Finale 3D's custom labels to print out hardware labels with the User Addresses and to print out product labels that include the effect information in addition to the position, angle, User Address and pin address as required for setting up the show. Table 2 – File format and encoding File format Extension Text encoding Field delimiter End-of-line Text PME UTF-8 Tab CRLF The PME script contains a single header row with the column names in fixed order, followed by the rows themselves. The special characteristics of the script are shown in the following table: Table 3 – Special characteristics Special characteristics Description Sort order of rows Rows are sorted by ignition time. What rows represent Each row identifies a unique firing pin ignition on a hardware device, i.e., unique rail address, pin address, position. Pins fire only once, at a single time. If two effects fire from the same rail address, pin address, and position, the two effects will be represented as a single row in the exported script. However, if two effects fire from the same rail address, pin address, but different positions (using Replicator slats with the same rail address), the two effects will be represented by two separate rows. Module types Rows in the script can represent multiple types of modules: pyromaster_sl24_1x24 -- SL-24 slave with a contiguous bank of pins 1-24 pyromaster_sl48_1x48 -- SL-48 slave with a contiguous bank of pins 1-48 pyromaster_sq24_1x24 -- SQ-24 sequencer with a contiguous bank of pins 1-24 pyromaster_sl240_20x12 -- SL-240 slave serving 20 Replicator slats of 12 pins each, identified as bank 1, 2, 3, etc. in Finale 3D (no on-board pins on the SL-240) Special characters Fields include any Unicode characters except: ' , ; " tab and newline and other control characters. Support for semi-automatic firing The Track field is reserved to support possible semi-automatic firing modes in future versions. The Track is an optional identifier associating a collection of rows that are to be fired together as a sequence or "macro" with a single trigger in semi-automatic mode. Each script row has the fields shown in Table 4. Table 4 – Specifications of script fields Field name Description Ignition Event Time The exact time of the firing system's "ignition event" (application of a voltage to a pin) that ignites e-matches or triggers a sequencer that ultimately leads to the ignition of effects. Format is H:MM:SS.DD. Prefire Delay The delay from the ignition time to the perceived visual effect. This delay typically includes the lift time (for shells) plus any fuse time between the ignition time and the first launch of the effect. Format is in seconds with two digits after the decimal point. Format is S.DD. Duration The duration represents the lifetime of the perceived visual effect, which is usually interpreted for shells as the time from break to dissipation of the stars. Format is in seconds with two digits after the decimal point. Format is M:SS.DD. Effect Name The name of the effect. Caliber The device caliber. Format is either a number followed by double-quote for inches or "mm" for millimeters, or the string "NA" or blank for effects for which the caliber term is not applicable. Angles An ASCII art representation of the angles of the devices on this shot, made with backslash, vertical line, and forward slash characters. Position Name The name of the launch position. Section A user-defined label used to create groups of positions; module addresses are never shared across different sections. Module Description The type and configuration of module or slat: pyromaster_sl24_1x24, pyromaster_sl48_1x48, pyromaster_sq24_1x24, pyromaster_sl240_20x12. Module Address The module number XXX. Slat Address The slat number 1-20 identifying a 12-pin bank in the SL-240 module's contiguous range of pins; or blank for the other module types. Pin Address The pin number beginning with 1. For the SL-240, the pin number is relative to the bank and is thus in the range 1-12, not 1-240. Lockout Identifier An integer greater than or equal to one, identifying a group of effects that can be disabled by pressing the associated button on the firing system controller during the performance, due to conditions. Firing Notes Firing notes from the script pertaining to this row. Track A string identifying a group of effects that are to be fired as a sequence with a single trigger if the firing system is in semi-autonomous mode. The example script below shows an exported script with nine rows, representing ten shots. The first two shots have the same position, module, and pin. Thus in the exported file, they are combined as a single row. The last two shots also have the same module (and slat) and pin, but not the same position. Thus they are exported as separate rows (because the position is not the same). It is not possible for two rows with the same module/slat/pin address to have different times. Finale 3D will generate an error message if you try to export a file with that condition. Ignition Event Time Prefire Delay Duration Effect Name Caliber Angles Position Name Section Module Description Module Address Slat Address Pin Address Lockout Identifier Firing Notes Track 0:00:02.76 2.24 0:01.02 (2) Red Chrysanthemum ... 2" / Pos-01 s1 pyromaster_sl24_1x24 1 1 0:00:02.86 2.24 0:01.02 Red Chrysanthemum 2" | Pos-02 s2 pyromaster_sl24_1x24 2 1 0:00:02.96 2.24 0:01.02 Red Chrysanthemum 2" | Pos-03 s3 pyromaster_sl24_1x24 3 1 0:00:03.06 2.24 0:01.02 Red Chrysanthemum 2" | Pos-04 s4 pyromaster_sl24_1x24 4 1 0:00:03.16 2.24 0:01.02 Red Chrysanthemum 2" | Pos-05 s5 pyromaster_sl24_1x24 5 1 0:00:03.26 2.24 0:01.02 Red Chrysanthemum 2" | Pos-06 s6 pyromaster_sl24_1x24 6 1 0:00:03.36 2.24 0:01.02 Red Chrysanthemum 2" | Pos-07 s7 pyromaster_sl24_1x24 7 1 0:00:03.46 2.24 0:01.02 Red Chrysanthemum 2" Pos-08 s8 pyromaster_sl240_20x12 8 01 1 0:00:03.46 2.24 0:01.02 Red Chrysanthemum 2" / Pos-09 s8 pyromaster_sl240_20x12 8 01 1 Figure 2 – Example PME firing system script file for PyroMaster Table 5 – Example files Download link Explanation test_pyromaster.pme Example exported file (CSV) test_pyromaster.fin Example show file
Racks and positions orientations are represented in Euler Angles as heading (a rotation about the global Y-axis), pitch (a rotation about the global X-axis), and roll (a rotation about the global Z-axis). Finale 3D chooses this representation for racks because the three angles correspond directly to the three degrees of freedom of rotations for mortars in a traditional wooden rack. The three angles also happen to correspond to the most common rotations of positions (side to side, forward/back, and compass heading), so they serve as a natural representation for both racks and positions. Figure 1 – To remember the meaning of heading, pitch, and roll, imagine a rack of mortars in this orientation. To cement the meanings of heading, pitch, and roll in your mind, please imagine the wooden rack as shown in Figure 1. The mortars of the rack in this orientation have three degrees of freedom for rotation corresponding to heading, pitch, and roll: Roll is the side to side rotation/tilt of the entire rack. Pitch is the fan-out angle of the tubes within the rack. Heading is the direction the rack is facing. Heading, pitch, and roll The orientation of a rack or position may be calculated by a sequence of three rotations, rotating first by pitch about the global X-axis, then by roll about the global Z-axis, and finally by heading about the global Y-axis. All angles are "right-handed" rotations, meaning that that if you aimed the thumb of your right hand in the direction of the axis of rotation, then your fingers would curl in the positive direction of the angle. Following this convention, heading is a counter-clockwise rotation, viewed from above; pitch aims the up vector forwards toward the viewer (i.e., aiming out of the screen) when viewed from the front; roll aims the up vector to the left on the screen when viewed from the front. Table 1 – Order of Euler Angle rotations producing a rotated vector v' from vector v v' = v * R1 * R2 * R3 Rotation First rotation (R1) Rotate around global X-axis by pitch Second rotation (R2) Rotate around global Z-axis by roll Third rotation (R3) Rotate around global Y-axis by heading The order of the three rotations matters to their definition. If roll were to apply before pitch, then <heading = 0°, pitch = 90°, roll = 90°> would represent a mortar aiming to the left because the 90° roll around the global Z-axis would tilt the mortar fully to the left, and then the subsequent pitch around the global X-axis would spin the mortar around its own axis without changing the direction it is pointing. By contrast, since pitch actually applies first, <heading = 0°, pitch = 90°, roll = 90°> represents a mortar aiming straight out of the screen at the viewer because the 90° pitch rotation around the global X-axis rotates the mortar fully forward out of the screen, and the subsequent roll around the global Z-axis spins the mortar around its own axis without changing the direction. Referring back to the picture of the rack in Figure 1, the order of rotations of Table 1 is the only possible choice that matches the physical constraints of the rack. If heading were the first rotation, for example, then pitching around the global X-axis wouldn't fan the mortars within the rack because the rack wouldn't necessarily be facing the X-axis as it is in Figure 1. Table 2 – Range of angles in conversions from orientations Angle Range Heading (-180°, +180°] Pitch (-180°, +180°] Roll [-90°, +90°] Any orientation can be represented by heading, pitch, and roll angles in the ranges of Table 2. Some orientations have multiple representations within these ranges that happen to be equivalent. The orientation represented by <heading = 0°, pitch = 90°, roll = 90°> is the same as the orientation represented by <heading = 90°, pitch = 0°, roll = 90°> for example. Mathematically, in this Euler Angle representation all rotation sequences with a roll of +/- 90° are equivalent to other rotation sequences in which +/- heading and pitch sum to a constant value. In circumstances in which an orientation is converted to a rotation sequence that is not uniquely defined, Finale 3D will choose the rotation sequence with pitch = 0°, which creates a 1-to-1 relationship between orientations and Euler Angles in the ranges of Table 2. These ranges are not limits, though, in Finale 3D's user interface and tables. You can enter any heading, pitch, and roll value into the position and model table columns, including numbers outside these ranges. Origin man The coordinates of positions are relative to the model they are attached to, if they are attached to a model, and are global coordinates otherwise. To symbolize the global coordinate system and to convey the correct sense of scale, a six foot tall human facing the forward camera is drawn at the coordinates <0, 0, 0>. His name is "Origin Man." Figure 2 – "Origin Man" stands at coordinates <0, 0, 0>. In the global frame of reference, the X-axis aims to the right of the screen, the Y-axis aims up into the sky, and the Z-axis aims out of the screen toward the viewer (you). Rotating positions To rotate the heading of a position, right click the position and select "Rotate (heading)". A rotation wheel will appear. If you drag the reddish arrow around the wheel, you will adjust the heading of the position. The heading of the position is the global heading, analogous to a compass heading, which is unaffected by the pitch or roll of the position. The arrow on the top of the position disk always aims in the same direction as its heading. Figure 3 – Adjust the heading by right-clicking the position and selecting "Rotate (heading)". The pitch of the position aims the arrow on the position disk down into the ground (positive pitch) or up into the sky (negative pitch), as shown in Figure 4. Figure 4 – Adjust the pitch by right-clicking the position and selecting "Rotate (pitch)". The roll angle rotates the position on its side. Following the right-hand rule, a positive roll rotates the position to the left when viewed from the front, since the Z-axis aims toward the front. Figure 5 – Adjust the pitch by right-clicking the position and selecting "Rotate (roll)". Rotating positions on a wall The heading, pitch and roll angles are convenient for representing orientations that are resting on the ground or are pitched or rolled by less than 90 degrees. They aren't at all convenient for representing sideways positions, such as positions mounted on a wall or side of a tower facing outward. The position shown in Figure 6 can be rotated with the right-click context menu command, "Rotate (around position's up vector)". The other rotation commands shown in Figure 3, Figure 4, and Figure 5, are useless for rotating positions on walls. Figure 6 – Use "Rotate (around position's up vector)" to rotate positions on walls. The other rotation commands are useless. Moving positions on a wall Positions will automatically orient themselves flatly against the surface when you are dragging them onto a wall, but you may need to adjust the coordinates. The right-click menu item "Move on axis..." brings up three colored axes in the frame of reference of the position. You can drag the red, green, and blue arrows to move the position along any of its local axes, as shown in Figure 7. Figure 7 – The right-click menu command "Move on axis" bring up three arrows that you can drag to adjust the position. Arranging positions on towers and trusses The right-click menu commands to rotate and move positions apply to all selected positions, as a group, centered around the position you are right-clicking. For towers and walls, you may find it easier to arrange positions in a pattern on the ground, and then rotate the entire pattern up sideways and project it onto the tower or wall. Consider two examples. Example 1: Arranging positions vertically with even spacing on the side of a tower that tapers toward the top. The rulers and tools for arranging positions work best on the ground, so arrange the positions on the ground in a line in regular intervals. Then select all the positions in the line, right-click on the first position in the line, and do "Rotate (pitch)" or "Rotate (roll)" to rotate the entire line up into air. Then do the menu item "Positions > Coordinates > Project positions on their down axis to nearest surface" to project the positions against the tower surface behind them. Example 2: Arranging positions on the seats of a ferris wheel. Measure the diameter of the ferris wheel by right clicking on one of the seats and doing "Measure to this point" from the context menu. Knowing now the diameter of the circle, insert N positions into the scene with the menu item, "Positions > Insert > Insert multiple..." and then do the menu item "Positions > Arrange into pattern > Into a circle..." to arrange the positions into a circle of the right diameter -- on the ground. Slide the circle of positions on the ground so it is in front of the ferris wheel, as if the ferris wheel were casting a shadow on the ground in front of it and the positions were on the shadows of the seats. Right click on the position farthest from the ferris wheel base, and do "Rotate (pitch)" to pitch the entire circle of positions upward. Then right click one of the positions and do "Move on axis..." to move the circle of positions up and back to register against the ferris wheel model. Exporting coordinates and angles The Finale Generic CSV export format (see Finale Generic CSV (full show export format)) contains the world coordinates and angles of the positions and effects of an exported show in its Coordinates column. The exported CSV converts the coordinates and angles to world coordinates, as a convenience. By contrast, the table windows in Finale 3D contain relative coordinates and angles, i.e., effects are relative to their positions; and positions are relative to the models they are attached to if they are attached to models. Figure 8 shows an example of the table windows involved in calculating the world coordinates and angles of effects. Figure 8 – In the table windows, effects are relative to positions, which are in turn relative to the models they are attached to. The example CSV export that you can download from Table 3 below corresponds to Figure 8. It covers all the major scenarios -- left/right angles, forward/back angles, effects in rotated positions, and effects in rotated positions attached to rotated models. The test file has eight positions, each with two effects. The first position has effects at 30 degrees left and 30 degrees right relative to the position. The second position has effects at 30 degrees forward and 30 degrees back. The next two positions are the same as the previous two except the positions are themselves rotated 90 degrees clockwise. The next four positions are the same as the previous four except that the positions are attached to a model that is itself translated and rotated 90 degrees clockwise. Table 3 – Example files and downloads Download link Explanation angle-test.csv Test file for exporting angles and coordinates
The Pro version of Finale 3D supports fully customizable reports, but if you are using the Hobbyist version or if just want to change the font size or column widths, then you have some other options. First option -- save report as XLSX or CSV The first option is to print the report to an XLSX or CSV or TXT format instead of to PDF. Then you can open the report into Excel or other software, change the column widths or reformat the report as you like, and print it from outside of Finale 3D. The "Save as" file type is the selector at the bottom of the save dialog, as shown in Figure 1. Figure 1 – Choose the file type in the "Save as..." dialog. Figure 2 shows available file types. Other than XLSX (Excel) and PDF, the vast number of file type options are text files, either CSV (comma separated fields with Excel-style usage of double quotes to handle commas and double quotes contained within field values) or TXT (tab separated fields). You have the option of saving text files with different character set encodings and line endings. Users from the USA can export in ASCII-CRLF, which is a single-byte character encoding that includes all the common English characters. UTF8-NOBOM-CRLF is the most commonly accepted international encoding for all operating systems. UTF16LE-NOBOM-CRLF is the encoding that Microsoft Windows calls "Unicode" and that may open more easily in Microsoft products. Figure 2 – XLSX (Excel), PDF, and many text file options are available. Second option -- Edit the report blueprint Although blueprints aren't customizable in the Hobbyist version of Finale 3D, you can still edit the blueprint formatting fields manually in the Blueprints window, which you can open from the "Windows" menu of Finale 3D. The font size field is called "Em Size" ("Em" standing for the size of the letter "M" in points). The "Padding" field adjusts the extra space above and below the text in the rows. Both fields are in points, which are 1/72 of an inch. You can change the Em Size and the Padding to make more text fit in the cells. The first column in the Blueprints window identifies what the blueprint is for, e.g., whether it is a report, a label, an addressing blueprint. The second column is a unique identifier for the blueprint. The printed name/title of the blueprint is the "Page Title" column. Printed names optionally begin with double-bar || to indicate that that the phrase should be localized from English into other supported languages. The double-bar is stripped out when printed or displayed. Figure 3 – The Em Size and Padding adjust the amount of text that fits in a row. Third option -- export the data to Excel and format the report yourself If you need to do more substantial customizations to reports, you can export the data from the any of the table windows to XLSX or other format, and then completely reformat the table yourself. The "Print table..." and "Export table..." options in the blue gear menu are the two options. "Print table..." prints or exports the data that is currently shown in the table, based on the filters. "Export table..." exports all the data, ignoring the filters. Figure 4 – All tables support the option to export or print the table data to XLSX, CSV, TXT, PDF.