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

    Create a custom ES system able to launch games for many systems

    Scheduled Pinned Locked Moved Ideas and Development
    emulationstatiocustomisationscustom theme
    157 Posts 15 Posters 67.1k 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.
    • meleuM
      meleu @pjft
      last edited by

      @pjft said in Create a custom ES system able to launch games for many systems:

      feasibility for non-Linux file tables (i.e. those who run their ROMs from a FAT32 USB drive like me)

      The symbolic links must be in a Linux partition, but the target file can be in any valid path. As a FAT32 partition is mounted in a valid path, I think the method works fine for those people. :-)

      The boy is recovering well! :-)

      • 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 said in Create a custom ES system able to launch games for many systems:

        The symbolic links must be in a Linux partition, but the target file can be in any valid path. As a FAT32 partition is mounted in a valid path, I think the method works fine for those people. :-)

        I think I get that, but if the whole ROM folder and subfolders are in a FAT32 partition, there's no way to add symlinks in a Linux partition for this purpose (i.e. all the roms are expected to be in that folder anyway), or am I missing something?

        Or would you suggest in the es_systems.cfgfile to add a <path> pointing to a folder in the SD card? Is that what you'd be recommending?

        Thanks!

        cyperghostC meleuM 2 Replies Last reply Reply Quote 1
        • cyperghostC
          cyperghost @pjft
          last edited by cyperghost

          @pjft That should work
          Create a folder to /home/pi/RetroPie/symlinks and point from FAT32-ROM to that folder
          Change es_systems.cfgfolder path to /home/pi/RetroPie/symlinks

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

            @pjft yep! @cyperghost answered well.

            Also, I've just updated the question 3 of the FAQ:

            3. Is it possible to create symbolic links on a Windows machine and move them to my RetroPie later?

            No. Symbolic links can't be created on Windows and can't be placed on a Windows partition.

            But if your ROMs are stored on a Windows partition, you can use the method described here. You just have to place the symbolic links themselves on a Linux partition (target files can be in any valid path). Click here to see the conversation about it.

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

              Excellent work, thanks for posting, will give this a go over the weekend!

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

                Changelog:

                Small update in the runcustom.sh. I've just discovered the readlink command, no need to pipe ls output to sed in order to get the target file name.

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

                  @meleu
                  So work done - I created a litlle unix binary for a fav launcher in a new thread

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

                    Guess what? Yes, you're right, another script...

                    This time it's a script to let you use the already existent metadata. So, there's no need to scrape the games in konami folder.

                    The script can be found here: https://github.com/meleu/share/blob/master/custom-system-autoscraper.sh

                    And you can download it with this command:

                    wget https://raw.githubusercontent.com/meleu/share/master/custom-system-autoscraper.sh
                    

                    Launch it with --help to see the usage:

                    $ ./custom-system-autoscraper.sh -h
                    This script gets all the symbolic links in a custom ES system directory and
                    tries to create a gamelist.xml based on already existent metadata, boxart,
                    marquee, and video.
                    
                    More info here: https://retropie.org.uk/forum/post/84125
                    
                    Usage:
                    ./custom-system-autoscraper.sh /path/to/custom/system/directory
                    

                    Updated the OP with this info.

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

                      @meleu said in Create a custom ES system able to launch games for many systems:

                      Maybe this one from title screen:

                      Logo done. Complete manual design.

                      0_1497034362790_megaman.png
                      Works best on dark background.

                      Available here.

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

                        OMG! I'm loving this theme tweaking stuff!!!

                        0_1497060729318_megaman-ES-pixel.png

                        • Useful topics
                        • joystick-selection tool
                        • rpie-art tool
                        • achievements I made
                        1 Reply Last reply Reply Quote 4
                        • Howitzer99H
                          Howitzer99
                          last edited by

                          I'm still trying to fully understand the differences between the various config directories, but following along with the OP for setting up a Konani directory, I ended up getting it to work by editing my ~/.emulationstation/es_systems.cfg file instead of the one listed in /etc/emulationstation/ directory.

                          Are the files in the ~/.emulationstation intended to be only for overrides, so essentially empty except for and local changes? I started with an existing image setup a few months ago, so while it's helpful for getting started, does add some confusion later on when trying to weed-out unnecessary files.

                          melue, thanks for putting together this tutorial, very helpful, and thanks to UDB23 for the Mega Man vector, nice work!

                          meleuM 2 Replies Last reply Reply Quote 2
                          • meleuM
                            meleu @Howitzer99
                            last edited by meleu

                            removed duplicated post (due to poor internet connection)

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

                              @Howitzer99 said in Create a custom ES system able to launch games for many systems:

                              Are the files in the ~/.emulationstation intended to be only for overrides, so essentially empty except for and local changes?

                              Well, I thought it was the first place ES looks for es_systems.cfg ans, if not found, look in /etc/emulationstation. But if it's working as you're saying, one file complementing the other, it's great. I'll update the OP when I have a chance.

                              By the way, Did you use the script to create the custom system's gamelist.xml? I'm curious to see if it's being useful to someone else. :-)

                              Edit: post a screenshot of your custom ES system. ;-)

                              • Useful topics
                              • joystick-selection tool
                              • rpie-art tool
                              • achievements I made
                              1 Reply Last reply Reply Quote 0
                              • Howitzer99H
                                Howitzer99
                                last edited by

                                meleu, I did run your "custom-system-autoscraper.sh", but when the Konami directory didn't showup in ES, I ended up running sscraper on the listed konami directory from the retropie-setup script. I'm seeing metadata listed, but probably from the sscraper.

                                Sure, now that I know that it's working for creating a custom system, I'll start working on some custom ES system designs this week.

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

                                  @Howitzer99 I intentionally made it doesn't change any existing entry in the custom system's gamelist.xml. So, if you run it after sselph it won't do anything. (According to what you said this is not your case, I've putting this just for info ;-) ).

                                  I'm planning to write a script to simplify the symbolic link creation. This step can be pretty tedious and a script can help. Stay tuned!

                                  Cheers!

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

                                    @meleu I have boosted the fav launcher a bit now we can create FAV files via runcommand :)
                                    https://retropie.org.uk/forum/topic/10971/dev-little-favorite-launcher-second-attempt-ready-for-testers

                                    1 Reply Last reply Reply Quote 2
                                    • Howitzer99H
                                      Howitzer99 @meleu
                                      last edited by Howitzer99

                                      @meleu I had some time to checkout your script for creating the gamelist.xml based on existing roms, and yes, it does work, and is pretty slick! Nice that its only reading existing metadata to create the list. I've never seen 'xmlstarlet' before, more reading to do.

                                      How is the symbolic link program going? Please let me know if you want me to run some tests.

                                      One thing I'm discovering is that I don't have the video previews setup for ES (working fine for Attract Mode). I have a bunch of video snaps and marquees, so I don't need to scrape my games again, only point to the existing files that Attract Mode is using. Do you know if anyone has created a script to embed the video and marquee data into an existing gamelist.xml file? I went through one post with almost 600 replies (somewhat fast), and didn't see a script to add these.

                                      pjftP E meleuM 3 Replies Last reply Reply Quote 1
                                      • pjftP
                                        pjft @Howitzer99
                                        last edited by

                                        @Howitzer99 There was a script by @Nismo, I think, using Powershell, I believe, that does that. If you search the forums for something like that, you'll get the gist of it. If you can't, do let me know (on the go at the moment). The script just adds the proper "video" tags to the gamelists, based on the rom name, and to a folder that you can change in the script. It does assume that the video name will be the same as the rom name. Oh, and it had some minor issues with game names that had "." in the middle, but you can fix those as one-offs.

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          EctoOne @Howitzer99
                                          last edited by

                                          @Howitzer99 Someone posted a tutorial on adding videos and marquees with regular expressions a few days ago but i can't find it for whatever reason.
                                          But there is also a windows tool that can do what you want.
                                          https://retropie.org.uk/forum/topic/9486/gengal-gamelist-xml-generator

                                          Howitzer99H 1 Reply Last reply Reply Quote 0
                                          • Howitzer99H
                                            Howitzer99 @EctoOne
                                            last edited by

                                            @EctoOne Thanks, I did see the Windows version, I should have prefaced the request that I'm looking for a linux script not windows.

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