Playing VPinball tables can seem very complex, but this documentation will attempt to clarify things.
There are three game modes:
The configuration for playing in cabinet mode is described below.
VPinball tables have a specific tree structure, and each table has its own folder. This folder may contain the following data:
There are three basic types of files for each game:
.vpx format. This is the minimum file required to play. Depending on the table, this may be sufficient (no dual screen management, etc.)..vbs. This contains specific content for the table to function. Some tables can do without it, others need it, and it is specific to each game..directb2s. This file indicates that the table is compatible for play on two screens (the table and the screen opposite, also called the backglass).The folders may change depending on the game:
altsound folder: this folder contains alternative sound files. Its existence will depend on the tables.altcolor folder: this folder contains files that modify the colors of what is called the DMD. The DMD is the in-game score screen.roms folder: this folder must be present depending on the tables. This folder contains the ROM to be used with PinMAME included in VPinball.Not all tables need PinMAME ROMs; it depends on each table!
override folder: in this folder, you can place a file named according to the game mode and in .ini with specific content. We will see this later.pupvideos folder: this folder contains elements to be displayed on the screen in front (the Backglass). It is configured via the override.ini file.Here is an example with a table running on Raspberry Pi 5 and PC, the Daft Punk Interstella 5555 table.
|-- Daft Punk Interstella 5555.vpx
Cabinet mode is reserved for PCs only.
|-- Daft Punk Interstella 5555.directb2s
|-- Daft Punk Interstella 5555.vpx
|-- override
| `-- cabinet.ini
`-- pupvideos
`-- Daft_Punk
|-- bgdefault
| `-- bgdefault.mov
|-- playlists.pup
|-- screens.pup
`-- triggers.pup
|-- Daft Punk Interstella 5555.vpx
|-- override
`-- FSS.ini
This section explains what the .ini file shown above may contain. Based on the game mode, here are the possible names for these files:
desktop.inicabinet.iniFSS.iniThis file is not mandatory. If it does not exist, desktop mode will be applied.
The first line of the file will always be [Standalone]. All other lines will be below and will have the format key = value.
There are several configurable parts grouped together.
| Key | Description | Default value |
|---|---|---|
| AltSound | ||
| AltColor | ||
| B2SPlugins | ||
| PUPCapture | Activates the pupvideos pack | |
| PUPPlugin |
Emulator that simulates the electronic systems of real pinball machines. It manages game logic, rules, scoring, and original sounds. It integrates with Visual Pinball to allow you to play reproductions of real commercial pinball machines.
Here are the existing keys for everything related to PinMAME:
| Key | Description | Default value |
|---|---|---|
| PinMAMEWindow | Enables (1) or disables (0) the DMD | 1 |
| PinMAMEWindowX | Horizontal location of the top left corner of the DMD | |
| PinMAMEWindowY | Vertical location of the top left corner of the DMD | |
| PinMAMEWindowWidth | Width of the DMD | 290 |
| PinMAMEWindowHeight | Height of the DMD | 75 |
| PinMAMEWindowRotation | Rotation of the DMD |
A modern and flexible dot matrix display (DMD) emulator. It allows you to display and customize dot matrix screens on pinball machines. It offers advanced features such as anti-aliasing, colors, and various visual effects. It is particularly useful for recent or custom tables.
Here are the existing keys for everything related to FlexDMD:
| Key | Description | Default value |
|---|---|---|
| FlexDMDWindow | Enables (1) or disables (0) the Flex DMD window | |
| FlexDMDWindowX | Horizontal position of the top left corner of the Flex DMD | |
| FlexDMDWindowY | Vertical location of the top left corner of the Flex DMD | |
| FlexDMDWindowWidth | Width of the Flex DMD | 290 |
| FlexDMDWindowHeight | Height of the Flex DMD | 75 |
Part of the PinUp System suite. Displays the DMD on a separate screen or monitor. Can use high-quality animations and videos to replace the standard DMD display.
Here are the existing keys for everything related to PUPDMD:
| Key | Description | Default value |
|---|---|---|
| PUPDMDWindows | Enables (1) or disables (0) the PUPDMD window | |
| PUPDMDWindowsX | Horizontal location of the top left corner of the PUPDMD | |
| PUPDMDWindowsY | Vertical location of the top left corner of the PUPDMD | |
| PUPDMDWindowsWidth | Width of the PUPDMD | 290 |
| PUPDMDWindowsHeight | Height of the PUPDMD | 75 |
A component of PinUp System that emulates the backglass (the illuminated rear panel of the pinball machine). Allows you to display a digital reproduction of the backglass on a separate screen. Can include animations and dynamic effects that react to gameplay.
Here are the existing keys for everything related to PUP Backglass:
| Key | Description | Default value |
|---|---|---|
| PUPBackglassWindow | Enables (1) or disables (0) the PUP Backglass window | |
| PUPBackglassWindowX | Horizontal location of the top left corner of the PUP Backglass | |
| PUPBackglassWindowY | Vertical location of the top left corner of the PUP Backglass | |
| PUPBackglassWindowWidth | Width of the PUP Backglass | 290 |
| PUPBackglassWindowHeight | Height of the PUP Backglass | 218 |
Module that manages the display of an additional screen placed above the virtual pinball machine. Usually shows promotional information, animations, or themed videos. Enhances immersion by replicating the toppers (illuminated signs) of real pinball machines.
Here are the existing keys for everything related to PUP Topper:
| Key | Description | Default value |
|---|---|---|
| PUPTopperWindow | Enables (1) or disables (0) the PUP Topper window | |
| PUPTopperWindowX | Horizontal position of the top left corner of the PUP Topper | |
| PUPTopperWindowY | Vertical position of the top left corner of the PUP Topper | |
| PUPTopperWindowWidth | Width of the PUP Topper | 290 |
| PUPTopperWindowHeight | Height of the PUP Topper | 75 |
Here are the existing keys for everything related to the B2S (backglass):
| Key | Description | Default value |
|---|---|---|
| B2SHideGrill | Shows (0) or hides (1) the speaker section | |
| B2SHideB2SDMD | Shows (0) or hides (1) the DMD managed by B2S | |
| B2SHideB2SBackglass | Shows (0) or hides (1) the backglass | |
| B2SHideDMD | Shows (0) or hides (1) the DMD integrated into VPinball (not the one from B2S) | |
| B2SDualMode | Allows the backglass and DMD to be displayed on two different screens | |
| B2SWindows | 0 to hide all B2S windows (grid / DMD frame / backglass), 1 to display them | |
| B2SBackglassX | Horizontal position of the top left corner of the backglass | |
| B2SBackglassY | Vertical position of the top left corner of the backglass | |
| B2SBackglassWidth | Width of the backglass | |
| B2SBackglassHeight | Height of the backglass | |
| B2SBackglassRotation | Rotation of the backglass | |
| B2SDMDX | Horizontal position of the top left corner of the DMD frame | |
| B2SDMDY | Vertical location of the top left corner of the DMD frame | |
| B2SDMDWidth | Width of the DMD frame | |
| B2SDMDHeight | Height of the DMD frame | |
| B2SDMDRotation | Rotation of the DMD frame |
This section explains how to configure your screens so you can play on two screens.
You must perform the following steps:
In the case of a laptop, the table will be displayed vertically on the external screen and the scores on the internal screen.