angstsmurf / spatterlight

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

How to add/show cover image? #8

Closed Stakker closed 4 years ago

Stakker commented 4 years ago

I just started playing some Infocom games I've yet to finish after a long break and then you make this awesome new release almost immediately! Thank you :-)

Cover images is something I was hoping for when I installed the previous version, so I'm super happy about this feature. But where do I put the images?

Would BTW also be cool if you could show small thumbnail of the covers in the list, to the left of game names. (This would probably require double-height lines, similar to the Finder big icon feature.)

Sorry about making this an "issue", but I figured this is best way to connect :-)

angstsmurf commented 4 years ago

I'm afraid cover images is kind of an unfinished feature.

Currently, the only way to get a cover image is to download it from Ifdb, with the contextual menu option Download Info.

If you open an info window, it is possible to just drag any photo to its image well and have it show up, but the image is not stored in the database and will be gone once you close the window (although the image file is actually copied to a folder in Application Support). This will be fixed in the next version.

Also, there is no option to have the image show up when the game starts like in Zoom or WinGlulxe. That would be nice to have, too.

Stakker commented 4 years ago

All right, that's cool. Thanks again!

angstsmurf commented 4 years ago

If I did implement better support for cover images, how would you like it to work? Just so that I get a general idea.

No promises, I'm just curious.

Stakker commented 4 years ago

Well... I guess the first thing to implement would be to add an obvious button for downloading the image/info from Ifdb, or just download automatically. Because at least I didn't even notice you can do that :-)

If you want to replace the cover image with a better one (the Ifdb scans aren't super), maybe the way I would prefer doing it would be to automatically search for "Cover.jpg" (or something) inside the folder where the story file resides. Manually dropping images to the sidebar/info is cool too, but it's one more step. I'm guessing the metadata export/import handles library data like this, so that makes it smoother, but it's still one more step when installing Spatterlight on a new machine or OS install. But yeah, I don't really mind either way, as long as it works :-)

I guess it might also be nice to see all the images and PDFs in the story folder inside Spatterlight (Infocom package materials), so you wouldn't have to open a Finder window to see those, but I don't know if it's worth the trouble to implement :-)

BTW seeing your current scores in the game list would be a nice new feature... (to see how far you are in all the games) but I'm guessing that requires digging into the save file code, which I'm presuming is a whole different world of pain :-P

angstsmurf commented 4 years ago

Thanks! These are excellent ideas.

There is actually code in there already to download metadata for the entire library in the background, so I guess we could at least throw up a dialog asking the user if they want it done automatically.

That last suggestion is surprisingly difficult, however. You'd basically have to step through the code instruction by instruction to find the right memory addresses, and they would be completely different for every game or even different releases of the same game.

BBC did something similar with The Hitchhiker's Guide, but my guess is it took them months. And that was for a single game.

Stakker commented 4 years ago

Cool! (The metadata download.)

Heh OK, I did have a hunch that the save data might be something horrible thanks to the Z-Machine :-)