SteamGridDB / steam-rom-manager

The bulk game importer and artwork manager for Steam!
https://steamgriddb.github.io/steam-rom-manager/
GNU General Public License v3.0
1.91k stars 123 forks source link

Support Distinct Names for Randomizers #423

Closed jet082 closed 1 year ago

jet082 commented 1 year ago

It is nice to load up a number of randomizers onto the Deck before going on a long flight. Flying to India from Montana is much easier when you have 10-20 Final Fantasy 4 Randomizers to play on the flight. However, currently, each of these will have the same name and the same icon in Steam. This creates visual clutter and confusion, particularly if you're looking for the exact seed you're trying to resume (this is especially important as some randomizers do commonly take multiple sessions to clear).

It would be nice to be able to add some more features to the game parsing. For instance, one could conceivably add something along the lines of a standardized naming scheme for randomized games.

Game Name (Randomizer, Seed#).extension

Such that an example might be: Final Fantasy IV - Free Enterprise (Randomizer, UVUGA13960).sfc

If the parser detects "Randomizer" it would then ensure that the seed is appended to the beginning in the resulting Steam name. For example, it might show the FF4 cover art (since a specific one for Free Enterprise doesn't exist on steamgriddb), but the resulting display name in the steam library would be UVUGA13960 (Final Fantasy IV). Similar formats could be used for any other randomizer - Zelda 1, Wind Waker, etc.

Or something like that. The goal would be to ensure that one can differentiate seeds from one another and store many separate randomized versions of the game in the same library for better play on long trips. Even better would be to layer the seed number over the art (and maybe overlay a random tint on the art on a per-seed basis) with Pillow or something as well so seeds could be even better visually distinguished ("I'm currently playing the yellow tinted FF4 seed" etc), but that'd be more the icing on the cake.

kencinder commented 1 year ago

This is an issue of your randomizer name being inside parentheses, and the option to remove what is in there being enabled by default. Turn off that option or alter the name of your files, it isn't an issue for SRM to somehow handle.

jet082 commented 1 year ago

I'm not sure that this addresses the concern. Unless I am misunderstanding something (in which case I apologize!)

The issue is that, even if a randomizer (say ALTTPR) is labeled separately from the base game on SteamGridDB or something, all of them would be simply labeled a generic "A Link to the Past Randomizer." If you have multiple copies of a randomizer on your computer, each with a different seed (very common situation for rando players on planes), they will all simply be labeled "A Link to the Past Randomizer."

The seed value matters so you can differentiate one vs another visually. You cannot simply add a separate entry on SteamGridDB for every single possible seed for every single possible randomizer. That would be hundreds of millions of entries. Possibly more!

Thus, this is absolutely an issue within the purview of SRM.

kencinder commented 1 year ago

This is something SRM can already handle in that case with the use of a title modifier.

eg with Final Fantasy IV - Free Enterprise (Randomizer, UVUGA13960).sfc

and a title modifier of ${/(\(.*?\))/|${title}} ${/(\(.*?\))/|${title}|}, you wind up with the following for a final title

(Randomizer, UVUGA13960) Final Fantasy IV - Free Enterprise

All kinds of permutations are possible using title modifier

jet082 commented 1 year ago

Oh okay I was unaware of that! I'll look into it - apologies for the unnecessary issue then!

kencinder commented 1 year ago

No problem I had to re-read what you were asking before I realized it wasn't just an issue with filenames.