This post has two sections. The first is my Virtual Pinball "Software" Essentials videos for Future Pinball and the rest is my Future Pinball, BAM, DOFLinx, and front-end setup Mega-Guide!
They both complement each other, so I recommend using the videos if you prefer that, but then come back to the post for finer details not covered yet in my videos.
The Virtual Pinball "Software" Essentials videos for Future Pinball - PART 1, 2 and 3
Future Pinball may be 11 years old now...but that hasn't stopped it from getting better and better.... thanks to Ravarcade's BAM (Better Arcade Mode).
Today, Future Pinball looks much better, plays much better and has loads of new features that table authors and players can use. The potential has barely been tapped into.
This topic has A LOT of content, and I can't cover everything in one video (there's more coming)...but I cover the entire spectrum to give you all the basics so you understand what everything is and how it works. You will be up and running with Future Pinball, BAM, tables, and DMDs the right way... the FIRST time!
Intro - 0:01
Install Future Pinball - 2:34
Install BAM - 3:58
BAM Head Tracking Demos - 5:13
If you see this dork on the street.... RUN! - 5:44
Install BAM OpenVR 8:02
Remove Watermark, restrictions, etc (modified Future Pinball.exe) - 9:17
FutureDMD, FPIntercept - 15:39
Exclusive Fullscreen vs Borderless Windowed - 17:35
How to Force Borderless Windowed Mode - 19:18
Functions of Files and Folders - 21:36
BAM: how basic physics works with xml files - .22:04
Future Pinball's FANTASTIC Manual - 30:30
Libraries Folder - 30:52
Scripts Folder - 33:42
Tables Folder - 34:55
Editor and Options - 0:29
Table demonstration (Robots Invasion) - 1:06
DISABLE "Load Images Into Table Editor" - 3:56
Game Keys and Controls - 5:04
Manual Ball Roller - 7:03
Video and Rendering Options - 11:18
Arcade Mode, When you DO and DON'T use it - 16:04
Script Editor - 21:27
HUD DMDs and HUD Overlays - 23:07
FP Lighting vs BAM New Renderer Lighting - 29:56
FP Lighting Demo - Star Trek (Stern) (Ultimate) - 32:01
BAM New Renderer Lighting Demo - Star Trek (Stern) (Ultimate PRO) - 33:45
BAM Menu and Settings - 37:53
DOFLinx and Pinup Player - 0:21
PuP-Pack Demo - JAWS Ultimate PRO - 3:50
NO Roms - 9:51
Cabinets and Arcade Mode - 12:39
Post Processing with Light Presets - 21:39
BAM Mini-Playfield example - Star Trek Space Battle - 23:35
Website for Tables and Communities - 26:36
SLAMT1LT's Pinball Emporium - 27:06
SLAMT1LT's Youtube Channel - 29:31
VPU, VPinball, VPForums, IR Pinball - 31:01
PinSimDB and GoPinball - 32:52
Closing Thoughts - 37:11
Future Pinball, BAM, DOFLinx, and front-end setup Mega-Guide!
This guide is a good resource for simple a setup to Future Pinball, BAM and any other related files you may need. This is good for both Desktop user and Cabinet users. I cover all the basics you need right here!
Cabinet and Desktop:
While this guide was made for cabinet owners...it can also be used for Desktop users as well.
No ROMS or Backglass programs Needed:
Future Pinball does not support or use any kind of roms. Therefor you do not need VPinMAME or other emulating software to play any games made for it. It can display it's own Backglass and score on a second screen for cabinet or multi-screen users.
Future Pinball and BAM (Better Arcade Mode):
First you need to install both Future Pinball and BAM (Better Arcade Mode). Future Pinball is old and hasn't been updated since 2008! So BAM was created to not only allow for a new Better Arcade Mode (for cabinet views, etc), but it has loads of neat features like head tracking, new High Score Displays, stereoscopic 3D, and adds loads of new features that table authors can use on their tables. It also has a New Renderer that renders lighting on a per-pixel basis, bump / normal mapping, Shadow Maps, Ambient Occlusion, Post Processing effects and more.
Another significant feature BAM has, is the ability to access and change Future Pinball's physics! For many people, Future Pinball's original physics... mainly the flippers... were considered... not so good. With BAM, each table can optionally have its own basic physics settings in an XML file (named the same as the table).
New feature for BAM in 2018 is the ability to have scriptable dynamic physics! This gives far more capability to the table author to change the settings of physics per object, dynamically through the table script! This has allowed for a VERY significant improvement to the Flipper aiming, among other new features. This alone is reason enough to want BAM!
BAM also fixed numerous bugs in FP..and has loads of other features too numerous to list here.
BAM is REQUIRED NOW!
Many new features from BAM are now becoming the standard to use for FP tables. That means that you can't play these new tables without BAM installed.
So from this point on....BAM is now regarded as a REQUIREMENT for Future Pinball! You will only load and play tables using BAM's FPLoader.exe...NOT the FuturePinball.exe!
Be sure to check for updates to BAM, as Ravarcade regularly adds new features.
Installing FP and BAM:
-you can download and install Future Pinball from the setup file you get from the Future Pinball site.
....or even better...get Ravarcade's "BAM and FP" 2 in 1 installer at his BAM site...as you require BAM now!
If you are only installing BAM (Better Arcade Mode) because you already have FP installed, then BAM installs to the "Future Pinball \ BAM" folder. (don't rename any program files in BAM folder afterward!)
Future Pinball Watermark:
Future Pinball displays a watermark of it's logo in the lower right corner while playing. This looks terrible in a cabinet view in particular, since it also gets stretched. There have been various versions of the FuturePinball.exe that have had the watermark (and other limitations removed). Keep in mind that some of these EXEs may give different results for some peoples hardware and may cause a crash. Here is a link where you can get all modified versions of the Future Pinball EXE, and some of them have the watermark removed.
The "Future Pinball x64 1.1.exe" is usually a good one to use (rename it to FuturePinball.exe). If you have problems with it, then try one of the others.
DPI / Text Scaling:
Make sure your DPI / Text Scaling is set to 100 in Windows for all screens being used, or you may get a stretched and very large FP screen.
If using more than one screen, be sure you have your screens arranged correctly. No negative values in the positions, and they should be arranged (from left to right) as playfield, backglass, DMD, Topper. The playfield needs to b the primary screen.
Future Pinball Settings:
Future Pinball plays great in a cabinet and on desktop. It allows for both a static camera and movable cameras all with fully 3D rendered elements!
Video / Graphics:
The Video / Graphics settings for both cabinet and desktop are mostly the same, except for the second monitor and rotation settings, as those need to be set for your particular setup. There will be additional settings in BAM when you load and play a table.
For cabinet use, configure Future Pinball with these settings. This is a MUST, for complete compatibility with all tables and BAM / Cabinet use! Some tables don't like having the "Game Room" enabled as an example. Use these EXACT settings. You can change screen resolution (as needed) and anti-aliasing if you want (if your system can handle it), and rotation to 0 if you have your playfield screen set to Portrait in Windows. Also don't forget to set your Backbox resolution. You may want to have "camera follows the ball" enabled for desktop usage.
Cabinet or multi-screens users who enable "Use Second Monitor for Backbox" MUST have "Arcade Mode" checkbox enabled. If you don't then things like in-game video clips and certain timers will play too fast and the game won't run properly. Very important!
Desktop single screen users must NOT have "Arcade Mode" checkbox enabled, or you won't be able to see the DMD text displayed on the HUD DMD. If you want the Arcade Mode view, then leave this disabled, and then you can enable it from the BAM menu settings in-game.
Fullscreen, Windowed, Borderless Windowed options:
Future Pinball only runs in Exclusive Fullscreen, or windowed mode. It does not have a Borderless fullscreen option. So normally HD and 4K aren't available options in windowed mode, but they are in Exclusive Fullscreen.
Future Pinball Borderless Windowed Fullscreen workaround:
In order to be able to use Borderless Windowed Fullscreen (required for FP and PuP-Packs on one screen), you need to use a workaround. Once this is setup, you don't need to do it anymore.
FIRST set your normal Video / Rendering options and Resolution to Fullscreen. Make sure you can run the game ok to be sure its using the correct resolution.
Now go back to Video / Rendering options and ONLY uncheck the Fullscreen option. It will most likely now display 640x480 for the resolution. DO NOT change your resolution again! (the resolutions settings are still good!) From this point on you don't ever change your resolution. Click OK to save the settings.
Run a FP table to be sure it is running in the same resolution... only now you will see the ugly window borders. This is normal!
Now you need to use a program that will automatically force Future Pinball's window to run in Borderless Windowed. There are multiple options that work fine. I have used these two options, and both worked very well.
Windowed Borderless Gaming
...and other possible solutions...
Have one of those options setup for this window:
"Future Pinball - © 2008 BSP Software Design Solutions"
Now each time your Future Pinball table runs, it should switch to Borderless Windowed mode (no frames or taskbar) and be ready to go for PuP-Packs!
Editor Settings. VERY IMPORTANT!
Make sure you have "Load Image Into Table Editor" disabled (unchecked) in the "Preferences \ Editor Options" menu. This is important as you will get crashes and other strange things happen when you launch some tables!
Controls Settings and Nudge:
You can use a mouse, keyboard, gamepads, and almost any kind of controller with FP, all at the same and with their own unique settings.
Nudge: For analogue nudge using an AXIS, note that you will never EVER get a TILT Warning using analogue nudging. There is also no dedicated Tilt Bob control either.
Using Digital Nudge however (with buttons or keys), you will get a normal TILT Warning and TILT when nudging.
FIRE Button: Some tables support the use of a FIRE button! This may be mapped to possibly Special 1 or Special 2, or the 2nd Flippers on some tables. Special 1 seems to be used most of the time. You can always try mapping Special 1 and 2nd Flipper left to the same key / button, and same for the Special 2 and Right. Maybe this will work fine for all tables. Try and see what works for you. Examples of tables that use a FIRE Button would be Jaws Ultimate Pro, Iron Man Ultimate Pro, Avatar Ultimate Pro, and Transformers Ultimate Pro.
TABLES and OTHER FILES. Where do they go?:
When you download Tables...they can contain numerous files in the zip / rar archive. It's important that these files go to the the correct folder!
Table Files (fpt):
-copy your FP tables (*.fpt) to the Tables folder (NOT in their own self-named sub folders!)
Library Files (fpl):
-copy any table Library files (*.fpl) to the Libraries folder
Scripts Fies (vbs):
-copy any scripts files to your "Future Pinball \ Scripts" folder (create a folder if there isn't one)
Physics (xml, zip):
-Bam can use table specific files for physics settings. Example of the version of physics over the years are (2.4,2.5,2.6,2.7, Zed, Custom, etc), If your table needs this (older tables), then just copy the table's .XML (*.zip for Zed) to your Tables folder and rename it the same as your table. It MUST be the same name. Newer tables can now have all modern physics settings in the table script with no need for an XML file.
BAM CFG files (cfg):
- cfg files for BAM hold lots of settings for each table (POV, size, lighting, renderer,. You access these in the BAM menu (while playing the game) by pressing ~ or Q. They are auto saved and named the same as the table filename. These are located in the "BAM \ CFG" folder. The default.cfg located in the BAM folder is what settings will be used for all new tables when they first are loaded. You can create your own default.cfg from the BAM main menu.
Real DMD and LCD DMD for Pinball Cabinets:
Future Pinball does a great job at creating it's own backglass and DMD / scoring displays. This is perfect for 2 screen cabinet users that don't need any kind of DMD or separate display.
For Real DMD and LCD users, Future Pinball does not natively support rendering scores or DMDs to a separate window or a Real DMD. Therefor you will need to use other programs for that. The limitations are:
- DMD support only
- no alpha numeric displays
- DMDs must be 128x32 (this may require some simple changes on some tables)
Future DMD: For LCD users, you can use FutureDMD to display 128x32 DMDs on another monitor. Read through it's excellent guide on how to install and use it with a front-end.
FP Intercept: RealDMD users can also display 128x32 DMDs from FP tables using FPIntercept. There is some colour DMD support.
Overlay HUD for Videos, DMDs and Scores on the Main playfield Screen:
By default FP has it's Overlay HUD for DMD, Scores, and other things appear on it's main screen. (This is not the same as what is shown on the backglass). This will still appear when playing the game in a cabinet type of view (usually top left corner and stretched). This was intended for desktop view, so it needs to be moved "off screen".
Just load the table into the FP editor, click on Translite. Make sure all layers are visible. You can see the the HUD Overlays and DMD you want to move typically on the top left. Select them all, and right-click on a part of it, choose Unlock. Now you can move them outside the Pink Box (that is the visible area of the playfield, we don't want it there anymore). This pic show where you want it to be. Then just save the file and you are good.
PLAYING A GAME. Normal Loading and Usage:
Always use FPLoader (BAM) to load, edit or play a game. Never the FuturePinball.exe! When running a table from the FP Editor directly (no front-end), ALWAYS load only one table at a time, and ALWAYS close FP and re-open it after exiting a table! This won't be an issue when launching a table from a front-end because each time you exit your game it closes FP..
Changing camera views on Desktop:
Future Pinball has numerous predefined still and moving camera views for desktop usage. BAM has additional advanced features that allow for custom camera views and attract modes.
Changing playfield and Backbox size and position:
These are no longer adjusted through the older Future Pinball method while in-game. Now you will use BAM's in game menu and features to adjust almost anything you could ever want!
USING BAM... ESSENTIAL!:
When the table loads and is ready to play, press "Q" or ~ to access the in-game BAM menu. Here you can adjust numerous lighting, rendering, camera, post-processing, plug-ins, and other options. BAM is simply awesome!
Setting Up your Playfield and Backbox for a Cabinet view. this is for the normal STATIC view. Head Tracking modes may need their own adjustments. You will need to navigate to find some of the settings:
Force Arcade Mode = ON
Kick = Off
Trails = Off
Lock Ball Brightness = Off
Mode: Static Cam
Real World Camera: X=0, Z=0, Y= really high value like 200
Table Scale: X, Y and Z should be the same...close to 1.0 or as needed.
Angle: usually around 17 to 20
Table Translation: X=0, Y and Z adjust to fine tune position.
Table and Lighting: Lights = New Renderer
Lighting Presets: start with Default....but then adjust to your liking for the individual settings
The above is a good "start", but you may need to change it for your setup. You want to keep the table looking "correct" and not squished or stretched while also having the ball look round on all parts of the table. I find that most of the bottom of the apron needs to be cut off to fit the table nicely without stretching or smushing the look of it.
Backbox settings can be adjusted in numerous ways for manual sizing or auto sizing. I find doing manual is best so you have the best control over each table, as fitting a square Backbox into a 16:9 table can be tricky.
Don't forget that you can hold down Shift while adjusting with arrows keys goes much faster... or you can enter numerical values.
Once you have your table looking good, try to "Save to Default". This will give you a basic reference for all tables to use when they load for this first time.
BAM Unique Table Configs (cfg files):
Each table can have their own settings for size, position (POV) and all the other BAM settings. This is auto-saved in the "BAM \ CFG" folder and named after that table's filename. This way users can share their settings with others, so they don't need to adjust anything!
You can look around the other menus and try setting things for your self. Lots of neat stuff:
- ambient occlusion can look nice, but can really kill your fps. You're probably better off disabling it.
- bloom can look good..but it can also make everything blurry when not set right
- ball brightness. Best to leave this so you can see different colour balls in some games.
- DMD dot size (FP internal DMD only)
- (POV) table size, position, offset, angle
- lighting and rendering
BAM default.cfg file:
I have attached a nice BAM default.cfg for you to use for a Cabinet setup. It's already setup for normal lighting with New Renderer, and the POV for the playfield is ideally setup to for most tables. Just extract the default.cfg file from the zip to your BAM folder. (backup the original file just in case) Now each new table that loads for the first time will use that file for its settings.
Change Ball Texture while Playing:
While playing, BAM lets you change to a different Ball Texture in game by pressing N. It use whatever files are found in "BAM \ Balls". Press N again to cycle to the next ball texture. You can have baseball, basketball, soccer, fire, cue ball and more. You can create and use your own as well.
That should get you up and going for Future Pinball and BAM essentials!
DOF and Pinup Player support:
Future Pinball itself doesn't have native DOF support for cabinet hardware and lighting feedback. That comes from DOF and DOFLinx. DOFLinx also provides the ability for Pinup Player to work with FP for active video backglasses (PuP-Packs).
These are the other programs that are needed for DOFLinx to work:
VPX All in One Installer:
-install the VPX all in one installer. (10.5 or higher) This will Install the B2S server and all needed files. Yes it installs Visual Pinball X too, but you don't have to use it (but there are amazing tables for it too).
-install DOFLinx in the DirectOutput folder. This will allow DOFLinx to see DOFLinx.ini automatically.
-copy the DOFLinx.vbs file to the "Future Pinball \ Scripts" folder.
-copy one of the example DOFLinx.ini files to the same folder as DOFLinx. Configure the DOFLinx.ini for your cabinet's setup! (consult the DOFLinx guide for more info)
-unblock ALL *.exe and *.DLL files within the DirectOutput folder or wherever you installed DOFLinx
-DOFLinx.exe set to "Run as Administrator"
-have DOFLinx always running in the background with the startup of Windows. I HIGHLY recommend that you do this as it's how DOFLinx was designed to run, and it will save you a lot of headaches. You have been warned!
(This is updated as of version 6.0)
Sections of interest (in the DOFLinx.ini file) for Future Pinball tables modded to work with full cabinet support. (Consult the DOFLinx guide to configure your entire DOFLinx.ini file! Not just these sections)
- add this "FP_LINK_WAIT_TIME=80000" if it's not there. This is the max time DOFLinx tries to establish a link (FP Link) with your FP DOFLinx modded table, before it defaults to its "key to output" type function. You change the time to a higher value if your computer takes longer to load some tables.
-this is needed if you want DOFLinx to attempt to establish the FP Link with FP DOFLinx modded tables
The following is your cabinet toys setup. Anything with a # in front of it will be ignored. Make sure you put a # in front of any device you don't have in your cabinet. (I don't have a shaker or gear motor)
Consult the DOFLinx guide for more info on how to configure this section.
These entries deal with FX2 and FX3 as well as B2S Server. Adjust folder locations to your specific installation.
These entries are needed as well, and deal with DOF as well as addressable leds.
These are the solenoids for flippers, bumpers, etc. Make sure they are configured for your particular setup, device, ports, etc.
This is the blower fan, shaker, and gear motor. (Note, I don't have a gear motor)
Strobes and Beacon
Start, Launch, Fire button (you can add coin, exit, etc)
RGB Flashers. These are configured with the Red port of each RGB flasher.
This section deals with RGB_OUTPUT devices. As far as Future Pinball DOFLinx modded tables are concerned, this is the RGB under cabinet lighting. Note: if you have any RGB_OUTPUT device configured the same as a RGB flasher, then the RGB flasher will be used when a FP DOFLinx modded table is launched!
-RGB_STYLE, RGB_TRIGGER, RGB_MIN_TIME all effect the RGB_OUTPUT....but for FP DOFLinx modded tables this will only have any effect if the table modder chose to use these features.
This doesn't cover the other sections of the DOFLinx.ini, or all the other numerous features that DOFLinx has.... but it should help to answer A LOT of the questions I get.
USAGE OF DOFLinx and Tables:
DOFLinx should always be running in the background. When you launch Future Pinball, it "wakes" DOFLinx which will try to establish a Link with the FP table. If the table has DOFLinx support added... after the table has completely loaded and starts, the FP Link will be established. It can take up to 20 seconds to establish a link on some tables. So don't start the table until you know the link is good and you have DOF feedback and lighting!
After you exit the table and FP is completely closed, then DOFLinx closes the link and goes back to sleep.
Pinup Player and PuP-Packs
Pinup Player is a program that provides "active video backglasses" that can be played on your Backglass and Topper screens. It can also provide SSF (Surround Sound Feedback) on tables and PuP-Packs that support it.
If you have DOFLinx setup for FP...then you can install and setup Pinup Player and use PuP-Packs with FP tables that support them!
Consult the Pinup System wiki to get started:
-setup Pinball X to launch FP tables with FPLoader.exe
-ensure your Emulator Paths are all correct
-the default Popper Launch script for Future Pinball will work with the default install location
-if you want to use FutureDMD, ensure you have that included as well
Example of Pinup Popper Launch script with FutureDMD:
`cd "c:\games\Future Pinball"`
`START "" "FutureDMD.exe" table="[GAMENAME]" close=1`
`START "" "[STARTDIR]Launch\VPXSTARTER.exe" 10 5 20 "Future Pinball"`
`START "" "[DIREMU]\FPLoader.exe" /open "[GAMEFULLNAME]" /play /exit /arcaderender /STAYINRAM`
Example of Popper Close Script:
`"[STARTDIR]LAUNCH\PUPCLOSER.EXE" WINTIT "Future Pinball" 2 1`