RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Versatile C++ game scraper: Skyscraper

    Scheduled Pinned Locked Moved Ideas and Development
    skyscraperscrapergamelist.xmlscrapinggithub
    1.6k Posts 113 Posters 1.6m Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • muldjordM
      muldjord @mitu
      last edited by muldjord

      @mitu I think it should be like this:

      There should be a main menu item simply called "Gather resources" inside which all of the non-localdb modules are listed with a menu item (pretty much as they are now). All these do when selecting them is scrape data, nothing else. It shouldn't auto-run localdb afterwards as it would simply muddy up the process. The "--refresh" bool option should be moved inside this "Gather resources" submenu. There needs to be a help text on this submenu clearly stating that running any of those options will cache resources, but not generate the actual game list.

      The "localdb" module menu item should moved out to be a main menu item simply called "Generate game list(s)". No mention of "localdb" anymore as I wish to do away with it as much as possible (it is the default scraping module after all, so the user doesn't need to know about it). There needs to be a nice help text for this option stating that it will generate a game list from all previously cached resources.

      So they'd gather a bunch of resources from the "Gather" submenu, and lastly go back to the main menu and choose "Generate game list". And voila, it's all nice and split up to avoid confusion.

      1 Reply Last reply Reply Quote 0
      • megaJekanM
        megaJekan
        last edited by

        Besides that scraping PSX is a total nightmare (it does it so bad with CUE/BIN images), the only game, which I couldn't really scrap was Q*bert (fba or mame-libretro). I even tried to run the command manually with query option, it didn't help:
        https://www.screenscraper.fr/gameinfos.php?gameid=172110&action=onglet&zone=gameinfosinfos

        There was also an issue in Github:
        https://github.com/muldjord/skyscraper/issues/62

        For me it seems like the 'asterisk' sign in the name is a problem.

        S 1 Reply Last reply Reply Quote 0
        • S
          Silent @megaJekan
          last edited by

          @megaJekan said in Versatile C++ game scraper: Skyscraper:

          Besides that scraping PSX is a total nightmare

          Manually hashing .bin files and providing that as a query parameter for screenscraper module provides godlike results. I spent some time doing that and it was very worth it.

          megaJekanM 1 Reply Last reply Reply Quote 0
          • megaJekanM
            megaJekan @Silent
            last edited by

            @Silent said in Versatile C++ game scraper: Skyscraper:

            @megaJekan said in Versatile C++ game scraper: Skyscraper:

            Besides that scraping PSX is a total nightmare

            Manually hashing .bin files and providing that as a query parameter for screenscraper module provides godlike results. I spent some time doing that and it was very worth it.

            Sorry, I think I didn't get the point. What if my md5 hash doesn't match the one from screenscraper site? Because most of the images were converted manually by my own from CCD/IMG/SUB to CUE/BIN. Also I can just take hashes directly from screenscraper and use them as an argument. Then I don't see the logic at all, why name comparison works so bad. So I'm a bit lost.

            mituM 1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator @megaJekan
              last edited by

              @megaJekan Can you give some examples ?

              megaJekanM 1 Reply Last reply Reply Quote 0
              • R
                RDBowers
                last edited by

                My RetroPie setup uses the Daphne and MAME emulators exclusively. I have used Skyscraper to collect "resources" into the LocalDB and created custom images by editing the artwork.xml. This is all working great!

                However, I would like to include a cabinet image as part of the custom image for each arcade game. I think this would be more appropriate than including the "box" image.

                Can Skyscraper pull cabinet images from the online sources making them available as a resource for the LocalDB scrape and creation of custom images? I have read and re-read the online documentation and I don't believe this is currently possible. Maybe this could be an addition to a future release of Skyscraper.

                Any suggestions for a possible workaround?

                mituM 1 Reply Last reply Reply Quote 0
                • mituM
                  mitu Global Moderator @RDBowers
                  last edited by

                  @RDBowers You can add your own image (a cabinet instead of a box) in the artwork.xml file and have it part of the final image. Is that what you're trying to do ?

                  R 1 Reply Last reply Reply Quote 0
                  • R
                    RDBowers @mitu
                    last edited by

                    @mitu That is what I am trying to do.

                    My question is, can Skyscraper pull cabinet images from online sources, save them as part of the LocalDB, making them available as a resource (just like a screenshot, cover, wheel or marquee) to be referenced in the artwork.xml?

                    mituM 1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator @RDBowers
                      last edited by

                      @RDBowers I don't think it's supported right now. Can you give more details about where these images can be downloaded (site/source), maybe an example of such image associated with an arcade game ?

                      R 1 Reply Last reply Reply Quote 0
                      • R
                        RDBowers @mitu
                        last edited by

                        @mitu One source already built into Skyscraper is adb.arcadeitalia.net. For most arcade ROMs they include a cabinet image. On their Pac-man page you will find a link to this image.

                        Pac-man cabinet

                        Another potential source of cabinet images not built into Skyscraper is arcade-museum.com.

                        They are also a great source for additional information, images and flyers. The Arcade Flyer Archive

                        muldjordM 1 Reply Last reply Reply Quote 0
                        • HalvhjearneH
                          Halvhjearne @muldjord
                          last edited by

                          @muldjord

                          this is awsome, it was pretty scattered before and this info clarifies things a lot.
                          only thing i can think of to make it any better would be to maybe add the equivalent option for config.ini to next to the command line option.

                          1 Reply Last reply Reply Quote 0
                          • S
                            sglavach
                            last edited by

                            I have Skyscraper (SS) installed and running on my local machine, I have a number of SBC's (RPi, Odroid, etc..) running and connected to network as well. I can point to the Rom path on each SBC using the -i parameter and it will use the localdb on my local machine and it will scan the corresponding SBC Rom path and create the media correctly on each SBC. My challenge is with Videos since they take up a lot of space. I would rather not copy my videos (already on the SBC's) to the import directory on my local machine and then import them prior to scraping, I would like to point to a non-default import path for my videos (same way I point to a non-default Rom path with -i)... import them from there and then scrape. Is this possible? am I missing a way to accomplish this? In fact having a way to point/configure a path for any non-local import resource would be helpful. Thanks!

                            muldjordM 1 Reply Last reply Reply Quote 0
                            • R
                              raspy+
                              last edited by

                              @muldjord

                              Wow so much reading and I still can't find the answer to a simple question unless I missed it and fell asleep at the keyboard LOL...

                              Q: What does each color represent when Skyscraper is collecting data?

                              (green number) / (yellow number) / (blue number)

                              Green number = how many roms it checked?
                              Yellow number = how many roms it skipped?
                              Blue number = how many confirmed roms matched?

                              Just a guess on my part or did I just answer my own question?

                              Q2: If Skyscraper can't find a game while scraping, does that mean it can't find a match from "screenscraper.fr"?

                              muldjordM 1 Reply Last reply Reply Quote 0
                              • S
                                Silent
                                last edited by

                                Just a thought I had due to my invalid bug report (which I have now closed):

                                A lot of games have region tags, like (E), [U] in their filenames. Could Skyscraper optionally infer region to use when scraping a ROM from this data? This way it would try to collect data matching what you actually see in the game (example: Star Fox vs Star Wing) without the user having to tailor that manually on per-ROM basis.

                                muldjordM 1 Reply Last reply Reply Quote 0
                                • muldjordM
                                  muldjord @Silent
                                  last edited by

                                  @Silent said in Versatile C++ game scraper: Skyscraper:

                                  Just a thought I had due to my invalid bug report (which I have now closed):

                                  A lot of games have region tags, like (E), [U] in their filenames. Could Skyscraper optionally infer region to use when scraping a ROM from this data? This way it would try to collect data matching what you actually see in the game (example: Star Fox vs Star Wing) without the user having to tailor that manually on per-ROM basis.

                                  I already do this for (Europe) and others. I will include the ones you suggest aswell.

                                  1 Reply Last reply Reply Quote 0
                                  • muldjordM
                                    muldjord @raspy+
                                    last edited by muldjord

                                    @raspy

                                    Q1: found/skipped/total

                                    Q2: Depends on what scraping module you are scraping with. But yes, if it's not found, that means it's not found at the source using the rom information available to Skyscraper.

                                    1 Reply Last reply Reply Quote 0
                                    • muldjordM
                                      muldjord @sglavach
                                      last edited by

                                      @sglavach You can set a non-default import folder in config.ini with importFolder="[folder]"

                                      1 Reply Last reply Reply Quote 0
                                      • muldjordM
                                        muldjord @RDBowers
                                        last edited by

                                        @RDBowers Skyscraper currently supports cover, screenshot, wheel and marquee resources. If you wish to use other more niche resources, I suggest using the import functionality to get them. Then you can import them as "marquee" resources for instance, and use them in the artwork.xml for the arcade platforms.

                                        HalvhjearneH 1 Reply Last reply Reply Quote 0
                                        • HalvhjearneH
                                          Halvhjearne @muldjord
                                          last edited by

                                          @muldjord

                                          lets say i scrape fba once with screenscraper without videos and then later decides that i actually also wanted the videos, is there a way to make it download the videos without refreshing everything?

                                          and does this means it does not check already scraped games for missing info/images either?

                                          muldjordM 1 Reply Last reply Reply Quote 0
                                          • muldjordM
                                            muldjord @Halvhjearne
                                            last edited by muldjord

                                            @Halvhjearne You need to refresh everything, there is no way to only refresh one resource from a source. So just enable videos and use --refresh.

                                            I don't understand your second question.

                                            HalvhjearneH 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.