ALL in One Example table Tutorial
Add FizX, FLEEP, PUP SSF, DOF to any Future Pinball table! Easy!
What was once a daunting task, has now been made easy! Add the latest FizX physics, FLEEP sounds, Ball Rolling sounds, PUP SSF and DOF to any Future Pinball table quickly and easily using this new All In One Example table and Tutorial!
View attachment 37532
FizX Physics System for Future Pinball - new updates for v3.0
- new! Flipper Nudging! (when a ball rolls on a flipper, rapidly tap the opposite flipper to nudge ball back down the flipper)
- independent settings for each flipper
- new coil system based on the new custom BAM FSRC
- new EOS system which keeps flipper momentum on the first stroke. Huge improvement on backhand shots and post passes!
- new bouncing setting which is easier to understand and set
- new Flipper Omega and Mass System
- new ball vs ball physics setting. Ball hitting other ball has more bounce
- new PHYSICS XML settings
- new Ball Spinning Momemtum absorption and bounce deflect on hit for Flipper and Rubber
- Tap pass and Tap shots are much easier
- table slope and other new settings are now defined in FizX General Settings
To put it simply... all the quirks from FizX v2.0 have been fixed. Flippers have full power now when they should. Post passing, and backhands are easy and correct now.
Flipper Nudging is a real thing now, as long as the ball isn't rolling too fast on the flipper (the nudge strength can be adjusted in FizX settings).
This video below will briefly go through the new FizX 3.0 settings and changes, the new AIO Example table and Tutorial, and it will showcase FizX 3.0 in action with amazing new table updates I have coming out!
Please note, that the AIO Example table with FizX v3.0 is not the same as FizX Lite. Their code is not compatible or interchangeable!
DESCRIPTION of TERMS and FEATURES
FizX
- this is a new physics system for FP (created by JLou)
- it has adapted techniques, similar to nFozzy physics on VPX, to be used on FP to drastically improve FP's physics and flippers
- it uses BAM features, new code, new models (for rubbers, bumpers, slings, ball, etc) to make this happen
- automatically outputs FLEEP sounds of most ball hit events based on the material / speed, etc
- any FP table can be updated to use FizX physics (some old tables may need additional table changes to properly modernize them)
FizX Tweaker Tool
- a tool using a DMD to display FizX settings (while playing) so they can be adjusted in real-time to see their effect
- any changes made using this tool will still need to be manually set in the FizX settings in the table script
FLEEP Sound
- a very high-quality set of mechanical sounds recorded by FLEEP
- each type of sound uses multiple recordings that vary slightly to create a much more dynamic / natural experience
- it's ideal to also try to control the output / volume of these sounds based on ball speed / collision material
DOF (Direct Output Framework)
- an app used to control feedback (solenoids, shaker, chimes, etc) and lighting on real cabinets
- this can be used with apps like VP and FP to have real feedback and lighting activated by table events
- this tutorial adds direct DOF support! (DOFLinx is not used, and must not be running!)
PUP (Pinup Player)
- an app used to playback video, audio, text on separate displays / windows
- this can be used with apps like VP and FP to control modern score / video displays or playback audio / music / SSF
- PUP SSF uses pinup player to playback mechanical sounds and ball rolling sounds based on their position in the game
- PUP DMD is the combined output of text / videos / images on a display (can be similar to a modern pin's LCD display)
- PuP-Pack is a folder that contains the collection of video / audio / fonts / config files used by Pinup Player for a specific table
SSF (surround sound feedback)
- a method of playing mechanical-based sounds within in 3D / surround space based on the position of the item on the playfield
- this can be used in any speaker configuration (stereo, 5.1, 7.1)
- when used in a cabinet with multiple exciters / shakers, it can make it sound like you have a real pinball game inside your cabinet
FP Sounds / FP Mechanical Sounds
- the sounds played by FP (using playsound) for mechanical / hits events for things like flipper, slings, bumper, ball hits, etc
- these can only output in mono or stereo, and do not support positional output
PinMechSound
- a command (and code) created by TerryRed that will control the output of FP Sounds, PUP SSF, and DOF automatically
- only FP Sounds or PUP SSF are output at one time
- if PUP SSF is disabled (or not installed), then FP Sounds are used
- DOF (if installed and enabled) will always be outputted
########## ALL in ONE Example Table Tutorial ##########
What will this add to a Future Pinball table?
- FizX v3.0 physics system
- FLEEP mechanical sounds
- dynamic ball hit sounds (based on speed and materials that are hit)
- ball rolling sounds
- surround sound feedback (PUP SSF)
- DOF (cabinet feedback)
- PUP (for "simple" PuP-Packs)
This will result in a FP table supporting the above features automatically, even if you don't use all the features yourself.
Simply follow this tutorial (in order) to get the essentials installed. You can make changes as needed for your table and preferences.
You can get the essential FizX items / physics, fleep sounds, ball rolling and dynamic ball hit sounds working very quickly using this tutorial and example table!
I can add the essential files and code to a table in under 5 mins and it just works!
The extra steps for adding FizX rubbers (required), linking PinMechSound commands (recommended) doesn't take long once you know how to add it to the table's specific items and events.
Table version: 3.00.27 (June 14 - 2023)
FizX: v3.00
CHANGELOG
3.00.27 (June 14 - 2023)
- updated table for all new FizX v3.0 code and features
- added flipper nudge commands for each Flipper's .SolenoidOn command
- updated FizX Tweaker Tool for new FizX settings
- updated FizX Tweaker Tool to remove all "Save to fpRAM" and "Load from fpRAM" options
- added triggers to ramps and code examples to change ball rolling sounds when on ramps
- the tutorial is now in a PDF and docx file!
What is REQUIRED?
- the All in One Example table zip file's content
- BAM 1.5-363 or higher
Better Arcade Mode for Future Pinball Cabinet
www.ravarcade.pl
A "normal" Future Pinball table is needed!
- we need a future pinball table with nothing specialized added to it (this will conflict with the new features!)
- remove any previous physics related code or timers. Remove any PHYSICS XML code (the green text code)
- if any special / custom flipper models are used (Zed physics), replace them with normal flipper models!
- remove any code / timers / commands used for any previous ball rolling sounds (smoke)
- if a table was updated for DOFLinx, remove all DOFLinx related code (we are now using direct DOF support)
- confirm your table is working
COMPLETELY after removing all the above!
- DO NOT go farther with this tutorial until this is completed!
DOF and Pinup Player (PuP) are NOT required to be installed for the table to work!
- PUP SSF and DOF are "extra" features that will be used if they are installed (and enabled). If they are not installed (or they are disabled), then the table will use FP sounds for everything automatically
PUP SSF and the FP_PUP_SSF pup-pack
- if the player has PUP installed, but does not have the FP_PUP_SSF pup-pack installed (included with this tutorial), then if PUP_SSF_Enabled = true, the player will have no mechanical / ball rolling sounds, as PUP won't be able to load any sounds from the FP_PUP_SSF PuP-Pack
- I recommend you include the FP_PUP_SSF pup-pack folder with your tables that use this AIO Example code. Make mention in your download post about copying FP_PUP_SSF to the PUPVideos folder for anyone who has PUP installed
- if you do not want to include the FP_PUP_SSF pup-pack with your table, or don't want to support PUP features on your table... then be sure you have PUP_SSF_Enabled = false set in your table script
What this Tutorial will NOT do:
- add the same features as PinEvent tables. No PUP DMD! No PUP Stream!
- it won't create a "PinEvent" table (PinEvent = TerryRed releases)
- it won't go into great detail about all of FizX's settings, and physics, and fine tuning, etc
- it won't tell you how to remove older physics or other ball rolling sound methods
- the new Ball Rolling code won't automatically change the ball rolling sounds when rolling on plastic ramps, or wire ramps. You will need to do this yourself. Only PUP SSF will play more than one ball rolling sound at a time.
- it won't tell you how to update every FP table for issues not covered in this Tutorial. Some older tables need to be updated / modernized to properly use FizX physics (some tables use multiple playfield surfaces, and workarounds for old FP physics that can have a negative effect, and will need to be removed, as an example)
This tutorial is more about getting everything easily installed and running on another table. There will be other posts (made by others) that will go more in-depth about FizX settings and physics. I will provide links to them on this page as they are created.
Download the AIO Example Table and Tutorial zip file:
- the latest AIO Example table's zip file is attached to the bottom of this post
- open the Tutorial file (pdf, or docx) and follow the instructions in order!
IMPORTANT: Do not add new changes to the main code that the Example Tables uses! Use it as it was intended following the written tutorial! This table and its code may not always have the latest WIP / beta code for FizX, etc. Trying to mix in different bits of code or updating a table in a different way may result in the All In One Example table's code not working correctly for your table! Just follow the tutorial (in order), and it should work fine for you.
For more details about FizX settings, JLou will have more information here:
Coming soon....
pinballnirvana.com
If all went well, you should have a FP table that:
- plays MUCH better and more realistically with FizX physics
- complete dynamic ball hits sounds for the entire table based on all materials being hit
- ball rolling sounds that automatically work
- full SSF for everything on the entire table (if using PUP SSF)
- FP Sounds for all mechanical events (flippers, slings, bumpers, etc)
- DOF feedback for solenoid based events
Enjoy a new world of better physics, sound and feedback in FP!
Thanks to:
- JLou for his amazing work and dedication to FizX physics on FP
- AnonTet for his support towards FizX
- ravarcade for more excellent updates to BAM that made this all possible
- smoke (used small bits of your ball rolling code for the new unified ball rolling code)
- Nailbuster for DOF and PUP support
- all others who have shown support with their time and testing and feedback
Video Example:
This video below is a non-stop, start to finish example of me showing how to use the All in One Example Table (along with the written Tutorial) to easily update a Future Pinball table to support all these new features.
The video is broken into chapters! So you can go at your own pace, and easily pick up where you left off.
Adding the new code and essentials items is quick and easy to do to get a table up and running... its the table specific additions that take the most time afterward. I probably spend more time explaining things and showing how they work before and after than I do actually updating the table. :)
Note: this video was created using an old version of the AIO Example table and an old version of FizX. The process for using the AIO Example table code is still mostly the same, but there are some differences. With the current AIO Example table and FizX code:
- you now MUST set the table slope in in FizX General Settings (this overrides the slope settings in the table editor!)
- you do not need to set the flipper swing angle in FizX settings
- you need to add extra commands for flipper nudge
- FizX Flipper settings and General settings have changed
- FizX Tweaker Tool no longer has "Save to fpRAM" or "Load from fpRAM" options
ALWAYS follow the "written" tutorial for the most up to date and correct information! Only use the video as a visual guide to help you along!
I will update the All In One Example Table and the Tutorial as needed in the future when significant changes / features come along.
TerryRed
How to update a table (with older AIO and FizX code already added) to use the new AIO Example Table code and FizX v3.0:
- if you have tables you've already updated, never fear. You can update your table with little hassle
- it is VERY important that you do this correctly as there are many changes in FizX v3.0 that are not compatible with older versions
- its easy to do and FizX v3.0's changes are game changing compared to older versions
Goto this post and follow the steps in order:
Looking at it again.... it's correct. :) Sub OnPreHitFlipperSettings(FlipperExt) if BallSpeed_Volume_enabled = true then If FlipperExt.hit = True and FlipperExt.BallVSpeed > 100 then PinMechSound ("mech_Flipper_Rubber_" &Int(Rnd*7)+1), "ball", (( xBAM.Ball.HitSpeed / 1000 ) *...
pinballnirvana.com