Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. Thank you for your support. Tom Speirs

Patreon

Strange Custom Database Issue


bombdog

Recommended Posts

Hi all,

I've been attempting to create a custom Pinball database from the VPMAN product, where I've been hoarding Visual Pinball tables over the years. I've got many different versions of tables and rather than rename the original downloaded VPT files, I've used VPMAN to add in the publisher, developer, release date etc.

Thanks to the custom nature of GameEx I've been able to export from VPMAN into a copy of the template.mdb file, and append the additional data to the table names. Loading this into GameEx for my Visual Pinball emulator setup works well, however...

Strangely, if the original pinball filename (in my GoodName field in my custom DB) does NOT have brackets in it, it is used as the name shown within GameEx even if I have the 'use database names' option set to 'Yes'. All other tables that have brackets in both the filename and the 'GoodName' field.

e.g. - in the same file:

GoodName = Airborne Avenger 1.3.vpt

Name = Airborne Avenger (1.3) (1977)

Shown = Airborne Avenger 1.3 (the GoodName - which I don't want)

GoodName = Abra Ca Dabra (Gottlieb) (1975) (Luvthatapex) (RC1).vpt

Name = Abra Cadabra (RC1) (1975)

Shown = Abra Cadabra (RC1) (1975) (the Name, which I want)

So.. in my 1000+ tables, I have a strange mixture of GoodName field and Name field being shown.

I have written some update statements so I can automatically generate a new mdb file from my VPMAN database, so I can adjust these anyway I wish - so I'm happy to fiddle some more, but has anyone seen this problem before, and knows how to resolve it? Should NoIntro or TOSEC be used instead to prevent this mixture of display names? Is this a 'show database names' bug or is my hacking-together-assumptions not quite right?

Thanks

Bombdog

Link to comment
Share on other sites

Hi there bombdog, and welcome!

I'm not a DB guru by any sense of the word, but i do know this - you can't really expect consistent results from inconsistent data. In this case that would be your filenames/naming conventions. This is a widespread problem being that there is no real standard to naming roms. Sticking to one convention will help you somewhat however and the preferred here is the No-Intro format but is by all means not required, nor essential.

You would be doing yourself a big favor though if you could some how make your set standardized.

GameEx has some nice features to manipulate game lists, for example ignoring info in brackets, sorting lists using the info in brackets etc but it assumes the info is uniform :)

I'll leave you with that food for thought.

Link to comment
Share on other sites

Thanks for the response. Yes, I know what you mean about inconsistent results from inconsistent data.....

However when I tick the box that says 'Use Database Name', this is the field I would expect to be used consistently in GameEx - it isn't!

I don't really want to have to rename all my tables en-masse due to them coming from a variety of sources and there being other bits of information in the filename - hence my using a custom GameEx db to show a tidy list. I'll have to try some square brackets or similar, see if I can fool GameEx into displaying the field I asked it to...

I'm loving the system though. Really improves the feel of my cab.

Link to comment
Share on other sites

I'm fairly certain that the database(s) don't use bracketed text as part of the matching criteria. If you take a look at some of the other databases (I'm looking at the N64 database right now for reference), you'll see that the matching columns (GameBase, HyperList, GoodTool, NoIntro, etc), don't actually include any of the bracketed information common to each of those individual naming schemas. This makes sense if you think about it, being that if the database did include bracketed info as part of its matching, there would need to be separate DB entries for every dump in the GoodTools set ([!], [a], , [h], [o], etc) multiplied by the number of country codes associated with each dump. It would make the databases exponentially larger!

My advice would be to take a look at one of the existing databases, and see if you can tweak your custom database into something that will work for you (which will likely involve removing the bracketed text from your matching columns). Failing that a map file might also be a valid option for you, although in this case you will lose the extra metadata provided by the databases, which might be a deal breaker (I know I love seeing all that extra data in my game entries!)

Link to comment
Share on other sites

Well, I've had another bash at this, and tried to take a screenshot by means of explanation.

You can see where the generation of the EMU_1..dbcacheini gets a little confused. As VP tables can be created by different people, it may be that the descriptions for each would be different. Indeed there are tables with the same name made by different Pinball manufacturers many years apart, so one wouldn't want the fields to get mixed up.

You can see below where (in my fake set of 8 tables)

  • three tables called 'Abba' all get the same description from one of them
  • The Beatles tables get information all over the place from the details I've got in the database (e.g. the 1.2 table shows as 2.0)
  • Some bracketed information gets moved across from GoodName to the Name table

...when generated

explanation.jpg

OK - so I understand I can't do what I thought I could. I understand the databases could be very large for the 'official' goodsets etc. I worked away on this in the hope I could post a little tutorial for others.... but I can't work it out. My last ditch idea would be to programatically rename my files, but this seemed like a bigger job, especially when they come from a variety of sources and if I get new files and copy them in, Windows would complain the file already exists and thus save me having duplicates...

So.... how can I raise a feature request that what I'm trying to do can be done? I'd like the metadata options to be able to for example, pick a year, and see the tables made that year, as that's why I went database and not MAP file.

My guess is that it isn't a big coding job, more a workaround of some clever coding that is currently in place to manipulate the goodset, nointro or tosec sets.

Cheers

Bombdog

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...