mjrgh / PinballY

A table browser and launcher ("front end") for virtual pinball cabinets.
Other
47 stars 22 forks source link

Integration with virtualpinballspreadsheet.github.io #253

Open jueank opened 2 days ago

jueank commented 2 days ago

PinballY should read the json backend file from VPS with the information about all tables maintained there and use the available data to enrich the information in PinballY for the local tables. It's documented briefly here: https://virtualpinballspreadsheet.github.io/help At first, the user would have to provide the table id (that can also be seen & copied in the VPS website) or it could be automatically guessed from the table filename. The informations from VPS could be used in addition to that from IPDB, or - as one option - completely replace the metadata from IPDB. As an example: My brief experience is that the information on the manufacturers in VPS is much more consistent than in IPDB (fewer variations in the spelling). Either the overarching information for the original 'physical' table from the manufacturer can be used in PinballY or the specific information on a table created in VPX, FP, .... e.g. for concrete table files, a screenshot is available. This can be displayed for tables in PinballY as long as you have not yet created your own screenshot. Multiple additional metadata fields are available, like who has created the table (VPW, Bord, etc.). One potential use would be to be able to filter for this in PinballY. There is also metadata about when a table was updated. This would allows PinballY to check (automatically or manually) which tables could be updated. Also the download url is maintained. Furthermore, there is a field with ‘features’, which could be displayed in PinballY (VR, Fleep, nFozzy). Personally, I would be interested quite a lot, when navigating to a table to see these feature 'tags' displayed on screen. Also here, it would be great to be able to filter for that. The backglasses are also linked to tables via the json data. If a backglass is missing, you could use the URLs to download it. Other fields are also available, such as the designer of the original table or a list of 'themes' for the tables. Again, filtering by these in PinballY would be great.

The possibilities are numerous and far-reaching if you make clever use of the metadata from VPS in PinballY

jueank commented 2 days ago

image

jueank commented 2 days ago

Maybe I should add this: The ultimate goal would be that there is no more local metadata stored in PinballY, which is copied over from IPDB or VPS at a fixed point in time (when the user is 'editing' the table, moving it from status 'unconfigured' to 'configured'). Instead, there is only the VPS id that need to be maintained, and all metadata is automatically available in PinballY at runtime, because it is fetched from the current VPS json file. Locally added/edited metadata would only be an additional set of information, e.g. extending or overriding certain fields from VPS.