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.5m 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 @Used2BeRX
      last edited by

      @Used2BeRX
      Ok, this is no problem. It is easy to find the files as long as the filenames match 100% and I'll just do .toLower on them.

      1 Reply Last reply Reply Quote 0
      • RionR
        Rion @Used2BeRX
        last edited by

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

        @Rion Cool. I'll have to look into that. Any way of making that English without Google translate? I clicked on the US flag for "Région préférée" and that didn't do anything.

        Sorry no. As of now the translation is lacking on screenscraper.fr. But the people over there are friendly and helpful over irc.

        FBNeo rom filtering
        Mame2003 Arcade Bezels
        Fba Arcade Bezels
        Fba NeoGeo Bezels

        1 Reply Last reply Reply Quote 0
        • RionR
          Rion @muldjord
          last edited by

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

          Skyscraper 1.5.0 released!!! https://github.com/muldjord/skyscraper

          And this is a whopper! Just look at that changelog!

          Big ass changelog!

          This looks very promising! Bookmarking this now and following this thread.

          FBNeo rom filtering
          Mame2003 Arcade Bezels
          Fba Arcade Bezels
          Fba NeoGeo Bezels

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

            Skyscraper 1.6.0 release: github.com/muldjord/skyscraper
            Changelog:

            • Now allows more resources of same type, as long as 'source' differs
            • Now allows user to set priorities for local resource sources
            • Fixed a bug that would nullify timestamp of local resources
            • Optimized LocalDb communication to improve scraping speed
            • Added README.md to dbs subfolder
            • Added priorities.xml.example file to dbs subfolder. Automatically copies this to new databases when they are created if none already exists.
            • Implemented '--cleandb' command line option that removes files with no resource entry
            • Implemented '--mergedb' command line option that merges two local databases together
            • Now no longer does sha1 for roms bigger than 50 MBs (Pi runs out of ram when reading them). Instead does sha1 on filename for those special cases.
            • Removed default platform when scraping. You are now forced to put in a valid platform with '-p [platform]'
            • Added more initial info when running Skyscraper
            • Added '--unattend' command line option
            • Added 'source' attribute to local database resources
            • Removed 'mobygames' descriptions from 'openretro' scraper. Now uses native descriptions.
            • Improved cover and screenshot scraping for 'openretro' module
            • Disabled filling in missing data when scraping from web sources. User is meant to use 'localdb' scraping module for this.
            • Implemented date formats to standardize output and better support EmulationStation requirements

            Most prominent new additions are the '--cleandb' which cleans any local database folder from files that have no entry in the database and '--mergedb' which allows you to merge to databases together. Combine that with '--updatedb' if you want the source db's resources to take preference.

            I've also added a 'source' attribute to any resource in the local databases, which means that you can now have several versions of the same type of resource for each rom in a local database. You can then prioritize them using a 'priorities.xml' file (find an example in './dbs'). A note on this: In the 1.5.0 release resources didn't have a 'source' attribute. When you use these resources with 1.6.0 it will autoadd a 'generic' source to those entries. I recommend deleting the 1.5.0 databases and start over. I know this is inconvenient, so I apologize for this. With that said, I feel the format of the database now does everything I want it to do, so I don't expect it to change again in the 1.x branch.

            I've also improved some of the scraping modules quite a bit and fixed a few bugs (and probably created a few new ones :D)

            Have fun! As always; comments and feedback are welcome!

            1 Reply Last reply Reply Quote 0
            • I
              incunabula
              last edited by

              This tool is awesome! Thanks loads for all of the hard work and sharing it with the community!

              muldjordM 1 Reply Last reply Reply Quote 0
              • UDb23U
                UDb23
                last edited by

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

                I will look into vic20 later today. :)
                EDIT: I've just had a look at the RetroPie platforms wiki page. I don't see vic20 in there. I know it's a Commodore branded machine, but how does the platform work in RetroPie? Where do the roms reside?

                Commodore Vic20 is emulated by Vice; same as Commodore64.
                So the System still is Commodore64 in Retropie ,but it can emulate also Vic20 (just different runcommand option)
                Vic20 roms & images are therefore located inside the Commodore64 system folder.

                Thanks!!

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

                  @incunabula Thank you! Enjoy! :)

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

                    @udb23 In that case, you should just be able to use the 'c64' platform which also looks for vic20 files. Just run it with "./Skyscraper -p c64". Have you tried that or am I missing something?

                    UDb23U 1 Reply Last reply Reply Quote 0
                    • UDb23U
                      UDb23 @muldjord
                      last edited by

                      @muldjord ok, will try it out over the weekend and let you know.

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

                        @udb23
                        Awesome!

                        Used2BeRXU 1 Reply Last reply Reply Quote 0
                        • Used2BeRXU
                          Used2BeRX @muldjord
                          last edited by

                          @muldjord I still have some more NES games to add and some more synopsis tweaks, but I'm going to be away from this work for a few weeks unfortunately. I won't forget about this though and you'll get the pack of updated NES synopsis.txt files when they're done. I've got this page bookmarked so I can catch up when I'm back to it.

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

                            @Used2BeRX No hurries, I'll look into it when you have things ready. :)

                            1 Reply Last reply Reply Quote 0
                            • I
                              incunabula
                              last edited by

                              Is there a way to change the output of the <name> tag that is written to the gamelist.xml file such that the country information is not shown in ES? It looks like it is currently using the file name of the rom. For example:

                              Super Fun Game Deluxe (USA, Europe, Japan).zip

                              should be displayed in the ES game list as

                              Super Fun Game Deluxe

                              Is this already possible? I looked throught the readme and the command line switches but didn't see anything relevant. Thank you!

                              muldjordM 2 Replies Last reply Reply Quote 0
                              • muldjordM
                                muldjord @incunabula
                                last edited by muldjord

                                @incunabula No, this is not possible at the moment. It is not actually using the file name. What it does is register any round and squarebracket "notes" as I call them. It then uses the web result title, and adds the notes back in.

                                I'll add a '--nobrackets' option in the next release that will disable the bracket tags. :) You will also be able to set 'brackets="false"' in the config.ini file under both [main] and [platform]. That should give you plenty of options for disabling it. :)

                                Also, stay tuned for attractmode support, also coming in the next release.

                                Used2BeRXU I 2 Replies Last reply Reply Quote 1
                                • Used2BeRXU
                                  Used2BeRX @muldjord
                                  last edited by

                                  @muldjord Hey guys. I won't be around for a few weeks, but I'll get right back to work on the NES synopsis stuff when I do.

                                  I will only have the NES/Famicom/FDS games done at that point, but the problem you mentioned above won't be an issue if you scrape from the top line of the synopsis. I have a spreadsheet that displays all of this, but I wasn't able to get it ready for a public release before it was time to wrap it up unfortunately.

                                  The spreadsheet shows the file name for the roms, synopsis and all associated media. It shows the top line of the synopsis which is the name displayed in the romlist using meleu's script, as well as using the XBox emulators. It also shows which games have a manual, which ones have videos, and the exact dimensions of the raw artwork files for Box Front and Cart images. Every single game has these two images. Hundreds of them were made by me personally for the more obscure games, hundreds more have been touched up to varying degrees, and anywhere from 1,000-1500 of them were cropped slightly to have a uniform look and to get rid of any beat up edges. (Most US games had great restorations done by other people, but a lot of foreign, pirate and other games had some pretty shoddy boxes even if they were HD images).

                                  Anyways.... gotta go for now, but I'll be back soon. Good luck on your project muldjord.

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

                                    @Used2BeRX Have fun dude! I'll be here when you get back. :)

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      incunabula @muldjord
                                      last edited by

                                      @muldjord That would be great, thank you! If you need someone to test out new builds or whatever, i'm happy to help.

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

                                        @incunabula If I can get you to test the current built, that would be great. The tag option I mentioned is in there and I've fixed a bunch of other stuff aswell. Any feedback would be very welcome before I release it officially:
                                        https://github.com/muldjord/skyscraper/archive/b031b26889c827f2559995fc6592f827e4b00a4b.zip

                                        1 Reply Last reply Reply Quote 0
                                        • I
                                          incunabula
                                          last edited by

                                          OK, i'll give it a go. Something i noticed last night was that my MSX and Game Gear roms had to be unzipped before they could be scraped. All other platforms that i've scraped so far worked fine as zipped.

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

                                            @incunabula Yes, according to the RetroPie wiki, the GameGear and MSX emulators don't support .zip files. So that's why it isn't included. If you can confirm that it works with those filenames without unzipping them, I can easily add it. Using zipped roms does have a few disadvantages though, so I don't recommend ever using zipped roms.

                                            EDIT: Let me elaborate a bit on that. I use the sha1 checksum for storage of local resources as a means of having a unique key per rom. For best results the actual rom data is preferred.
                                            Another disadvantage is that the 'screenscraper' module uses the sha1 checksum of rom data for identifying them. If they are zipped, it can't do that. And unzipping them internally makes no sense, since zips often contain more than 1 rom.

                                            The only reason I can see to actually zip roms, is that it makes it easier to pack together different roms for the same game. It doesn't save much space because of the type of data anyways, and if you use a zip with multiple roms, it actually costs you space, since you have a bunch of roms inside the zip you won't ever use.

                                            So, that's my thoughts and concerns on the subject. :) Not trying to tell you what to do, just thought I'd give a bit of background for why I think zipped roms is a problem.

                                            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.