HOW TO CREATE MX LED EFFECTS AND DOF CONFIGS FOR DOF CONFIG TOOL (the EASY way), USING "DOF CONFIG CREATOR"
To create, add, or modify DOF Lighting and Feedback for virtual pinball tables in a cabinet:
- a virtual pinball table for Visual Pinball, Future Pinball, Pinball FX3 (or any emulator, etc) MUST have DOF support capability added to them.
- the table / game must already be in DOF Config Tool's database
- DOF commands and parameters need to be added to the table's config in DOF Config Tool (for each DOF toy)
- you need a basic understanding of how switches, solenoids, flashers, lights, and other toys work in a pinball game.
What makes a table DOF "capable"?
To add DOF capability to a table, it must be able to trigger DOF commands to control the DOF configuration for the table on DOF Config Tool.
Visual Pinball tables that emulate arcade "roms" through PinMAME, are already capable of triggering DOF commands. The "control" is all handled by the game's rom code, and PinMAME's output is what triggers the DOF commands.
Most of these rom based tables already have DOF feedback and lighting added to them by Arngrim, and many others! (Amazing stuff)
Visual Pinball tables that are EM (Electro-Mechanical) based, or Original tables (not emulating an arcade table) all need to have the DOF "trigger" commands added to the table script for every table action or event. Examples are solenoid actions, flashers, lights, shaker, etc. This means the table can have total control of how DOF is triggered.
Examples of Visual Pinball (table script) DOF trigger commands:
DOF 380, DOFPulse 'DOF triggers E380 with a small pulsed duration
DOF 220, DOFOn 'DOF triggers E220 to turn ON
DOF 220, DOFOff 'DOF triggers E220 to turn OFF
Example of a Visual Pinball (table script) DOF trigger command that also supports SSF (surround sound feedback):
PlaySoundAt SoundFXDOF("fx_kicker", 200, DOFPulse, DOFContactors), kicker1
Future Pinball tables do not have rom emulation capability. Therefor ALL Future Pinball tables need to have DOF triggering commands (for all table events, and actions) added to the table script as well. Since Future Pinball can't talk directly to DOF (due to it's restrictions), it needs to have DOFLinx support added to the table. Future Pinball "can" talk to DOFLinx, so DOFLinx will translate those commands to DOF.
For Future Pinball, DOFLinx can trigger most "standard" DOF toys (without the need for DOF Config Tool) using it's own internal commands. However for addressable leds, you MUST use DOFLinx "DOF" commands to trigger the table's DOF config on DOF Config Tool.
Examples of Future Pinball (table script) DOFLinx "DOF" commands:
FF_DOF "E",120,-1 'DOFLinx triggers E120 to pulse or turn ON
FF_DOF "E",235,50 'DOFLinx triggers E235 for 500ms
FF_DOF "E",120,0 'DOFLinx triggers E120 to turn OFF
(Note: These "DOF" commands are capable of triggering ANY toy on DOF Config Tool as well)
Pinball FX3 (and FX2) tables can't talk directly to DOF (due to it's restrictions). It also needs to have DOFLinx support added for each table, but this needs to be added directly to DOFLinx by DDH69 (creator of DOFLinx).
For FX3, DOFLinx can trigger most "standard" DOF toys (without the need for DOF Config Tool) using it's own internal commands. However for addressable leds, we MUST use DOFLinx "DOF" commands to trigger the table's DOF config on DOF Config Tool. Again, all that is taken care of by DDH69.
These are designated with a letter followed by the trigger number. These are the different types of triggers that are used.
PinMAME / Rom based tables use multiple triggers to represent the different devices in a real pinball cabinet.
These can be solenoids, and flashers.
Example: L25 m550 Blink fu500 fd600
These can be lamps, light inserts, button leds.
Example: W14 Blink fu500 fd550
These are for switches. These can be roll-overs, gates, buttons, drop targets, targets, kicker switches and more.
Everything that is NOT emulated through PinMAME uses Exxx triggers. This can include Visual Pinball EM tables, Visual Pinball Original tables, all Future Pinball tables, and Pinball FX3 / FX2 tables.
Example: E124 Red 250 AH100 ADU AS300
DOF Commands in DOF Config Tool
Adding DOF commands can be overwhelming if you don't know what it all means...especially with addressable leds! In fact I may be the only person left doing them for Visual Pinball, and I've always been the only one doing them for Future Pinball. DDH69....FX3 is all yours!
Here is an example of one DOF command for a single MX effect for one MX toy:
W26 Purple 50 AH100 ADU AS300
Now if I want to have more effects to be used with that toy, they ALL must be on a single line, and only separated by a /
Here is an example of the Back Effects MX toy on my Transformers update with multiple DOF commands:
W26 Purple 50 AH100 ADU AS300/W24 Red 100 AT80 AH20 ADD AS300/W25 Blue 100 AT80 AH20 ADD AS300/W10 Purple 100 W300 AH80 ADD AS300 L25/W51 White 800 L13 AT0 AFDEN15 AFMIN10 AFMAX20/S3 White 60 AW100 AH100 ADD AS300
I consider that "simple" and small
When you have many DOF toys, and complex MX led commands to keep track of, you can get lost pretty quick! I did my first MX Led config of ACDC LE on a notepad! I still have it and it was organized pretty good...but I'm afraid to go back in there to figure it all out again!
Addressable Leds (MX):
Addressable leds (also referred to as MX Leds) are currently made up of three main assemblies in a virtual pinball cabinet. A Back Matrix (1 to 10 strips), Left Matrix (single strip), Right Matrix (single strip), and RGB Undercab Complex Matrix. These offer far more diverse and complex light shows and animations compared to any other DOF toy.
The "main" DOF "toys" that are used with MX Leds are:
PF Back Flashers MX: used to emulate a real 5 RGB Flasher bar on the Back MX
PF Left Flashers MX: used to emulate Flashers on the Left MX. These are positioned near where the flasher is located on the playfield.
PF Right Flashers MX: used to emulate Flashers on the Right MX. These are positioned near where the flasher is located on the playfield.
PF Back Effects MX: used for custom animations, effects, words, and Beacon Effects on the Back MX
PF Left Effects MX: used for custom animations, and effects on the Left MX
PF Right Effects MX: used for custom animations, and effects on the Right MX
PF Strobe MX: used to emulate a strobe on the Back MX
PF Beacon MX: this has not been used on any table
PF PBX Back MX: this is used for "browsing" effects while using Pinball X
RGB Undercab Complex MX: this mimics normal RGB undercab lighting, but can also have custom animations like the other MX toys.
RGB 5 Flasher "emulation" vs Custom Animated Effects
Support for MX Leds came long after most tables had full DOF added to them. Some people like Swisslizard, randr, Gech and others created amazing custom animated effects for some tables that made full use of the Back MX and Side MX's. This showed how diverse MX Leds could be compared to a standard RGB 5 Flashers bar.
The commands for all these Custom Animated Effects are found under the Back / Left / Right "Effects MX" toys for those tables.
However, many 100's of other tables didn't have ANY support for MX Leds at that time.
So at one point, Arngrim added an excellent new feature to DOF Config Tool that would automatically take all the real RGB 5 Flasher, strobe, and Launch Ball entries, and auto-generate new commands that would mimic them on the Back Matrix and Right Matrix for (Launch Ball effect). As a result almost ALL VP tables now have a basic RGB 5 flasher and strobe emulation with MX Leds, and the user can decide what shape and size they will be.
The commands for emulated RGB 5 Flashers for each table are found in the "PF Back Flashers MX" toy in DOF Config Tool.
The only side effect this had was that those tables which already contained the really cool custom MX "effects" now also have duplicate effects for the same triggers with the emulated 5 RGB flashers.
How should we create the MX Leds then?
When I update a rom based table, or create new DOF for an original VP or FP table, I ONLY emulate RGB Flashers on the Side MX, NOT the Back MX (unless there are flashers positioned there on the playfield). This allows them to still be visible and positioned "where" the flasher actually is. This is something a 5 RGB FIasher bar can't do, and the default emulated flashers won't be setup like this.
I keep the Back Matrix for animated effects, words, and all the other cool things like explosions, animated shapes, particle effects, plasma effects...you name it. If you add emulated 5 Flashers in there it becomes a busy mess and looks horrible!
So while adding in MX effects I completely remove all entries in the Flashers MX toys, and paste them to notepad. Then I can use the triggers that were used with that for reference while creating MX effects (and MX Flashers for the side MX) for specific actions on the table. Once I have all those triggers assigned to an effect, and I'm confident the table config is complete, then I no longer need the old Flashers MX commands.
Would if someone does NOT want RGB 5 Flasher "emulation" with the Back MX, and they just want effects and animations there?
The user can simply erase all the entries for the "Back Flashers MX" toy for these tables, so they will only see the "effects".
Would if someone DOES want RGB 5 Flasher "emulation" with the Back MX, and no effects and animations?
If the user doesn't like or want the Effects that I or anyone else has added, they can simply erase all the entries for the "Back Effects MX" toy, and then click "Save and Create Basic Matrix Config".
"That all sounds complicated!"
If you are completely new to this...it is! When DDH69 added MX led support to DOFLinx (at my urging), we both came up with an excel sheet tool, and standardized it to make adding in MX Leds to a table MUCH easier. This led to me doing lots of crazy and cool animations and effects. I updated this sheet over time and using it became second nature for me.
Now I think others may want to give it a try!
DOF CONFIG CREATOR!
Let's do DOF and addressable leds (MX) the EASY way!
After doing DOF and MX Led configs for numerous tables and creating hundereds of effects, I decided to overhaul the DOF Config Creator excel sheet (originally meant for MX Leds) to be more orgainzed and to also include most of the standard DOF toys. It now has almost everything you need for adding DOF and MX Leds! Now you can do a complete DOF and MX Led "Config" update for any table, easily!
Features of DOF CONFIG CREATOR:
- you can add MX Led effects to a table without needing to know "how" to create them. It can be as easy as copy, paste, then change the trigger value and colour.
- templates for VP, FP, which inlcude examples of MX Leds and DOF for most standard pinball devices and events.
- many examples of my MX Led effects and animations I've created, ready to use!
- lists all DOF shapes, characters, numbers, and letters for easy reference.
- list of standardized "reserved" triggers used for FP and FX3.
- includes my own real DOF and MX examples for an original VP table (Stranger Things: Stranger Edition, DOF and MX), a rom based VP table (Transformers, MX only), and a FP table (Star Wars DSA, MX only). It also includes my VP video tutorial example of Star Wars (Data East).
BEFORE YOU START...
First, I HIGHLY recommend you watch these videos before you try to do anything! They will help you understand how DOF works and will make the process MUCH easier.
DOF Config Tool tour video:
This first video is a tour of DOF Config Tool. It helps to explain many of it's features and how you will be working with it.
Triggers for all other VP tables (EM, Original), and all FP tables:
Exxx = used for all events, solenoids, flashers, lights, and switches on the table.
Guidelines to follow when using DOF Config Creator:
-make a copy of the Template, and use that for your new Config
-look at other "completed" tables as a working reference
-MX "effects" and animations are only used in "* Effects MX" toys
-MX emulated "RGB 5 flashers" are only used in "* Flashers MX" toys. Preferably the Left and Right Flasher MX, and positioned where the flasher is on the table (instead of using the Back Flashers MX, leave that for effects.)
-MX strobe effects are only used in "PF Strobe MX"
-MX Beacon effects are currently only used in "PF Back Effects MX"
When adding or Removing any Rows:
-only "add / remove" Rows between the Red "Formula Line" and the Red "Final Line". DO NOT "add / remove" anything above or below those Rows! (watch the video tutorial!)
-when you are "done" and want to copy your "Completed DOF Commands" to DOF Config Tool to test, you MUST do the following FIRST! Select all the "Formula Line" GREEN Cells and then choose COPY. Then select ALL the Cells below that and including the "Final Line" GREEN Cells and choose PASTE "FORMULA ONLY". This is needed to ensure that all DOF Commands are being added and arranged correctly to your "Completed DOF Commands" (watch the video tutorial!)
-no extra spaces in DOF commands! Very important!
-use LedConfigTester.exe to check your final DOF Config Tool "Generated" config files for any parsing errors with your DOF commands!
-use the Ball Roller / Controller with VPX and FP when testing your DOF commands! It's MUCH easier than trying to "play" the game for testing. For VPX it can be enabled in the Editor options (use mouse only to move around the ball, left flipper to disable it). For FP, its configured in the Game Keys and Controls (use a gamepad's thumbstick, much better than a mouse!).
DOF Config Tool Guidelines:
You can update ANY table any way you want for your own personal "Candidate Configuration". This will have NO effect on the current "PUBLIC Configuration". Do whatever you like...go crazy!
If you want to change DOF / MX leds for a table that already has "completed DOF and MX Led effects" for your personal "Candidate Configuration".... that's fine. However, DO NOT "Submit for Public Consideration" for these tables, please. Understand, that the "PUBLIC Configuration" is for everyone to use. So if you submit your "Candidate Configuration" and your update is added, then the current "PUBLIC Configuration" is GONE for everyone! The point here is...we don't want some of the really cool MX Configs from myself, Swisslizard, randr, Gech and others to be lost forever!
However do feel free to update tables that don't have "completed MX configs"... and go ahead and "Submit for Public Consideration". Please only submit "Completed" configs or "fixes"...not numerous minor updates.
If there already is a "completed" config for a table, and you made your own custom "Candidate Configuration" anyway that is significantly different or unique...please share your "Sheet" on this thread as an "alternate config". Maybe others will want to give it a try!
Show off your updates in a video! I'd love to see what others can do with this tool!
List of "Completed" DOF and MX Configs:
Please DO NOT "Submit for Public Consideration" for MX Leds on these tables! If you want to update a table and you are not sure if it's "completed" yet...ask here first. This list is not complete, so please let us know of any tables not listed here that already have cool Custom MX Led effects and animations.
All Future Pinball Tables with any DOF Config (these are only TerryRed's configs currently). Any of the empty "FP: xxxxxx" Configs are free for anyone to update.
All FX3 and FX2 Tables with any DOF Configs (these are DDH69's configs)
"DOF CONFIG Creator" excel sheet download link:
V1.0, Jan 26 - 2019
A big thanks to:
NOTE: I originally created this Tool for my own personal use. I am sharing it here for anyone to freely use. I take NO responsibility for how you use it. Use at your own risk.
It's important for you to have a basic understanding of how DOF works, how pinball game mechanics work, and also how to use an excel sheet to best be able to use this Tool. I have provided all the video tutorials, and links within the sheet for everything you should need. It took me a long time, and I worked hard to get this ready for you guys to use. Please take some of "your" time to watch and read everything I have laid out for you before jumping in and using this.
Good luck, and enjoy guys!
Edited by TerryRed, 15 March 2021 - 01:46 PM.