Releases: syd711/vpin-studio
2.16.0
Release Notes
Changes
- Preferences: UI Settings: Converted the negative "Hide" description and checkboxes to positive "Show" descriptions.
- Preferences: Server Settings: Added option to restart the VPin Studio Server.
- VPS Updates: The VPS update calculation has been re-implemented so that less updates are fired. The new differencing returns the details of the updates now too. Additionally, you can see update markers in the VPS section now.
- VPS Updates: Added settings so that you can choose which update notifications to check.
- Table Backups: Added backup option so that tables are not simply overwritten but copied into a separate "Tables (Backups)" folder.
- Highscore Cards: Added preview for table assets in case you decide to put your transparent highscore card above another Popper screen.
- Updated pinemhi (available only for new installations).
- Added vpxtool from https://github.com/francisdb/vpxtool. This tool is used to import and export VB script from VPX files.
- VPX Script
ViewerEditor(!): Finally, thanks to the vpxtool you now can not only view the VB script of a table, but also edit it and save it back to the VPX file. The editor for this does not offer much, but it will allow you to do some quick table adjustments.
- VPin Studio Installer: Added registry option to auto-start the server. The installation will no longer ask for the auto-start folder but will use the registry instead. For existing users: you can keep the existing auto-start as is.
- VPin Studio Updates: Added additional remote update for clients. When you update the installation from remote, the client installed on your cabinet will be updated to.
- Table Data Manager: Changed label from "Game Display Name" to "Game Screen Name" (same like in Popper) and added auto-renmaing flag, so that the screen name is updated of VP-spreadsheet table selection.
- Table Uploads: The uploaded table is now selected after the upload is finished. The table data manager is opened then too. You can disable this behaviour in the settings.
- Table Overview Context Menu: Improved table overview's table context menu.
Bugfixes
- NVOffsets: Fixed problem that pinemhi is not able to read nvram files with an offset. I worked around this problem by temporary renaming the .nv files before parsing them.
- Preferences: Re-layouted the page, added missing scrollbars, etc. so that the UI still works on smaller screens.
- Preferences: UI Settings: Fixed missing refresh after changing VPS visibility preferences.
- Card Settings: Fixed issue that the default screen "Other2" was set for fresh installations. It is empty now so that the user has to activate the card generation.
- Table Statistics: Fixed issue where tiles were not filled because of too large values.
- Table Cloning: Added missing cloning of .ini files.
- Table Cloning: Fixed issues while cloning using VPX files with the same name as the original table file.
- VPX Commands: Fixed VPX operations (start/stop/launch to edit) for Visual Pinball installations having a whitespace in the directory path.
- Overlay Key Events: Added button debounce that fixes possible duplicated key events sent by input controllers.
- Pause Menu: Added nircmd.exe for a better focus management with the pause menu. The development there is still not finished and needs more polishing.
- System Manager: Added inclusion for -sc suffixed packages of the VPinMAME component installer.
- GPU Usage: Fixed high GPU usage caused by the disabled(!) progress indicator of the jobs dropdown menu (WTF???).
2.15.0
Release Notes
Changes
- Table Management: Added support for loading tables from sub-folders. Up until now, the Studio did only assume that all VPX files and backglasses are located in the Tables folder of the emulator. Popper supports sub-folders here and the Studio does now too. Because of the complexity, I disabled some additional operations for these tables, like the renaming option of the VPX file. This required quite a lot of changes, so there might be some aftermath.
- Table Management: Added additional check for PUP Pack names during table scans. Some tables define this name in a separate variable that differs from the default ROM name. An additional field Name has been added to the PUP Pack section to show the effective PUP pack.
- Table Management: Added .ini file uploads.
- Highscore Parsing: Re-implemented all highscore parsers for all formats: VPReg.stg entries, text files and nvram files. Kudos here to @ed209 here who provided me tons of highscore data to make this happen. Because of this data I was able to support way more tables.
- Highscore Parsing: Added support for single score tables in general (no matter if stored in nvram or text files, these were ignored before completely).
- Highscore Parsing: Added some custom parsers, e.g. for "godzilla" or "monopoly" to support more tables.
- Pause Menu: Removed internal browser option.
- Pause Menu: Added "Test Button" so you can select a table and preview the pause menu.
- Pause Menu: Added view option "Style" to the preferences. You can now choose if entries should be rendered as part of the pause menu or if Popper assets of the "Info", "Help" and "Other2" screen should be shown on their configured screen locations.
- Introduced Default Player: The build-in players dialog has an additional checkbox now to mark the default player of a cabinet. If set, the highscore filter won't filter anonymous highscores anymore. So for tables with anonymous highscores, the default initials will be used when Discord messages are posted. The flag will become more relevant in the future too when it comes to tournament setups.
- Header Toolbar: De-cluttered the toolbar by moving entries into a split menu. I also added a DOF Sync entry there.
- Highscore Cards: The highscore card editor has been reimplemented. Unfortunately, this means a breaking change so you have to re-design your cards. But you have the possibility now to customize the cards for individual tables. Visit https://www.youtube.com/@vpin-studio/videos to find out more about using the new editor.
- Backglass Management and Server Settings: Added option to check the "Execute as EXE" flag for the server and individual backglass settings. It seems this may have quite some performance improvement when checked.
- Updated shipped VPBM version to 2.1.
Bugfixes
- Table Statistics: Fixed possible "division by zero" error.
- Backglass Management: Fixed accidental backglass save on selection.
- Backglass Manager: Fixed a bunch of issues here, looks like I tested this one half asleep.
- Fixed table overview errors of tables without VPS updates.
- Fixed list sorting int the "Table Import" dialog.
- Fixed list sorting in the "Backglass Manager" dialog.
- Added several missing scroll bars for the table overview side sections.
- PUP Packs: Added ROM aliases for PUP pack lookups.
- Subscription Channels: For new subscription channel, a set of highscores was posted before the actual initial message. This has been fixed so that if no highscore filters are (player definitions) set, these score are now appended after the initial message.
- Subscription Channels: Added support for tables with anonymous tables. Since anonymous highscore changes are not filtered anymore when a default user is set, subscription will now created for these type of tables too.
- Added progress dialog for loading player highscore in the players section. This avoids possible concurrent database accesses when double-clicking a player.
- Emulator Validation: The Studio can now start even if no emulator is found. This may happen when not folders have been set up in PinUP Popper.
- ROM Aliases: Fixed possible error when used with multiple emulators.
- Highscore Card Preferences: Fixed resetting the target screen to an empty entry to disable the generation.
2.14.0
Release Notes
Changes
- DOF Preferences: Added second DOF installation folder for people using 32-bit and 64-bit installations in parallel.
- DOF Preferences: Added option to let the VPin Studio server synchronize DOF settings.
- System Manager: Added Serum support. Serum is already part of Freezy, but if you really want to ensure to have the latest and greatest Serum support, you can download the required DLLs this way too.
- Pause Menu: Added preferences checkbox for the tutorials, so that you can skip the rendering of YouTube entries completely (in case you have downloaded all tutorial videos instead).
- Highscore Card Settings: Added hint about the transparency settings when a Popper menu screen is selected that has no transparency enabled. This setting is required when you want to use transparent highscore cards.
- Default Table Assets: Added ROM Alias support for the default asset generation (used for scores, competitions and highscore card backgrounds). So "aliased" tables can have a different highscore card background now.
- Table Management: Added NVOffset validator. If a table uses an NVOffset, all tables using the same ROM must have set it in order to work.
- Table Management: NVOffset filter option to filter for tables that have set NVOffset(<?>) set in their script.
- Table Management: Alias filter option to filter for tables that have set an entry in the VPMAlias.txt.
- Table Data Manager: Added ROM Alias support for the ROM validation.
- Table Script Section: Moved Alias mapping stuff into the VPin MAME section, because that's where is belongs.
- Table Script Section: This section now supports reading the screenshot information out of the VPX file:
- Table VPin MAME Section: The moved VPin MAME section has been re-worked and you can edit the VPMAlias.txt directly now.
- Added Remote File Editor: It's a first very basic text editor, but as a first step, you can edit the DmdDevice.ini and the VPMAlias.txt now remotely. (The editor can't do much since text editing with Java is like driving Formula 1 with a Fiat Panda).
Bugfixes
- Added PinUP Popper database version check for the startup. An error message is shown if the version does not match to avoid unspecific server errors.
- Enabled the installation folder selection for VPin Studio installer .exe files.
- Enabled dashboard support for rotated playfields: With long overdue, this should finally work for those of you using rotated playfield screens. I've only supported the default portrait mode of Windows here, no additional rotations.
- Fixed calculating the correct nvram file when table is using NVOffset: Somehow, I never got this right.
- Fixed ROM alias calculation for tables. Yes, I never got this right too.
- Add ROM alias caching to improve table reload performance.
- Table Data Manager: Re-implemented ROM and highscore file validation on the server so that the Highscore Not Supported filter option and Table Data Manager using the same validation routines.
- Table Highscore Section: The section now always re-scans the highscores and the raw data is taken from this scan, not from a previous database entry. After configuration updates, old values may have been shown there.
- Highscore Card Generator: Added automatic downscaling of long table names, so that they always fit in into the card.
- Highscore Card Generator: Fixed error during font size changing, firing multiple change events at once.
Additional Information
https://vpuniverse.com/forums/topic/8278-nvoffset-another-summary-of-how-it-works/
2.13.0
Release Notes
Changes
- Updated to Virtual Pinball Backup Manager 2.0. (Installer only). For existing installation, you can update the manager in the preferences.
- Added hint for the backglass server settings that fozzy matching is not supported by the VPin Studio. You can enable it, but the Studio will always only look for exact .directb2s matches.
- Added Blank Media button for the Audio Launch screen in the asset manager - Not sure if it is useful for other screens too.
- Added Statistics tab to the Table Data Manager dialog.
- Added System Shutdown button in the Server Settings to shutdown the cabinet. (Who wants to get up from the sofa for this?)
- Added bulk dismissals: You can now multi-select a set of tables from the overview and dismiss all issues for these (useful in combination with filters).
- Moved preferences about Upload and Replace options into the table upload dialog, because that's where they are used.
- Added Table Filters.
- Added Backglass Manager: You can finally also access the .directb2s files that are not linked to any table.
Bugfixes
- Overlay Key Binding: Added check so that the overlay is only shown, when the Popper game selector is opened.
- Table Data Manager: Fixed miscellaneous issues with the info badges and ROM validations.
- Table Data Manager: Fixed "Fix Version" action.
- Table Data Manager: Added hints which fields will be overwritten on auto-fill.
- Table Data Manager: Fixed error that the the Table Data Manager did close on enter pressed.
- Table Asset Manager: Fixed error that the the Table Asset Manager did close on enter pressed.
- Table Uploads: Fixed "Upload and Replace" option in combination with the "Keep..." settings and fixed related asset renaming.
- Pause Menu: Fixed video author allow list so that an empty list shows all videos available in the pause menu.
- Added additional "Open" button to the right section of the VPS table overview.
2.12.0
Release Notes
Table Data Management
Sorry for the wallpaper here, but it's a bigger change and long overdue. So here we go...
tltr: Checkout the brand new "Table Data Manager" (edit table) and the new "Server Settings" in detail with all descriptions!
The Table Data Manager is now "the one" dialog to rule them all. It consolidates the 4x existing data sources for table data:
- PinUP Popper table data
- VPin Studio scanned table data
- Virtual Pinball Spreadsheet data
- VPX file script fields section
It wasn't obvious where data was stored before and when exactly what value is used or preferred.
From now on, the values inside the PinUP Popper database will be the single source of truth and are always preferred over the scanned table values.
As a result from this, large parts of the "Script Section" have been resolved into the Table Data Manager dialog (and moved lower to the bottom).
It includes a deeper analysis of the gathered data regarding the status of the highscore.
I hope the new view gives a better overview about the configuration status and will help to setup the required fields to extract highscores from tables.
The VP-spreadsheet table mapping is now stored inside the PinUP Popper database too.
Since Popper does not provide special fields for these values,
you can go to the server setting to change the default mapping there.
Additionally, the copying of VP-spreadsheet table meta-data into PinUP Popper has been moved into Table Data Manager dialog too, so that one can see what data will be written.
Ok, but why is this a breaking change?
If you had stored invalid values for the Popper fields that are used for the highscore filename or the ROM name,
the highscores of these tables won't be resolved anymore. Even if your table scan resolved the correct ROM name of a table.
The field in Popper must either be empty OR you can apply the correct value so that it is saved there.
Phew, so that was too easy, right? Now the usual additional goodies...
Other Changes
- Added checkbox to enable fuzzy lookup logic for the backglass server in the "Backglass Server" preferences.
- Improved navigation between the Table Data Manager and the Table Asset Manager, including previous and next button.
- Added tooltips for VPS feature badges.
- Added "Invalidate All" as split-button to the "Invalidate" button in the overview toolbar.
- Added auto-fill rules for the VPX meta-data fields notes and rules, so that these values are written to the "notes" and "details" fields of PinUP Popper 1.5.
- VPS update flags are now resetted for the following uploads: backglass, table replacements, altsound, altcolor, puppack and pov files/archives.
- The automatic writing from mapped VPS data to PinUP popper has been removed again for: initial scans, table replacements and clones. It is only applied via the Table Data Manager or when a new table is imported.
- The "Table Import" dialog now provides a progress bar, so that the user gets feedback about the progress when a bunch of tables is installed at once.
- The media preview is now pausing when the window does not have the focus anymore (saving CPU usage here).
- Moved "Scan All" button into a split-menu button since it's not likely to be used that often.
- Re-arranged fields in the "PinUP Popper Table Data" section so that they match with the new Table Data Manager.
- Added option to upload Music archives. The upload accepts any zip with audio files (with or without "Music" folder in it.). I think we have all mandatory uploads then, right?
- Added the option to render highscore cards with a transparent background.
Bugfixes
- Fixed VPS tables view's sidebar section: All badges of a table are readable now and not abbreviated anymore.
- Upload menu items sorted alphabetical now.
- Added missing labels for "Audio" and "Audio Launch" in the Popper media section.
- Maximizing the window will now work for the active screen.
- Fixed duplicate table scan during initial installation.
- Fixed several issues with the VPS table search.
- Fixed deep link of VPS section header: The link now opens the selected (if there is a selection).
Miscellaneous
Since the table scans are never a 100% correct, I started a score database which helps to fix table scans by providing
additional data. So if you find table tables where the scan does not find the correct values, drop a message.
I can fix the scans with additional lookups there (the file will be automatically downloaded by the server):
https://github.com/syd711/vpin-studio/blob/main/resources/scoringdb.json
2.11.0
Release Notes
Pause Menu Added
I'm happy to announce the brand-new "Pause Menu" for Popper/VPX has been released. The menu item are created using the existing assets from the "help", "other2" and "info" folders of PinUP Popper.
Additionally, a summary is shown, together with the highscore card generated by the VPin Studio server.
Also, the Virtual-Pinball-Spreadsheet team threw in the new section tutorials and filled the sheet with a lot of YouTube videos already!
These videos are automatically available in the pause menu for the corresponding tables.
People already picking up on this by producing compact and comprehensive instruction videos.
See for example https://www.youtube.com/watch?v=7wdMAUnDLsI&ab_channel=MichaelKongedam !
The "Pause" menu can be configured in the preferences section "Overlay & Pause Menu" (former "Overlay").
New "VPS Tables" View
The tables section now has an additional view called "VPS Tables".
It shows you an overview of all existing VPX tables available on the virtual-pinball-spreadsheet.net and shows an indicator which ones you already have.
VPS Bot is online!
The "VPS Updates" bot is now online! Never miss a VPS update again. The bot will post updates for the latest changes that have been made on virtual-pinball-spreadsheet.net.
Press the "Follow" button if you wish to see these notifications on your own Discord server.
Other Changes
- Added "Download" button inside the asset manager dialog to download assets from your cabinet's Popper media folders to your local PC (might come in handy from time to time).
- Removed VPS update notifications from the user's Discord bot. Please follow the VPS-Bot channel instead.
- Added RAR support for uploads of: ALTSound packages, VPX files, DirectB2S files and PUP Packs. The client-side validation of these files is missing because of some API problems, but the upload of valid is supported.
- Added Zip support for uploads of: DirectB2S files.
- Improved performance of table scans a bit.
- Added VPS sub-section "Tutorials"
- Removed entries marked as broken from VPS overviews.
- Added type-ahead/key-navigation for the table list: After the table overview has been launched, you can immediately enter the name of the table you wish to work on. You can enter more than one letter.
Bugfixes
- Fixed overlay focus issue for VPX GL: Added repetitive focusing so that the overlay will appear for Visual Pinball X GL version too.
- Fixed various issues in the VPS differences calculation.
- PinUP Popper table data dialog:
- Fixed VPX file renaming error.
- Fixed table display name renaming issues.
- Re-enabled "Game Name" renaming (which includes the renaming of all Popper assets too).