Versatile C++ game scraper: Skyscraper
-
@muldjord For the 3D boxart are you going to use a case splice or make generate with the wheel, platform logo and developer logo?
-
@sammyboy I haven't settled on the details yet. I do not have the platform or developer logos available to me, so it won't be that. The front of the box is of course the cover from the game.
EDIT: In a future release I might look into using platform or developer logos on the side. I have implemented a new resource system that allows you to use custom files from the "~/.skyscraper/resources" folder. So you can place png's or other image files in there and use them as masks, frames and the side of the gamebox rendering. So there's nothing holding you back from adding a "megadrive.png" to the resources folder and setting the 'side="megadrive.png"' on the gamebox effect. That would render the megadrive.png on the side of the box. But it would then use that for all platforms of course.
I need to ponder these things some more. But I really need to start nailing this down. I seem to keep coming up with new cool stuff that postpones the release. Maybe it's better to look into these things for future releases simply create the most basic goodlooking box for this release. After all I hadn't even planned to include the 'gamebox' effect in this release in the first place. :D
-
@muldjord Can't wait for the release seems like the biggest to date! Can you do a favour for me and add .scummvm as a file format to scummvm because I like scraping from screenscraper.fr but they use a fake file format(.scummvm).
-
@SammyBoy
'*.scummvm' added to scummvm platform. Will be in 2.3.0.I am currently testing all of the new composite effects. I'm getting real close to being done with all the features I want in 2.3.0, and yes, it is indeed the biggest Skyscraper release to date. And also the toughest to code so far. :D But it's turning out much better than I had expected, so I really look forward to getting it out to you guys. It's a matter of days now unless I run into something unexpected.
-
@muldjord I know youre busy with 2.3.0 which is released any moment, but i tried something which doesnt work for me.
Problem: Wings.uae is scraped as Wings of Fury.
TriedScreenscraper Wings.uae -p amiga
but it just scrapes everything. -
@analoghero Are you in the correct folder? I mean, are you in the folder where "Wings.uae" is located? Also, I assume you meant "Skyscraper" not "Screenscraper".
Openretro doesn't seem to have "Wings" on their website which is really odd... So try scraping with '-s thegamesdb' instead. That might help.
-
@muldjord Lol ofcourse Skyscraper, just a typo.
Yes im in the right folder, but even with -s thegamesdb added it asks me if i want to overwrite gamelist.xml and if i want to skip existing entries as usual.
-
@analoghero Ah, I know why. You need to put the full path on the filename. I will look into fixing this for 2.3.0 aswell. Thanks for letting me know.
-
Quick update: All of the effects are now done and working. There's one hiccup though. When I scrape a bunch of files with screenscraper I get a sporadic segfault (crash) after about 20 minutes in. Bad news is that it's not the same place each time which means this could take me a while to track down... I'll keep you updated on the progress.
-
@muldjord Yes, with full path it works. I wonder why i didnt try that. In fact i tried
Skyscraper ./Wings.uae -p amiga -s thegamesdb
but that didnt work, too.EDIT: Im confused now. When i see that the scraper has a name mismatch, as in my examples Wings gets confused with Wings of death or Wings of Fury, id like to rescrape that only game with another scraper (-s thegamesdb for example).
But the correct result doesnt get written to the gameslist.xml. Rescraping with -s localdb doesnt help either, as it sure gets mismatched again.
Tried scraping with -m 100 but this is a 100% match.Another thing related: Suddenly all my Shadow of the beast games have no number in the name, dont have the right cover orscreenshot. Ill try deleting the dbs and see if it helps.
-
@analoghero Yes, it's because I change directory to "~/.skyscraper" immediately after Skyscraper starts, to make it easier to get to the files I need. But I have a workaround in mind that will allow you to do both "Wings.uae" and "./Wings.uae".
-
@analoghero You need to look at "~/.skyscraper/dbs/[platform]/priorities.xml". That file defines source priorities for the different resources. Currently you probably have openretro above thegamesdb for a bunch of the resource types which makes it prioritize the faulty entries from Openretro. So just move the "<source>thegamesdb</source> up above the "<source>openretro</source>" node for all resources and it should work as you expect.
EDIT: And yes, the gamelist.xml is NOT being written when scraping filenames on command line. It merely adds the data to the local cache so you can use it with localdb as you did.
EDIT2: I will advice against deleting the entire dbs folder. Not that it breaks anything, but if you have scraped all platforms, most of the dbs inside the folder are absolutely fine and will be useful for rescrapings later. Instead, consider deleting just the one folder inside dbs matching the platform you are having trouble with. But, best of all, consider using the prioritize feature as described in the documentation.
-
@muldjord I just deleted the amiga folder insided the dbs folder. Its not that big loss.
I was thinking about priorities.xml but its a bit hard to decide, as sometimes it isnt clear which source is better or its depends on the game.
Another thing bugs me for long time: Can the result in number of players somehow streamlined? Most Emulationstation themes cant handle any text.
1 - 2 (2 simultaneous)
would only display garbage. -
Question: I know there's a way to do it, and it's probably posted somewhere but I haven't found it yet.
Can you change the priority for databases when the scraper runs? I don't like the current "primary" database, it throws in a lot of incorrect game names (or maybe just defaults to EU region titles instead of US), so I want to change it to a different one. I'm sure it's in a configuration somewhere to do it.
-
@hi_im_daft Please read the documentation: https://github.com/muldjord/skyscraper
You set scraper with '-s'. Check all options with '--help'. Please keep in mind that if you only scrape a platform with one scraper you are not using Skyscraper to the best of it's ability. Check here for more information on the local database cache: https://github.com/muldjord/skyscraper#local-database-features -
@muldjord I have some little question. I run Skyscraper in all my folders, some roms are not identified and so no images or metadata.
But, then, if i run sselph scraper, and end populating the lists, because it can find some things that Skycraper can't.If i run again Skyscraper, the local db is updated with the new content downloaded with sselph? So it can be more complete and useful in the future?
Thanks!
-
@bleuge Try running skyscraper more than one time per system with different scrapers each time.
You can specify the scraper with
-s
So if you try to scrape snes do your second run like this :Skyscraper -p snes -s screenscraper
. Maybe after this you can do:Skyscraper -p snes -s openretro
After it finished do as final step
Skyscraper -p snes -s localdb
so that all scraped resources are used. -
@analoghero I am using skyscript.sh generated script, for every platform. So i guess this is right.
-
If it uses an amalgam of information from different databases though, how does it know what info is "correct"? Or, at least, more accurate to use? That's the problem I fear I'm going to wind up with.
-
@hi_im_daft You can prioritize sources for each type of information (check the documentation). But you will undoubtedly end up with some faulty entries, that can't be avoided with an automated scraper like this. If you only want correct results, just only ever scrape with 'screenscraper' and 'arcadedb'. Those are based on mame names and file checksums. But then you'll give up the option of scraping platforms that have scripts to start the games. Such as svm for scummvm and cue files for psx.
Bottom line, you can't avoid faulty results with sources that are based on file name searches.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.