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

    Making premade gamelist.xml with xtra media collections

    Scheduled Pinned Locked Moved Ideas and Development
    gamelist.xmlpremade scrapeeasy config
    448 Posts 16 Posters 150.7k 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.
    • Used2BeRXU
      Used2BeRX @meleu
      last edited by

      @meleu Hey bud,

      I was wondering if it is possible to not make tags if the media/field isn't available for the game? I wanted to ask you before I put it on the wishlist.

      I was really surprised after running a FULL command that we had a 3.00MB file. Granted there were 300-400 more games this time around, I spent a lot of time paring the individual game synopsis files to 1kb or under and ended up with a total file size of around 1.6MB, so I was shocked to see we're still at 3.00MB for the NES gamelist.xml. (But then I did remember that we've got a LOT of long file names/paths on each entry that weren't in the synopsis).

      I know it probably doesn't sound like we'd shave much off of that size by eliminating empty tags, but remember that at least for the NES, there are over 2,020 games included, as well as around 30 folders.

      Maybe this won't be an issue when I finally get a Pi3, but it seems like having massive gamelist.xml files impacts performance on the Pi Zero. Fortunately, there aren't any problems so far with just this NES gamelist, but if I were to have FULL gamelists for all of the systems one day, I'm thinking they wouldn't run on the Pi Zero at all.

      Also, removing the website address at the bottom of each entry should clear up some space too. :)

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

        @meleu Sorting by Genre in RetroPie is pretty awesome man. It's going to help me fine-tune the final genres for the sets. I actually had no idea how many different ones I was using until I tried this feature out. There's so many combinations of them. (198!)

        At least with this feature I can see if there are any that I put in a different order on two separate games, or if I called it something slightly different.

        For example, VS Fighter / VS Fighting, Board Game / Board Games, Card Game / Card Games.

        lol... just noticed I have "Actoin / Platformer". Might have a few misspellings in there. :)

        Well... scrolling through them, I think I should be able to eliminate 30 of the genres pretty easily. 15-20 of them were probably going to be gone by next re-run of the script anyhow after my Pi testing since I've been heavily editing the Genre and Players fields as I've been going through the testing process.

        BTW... I've tested over half of the NES games on the Pi Zero so far, and the results are really good. Getting into the more obscure territory right now, but we're still rocking over 99% compatibility. :)

        1 Reply Last reply Reply Quote 1
        • Used2BeRXU
          Used2BeRX
          last edited by Used2BeRX

          @meleu Hey Meleu,

          Is there a command I could run that would create an output text file for me that has every different line used in the Genre: line of all of the synopsis.txt files? (Only once though, I don't need to see all 300 times that "Action / Platformer" shows up.)

          It's helpful to have that information to scroll through on the RetroPie screen, but I'd like to actually look at a text file of it so I can "sort" some things and better re-name the Genre fields that way.

          I thought you'd know a quicker way to do this than me typing all of them out looking at my TV screen. :)

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

            @used2berx Assuming your files are all .txt in a single folder, execute the following command from within that folder:

            for i in *.txt; do sed -ne '/Genre:/ s/Genre:\(\s\)//p' "$i"  >> /tmp/genres.txt; done
            

            to get all Genres in a single /tmp/genres.txt. To sort and eliminate duplicates, execute:

            cat /tmp/genres.txt | sort | unix > sorted.txt
            

            and the sorted.txt file should have a sorted and no-duplicate list of all the genres.

            EDIT: corrected the for loop, it always looked inside 1 file.

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

              @mitu Thanks man. I'm going to give that a try and see how it works out. :)

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

                @meleu Hey Meleu. Do you know anything about how the Pi handles FDS games? I've been unable to launch any of them from within the NES folder structure that I currently have them in. This was one of the issues high on the priority wish list.

                I figured that I wouldn't be able to integrate the synopsis for them into the gamelist.xml easily unless you got to making that happen, but I was surprised when FDS doesn't load any of the games at all in quicknes, fceumm or nestopia.

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

                  @used2berx sorry bro, I never tried fds. I think @edmaul69 know something about it...

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

                    @meleu Cool. I'll ask him if I need help when I really dive into it.

                    Any chance you'll have some time to "fix" how FDS games are handled in the script? I believe I've got that at the top of the priority list right now. Assuming I can figure out how to launch the games, they should all play fine once I get that going. We just won't have any media or info on any of them until the script is changed.

                    edmaul69E 1 Reply Last reply Reply Quote 0
                    • edmaul69E
                      edmaul69 @Used2BeRX
                      last edited by edmaul69

                      @used2berx your first issue is you need the fds bios in the bios folder. Games wont run without it. The bios is disksys.rom . Then if you dont want to have to go into the retroarch gui to flip the disk then you want to edit your controller configs to do it with hotkeys. I add these settings to my controllers for fds and psx. Just add buttons that arent being used for other hotkeys.

                      input_disk_eject_toggle_btn = 
                      input_disk_next_btn = 
                      input_disk_prev_btn =
                      
                      Used2BeRXU 3 Replies Last reply Reply Quote 1
                      • Used2BeRXU
                        Used2BeRX @edmaul69
                        last edited by

                        @edmaul69 lol Doh! I bet that the bios is the issue. I forgot the FDS had one. I put this stuff together on the XBox like 10 years ago so it's been a while.

                        Thanks for the disk flip info as well. I'm sure I was going to be asking about that in the future too. :)

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

                          @edmaul69 Sweet man. That was all I was missing. Thanks again.

                          All I have to do is set up my controller with those hotkeys that you gave me and we're good to go. I should have the FDS testing done by the weekend. I'll let you know how it pans out.

                          @meleu Hey man. Any chance you might be able to work some scripting magic on that FDS stuff now that the holidays are over and it's cold and crappy outside :)

                          edmaul69E meleuM 2 Replies Last reply Reply Quote 0
                          • edmaul69E
                            edmaul69 @Used2BeRX
                            last edited by

                            @used2berx yeah let me know how it goes

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

                              @used2berx said in Making premade gamelist.xml with xtra media collections:

                              @meleu Hey man. Any chance you might be able to work some scripting magic on that FDS stuff now that the holidays are over and it's cold and crappy outside

                              The funny thing is that in my part of the world the weather is hot and good to go to the beach with my kids :D

                              When the kids are on vacations my free time decreases considerably. And I'm away from my "coding station". I will only be able to play with that script on February, I guess.

                              Maybe it's time to actually play some games a little, what do you think? ;)

                              • Useful topics
                              • joystick-selection tool
                              • rpie-art tool
                              • achievements I made
                              Used2BeRXU 1 Reply Last reply Reply Quote 2
                              • Used2BeRXU
                                Used2BeRX @edmaul69
                                last edited by Used2BeRX

                                @edmaul69 said in Making premade gamelist.xml with xtra media collections:

                                Then if you dont want to have to go into the retroarch gui to flip the disk then you want to edit your controller configs to do it with hotkeys. I add these settings to my controllers for fds and psx. Just add buttons that arent being used for other hotkeys.

                                input_disk_eject_toggle_btn = 
                                input_disk_next_btn = 
                                input_disk_prev_btn =
                                

                                I was just going to edit the configuration for the specific controller I was using because I know where that is and I used it before to map the fast forward to it.

                                I like your solution better. Where is the system specific controller configurations?

                                (Nevermind the question. I figured that part out. Please read the next post. :))

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

                                  @meleu said in Making premade gamelist.xml with xtra media collections:

                                  @used2berx said in Making premade gamelist.xml with xtra media collections:

                                  @meleu Hey man. Any chance you might be able to work some scripting magic on that FDS stuff now that the holidays are over and it's cold and crappy outside

                                  The funny thing is that in my part of the world the weather is hot and good to go to the beach with my kids :D

                                  When the kids are on vacations my free time decreases considerably. And I'm away from my "coding station". I will only be able to play with that script on February, I guess.

                                  Maybe it's time to actually play some games a little, what do you think? ;)

                                  Ha! Must be nice. It's been below zero every night for about the last 10 days where I live. It's absolutely miserable here.

                                  LOL... no time to actually play any games. My brother gave me this Pi back in May to get it working for a few of his in-laws and I keep making excuses why he hasn't gotten it back yet. I told him that I've got to get NES perfect before he gets it back. They're on their own for a long time with all of the other systems though. :)

                                  I've got plenty of work to do to keep me busy. Unfortunately, one of the things was trying to re-size all of my artwork, but that will have to wait until I can check it on the Pi. No biggie. Now that the Pi Zero testing is almost over I have to see if my 8 year old computer is up to the task of making HD videos for over 2000 games.

                                  Enjoy the beach for me. ;)

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

                                    @edmaul69 Okay... So I can't figure out how to make this work with a hotkey.

                                    By default, it looks as though you can use the L/R buttons to eject/load and flip the disk, but I don't like how easy it would be to accidentally do that. I'd rather hotkey it so it would have to be intentional.

                                    Here's my fds retroarch.cfg

                                    
                                    input_remapping_directory = "/opt/retropie/configs/fds/"
                                    
                                    video_smooth = "true"
                                    video_fullscreen_x = "320"
                                    video_fullscreen_y = "240"
                                    
                                    input_disk_eject_toggle_btn = "12"
                                    input_disk_next_btn = "11"
                                    input_disk_prev_btn = "10"
                                    
                                    #include "/opt/retropie/configs/all/retroarch.cfg"
                                    

                                    And my nes retroarch.cfg:

                                    
                                    input_remapping_directory = "/opt/retropie/configs/nes/"
                                    
                                    video_smooth = "true"
                                    video_fullscreen_x = "320"
                                    video_fullscreen_y = "240"
                                    
                                    input_disk_eject_toggle_btn = "12"
                                    input_disk_next_btn = "11"
                                    input_disk_prev_btn = "10"
                                    
                                    #include "/opt/retropie/configs/all/retroarch.cfg"
                                    

                                    All it does is say "nul" when I use any of the hotkeys.

                                    I noticed these lines in the global retroarch.cfg:

                                    input_disk_eject_toggle = "nul"
                                    input_disk_eject_toggle_btn = "nul"
                                    input_disk_eject_toggle_axis = "nul"
                                    input_disk_next = "nul"
                                    input_disk_next_btn = "nul"
                                    input_disk_next_axis = "nul"
                                    input_disk_prev = "nul"
                                    input_disk_prev_btn = "nul"
                                    input_disk_prev_axis = "nul"
                                    

                                    Shouldn't I be overriding this?

                                    Also, where is the commands to automatically make the L/R buttons eject/load and flip the disk in FDS? I can't seem to find that anywhere.

                                    edmaul69E 1 Reply Last reply Reply Quote 0
                                    • edmaul69E
                                      edmaul69 @Used2BeRX
                                      last edited by

                                      @used2berx so i put them in the controllers own config files so each different controllers have their own keys. These require pressing a hotkey to use them so i use them on the shoulder buttons myself. Also in fds the only time these buttons work is when you are told to flip a disk. No way to accidentally do it.

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

                                        @edmaul69 That's pretty sweet. I'll have to try that out. How do they make it so it will only flip when it asks for a disk? Is it the same for PSX as well?

                                        Any idea how I could change the controls in the system specific retroarch.cfg files though? This isn't the only thing that I'd like to change as far as controller configurations/hotkeys. To this day I haven't figured out any way of doing this except for directly with the control pad configuration file. This kind of sucks since most people would be using a different controller than me, especially my brother and his in-laws.

                                        Thanks!

                                        EDIT: This is what I want to do:

                                        https://retropie.github.io/RetroPie-Docs/RetroArch-Configuration/#example-per-system-control-override-retroarchcfg

                                        It doesn't work. I'm not the first person to say so apparently...

                                        https://www.reddit.com/r/RetroPie/comments/58vy4l/change_save_hotkey_only_for_nes/

                                        I'm bumping this up again as I refuse to believe nobody has figured this out...(especially with the sheer number of NES 2-button USB controllers being used out there).

                                        From this Guithub page about remapping hotkeys:

                                        https://github.com/retropie/retropie-setup/wiki/retroarch-configuration

                                        It specifically says "Settings made here will only override settings in the global retroarch.cfg if placed above the #include line". So I changed the save/load states so they're select+left and select+right, and I put those two lines of code ABOVE the #include line like they say to do...reboot RetroPie and those hotkeys are STILL mapped to the old hotkeys (which is change save state slot, and not save/load save like I want them to be)....so they didn't overwrite the overall config like they say will happen. What am I doing wrong?

                                        edmaul69E 1 Reply Last reply Reply Quote 0
                                        • edmaul69E
                                          edmaul69 @Used2BeRX
                                          last edited by

                                          @used2berx i dont change hotkeys in retroarch. I do it all in the individual controller config files. And it is only fds that works only when told to flip disk. In psx if you press your hotkey (should be set to select) and the button set to eject it will eject the disk. I set the retroarch menu hotkey to the b button and put eject hotkey to x button

                                          Used2BeRXU 2 Replies Last reply Reply Quote 0
                                          • Used2BeRXU
                                            Used2BeRX @edmaul69
                                            last edited by

                                            @edmaul69 Well... at least I know that the L/R defaults won't screw the game up by letting you eject the disk on accident. As long as that works, I probably won't even bother re-mapping it for now since I use a XBox 360 style controller.

                                            I'm thinking more for my brother who is making one for his in-laws and he showed me the NES style USB pads he bought for it. No L/R buttons on that. Then again, I guess my solution wouldn't work for that case either since there wouldn't be any buttons that I programmed.

                                            I guess for now I'll just have to ask him to borrow one of those controllers too so I can set it up properly for him.

                                            In the mean time, if anybody reads this who knows about changing hotkeys on an emulator/console basis that works, I'd love to hear how it's done.

                                            I don't know if the method on the RetroPie github is outdated or just broken, but the instructions on the following link do not work now.

                                            https://retropie.github.io/RetroPie-Docs/RetroArch-Configuration/#example-per-system-control-override-retroarchcfg

                                            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.