JosefNemec / Playnite

Video game library manager with support for wide range of 3rd party libraries and game emulation support, providing one unified interface for your games.
https://playnite.link
MIT License
9.1k stars 492 forks source link

Mass importing metadata of PS2 games from IGDB fails #460

Closed DennoCoil closed 6 years ago

DennoCoil commented 6 years ago

Have a bug. I have a pack of 50 PS2 games and tried to mass import metadata from IGDB for them.

While it seems like it's downloading metadata, as it goes through the progress bar. After it finishes, nothing is added or changed. Individually, I can download the metadata just fine from IGDB. It's the mass import feature that doesn't work properly. It works for most other systems and emulated games though, and I haven't seen this happen with other Platforms or tried to put in several other dozen platforms either.

No idea what other conditions it would take to replicate. My iso files are in zipped GZ files for space saving and for the PS2 emulator to read, the Platform is set to Playstation 2, and I roughly have 10k+ games and counting over several hard drives so far.

JosefNemec commented 6 years ago

Could you please go to "About" menu and crate diagnostics package for me? Thank you

DennoCoil commented 6 years ago

Went through, added the ISO's again, did the mass meta data, and then a single metadata. PS2Fail.zip EDIT: I forgot a condition, I set everything to only download everything from the IGDB both times. I haven't tested doing it default.

JosefNemec commented 6 years ago

Could share some ISO names for your PS2 games? If there's some special naming scheme then Playnite might not be able to match the records automatically from IGDB database.

Also there's a lot of "OutOfMemory" exceptions in your logs, which doesn't make sense since you have 32GB of RAM. Are you experiencing some other issues with stability?

DennoCoil commented 6 years ago

PS2Fail.zip

Sorry, accidentally hit closed instead of upload. The zip file is png of my PS2 games as they are in the folder.

DennoCoil commented 6 years ago

I think we found the problem. The names of the files also includes stuff in between parentheses ( ) and possibly brackets [ ]. My PS2 games are some of the ones that are named like this and Playnite is intelligent enough to ignore things like (World) and (Unl) or other GoodMerged naming schemes when adding in games.

However, when I rezipped the files in GZ (I have learned the PS2 emulator can't read GZ files well and needs specific compression type to work), it adds in a .iso at the end when zipping up GZ files, so they look like this.

Xenosaga Episode III - Also sprach Zarathustra (USA) (Disc 1).iso.gz

That may be the problem right there. Playnite treats the ".iso" or "iso" as a part of the game's name and the IGDB metadata fails because it thinks the "iso" is a part of the game's name.

I need to test a little and see if Playnite adds in the iso when just using straight uncompressed files, and see if PS2 games still fail enmass if I just remove the iso part of the name.

I noticed that Playnite\IGDB metadata download regularly fails when colons are used instead of hyphens. Don't know why they're named with colons either, but that's how they came up when populated on the list. IGDB's search engine may not be intelligent enough to ignore or combine certain characters together.

As for the "OutOfMemory" issue, I couldn't say. It doesn't use a whole lot of memory or crash because of that. Could potentially be from using a lot of things at once that tries to hit the limit and I had to force close some things.

JosefNemec commented 6 years ago

Thanks for the clarification, I think we are not handling ".iso.gz" type extensions correctly. Also the issue with colons and hyphens was already brought up by somebody, but I forgot about it. I'll look into it.

JosefNemec commented 6 years ago

Fixed in 4.40