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.
    • AnalogHeroA
      AnalogHero
      last edited by

      @muldjord Ok its much faster now. Here is my (slow) artwork.xml

      <?xml version="1.0" encoding="UTF-8"?>
      <!-- This is the default 'artwork.xml' file that exports a screenshot composited from the cover and screenshot artwork and the wheel file. Please check 'artwork.xml.example' for a more thorough example of the possibilites. Also be sure to check the full artwork documentation at https://github.com/muldjord/skyscraper/blob/master/ARTWORK.md -->
      <artwork>
        <output type="screenshot" width="640" height="400">
          <layer resource="cover" valign="bottom" y="-15" height="200">
            <shadow distance="10" softness="10" opacity="75"/>
          </layer>
          <layer resource="screenshot" align="right" valign="top" width="520" height="390"/>
        </output>
        <!-- delete the next line to disable 'wheel entirely -->
        <output type="wheel" width="350"/>
        <!-- delete the next line to disable 'cover' entirely -->
        <output type="cover" height="390"/>
        <!-- delete the next line to disable 'marquee' entirely -->
        <output type="marquee" width="350"/>
      </artwork>
      
      muldjordM 1 Reply Last reply Reply Quote 1
      • muldjordM
        muldjord @AnalogHero
        last edited by muldjord

        @analoghero I'm pretty sure it's the "softness=10" that causes the huge slowdown, which is probably what I made the default value was for 2.2.5, sorry bout that.
        Rendering a shadow using a gauss kernel is quite taxing on the cpu, and the higher the softness, the bigger the gauss kernel is, which results in a lot more work for the cpu. So that's the short explanation.

        So, basically there isn't an issue, it's just because the shadow rendering is so taxing on the cpu and therefore it becomes slow.

        EDIT: I will look into optimizing the shadow rendering in the future. If/when I do, it will be a bullet point on the release note.

        1 Reply Last reply Reply Quote 2
        • AnalogHeroA
          AnalogHero
          last edited by

          @muldjord Thanks for looking into it. I changed the xml a few times, so i wasnt sure if it was the default. No time to test atm, is there any difference visible between softness 5 and 10?

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

            Yes, it's the softness/blur of the shadow. But I personally prefer a softness of 5, so just keep it at that (I might put a max of 5 on it in future releases).

            1 Reply Last reply Reply Quote 1
            • muldjordM
              muldjord
              last edited by muldjord

              I am currently looking into an optimized algorithm for the shadow renderer. If all goes well, it should provide the same result with a huuuuuge speed improvement. So "softness=10" would become usable.

              EDIT: New algorithm is almost implemented and will be in 2.2.7. The speed improvement is insane! Thousands of times faster, literally.

              1 Reply Last reply Reply Quote 3
              • muldjordM
                muldjord
                last edited by

                The new optimized gauss shadow rendering is now fully implemented and the results are in! For 21 roms, rendering 1 shadow with a softness of 10 for each:

                Old unoptimized version 2.2.6: 3 minutes and 26 seconds
                New optimized version 2.2.7(still in testing): 4 SECONDS!

                Now, THAT's what I call a proper optimization! :D HAHA, I love this.

                Keep in mind that this is for 1 shadow with a softness of 10. The more shadows you have, the more time is saved. And also, a softness of 10 is ridiculous, so most often you'd use a softness of 2-5, which is even faster!

                2.2.7 will be released as soon as I've done some testing. :)

                1 Reply Last reply Reply Quote 4
                • muldjordM
                  muldjord
                  last edited by

                  Skyscraper 2.2.7 released: https://github.com/muldjord/skyscraper

                  • Optimized shadow rendering A LOT! WROOOOOOOOOM!!!
                  • 'simple mode' 'Do you want to run the script' answer now defaults to Y
                  • Fixed bug in 'simple mode' where answering 'y' to adding brackets would actually remove them

                  If you took note of the drastic slowdown in 2.2.6 when using shadows, this release will bring you to nirvana. Shadow rendering has been huuuugely optimized. Like, it went from minutes of rendering, to a few seconds. Please try it out and let me know what you think.

                  Happy scraping! :)

                  1 Reply Last reply Reply Quote 3
                  • AnalogHeroA
                    AnalogHero
                    last edited by

                    @muldjord Tested it, and i have to say that its really fast now. Lol ... 6 seconds for my 18 psx games. Awesome work. Thanks for it.

                    1 Reply Last reply Reply Quote 1
                    • N
                      Newellj79
                      last edited by

                      Pardon my ignorance. Is there a way to upgrade to the newest version from my current version?

                      AnalogHeroA 1 Reply Last reply Reply Quote 0
                      • AnalogHeroA
                        AnalogHero @Newellj79
                        last edited by

                        @newellj79 Yes, just follow the instructions on github. It will install over the old version.

                        1 Reply Last reply Reply Quote 1
                        • hi_im_daftH
                          hi_im_daft
                          last edited by

                          Dumb question -- after finishing the scrape, there were a few games that were skipped, and it said it was added to "skipped-localdb.txt". Where is that file placed? I tried checking through the Skyscraper directory and couldn't find it anywhere.

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

                            @hi_im_daft All Skyscraper files are located in "/home/pi/.skyscraper"

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

                              @muldjord I think that Skyscraper isn't properly scraping some platforms from screenscraper.fr because I was scraping roms from the famicom disk system and none of them had a marquee however on the website there was a marquee and no games get scraped on arcade, fba, ect but I think this is due to having multiple arcade categories. Do you think you can fix it? Because I find it really annoying having to scrape from import because it is quite time consuming. Thank you

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

                                @sammyboy Just add '--region jp' to the command line. The famicom disk system was only released in japan, and I don't check for those by default.

                                EDIT: I'll add it as one of the regions it tries automatically by default to 2.3.0. But please use '--region jp' until then. Version 2.3.0 won't be released for another week or so.

                                EDIT2: You mention 'arcade' and 'fba' aswell. Please be more specific about what you are trying to do. Give me an example filename from the platform that isn't working, so I have a chance of reproducing it.

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  SammyBoy @muldjord
                                  last edited by

                                  @muldjord any arcade rom for example the last blade 2

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

                                    @sammyboy Last Blade 2 scrapes just fine with the default 'arcadedb' module here.

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      SammyBoy @muldjord
                                      last edited by

                                      @muldjord but not with screenscraper.fr and I don't think arcade db has wheel art

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

                                        @sammyboy Then it's because screenscraper doesn't have the sha1 summed file in their database. It checksums the file, for instance "lastbld2.zip" and asks for it at screenscraper. It doesn't provide a result so it probablt doesn't exist for the arcade platform on screepscraper. If there's another platform it DOES exist for on screepscraper, please provide the platform. Then I can add it as a alias which should make it work.

                                        S 1 Reply Last reply Reply Quote 1
                                        • S
                                          SammyBoy @muldjord
                                          last edited by

                                          @muldjord Do you think it's anything to do with the way screenscraper.fr has categorised the arcade metadata for example instead of one big arcade section it is built up of cps3, Konami, ect

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

                                            And @muldjord it scrapes from neogeo which is where I tried to scrape from but it didn't work

                                            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.