RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Skyscraper messing up game names

    Scheduled Pinned Locked Moved Help and Support
    skyscraper
    11 Posts 4 Posters 1.3k 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.
    • T
      tommkell
      last edited by

      Hello all, when I scrape a newly added game with skyscraper all my game names are messed up when I create a game list afterwards, is there any way to avoid this? Thanks in advance for your help, Tom

      IanDaemonI 1 Reply Last reply Reply Quote 0
      • IanDaemonI
        IanDaemon @tommkell
        last edited by IanDaemon

        @tommkell Renaming the games is part of what scraping does. So you want to scrape the games AND not scrape them? There is a setting in there for which name it uses, but I don't know of any setting that leaves the name alone. I am not the developer. I don't know of a partial scrape, it may exist without editing the XML manually afterward.

        • 5 Favorite Arcade Games in MAME
        • Cocktail Cabinet Games
        • Check out the MAME RoW
        T 1 Reply Last reply Reply Quote 0
        • T
          tommkell @IanDaemon
          last edited by

          @iandaemon thanks for your response, I see what you mean. Guess I'll just have to clean up the game names every time I use skyscraper.

          S muldjordM 2 Replies Last reply Reply Quote 0
          • S
            sleve_mcdichael @tommkell
            last edited by sleve_mcdichael

            @tommkell said in Skyscraper messing up game names:

            Guess I'll just have to clean up the game names every time I use skyscraper.

            Clean them up once, then scrape using -s esgamelist. It will scrape and cache your gamelist.xml data and prioritize it above all other sources*. I disable all the artwork for [esgamelist] within config.ini so I don't duplicate all the artwork files (which came from the scraping sources in the first place; no need to make and store a copy with priority over itself), and so I don't have to do it by the command line each time.

            *(prioritized above all other sources, except maybe -s import, the other local one. But the way they're set up, I use import for artwork and esgamelist for textual data so the priority wouldn't matter anyways, there shouldn't be any overlap in their cached resources.)

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

              @tommkell If you run Skyscraper from the command-line, you can use the Skyscraper -p PLATFORM --cache edit:new=title option to edit the names. That way they will keep using those names each time you re-generate the gamelists. Read more here

              Alternatively, if you just want it to go back to using the filenames (which is probably what you had before), you can remove all of the cached titles with Skyscraper -p PLATFORM --cache purge:t=title. BEWARE though, that if you do so, they are gone and you will have to re-scrape all games to get them back.

              EDIT: I just remembered. You also have the option of setting --flags forcefilename which will use the filename instead of the scraped title. This option is also available through the RetroPie script. Just enable it and re-generate the gamelists.

              1 Reply Last reply Reply Quote 1
              • T
                tommkell
                last edited by

                Thanks for the replies, I probably should have worded my original post better. I'm looking for a way to create a new gamelist after scraping without changing the game names (I've already manually edited these in emulation station)

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

                  @tommkell Then you should do what @sleve_mcdichael suggested.

                  1 Reply Last reply Reply Quote 0
                  • S
                    sleve_mcdichael @tommkell
                    last edited by sleve_mcdichael

                    @tommkell said in Skyscraper messing up game names:

                    I'm looking for a way to create a new gamelist after scraping without changing the game names (I've already manually edited these in emulation station)

                    Yep. So now that you've got the game names, descriptions, etc. how you want them in ES, you can scrape your ES gamelist with Skyscraper using -s esgamelist. It will import this data from your local gamelist.xml into its cache so that whenever it builds a gamelist in the future, it uses this local data that you've customized, rather than whatever names/descriptions the online database gave it (provided you don't change the order in priorities.xml.)

                    T 1 Reply Last reply Reply Quote 1
                    • T
                      tommkell @sleve_mcdichael
                      last edited by

                      @sleve_mcdichael thank you, how exactly do I run this from the command prompt? And how do I get it to scrape only screens, wheels and marquees?

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        sleve_mcdichael @tommkell
                        last edited by sleve_mcdichael

                        @tommkell said in Skyscraper messing up game names:

                        @sleve_mcdichael thank you, how exactly do I run this from the command prompt? And how do I get it to scrape only screens, wheels and marquees?

                        First, so you don't have to type out the full path to the Skyscraper executable each time, do:

                        sudo ln -s /opt/retropie/supplementary/skyscraper/Skyscraper /usr/local/bin/Skyscraper
                        

                        This will put a soft link in your system path so it can be called just by typing Skyscraper. (Note the capital S. Linux is case-sensitive, so skyscraper with a little s will return a "command not found" error.)

                        To cache only screens, wheels, and marquees, you can run with the option --flags nocovers or put cacheCovers="false" in your /home/pi/.skyscraper/config.ini file. Videos are disabled by default.

                        To scrape textual data from your ES gamelist, first make sure that either:

                        Your config.ini does not contain videos="true" in the [main] section,

                        OR

                        It does contain a module-specific section to disable them for esgamelist:

                        [main]
                        videos="true"
                        
                        # ...
                        
                        [esgamelist]
                        videos="false"
                        

                        Then, scrape the gamelist with:

                        Skyscraper -p <platform> -s esgamelist --cache refresh --flags nocovers,noscreenshots,nowheels,nomarquees,unattend
                        

                        The unattend flag is on there so it will not ask if you want to "skip existing gamelist entries". You can leave it off, but when it asks, you don't want to skip. You are not scraping anything but existing entries, here, so skipping those same entries would turn this whole endeavor into an exercise in futility. You could also put any or all (edit: most) of these flags in your config.ini under [esgamelist] so you don't have to type it on the command line each time:

                        [main]
                        
                        # ...
                        
                        [esgamelist]
                        cacheCovers="false"
                        cacheScreenshots="false"
                        cacheWheels="false"
                        cacheMarquees="false"
                        videos="false"
                        

                        Replace <platform> in the command with one of the supported systems, as named in the roms folder e.g. arcade, psx, snes, etc.

                        Repeat this command for each platform which contains your customized textual data, and run it again any time you make edits in the future, to keep your cache up-to-date. (Edit: added --cache refresh which you also need here to pick up any edits you've made since the last time you've scraped the gamelist. And this and unattend are not currently working for me in the config so you'll probably want to use the command line options for those two.)

                        T 1 Reply Last reply Reply Quote 1
                        • T
                          tommkell @sleve_mcdichael
                          last edited by

                          @sleve_mcdichael thanks for taking the time to explain this :)

                          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.