angstsmurf / spatterlight

Updated fork of Spatterlight
GNU General Public License v3.0
105 stars 5 forks source link

Automatic game information download: Different games share same info #24

Closed brunomueller93 closed 3 years ago

brunomueller93 commented 3 years ago

Hi there! Love this program a lot!

I have an issue though. I've imported all of my games into Spatterlight and used the automatic information download function. It worked fine for most games but the games "Zork I" and "Suspended" now share the same information. Spatterlight calls them both "Zork I" and whenever I try to change Suspended's information, it also changes Zork I's info. Those two games are now somehow interlinked.

angstsmurf commented 3 years ago

Thanks for reporting this!

Looking at the list here, there are hacked versions of Zork I and Suspended (suspended-r5-sXXXXXX.z3 and zork1-r5-sXXXXXX.z1) that have the same blank serial number, which is why they get the same IFID (ZCODE-5-------) and IFDB data.

Spatterlight uses this ID to tell games apart, and it would require a pretty fundamental change to fix this. For now the only "solution" seems to be to use a different version of Suspended, as that is the one that gets mis-identified.

This isn't really a Spatterlight bug, so I've passed it on here.

EDIT: A partial solution would be to let the user change the IFID manually, which is a feature I might add in the future, although this would potentially only cause more confusion.

brunomueller93 commented 3 years ago

Hi, thanks for looking into this!

But apart from the same ID, couldn't Splatterlight differentiate between games also based on their file paths? Having the same info after the automatic info download is one thing. But I find it worse when it's impossible for me to manually change the information after it has been automatically downloaded. Whenever I try to change Suspended's info, Splatterlight also changes Zork I's info and vice versa. It would be nice if it would be possible to manually change the info anyway.

But anyway, thanks a lot for looking into this! I really love this project!

angstsmurf commented 3 years ago

Yes, the current way is obviously not ideal. But it has been this way since the beginning, and it would be a lot of work to change it now. It is on my list, though. In the meantime, IFID is supposed to be a unique identifier that prevents this sort of thing from happening, so if it is fixed on the Babel side, it will take care of your problem as well.