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

    rpie-art: easy way to install art on your RetroPie

    Scheduled Pinned Locked Moved Projects and Themes
    artscriptrpie-artoverlayslaunching image
    98 Posts 24 Posters 45.8k 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
      last edited by meleu

      rpie-art

      Easy way to install art on your RetroPie: https://github.com/meleu/rpie-art

      The rpie-art.sh is a script that let you easily install overlays, launching images and scrape images (not yet implemented) in your RetroPie. You can see some screenshots below.

      The art files come from other github repositories maintained by other users. You can see the art repository list in the rpie-art-repositories.txt file.

      How to use the script?

      Clone the repo and execute the script, as simple as that.

      git clone --depth 1 https://github.com/meleu/rpie-art
      cd rpie-art
      ./rpie-art.sh
      

      UPDATE [2017-June-29]: You can also install it on RetroPie Menu and then navigate through menus using a joystick. First be sure that your RetroPie-Setup is 4.2.8+, and then run the script with --install argument:

      ./rpie-art.sh --install
      

      If emulationstation is running, you'll need to restart it.

      After launching rpie-art.sh script follow the instructions in the dialog boxes.

      Although the script is perfectly able to install/uninstall overlays and launching images it's still a work in progress. If you find some bug or want to make a suggestion, post about it in this topic or use the issue tracker.

      How can I make the script able to install my custom art?

      First of all: github account/repository

      The script downloads art from github repositories, then you need to have a github account to create one.

      info.txt file

      You need to know how to use the info.txt file. It's pretty simple and straightforward, details here.

      launching art

      If you're good in making splashscreens, you're good in making launching images too! Just create your art and put the info.txt in the same directory. The info.txt for launching image only is as simple as this example

      overlay art

      You need to know the configurations needed to make the overlay work. There's a detailed doc in the RetroArch wiki but many users are succeeding by looking the @UDb23 files as templates. His repository can be found here: https://github.com/UDb23/rpie-ovl

      adding your repository to the rpie-art tool

      After creating your github repository, adding some art files and filling some info.txt files, you can add your repo to the rpie-art.sh script by adding the repo URL and a description in the repositories.txt file and submitting a Pull Request (if you don't know how to do it just post a reply in this topic or contact me in the issue tracker).

      Tagging some guys who might be interested in make their art installable using this tool: @lilbud , @Rookervik , @edmaul69 , @MorbidComplex (someone else?).

      A brief history of this tool

      • We, RetroPie enthusiasts, started the MAME ROW where we choose a random arcade game to play every week.

      • The @UDb23 came with his Computer Graphics talent and created some awesome overlays for the MAME ROW games. And then was born the most prolific game specific overlay creator in history.

      • @UDb23 became a super star and his fans started a topic in RetroPie forum to request overlays for their favorite arcade games. And, guess what? He listened to fans' requests!

      • One of those fans, @meleu, was impressed by the overlays created by @UDb23 but didn't like downloading the files from websites with strange links, pages full of animations and, mainly, host services that don't let users download files directly from command line. Then @meleu suggested that the files should be hosted on github. And, guess what? the Overlay Master agreed!

      • To show his infinite gratitude @meleu started to work on a bash script to let the users easily install the Overlay Master's art.

      • The file naming conventions needed to make the script work began to be very confusing, then @backstander suggested the creation of an "information file" where the script gets the info it needs to work. And then the info.txt idea was born.

      • The Overlay Guru's charisma, coupled with the reasonable info.txt simplicity, inspired those who have skills with CG software and then it has begun a new era of custom RetroPie art creation.

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

        Screenshots

        Main Menu
        0_1492657808406_rpie-art_mainmenu.png

        Repository Menu
        0_1492658035604_rpie-art_repomenu.png

        Overlay list
        0_1492658421495_rpie-art_ovl_list.png

        Launching image list
        0_1492658969960_rpie-art_launching_list.png

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

          Also don't forget to mention your "ToDo list #1"
          https://github.com/meleu/rpie-art/issues/1

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

            @meleu said in rpie-art: easy way to install art on your RetroPie:

            the most prolific game specific overlay creator in history.

            Greatly exaggerated.
            :-))

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

              @UDb23 What's absolutely true is that without @Meleu's fantastic work and enthusiasm all this overlay stuff and art available for Retropie would have been limited for use of"techie" guys.
              Now any Retropie user can benefit.

              Thank you so much!!!!

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

                @backstander said in Nice MAME2003 overlays repository:

                I know you're still working on the ROM name discovery code but a couple of mine can't find my ROMs because of the small word "The". For example....
                I have "The Terminator" overlay but my ROM is named "Terminator, The (USA, Europe).zip" so it isn't found because "The Terminator" doesn't equal "Terminator, The". My config overlay file is named "Terminator, The (USA, Europe).zip.cfg" so maybe you could add code to also look for ROMs with the same name as this config file?

                I think your "Terminator, The" issue won't happen anymore. Could you update the script and try it again, please?

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

                  @meleu

                  I think your "Terminator, The" issue won't happen anymore. Could you update the script and try it again, please?

                  Thanks @meleu ! I'll test it this evening! I'm also working on two "Legend of Zelda, The" overlays so I'll test those as well.

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

                    UPDATE: Added support for arcade clone ROMs overlay installation.

                    @pjft @jdrassa
                    We were talking about installing overlays for clones in other topic... Well, at that time we didn't use the info.txt file and I was resistant to implement clone config files management in the script. But with the info.txt it became very simple and now the script is able to deal with arcade clone ROMs (if the info.txt file has the rom_clones entry correctly filled).

                    How it works?

                    The script check the clone list in info.txt rom_clones and if the user has any of those clones in the same dir as the parent ROM, install the overlay for it.

                    Feedback needed

                    Do you think the user sould be prompted about the ROM clone overlay installation?

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

                      It's an honor to have my repo as one of the sources and a part of Retropie's history! Thank you @meleu @UDb23 for your awesome work!

                      Overlay and launching image repo
                      https://github.com/simbz33/retropie-overlay

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

                        @meleu Thanks for reaching out.

                        I suppose, without knowing the exact user flow, that my answer would be "it depends". :)

                        What do we currently do, and what would your suggestion be?

                        • Do we currently check what roms the user has, or is it fully selected by the user? (I imagine it's the latter)
                        • Do we list the clones in the selectable list, or just the parent game? (I assume it's the latter as well)
                        • I imagine we would have a single, centralized, parent overlay, and just create different .zip.cfg files for the clones, which would link to that same overlay, is that the case?

                        If these three are correct assumptions, I would imagine that it would be nice to at least inform the user that you'd be installing the overlays for a specific game and known clones (if you plan on doing clones). Otherwise people might be confused as to why suddenly their ROM folder is filled with unknown .zip.cfg files for games they don't want. This could be done in the context text as well - when you say "Check the options you want and press "Continue" ", you can say that "This will install overlays for the selected games and known clones and children roms", and get it over with.

                        If you'd like it to be a prompt - i.e. after checking all the overlays you want from the list, presenting them with a screen to select "would you want to also install overlays for the known clones and variants of the selected games? This will create separate .zip.cfg files in your ROM folder for those specific games. [Yes / No]" - I'd also be supportive, but keeping it simple (i.e. not having the user select the roms and clones 1 by 1 again). Odds are, you either want clones or you don't, and not a mix and match, as the files themselves don't take up too much space.

                        At least that'd be my take. Keeping it simple - this is already tremendous work!

                        If you feel that it would be awkward or potentially problematic, you could add two extra options (completely optional, but just to consider):

                        • Remove unused overlay configuration files (would remove .zip.cfg files without matching rom names)
                        • Remove all overlay configuration files (trickier, as you'd need to keep a history somehow. Is that what the "Uninstall art" option is, though?)

                        But don't worry too much. As long as the expectations are set in the beginning, in my opinion, everything else is fine.

                        Thanks for asking, though - appreciated! Would love to hear your thoughts as well and what you're considering.

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

                          @pjft said in rpie-art: easy way to install art on your RetroPie:

                          • Do we currently check what roms the user has, or is it fully selected by the user? (I imagine it's the latter)

                          selected by the user, the overlay is installed even if the user doesn't have the ROM. I can change this behavior if the users think it would be nice, but for my intensive tests I needed to leave it this way.

                          But notice that it happens only for the parent ROMs. The clone configs are installed only if the user has the respective ROM file.

                          • Do we list the clones in the selectable list, or just the parent game? (I assume it's the latter as well)

                          Just the parent game.

                          • I imagine we would have a single, centralized, parent overlay, and just create different .zip.cfg files for the clones, which would link to that same overlay, is that the case?

                          yes, it is.

                          About other comments, you're right. The user deserves at least an option to say if he/she wants to install the overlay for clones.

                          • Remove unused overlay configuration files (would remove .zip.cfg files without matching rom names)

                          Hmmm... Cool idea. I'll put it in my TODO list. ;-)

                          • Remove all overlay configuration files (trickier, as you'd need to keep a history somehow. Is that what the "Uninstall art" option is, though?)

                          It can be trickier, but we are the trickiest! :-)
                          I already found a solution for it and there's no need to keep a history. If you are curious, here is the trick: https://github.com/meleu/rpie-art/blob/master/rpie-art.sh#L368 (translating to plain English: "do NOT delete overlay config files if they are being used by another rom config".)

                          Summing up: I'll let the user choose if the script will install overlays for clones.

                          Cheers!

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

                            @meleu
                            I'm not sure if this would mess up your current flow but I think it would be cool to have checkboxes again for the parents and clones so if the end user only wants overlays for the clone(s) and not the parent, this would be possible.

                            Maybe at this screen you can have the games show multiple times if there is any clones:
                            Image

                            Example for Burning Force:

                            [ ] 1     arcade/Burning Force (burnforc.zip)
                            [ ] 2     arcade/Burning Force (burnforco.zip)
                            [ ] 3     arcade/Frenzy....
                            

                            I'm sure some users won't understand what that means or wouldn't know which one they use so they could just check them both for install. I think this would also help with none-merged sets that are running a clone (with parent data in it) without the actual parent present.

                            B 1 Reply Last reply Reply Quote 2
                            • B
                              backstander @backstander
                              last edited by

                              Also if you wanted you could put a * on the parent's name or better...just note in the manual that the parent will always be listed first.

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

                                OK guys, here is my approach to deal with overlay installation for clones:

                                0_1492823039485_rpie-art_clones.png

                                Note: that dialog shows only the clones the user has (if none, the dialog is not displayed).

                                Update your script using the update option in the main menu.

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

                                  @meleu said in rpie-art: easy way to install art on your RetroPie:

                                  Note: that dialog shows only the clones the user has (if none, the dialog is not displayed).

                                  Perfect.

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

                                    @meleu : with The End we have a new case to consider for the script.
                                    As FBA has its own rom folder, people may want to install the art in the fba folder instead of arcade or lr-mame.
                                    How do we manage this with the script/info.txt ?
                                    Currently I have created a fba subfolder in the The End folder in the repo.

                                    Should we consider to add acore = "fba" setting ?
                                    Or simply use subfolder with name of core, as I did, and your script would pick it up and knows where to place the files accordingly ?

                                    UDb23U meleuM 4 Replies Last reply Reply Quote 0
                                    • UDb23U
                                      UDb23 @UDb23
                                      last edited by

                                      @UDb23 Note: for the same rom, cfgs for mame and for FBA may be different (just like Option x subfolders currently).

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

                                        @UDb23 if system = "arcade" the user will see this screen when installing the overlay:

                                        0_1493056433843_rpie-art_arcade-dir.png

                                        if system = fba, the script will install in fba folder.

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

                                          @UDb23 Does that overlay need a different config for fbalpha?

                                          UPDATE: I saw the file in your repo and now I know, the answer is "yes, different configs". Please wait, I'm making some adjustments on the script to work with the optional art.

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

                                            @UDb23 I've made small improvements on the script and submitted a PR to your repo.

                                            There's no need to duplicate files, you can use relative paths in info.txt, like this:

                                            game_name = "The End"
                                            system = "fba"
                                            rom_config = "theend.zip.cfg"
                                            overlay_config = "../theend.cfg"
                                            overlay_image = "../theend_udb-ovl.png"
                                            
                                            • Useful topics
                                            • joystick-selection tool
                                            • rpie-art tool
                                            • achievements I made
                                            UDb23U 1 Reply Last reply Reply Quote 1
                                            • 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.