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

    what about adding a cheevos flag in gamelist.xml ?

    Scheduled Pinned Locked Moved Ideas and Development
    metadatacheevosemulationstatio
    108 Posts 13 Posters 38.6k 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.
    • hansolo77H
      hansolo77
      last edited by

      REQUEST - Update the tool to spit out additional texts. Specifically, I'd like to see what games exist with cheevos that I don't have, so I know to go out and find them.

      REQUEST - Update the tool to keep a log of the date you last checked for cheevo games, then compare the dates with TODAY to see if it needs re-scraped.

      QUESTION - I'm happy with the way it works now, but what if I choose to run the scraper again.. will it make duplicate copies in the texts, thus making me have multiple copies of the same game when I run the tool to auto-add it to a custom system?

      Who's Scruffy Looking?

      meleuM 1 Reply Last reply Reply Quote 0
      • PokeEngineerP
        PokeEngineer @robertybob
        last edited by

        @robertybob

        I second this.

        Don't sweat it.
        When in doubt, take a BYTE out of life.

        😎

        1 Reply Last reply Reply Quote 0
        • meleuM
          meleu @hansolo77
          last edited by

          @hansolo77 said in what about adding a cheevos flag in gamelist.xml ?:

          REQUEST - Update the tool to spit out additional texts. Specifically, I'd like to see what games exist with cheevos that I don't have, so I know to go out and find them.

          I would love this feature too, but I'm afraid it's not going to happen.

          Why?

          Because with the [currently?] RetroAchievements.org isn't smart enough to provide a list with all games that have cheevos. Implementing what you're suggesting with the current "technology" would stress the RA server (and would take ages several hours to accomplish the task).

          REQUEST - Update the tool to keep a log of the date you last checked for cheevo games, then compare the dates with TODAY to see if it needs re-scraped.

          Not sure what you mean. Can you expand that?

          QUESTION - I'm happy with the way it works now, but what if I choose to run the scraper again.. will it make duplicate copies in the texts, thus making me have multiple copies of the same game when I run the tool to auto-add it to a custom system?

          No. The add-game-to-custom-system.sh doesn't create duplicated links.

          • Useful topics
          • joystick-selection tool
          • rpie-art tool
          • achievements I made
          hansolo77H 1 Reply Last reply Reply Quote 0
          • hansolo77H
            hansolo77 @meleu
            last edited by

            @meleu said in what about adding a cheevos flag in gamelist.xml ?:

            @hansolo77 said in what about adding a cheevos flag in gamelist.xml ?:

            REQUEST - Update the tool to keep a log of the date you last checked for cheevo games, then compare the dates with TODAY to see if it needs re-scraped.

            Not sure what you mean. Can you expand that?

            Just as means to know if I should scrape again.. Like in the Retropie-Setup script, it tells you when the last time was that you last updated the script. I'd like to have a similar system in place, that checks when the last time was you last scraped. Even better would be a simple version number check. See if your version is the same you have in your github databases. That way I'm not needlessly re-scraping all my games again a week later if you haven't updated the databases.

            This actually brings up another thing I noticed. When it was going through checking each rom, it was actually going back and saying something like "checking on retroachievements". Is it doing that, or is that just a bit of bad wording since you have it scraping from github?

            Who's Scruffy Looking?

            meleuM 1 Reply Last reply Reply Quote 0
            • meleuM
              meleu @hansolo77
              last edited by

              @hansolo77 said in what about adding a cheevos flag in gamelist.xml ?:

              Just as means to know if I should scrape again.

              OK, I got it. I'll try to think in something to avoid re-scraping everything. Would you be kind enough to make those requests on the repository issue tracker? I think I'll forget if this stays here on the forums. :-)

              https://github.com/meleu/hascheevos/issues

              When it was going through checking each rom, it was actually going back and saying something like "checking on retroachievements".

              It's really doing that. If the script fails to find info in the github files, it tries to get from RetroAchievements.org.

              • Useful topics
              • joystick-selection tool
              • rpie-art tool
              • achievements I made
              hansolo77H 1 Reply Last reply Reply Quote 0
              • hansolo77H
                hansolo77 @meleu
                last edited by

                @meleu said in what about adding a cheevos flag in gamelist.xml ?:

                OK, I got it. I'll try to think in something to avoid re-scraping everything. Would you be kind enough to make those requests on the repository issue tracker? I think I'll forget if this stays here on the forums. :-)

                https://github.com/meleu/hascheevos/issues

                Will Do!

                It's really doing that. If the script fails to find info in the github files, it tries to get from RetroAchievements.org.

                Well it was doing it for what appeared to be ALL of them. So if the server crashed yesterday or was slow, it was probably my fault.

                Who's Scruffy Looking?

                1 Reply Last reply Reply Quote 0
                • lilbudL
                  lilbud
                  last edited by

                  I think cheevos are fine, but what would really be a worthwhile addition would be backloggery support: http://www.backloggery.com/

                  Creator of the Radiocade: https://retropie.org.uk/forum/topic/6077/radiocade

                  Backlog: http://backloggery.com/lilbud

                  1 Reply Last reply Reply Quote 0
                  • meleuM
                    meleu
                    last edited by

                    Hello friends!

                    I've got distracted with PS Vita hacking and hunting RetroAchievements for some Mega Man games. But now I finally made an useful progress on my "cheevos scraper".

                    You can check it in this repository: https://github.com/meleu/hascheevos

                    The README has instructions on how to use it.

                    An example of how useful the tool can be: In order to update your NES' gamelist.xml adding <achievements>true</achievements> for every game that has cheevos, you just need to use this command:

                    $ ./hascheevos.sh -u USER -p PASSWORD --system nes --scrape
                    

                    Now let's wait if @pjft can find sometime to work on EmulationStation code in order to make the <achievements> flag filterable. :-)

                    • Useful topics
                    • joystick-selection tool
                    • rpie-art tool
                    • achievements I made
                    1 Reply Last reply Reply Quote 2
                    • hansolo77H
                      hansolo77
                      last edited by hansolo77

                      Exciting progress! So just to be clear.. in order to access the new feature (adding the flag), I will need to rebuild the binary correct? I'm not particularly eager to get this specific feature right now, I'd just like to know. Quick question.. is there a reason a binary hasn't been made yet, to skip having to build it? 2nd quick question.. any progress been made on checking to see what new roms exist without having to completely rescrape?

                      Kudos!

                      Who's Scruffy Looking?

                      cyperghostC meleuM 2 Replies Last reply Reply Quote 0
                      • cyperghostC
                        cyperghost @hansolo77
                        last edited by cyperghost

                        @hansolo77

                        in order to access the new feature (adding the flag), I will need to rebuild the binary correct?

                        Yes!

                        Quick question.. is there a reason a binary hasn't been made yet, to skip having to build it?

                        As @pjft is the develeoper for adding new flags to XMLs (as he did by adding favorite selections) it's up to him for a release.

                        So things will surely be done, just let them grow. I highly appreciate such a possibility as the RetroAchievements makes the gaming experience really better ... :)

                        @meleu
                        I will point to your latest thread with my RA-automate-script

                        1 Reply Last reply Reply Quote 0
                        • pjftP
                          pjft
                          last edited by

                          @hansolo77 This hasn't been developed yet. I do not have an ETA for this, it can still be weeks or months, unfortunately.

                          1 Reply Last reply Reply Quote 2
                          • meleuM
                            meleu @hansolo77
                            last edited by

                            @hansolo77 said in what about adding a cheevos flag in gamelist.xml ?:

                            in order to access the new feature (adding the flag), I will need to rebuild the binary correct?

                            Not sure if you're talking about EmulationStation or the hascheevos tool. If it's about EmulationStation, there's nothing related to achievements implemented yet.

                            If it's about the hascheevos tool I suggest you to delete your current hascheevos directory and then git clone it again.

                            rm -rf hascheevos
                            git clone --depth 1 https://github.com/meleu/hascheevos
                            cd hascheevos
                            make
                            

                            You won't need to do it everytime you want to update the tool, it's just now. Because I implemented some new features since you downloaded the tool, including an option to --update. ;-)

                            Quick question.. is there a reason a binary hasn't been made yet, to skip having to build it?

                            Again, if you're talking about the hascheevos, it's not an actual binary, it's a bash script. But I implemented the --update feature to avoid typing many commands.

                            I also implemented some features that will help to keep the repository synchronized with RetroAchievements.org database. Maybe you, @grenade44 and other cheevos enthusiasts could help me with this task. I will talk more about these features later. ;-)

                            2nd quick question.. any progress been made on checking to see what new roms exist without having to completely rescrape?

                            In theory yes. I have some ideas on how to do it and did some tests. But nothing has been implemented in hascheevos yet.

                            • Useful topics
                            • joystick-selection tool
                            • rpie-art tool
                            • achievements I made
                            cyperghostC 1 Reply Last reply Reply Quote 1
                            • cyperghostC
                              cyperghost @meleu
                              last edited by cyperghost

                              @meleu Thx for clarification @hansolo77 - I think we were on wrong track as there was talked about binaries
                              Actually the cheevos-scraper is a script - not a binary ;)

                              meleuM 1 Reply Last reply Reply Quote 0
                              • meleuM
                                meleu @cyperghost
                                last edited by

                                @cyperghost there's just a small C program in the repo (cheevoshash.c - the hash calculator) that needs to be compiled to a binary. But it's really small, compiles almost instantaneously. It is done and working exactly as expected. No need to receive updates anymore.

                                • Useful topics
                                • joystick-selection tool
                                • rpie-art tool
                                • achievements I made
                                pjftP 1 Reply Last reply Reply Quote 1
                                • pjftP
                                  pjft @meleu
                                  last edited by

                                  @meleu Hi!

                                  So, I am yet to get everything set up for a proper development environment on my end, alas.

                                  Still, I tried to put something together on my free time. I have NOT tested it, and worst of all, I have not been even able to try to compile it :(

                                  That being said, it doesn't seem to be tremendously difficult so if you'd want to try to compile it on your end and see if it does what's expected, here's the branch:

                                  https://github.com/pjft/EmulationStation/tree/Achievements

                                  I'll try to compile it later in the week as soon as I can.

                                  Hope this helps.

                                  meleuM 1 Reply Last reply Reply Quote 2
                                  • meleuM
                                    meleu @pjft
                                    last edited by

                                    @pjft Nice blind coding bro! Time to remember that couplet:

                                    couplet

                                    I didn't test on a Raspberry Pi, but compiled fine here on my RetroPie x86 (Linux Mint). Just noticed this warning while compiling (not sure if it's related with the "achievements" changes):

                                    0_1505746937182_compiling_ES_warnings.png

                                    After compiling I tested with a gamelist.xml populated with some <achievements>true</achievements> and it works as expected.

                                    Huge thank you for this!!!

                                    • Useful topics
                                    • joystick-selection tool
                                    • rpie-art tool
                                    • achievements I made
                                    cyperghostC pjftP 2 Replies Last reply Reply Quote 2
                                    • cyperghostC
                                      cyperghost @meleu
                                      last edited by cyperghost

                                      @meleu Haha! your new toy is ready setted ;)
                                      Freshly baked by @pjft awesome C++ cuisine - Que aproveche!

                                      1 Reply Last reply Reply Quote 0
                                      • pjftP
                                        pjft @meleu
                                        last edited by

                                        @meleu @cyperghost Thanks - it's always good to remember that couplet :)

                                        If you could thoroughly test that, it'd be great as then I'd submit the PR. I believe there are plans to have a code freeze for a bit, so I'd like to get this small change through beforehand.

                                        Thanks.

                                        meleuM 1 Reply Last reply Reply Quote 2
                                        • meleuM
                                          meleu @pjft
                                          last edited by

                                          @pjft Hello friend. Finally took some time to compile it on my pi2, and it runs just fine. Exactly as expected. I also tried to edit metadata of a game enabling/disabling achievements. Really cool.

                                          I did a very well-behaved test. I didn't try to break anything. If you think it needs a more "hardcore" test, I think I will have some free time later in this week. Any particular test you want me to do?

                                          So far I'm really happy with what you made. You hit my feature request in the bull's-eye! Huge thanks for that! :D

                                          • Useful topics
                                          • joystick-selection tool
                                          • rpie-art tool
                                          • achievements I made
                                          pjftP 1 Reply Last reply Reply Quote 2
                                          • pjftP
                                            pjft @meleu
                                            last edited by

                                            @meleu thank you good sir. No need to try to break it, I didn't do anything really out of the ordinary, just followed the lead from other such attributes. Just wanted to get your hands on testing to confirm that it worked as intended and that I didn't miss anything.

                                            Did you have a chance to release the scraper, or did you per chance had any further discussions about getting this into @sselph 's scraper in one way or the other?

                                            I'll try to submit the PR later this week. If anyone wants to test it further that'd be very much appreciated.

                                            Thanks!

                                            meleuM 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.