- View New Content
-
Getting Started
-
Tutorials
Tutorial Categories
Tutorials Main Page Installation and Setup Downloadable TutorialsROM Adjustments
Number of Balls Adjustments Volume Adjustments
-
Visual Pinball Tables
VP 8 Desktop Tables
All VPM Recreations VP Recreations VP/VPM MODs VP Originals ROMsVP 9 Desktop Tables
All VPM Recreations VP Recreations VP/VPM MODs VP Originals ROMsVP9 Cabinet Tables
All Full Screen Cabinet Full Screen B2S Cabinet Spanned Cabinet Tables Media Packs ROMsVPX Tables
All VPinMAME Recreations VPX- - /VPinMAME - MOD Tables VPX Recreations VPX Originals Media Packs ROMs VR
-
Frontend Media & Backglass
Media Packs
Complete Media Packs Wheel Logos VideosBackglasses
dB2S Animated Backglasses UVP Animated Backglasses Topper Images
- Future Pinball Tables
-
Design Resources
Main Resources
Table Templates Playfield Images Image Library Sound Library Key CodesVP Guides
VP8 Guide - English VP8 Guide - Deutsch VP9 Guide - English VP9.1.x Guide - English VP Object Guide VPM DocumentationFuture Pinball Resources
Playfield Images 3D Model LibraryFuture Pinball Guides
FP Script Guide Big Draco Script Guide FP Table Design Guide FP DMD Guide
- Other Features
- Bug Tracker
- Image Gallery
- Blogs
-
More
Submitter
SUPPORT TOPIC File Information
- Submitted: Dec 24 2016 11:36 AM
- Last Updated: Nov 14 2025 05:21 AM
- File Size: 13.96MB
- Views: 139412
- Downloads: 33,857
Previous Versions
Download B2S Backglass Server 2.1.4 mashup
69 Votes
B2S Backglass Server directB2S Backglass
System files to run 'directB2S' backglasses, usually in combination with Visual Pinball tables.
What Stefan Wuehr ('Herweh') started in 2012 continues here.
For beta releases and full change log check the github repo https://github.com/v...l/b2s-backglass
For installation, examples and explanation of the new features check the new wiki here https://github.com/v...-backglass/wiki
Please do not forget to like and review..., what is important for content creators (tables, backglasses, DMD colorization?)...
... is as important for us writing the tool-set
For the download of the "B2S Backglass Designer" to customize already existing or create new directB2S backglasses please click here.
What Stefan Wuehr ('Herweh') started in 2012 continues here.
For beta releases and full change log check the github repo https://github.com/v...l/b2s-backglass
For installation, examples and explanation of the new features check the new wiki here https://github.com/v...-backglass/wiki
Please do not forget to like and review..., what is important for content creators (tables, backglasses, DMD colorization?)...
... is as important for us writing the tool-set
For the download of the "B2S Backglass Designer" to customize already existing or create new directB2S backglasses please click here.
What's New in Version 2.1.4 mashup (See full changelog)
- Binaries from v2.1.4 but with B2SBackglassServer.dll from 2.1.3 while we are waiting for a new version.
- There were problems running the latest B2SBackglassServer.dll with HD FlexDMD flippers, which cause VPX to hang.
- There is no need to download it unless you have experienced this issue and have not created the same mix yourself.
- - Settings mode Authentic or Fantasy not saved after selection
- - Improve Fuzzy matching
- - Add DPI awareness to B2S_ScreenResIdentifier and B2SBackglassServerEXE
- - Add new VPM COM Version method including build number
- - Allow setting screenres files file ending
- - Allow entering % values on the ScreenRes.txt files (not finished yet, server done, B2S_ScreenResIdentifier missing)
I would like to organize my tables and backglasses into folders. I am finding hard to maintain a ScreenRes.txt in the same folder as every table. Here is a change that will look for ScreenRes.TXT in the install folder if it isn't found next to the table. Would this be OK?
From:B2SScreen.vb
#Region "get backglass settings and show backglass" Private Sub ReadB2SSettingsFromFile() ... Try specialFileName = IO.Path.Combine(B2SData.TableFileName & ".res") loadSpecialOne = IO.File.Exists(specialFileName) specialDirFileName = IO.Path.Combine(B2SData.TableFileName, FileName) loadSpecialDirOne = IO.File.Exists(specialDirFileName) Catch End Try ''''Change starts here''''' 'If ScreenRes Not found near table then look in install path If Not IO.File.Exists(FileName) Then Dim exePath As String = Application.StartupPath() FileName = exePath + "/ScreenRes.txt" End If ''''Change ends here'''' If loadSpecialOne OrElse loadSpecialDirOne OrElse IO.File.Exists(FileName) Then ' open settings file FileOpen(1, If(loadSpecialOne, specialFileName, If(loadSpecialDirOne, specialDirFileName, FileName)), OpenMode.Input)
I have now added this as an issue on github: https://github.com/v...glass/issues/24
I invite everyone with good ideas how to improve the B2S-Backglass project to go to the github page and file an issue, or even help development with a pull-request:
Do not be afraid, I did not know Visual Basic until 6 months ago... yes I do development for living, but a completely other field 
/Jarr3
No to get too far off topic.. An interim workaround I use for having 1 ScreenRes.txt seen (and used) by all tables that are in subfolders is to create symbolic links (simlinks) to that file, in each of the tables' own folder(s).
To create these all at once, I used this PowerShell script:
$tablesRootFolder = 'F:\Pinball\Visual Pinball\Tables'
$screenResFile = 'F:\Pinball\Visual Pinball\Tables\ScreenRes.txt'
# Get all subfolders
$Completed = Get-ChildItem $tablesRootFolder -Recurse -Directory
# Pipe the subfolders to ForEach-Object and create the symlink
$Completed | ForEach-Object {
New-Item -ItemType SymbolicLink -Path "$($_.FullName)\ScreenRes.txt" -Target $screenResFile -force
}
pause
This will recurse through all subfolders in the "tablesRootFolder" that you set on the 1st line as well as all sub-subfolders, and add the symlink to each of those.
Example:
../tables/Star Wars/
../tables/Star Wars/Star Wars (Data East 1992)/
../tables/Star Wars/Star Wars The Empire Strikes Back/
../tables/Star Wars/Star Wars Millenium Edition/
../tables/Star Wars/Star Wars Trilogy (Sega 1997)/
...will each get a symlink added.
To use, create a text file and add in the above code. Change the 1st 2 lines to match your 'tables' folder and "ScreenRes.txt" file location. Respectively. Save the file and the rename it with a ".ps1" file extension. i.e. "Create ScreenRes Symlink.ps1" (be careful that it doesn't get saved as "Create ScreenRes Symlink.ps1.txt")
To run this script, you need to open/run it with PowerShell as Administrator. Symlink creation requires it (run as Admin).
No to get too far off topic.. An interim workaround I use for having 1 ScreenRes.txt seen (and used) by all tables that are in subfolders is to create symbolic links (simlinks) to that file, in each of the tables' own folder(s).
To create these all at once, I used this PowerShell script:
$tablesRootFolder = 'F:\Pinball\Visual Pinball\Tables' $screenResFile = 'F:\Pinball\Visual Pinball\Tables\ScreenRes.txt' # Get all subfolders $Completed = Get-ChildItem $tablesRootFolder -Recurse -Directory # Pipe the subfolders to ForEach-Object and create the symlink $Completed | ForEach-Object { New-Item -ItemType SymbolicLink -Path "$($_.FullName)\ScreenRes.txt" -Target $screenResFile -force } pauseThis will recurse through all subfolders in the "tablesRootFolder" that you set on the 1st line as well as all sub-subfolders, and add the symlink to each of those.
Example:
../tables/Star Wars/
../tables/Star Wars/Star Wars (Data East 1992)/
../tables/Star Wars/Star Wars The Empire Strikes Back/
../tables/Star Wars/Star Wars Millenium Edition/
../tables/Star Wars/Star Wars Trilogy (Sega 1997)/
...will each get a symlink added.
To use, create a text file and add in the above code. Change the 1st 2 lines to match your 'tables' folder and "ScreenRes.txt" file location. Respectively. Save the file and the rename it with a ".ps1" file extension. i.e. "Create ScreenRes Symlink.ps1" (be careful that it doesn't get saved as "Create ScreenRes Symlink.ps1.txt")
To run this script, you need to open/run it with PowerShell as Administrator. Symlink creation requires it (run as Admin).
While looking at the existing code, this is how it currently works/worked:
B2SBackglassServer searches it's screenres files like this:
1. tablename.res next to the tablename.vpx
2. Screenres.txt ( or whatever you set in the registry) in the same folder as tablename.vpx
3. Screenres.txt ( or whatever you set in the registry) as tablename/Screenres.txt
And I am currently adding this way, which is as #2 but now we move the installation away from the tables folder...
4. Screenres.txt ( or whatever you set in the registry) in the B2SServer folder.
So even in the current solution (because of #3), you should not need your links?
So even in the current solution (because of #3), you should not need your links?
While looking at the existing code, this is how it currently works/worked:
B2SBackglassServer searches it's screenres files like this:1. tablename.res next to the tablename.vpx2. Screenres.txt ( or whatever you set in the registry) in the same folder as tablename.vpx3. Screenres.txt ( or whatever you set in the registry) as tablename/Screenres.txtAnd I am currently adding this way, which is as #2 but now we move the installation away from the tables folder...4. Screenres.txt ( or whatever you set in the registry) in the B2SServer folder.
So even in the current solution (because of #3), you should not need your links?
Thanks for the breakdown!
#2 is essentially what the symlinks are doing. But instead of a physical screenres.txt file in each tables [separate] folder, it's 'linking' back to the one in ../tables/screenres.txt. (Basically the same as creating a shortcut to the file.)
My theory when I originally set it up this way was; I was still messing with the layout for playfield/backglass/DMD on a single monitor. With the symlinks in place, I only needed to modify the one ../tables/screenres.txt file to have it change for all tables. This worked great until later on I realized not all backglass' are-the-same. lol But it was great for creating a baseline.
I'm not really following #3. It's kind of looking somewhat like #2. Where it's still needs a separate screenres.txt.?.
Regardless, #4 will round out nicely how tablename.res/screenres.txt are found.
Thanks for all you and the team do!!!
Hi, I have fixed so that it now should find a screenres also in an install folder like "C:\Visual Pinball\B2SServer\screenres.txt"
1.4.1 PreRelease: https://github.com/vpinball/b2s-backglass/actions/runs/3404876668
Since it is a pre-release, you need to login to github to get access. (It is a 2 minutes thing to add a user)
please test, so that we can close the issue... 
Hi, I have fixed so that it now should find a screenres also in an install folder like "C:\Visual Pinball\B2SServer\screenres.txt"
After creating a script to undo what I had done above , replacing the files with 1.4.1PR and re-registering B2S (I moved them into a folder similar to your example) it worked great!!!
The only issue I had was when B2STableSettings.xml [that was in with the tables folder] had plugins On (<ArePluginsOn>1</ArePluginsOn>), the backglass would not show at all.
To be clear, I don't know why it was on in the 1st place (copy/paste from another folder??) and cannot attest to it working right before updating B2S. But I'm fairly positive that things had worked within the past 2 weeks (without other changes).
It's not a big deal and easy for me to fix. And I'm thinking it's actually probably operator-error on my part and maybe even a fluke that (I think) it had worked before. lol
Much thanks for the pre-release!!
1.4.1 pre-release #2 https://github.com/v...runs/3413377265
Since it is a pre-release, you need to login to github to get access. (It is a 2 minutes thing to add a user)
This time it is about a new option called "FormNoFocus". it means for FormToFront similar to SendToBack, EVERYTHING is done to force the Forms not to react on mouse-clicks and any interaction which would mean the forms come above the DMD.
I tested this already with IT on a desktop with Backglass and FULL DMD and a Freezy DMD on top. It was rock solid, the windows stay in place and in order, no matter what I do.
Most certainly something for single screen users, though I believe it should be useful for all setups?
Do I only need to download the 1 zip file 1.4 and not the rest correct? Also, any chance of this messing up my existing tables? Using 10.7 and pinball emporium
Do I only need to download the 1 zip file 1.4 and not the rest correct? Also, any chance of this messing up my existing tables? Using 10.7 and pinball emporium
Yes only the latest is needed, and a backup of your old folder and the complete setup is ALWAYS a good thing.
Other files you may be interested in ..
- 18,149 Total Files
- 57 Total Categories
- 868 Total Authors
- 24,590,815 Total Downloads
- VooDoo Ranger - Wheel Latest File
- Flying Dutchman Latest Submitter
user(s) are online (in the past 15 minutes)
members, guests, anonymous users











are all trademarks of VPFORUMS.
Since we now are on github, it is rather easy to add bug fixes or requests for new features.
If you want or need a change, an issue on github and a pull request ->and a change like this should be possible!
/Jarr3