Author Topic: All Games List?  (Read 10950 times)

j.e.f.f

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
All Games List?
« on: October 07, 2020, 02:40:46 PM »
Currently I have a separate Displays, each with its own associated games list for each system (e.g., one for NES, one for Neo Geo, etc).  I’d like one more Display that combines all games from all other displays. Is this possible?

Thanks!
 - Jeff

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1274
    • View Profile
Re: All Games List?
« Reply #1 on: October 07, 2020, 04:19:52 PM »

j.e.f.f

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: All Games List?
« Reply #2 on: October 08, 2020, 07:39:41 AM »
Thanks @progets

I was afraid that that was going to be the only option (was hoping there was an automatic way).  I've heavily modified my games lists, so re-scanning will undo all the work I did.  I'll try manually combining all of the games into a single list using a text editor instead.

Nice that I can then filter the master list for each Display, so at least I won't have to manage both the master list and also the individual games lists.

dmmarti

  • Sr. Member
  • ****
  • Posts: 107
    • View Profile
Re: All Games List?
« Reply #3 on: October 08, 2020, 07:54:41 AM »
You can write DOS Batch scripts (or korn shell if you're using a linux OS) to automatically combine all of the romlist text files into a single file, instead of manually launching each one, copy/pasting into a master list, etc.

That way, the automation script will copy all individual romlist file entries and put them into a single romlist file and save you a ton of time (no rescraping needed this way).

zpaolo11x

  • Hero Member
  • *****
  • Posts: 1245
    • View Profile
    • My deviantart page
Re: All Games List?
« Reply #4 on: October 08, 2020, 08:22:47 AM »
Nice that I can then filter the master list for each Display, so at least I won't have to manage both the master list and also the individual games lists.

There are people here, myself included, who are really into this "master romlist" stuff. The suggestion is that you create one huge single romlist, merging together all your lists. Then you can edit your displays so to add a "default filter" to select only games with a certain system. You can even add a "is available" filter so that your romlist will stay fixed as a database and each time you add a rom, you'll see the new game in the right display.

Other advantages of master romlist are: create a "All favorites" display with all the favorites from all the systems, create collections (all Mario games, all Street Fighter games) etc. I don't suggest using the whole romlist "as is" in a display and add filters to that, because it will be slow in launch and update, but with "default filters" everything will be pretty fast

j.e.f.f

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: All Games List?
« Reply #5 on: October 08, 2020, 08:50:16 AM »
I don't suggest using the whole romlist "as is" in a display and add filters to that, because it will be slow in launch and update, but with "default filters" everything will be pretty fast

My thought was to use the master gameslist in its entirety in one display primarily so that I can search against every game included in AM.  Every other Display would represent a "system" (e.g., NES, Genesis, etc.), and it would be the master list filtered list to that particular system

When you say "default filters" are you referring to the global filter you specify in the Display config?  Or something else?  I don't plan on using dynamic filtering in my Displays... none of my current romlists are all that long (about 100-150 games per system, max, even in my Arcade folder). I have no desire to include all 6000+ mame roms, for example, so the ability to filter beyond system, or favourites is not something I need.

Which leads me to my current problem... There is currently nothing in any given rom list to indicate what system it belongs to -- I'm currently using the separate romlists to categorize a game into a particular system. I don't want to filter on emulator, because there are plenty of games that need a specific emulator that is different than most of the games for the particular system, and in some cases, I'm using the same emulator across multiple systems (e.g., PicoDrive for both Sega Mastersystem and Genesis).  Also, I try out different emulators all the time, so it's a bit too transient of a field to filter against, and would require constant maintenance to keep the Display filters up to date.  I'd like to be able to filter on some other field.

Of all of the possible columns in all my romlists, the "Extra" column is empty in all cases.  If I use that field to indicate the System the game belongs to, will that break anything else?  What is the "Extra" column normally used for in AM?

Alternatively, can I just add a column to the rom list and use that?  Will it be available to set a filter against within AM?

Thanks!
 - Jeff

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1274
    • View Profile
Re: All Games List?
« Reply #6 on: October 08, 2020, 06:03:17 PM »
You can easily create tag files for each system to filter. I personally use the emulator field for system filtering. You can accomplish this is several other ways too. I also avoid manually modifying the romlists because that means you can't easily generate new romlists if needed.

There are many ways to setup your system. A lot of things are just a matter of preference.

Ryugah

  • Full Member
  • ***
  • Posts: 33
    • View Profile
Re: All Games List?
« Reply #7 on: October 08, 2020, 06:39:26 PM »
about the "master list or favourite list" once you generated it and favourite your games with filter

what happens when you want to add a new game to that list?

or how do you do that? for example

-got the master list merged with a lot of systems
-want to add another PC GAME but dont want to scan the ENTIRE librery again for one game

what would be the correct way to do so?

progets

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1274
    • View Profile
Re: All Games List?
« Reply #8 on: October 08, 2020, 07:14:48 PM »
Again, there are many ways to accomplish this.

Some people will always start with complete romlists so there aren't games ever added/changed. Then they create a global filters to only display games they actually have roms for.

Some people would manually edit the two romlist.txt to add the game entry to the system list and the master list.

Some people import romlists from other systems like HyperSpin.

Some people create romlists from the command line using filter switches when they are built.

Attract-Mode is very versatile and you may do similar things in different ways. Everyone has different preferences. My advice is plan/decide how you want your system to work and then determine the best way for you to get there. I spent a lot of time to get my system where I wanted it and barely ever make any changes to it.


zpaolo11x

  • Hero Member
  • *****
  • Posts: 1245
    • View Profile
    • My deviantart page
Re: All Games List?
« Reply #9 on: October 09, 2020, 12:12:03 AM »
When you say "default filters" are you referring to the global filter you specify in the Display config? 

Exactly!

Quote
Or something else?  I don't plan on using dynamic filtering in my Displays... none of my current romlists are all that long (about 100-150 games per system, max, even in my Arcade folder). I have no desire to include all 6000+ mame roms, for example, so the ability to filter beyond system, or favourites is not something I need.

If this is the case, you can probably use the whole romlist in a single display. My layout allows for system selection and filtering inside the display without having to reload anything but struggles with tens of thousands or roms... not your case though

Quote
Which leads me to my current problem... There is currently nothing in any given rom list to indicate what system it belongs to -- I'm currently using the separate romlists to categorize a game into a particular system. I don't want to filter on emulator, because there are plenty of games that need a specific emulator that is different than most of the games for the particular system, and in some cases, I'm using the same emulator across multiple systems (e.g., PicoDrive for both Sega Mastersystem and Genesis).  Also, I try out different emulators all the time, so it's a bit too transient of a field to filter against, and would require constant maintenance to keep the Display filters up to date.  I'd like to be able to filter on some other field.

When you define an emulator there's a field called "System Identifier", I use that to add System information to my romlists. I just put the name of the layout there, and when I generate merged romlists this is carried to the whole list so in some way it is transferred to the romlist. Just try to see where it's placed in your romlists.
I use that field in my layout to get System information for each game, so in a multi-system list one can sort or filter by system etc.

j.e.f.f

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: All Games List?
« Reply #10 on: October 09, 2020, 05:44:22 AM »
When you define an emulator there's a field called "System Identifier", I use that to add System information to my romlists. I just put the name of the layout there, and when I generate merged romlists this is carried to the whole list so in some way it is transferred to the romlist. Just try to see where it's placed in your romlists.
I use that field in my layout to get System information for each game, so in a multi-system list one can sort or filter by system etc.

Odd... All of my configured emulators have the System Identifier field filled, but none of my romslists, which were all initially generated by scanning, contain this information.  There's not even a column header defined for it. There is also no option for me to filter on it in the global filters. Is this something that an older version supported but the newest does not? I'm on version 2.6.1 (I believe, can't figure out where to verify this, but I downloaded and installed it in April, and I see that 2.6.1 was released in January.  So pretty sure I'm on 2.6.1)

zpaolo11x

  • Hero Member
  • *****
  • Posts: 1245
    • View Profile
    • My deviantart page
Re: All Games List?
« Reply #11 on: October 09, 2020, 06:11:46 AM »
You are right, I was partly misled: my emulators are named after the system too, but actually in the romlist there's not the system identifier, but the emulator name. The link between emulator and system identifier is in the emulator .cfg file.

rand0m

  • Sr. Member
  • ****
  • Posts: 343
    • View Profile
Re: All Games List?
« Reply #12 on: October 09, 2020, 01:54:01 PM »
AFAIK system identifier info is used exclusively while scrapping by websites like gamesdb. As for the original question you can create a muti-system display by adding all the system you have already configured via AM settings > emulator. I am not sure if AM retains the info this way, same can be done via opening the files in text editor or excel. Keep in mind though that AM does not auto-update this multi-system list so you will need to update the multi-system everytime you make a change in any systemlist.

You can also create the master/ multi-system list and hide it from display and edit search module so it searches the multi-list and display the results.

As for identifying systems in romlists you can either name the emulator.cfg exactly like the system (e.g. nintendo_entertainment_system.cfg, sega_genesis.cfg) or use any header/ field which is not being utilized like extra, buttons, clone_of etc. The headers deal exclusively with MAME so most fields are not usable elsewhere.


PS:  I've used some of the ides being discussed here. in my WIP theme here > http://forum.attractmode.org/index.php?topic=3199.0. Going through its docs might be helpful.

zpaolo11x

  • Hero Member
  • *****
  • Posts: 1245
    • View Profile
    • My deviantart page
Re: All Games List?
« Reply #13 on: October 10, 2020, 01:18:28 AM »
AFAIK system identifier info is used exclusively while scrapping by websites like gamesdb.

System Identifier is used also to get the "Info.System" data and the [System] magic token. It is not saved in the romlist, but the romlist carries the emulator name, and the emulator .cfg has the system info, so probably at runtime AM links the two.
I just made a quick test, created an emulator named "superemu" with a "snes" system identifier. My layout, which uses Info.System to create some elements, correctly interprets that as a SNES game
« Last Edit: October 10, 2020, 01:24:57 AM by zpaolo11x »

j.e.f.f

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: All Games List?
« Reply #14 on: October 10, 2020, 02:15:03 AM »
As for identifying systems in romlists you can either name the emulator.cfg exactly like the system (e.g. nintendo_entertainment_system.cfg, sega_genesis.cfg) or use any header/ field which is not being utilized like extra, buttons, clone_of etc. The headers deal exclusively with MAME so most fields are not usable elsewhere.

This is what I ended up doing,  but in my case it was the prefix of the emulator, as in many cases I'm using multiple emulators for a system.
e.g.:

Code: [Select]
Arcade - FB Alpha.cfg
Arcade - FBNeo.cfg
Arcade - MAME 2003.cfg
etc.

Then I set global filters for each system like
Code: [Select]
Emulator contains Arcade
Of course I didn't fully think this through... as I ended up with overlap between a few systems:  For example, I named Nintendo emulators
Code: [Select]
NES - <emulator>.cfgand Super Nintendo emulators
Code: [Select]
SNES - <emulator.cfg>
When I filtered with `Emulator contains NES` it also picked up my SNES games.  (Also a similarly with `Sega` and `Sega Genesis`).  Rather than going through the process or renaming those emulators again and doing a search and replace all over again in my romlists, I ended up making the rules a bit more complicated than they needed to be.  For Nintendo, I needed to do two rules:
Code: [Select]
Emulator contains NES
Emulator not_contains SNES
::)

System Identifier is used also to get the "Info.System" data and the [System] magic token.

This is how I plan on using it on the all games list so that multiple listings of the same game can be distinguished from each other


In any case, it all works now!  Thanks for everyone's help.
« Last Edit: October 10, 2020, 02:19:10 AM by j.e.f.f »