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

    Please Test: Creating Custom Collections

    Scheduled Pinned Locked Moved Ideas and Development
    collectionsemulationstatiogame collection
    198 Posts 20 Posters 80.4k 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.
    • pjftP
      pjft @HurricaneFan
      last edited by

      @hurricanefan the actual name is "my collections", that's why. :)

      HurricaneFanH TMNTturtlguyT 2 Replies Last reply Reply Quote 0
      • HurricaneFanH
        HurricaneFan @pjft
        last edited by

        @pjft Ohhhh, and the theme I'm using calls them Custom Collections. Gotcha.

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

          @pjft Sorry to interject, but tying this into my earlier question about being able to modify the order of the systems......Since this is not in the es_systems.cfg how will this scenario work?

          I have a custom es_system.cfg that i organize by game "brand" so i have the following order (not alphabetical)

          Arcade
          Capcom
          NeoGeo
          Atari 2600
          Atari 7800
          NES
          SNES
          N64
          GB
          GBC
          GBA
          NDS
          Megadrive
          Sega32x
          SegaCD
          Dreamcast
          Gamegear
          PSX
          PSP
          Turbografx
          ZxSpectrum

          Where would the my custom collections be inserted in this case?
          Could we modify the name of the folder to zz my custom collections in order to have this be the last in the alphabetical order?

          pjftP cyperghostC 2 Replies Last reply Reply Quote 0
          • pjftP
            pjft @HurricaneFan
            last edited by

            @hurricanefan what's the theme? This is very much in the beginning so we might ask the theme makers to change that - either one way or the other.

            I agree it's not very consistent, my bad.

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

              @tmntturtlguy there's two sorting orders. One will sort them all alphabetically with the systems. The other will keep all collections at the end, and won't change the order of the systems.

              Edit: that's probably the one you want and the one I use.

              1 Reply Last reply Reply Quote 0
              • HurricaneFanH
                HurricaneFan @pjft
                last edited by

                @pjft I keep all my testing right now with the Art Book theme. I really like how clean that theme is and have been trying to get all my roms into it for testing.

                1 Reply Last reply Reply Quote 0
                • cyperghostC
                  cyperghost @TMNTturtlguy
                  last edited by

                  @tmntturtlguy You could extend your es_systems.sh and copy your favourites around. You can also create a "Minimum" theme. You only add "My custom collections"

                  1 Reply Last reply Reply Quote 0
                  • cyperghostC
                    cyperghost
                    last edited by cyperghost

                    @pjft I catch still the little bug that the note announces

                    Your theme dies not support game collections.
                    Pleasae update your theme, or unsure that you use a theme that contains the folder:
                    

                    I get the error if I press start > Game Collections and go back with B-button or via Back-menu.

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

                      @cyperghost what theme are you using, what options do you have set, what collections do you have enabled (actual names) and what folders does the theme have?

                      1 Reply Last reply Reply Quote 0
                      • cyperghostC
                        cyperghost
                        last edited by cyperghost

                        @pjft
                        I use IO theme but it also happened to MagazineMadness (and both got the items for all 4 systems)
                        I have all 3 auto systems enabeld (auto-favorites, auto-allgames, auto-lasplayed)
                        I have 2 custom collections (testsystem, Beat'em up)

                        Annother one:
                        The custom collections show "2 Games available" - I think you can change it via hardcoding to "% Collections available)

                        Folder are here
                        IO - https://github.com/mattrixk/es-theme-io
                        MagazineMadness - https://github.com/RetroHursty69/es-theme-magazinemadness

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

                          @cyperghost can you get me the exact names of the collections you're enabling (maybe from inside the es settings file), the folders in the themes you're using, and the options you have enabled? The reason for that is that the code logic for that warning contains pretty much mostly string comparisons between folder names, and something must be off but I just can't replicate it consistently here. Thank you.

                          I considered your suggestion on the collections caption, but that would be different to what ES currently does, as even if your system only has folders in the main root path, it still shows the number of games within its entire tree. This way it's showing how many games you have available inside there - and each sub collection has the number of games in the description.

                          1 Reply Last reply Reply Quote 1
                          • cyperghostC
                            cyperghost
                            last edited by cyperghost

                            <?xml version="1.0"?>
                            <bool name="BackgroundJoystickInput" value="false" />
                            <bool name="CaptionsCompatibility" value="true" />
                            <bool name="DrawFramerate" value="false" />
                            <bool name="EnableSounds" value="true" />
                            <bool name="MoveCarousel" value="true" />
                            <bool name="ParseGamelistOnly" value="false" />
                            <bool name="QuickSystemSelect" value="false" />
                            <bool name="SaveGamelistsOnExit" value="true" />
                            <bool name="ScrapeRatings" value="true" />
                            <bool name="ScreenSaverControls" value="true" />
                            <bool name="ScreenSaverOmxPlayer" value="true" />
                            <bool name="ShowHelpPrompts" value="true" />
                            <bool name="SortAllSystems" value="true" />
                            <bool name="StretchVideoOnScreenSaver" value="false" />
                            <bool name="UseCustomCollectionsSystem" value="true" />
                            <bool name="VideoAudio" value="true" />
                            <bool name="VideoOmxPlayer" value="false" />
                            <int name="MaxVRAM" value="100" />
                            <int name="ScraperResizeHeight" value="0" />
                            <int name="ScraperResizeWidth" value="400" />
                            <int name="ScreenSaverTime" value="60000" />
                            <string name="AudioDevice" value="PCM" />
                            <string name="CollectionSystemsAuto" value="all,favorites,recent" />
                            <string name="CollectionSystemsCustom" value="Beat ’em up,testsystem" />
                            <string name="GamelistViewStyle" value="automatic" />
                            <string name="OMXAudioDev" value="both" />
                            <string name="PowerSaverMode" value="default" />
                            <string name="Scraper" value="TheGamesDB" />
                            <string name="ScreenSaverBehavior" value="dim" />
                            <string name="ScreenSaverGameInfo" value="never" />
                            <string name="ThemeSet" value="io" />
                            <string name="TransitionStyle" value="instant" />
                            

                            Got it... it's the unicode value of Beat 'em up!

                            EDIT:
                            I renamed to "custom-Beatem up.cfg"
                            That's it!

                            Do you may to resolve? I think it does not make sense to load an extra UTF-8 bibliothec into ES if it is not nessecary.

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

                              @pjft
                              I tried to recreate and now it works. Even the entry Beat 'em up stands clear in XML! Don't know why? Where there any changes in code between 0.2 and 0.3 that could make that happen?

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

                                @cyperghost I don't think there were any particular changes. But had you not updated to the latest binary in the recent days? I had done something to tackle that bug, so if you were still on an old binary, that might have been fixed since.

                                Tell me something, though: does the content of that collection get saved and reloaded correctly? What's the filename in ~/.emulationstation/collections ? And what exactly shows in the settings file now?

                                I am removing off characters from collection names, so that files can be created without problems (so, no commas, no *, no /, etc). But I may be saving that in the settings file, though. So that's something I need to fix.

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

                                  @pjft I thought it was solved by the Unicode name. But now it came up again.


                                  EDIT:
                                  Sorry I can't track it again!
                                  Seems to be a random thing!


                                  Seems to happen after fresh reboot. I downloaded from your source 0.3 a few days ago ... Don't know if it's the latest version now. Can you maybe add a version number/text in the Main Menu note?

                                  lvl2: 	EmulationStation - v2.4.1rp, built Jul 27 2017 - 10:32:23
                                  

                                  My game collections in folder /opt/retropie/configs/all/emulationstation/collections/ with my two files is:

                                  custom-Beat 'em up.cfg
                                  custom-testsystems.cfg
                                  

                                  As you see in es_settings.cfg the unicode character is gone. My es_settings.cfg is:

                                  <?xml version="1.0"?>
                                  <bool name="BackgroundJoystickInput" value="false" />
                                  <bool name="CaptionsCompatibility" value="true" />
                                  <bool name="DrawFramerate" value="false" />
                                  <bool name="EnableSounds" value="true" />
                                  <bool name="MoveCarousel" value="true" />
                                  <bool name="ParseGamelistOnly" value="false" />
                                  <bool name="QuickSystemSelect" value="false" />
                                  <bool name="SaveGamelistsOnExit" value="true" />
                                  <bool name="ScrapeRatings" value="true" />
                                  <bool name="ScreenSaverControls" value="true" />
                                  <bool name="ScreenSaverOmxPlayer" value="true" />
                                  <bool name="ShowHelpPrompts" value="true" />
                                  <bool name="SortAllSystems" value="true" />
                                  <bool name="StretchVideoOnScreenSaver" value="false" />
                                  <bool name="UseCustomCollectionsSystem" value="true" />
                                  <bool name="VideoAudio" value="true" />
                                  <bool name="VideoOmxPlayer" value="false" />
                                  <int name="MaxVRAM" value="100" />
                                  <int name="ScraperResizeHeight" value="0" />
                                  <int name="ScraperResizeWidth" value="400" />
                                  <int name="ScreenSaverTime" value="60000" />
                                  <string name="AudioDevice" value="PCM" />
                                  <string name="CollectionSystemsAuto" value="all,favorites,recent" />
                                  <string name="CollectionSystemsCustom" value="Beat 'em up,testsystem" />
                                  <string name="GamelistViewStyle" value="automatic" />
                                  <string name="OMXAudioDev" value="both" />
                                  <string name="PowerSaverMode" value="default" />
                                  <string name="Scraper" value="TheGamesDB" />
                                  <string name="ScreenSaverBehavior" value="dim" />
                                  <string name="ScreenSaverGameInfo" value="never" />
                                  <string name="ThemeSet" value="io" />
                                  <string name="TransitionStyle" value="instant" />
                                  
                                  pjftP 1 Reply Last reply Reply Quote 0
                                  • pjftP
                                    pjft @cyperghost
                                    last edited by

                                    @cyperghost yeah, it's very hit and miss. I Sakai have ran into it but can't fully replicate. I might end up getting rid of it, as it seems to be quite annoying. Can you send me the file and folder list for the theme you're using - just ls -l at the theme root folder?

                                    Also, I wonder: how is your collection named with a ' there? I thought I was filtering those characters out these days. Can you create a new one - say, shoot'em up - to test what the file name is, the text in ES, and in the settings?

                                    Thanks. Have a good week.

                                    1 Reply Last reply Reply Quote 0
                                    • cyperghostC
                                      cyperghost
                                      last edited by cyperghost

                                      root of theme

                                      drwxr-xr-x 87 root root 4096 Jul 20 16:04 carbon
                                      drwxr-xr-x 59 root root 4096 Aug 20  2016 eudora
                                      drwxr-xr-x 89 root root 4096 Jul 25 18:17 io
                                      drwxr-xr-x 84 root root 4096 Jul 30 12:45 magazinemadness
                                      drwxr-xr-x 48 root root 4096 Jul 21 11:52 RecalBox
                                      drwxr-xr-x 67 root root 4096 Jul 21 06:14 Retrorama
                                      drwxr-xr-x 75 root root 4096 Jul 20 16:04 simple
                                      drwxr-xr-x 87 root root 4096 Jul  1 09:18 steampunk
                                      

                                      inside io
                                      see ghostbin...

                                      Other system I can create later. I created the name "Beat 'em up" through SSH

                                      touch "/opt/retropie/configs/all/emulationstation/collections/custom-Shoot 'em up.cfg"
                                      

                                      Inside /opt/retropie/configs/all/emulationstation/collections/ are

                                      -rw-r--r-- 1 pi pi 194 Jul 30 14:01 custom-Beat 'em up.cfg
                                      -rw-r--r-- 1 pi pi   0 Jul 31 05:04 custom-Shoot 'em up.cfg
                                      -rw-r--r-- 1 pi pi  70 Jul 28 20:56 custom-testsystem.cfg
                                      

                                      I added one game and made a restart to save to config.file

                                      I have entries

                                      <string name="CollectionSystemsCustom" value="Beat 'em up,Shoot 'em up,testsystem" />
                                      

                                      and it seems to work.
                                      I can not catch the bug again.

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

                                        @cyperghost said in Please Test: Creating Custom Collections:

                                        I created the name "Beat 'em up" through SSH

                                        Got it.

                                        So, first thing: I am not supporting systems people create via SSH, or manual modifications to the settings file. The reason is that you have added characters that you wouldn't have been able to use if creating the system via ES - in this case, the ' character would not have been created via ES - I was just trying it out and the code was explicitly removing it, so I was puzzled.

                                        In this case, the sorting order of the systems in the config string is also a factor, so manually changing it can cause things like that.

                                        It might be that at some point you made a change via ES and it saved a proper expected config file.

                                        I'll look through the code again and see if there's anything amiss, but other than that for the sake of testing and normal usage, I'd rather stick to testing the use cases from inside ES - creating, naming, saving, etc.

                                        Thanks!

                                        cyperghostC 1 Reply Last reply Reply Quote 2
                                        • TMNTturtlguyT
                                          TMNTturtlguy
                                          last edited by

                                          @pjft I finally got around to installing the your latest build and have spent some time playing with it. The following are some things i have noticed. Not all necessarily issues, but just things i have found and my thoughts.

                                          • I had to change my VRAM from 100 to 80 as you and others have suggested when using the ComicBook theme. This is not an issue of just adding a few more systems though. My old ES build prior to favorites i had 18 systems running at vram 100 no issues. On your newest custom systems build even at 8 systems, i need to change to 80. Once i do that it is fine. I think there is something within the new build that is triggering this. Not an issue since it is solvable, and lower is probably a good thing anyways as it shouldn't affect any other functions.
                                          • When exiting any rom from any system with vram and 100 and at 80 the video comes back at a different speed than the rest of the screen. This is a bit annoying. here is a video.
                                          • My PS4 controllers with usb dongle (not bluetooth) have weird behaviors at times. This is not present in my main build, just started with my update. I will only have 1 controller on and it will operate great, play for a while, exit a game and then all of sudden the button presses are choppy and lagging in the ES menus. Then i enter another game and all of a sudden the 2nd controller which is plugged in but not turned on becomes the first player. I had this happen a few times, i can't put my finger on a cause. To be fair, I am a few updates behind on my main build, so it could be something else.
                                          • All of the sym links i created using @meleu's script still work great, no issues there.
                                          • I am unable to use my es-system selection script. My script worked great prior to updating to this/the favorites build. Now the script will run and it will work, it change the es_systems.cfg file that is in my .emulationstation folder, however ES will not read it until i manually go and replace it with the exact same es_systems.cfg file with the systems in the exact same order as they were prior to running the script. This happens with both the favorites turned on, and turned off. This will effect only a very few people that have been using my script, so not a big deal for most people, but I am wondering what in your code is making ES fail if it does not find the exact system list it used the last time?
                                          • when creating custom systems, pressing select while in the new custom systems gamelist view to finish editing seems odd. I think it would make more sense to be in the main start menu with the other collections options. Just my opinion though.
                                          • After adding a few collections and playing a few games I went to check a setting in the start menu from the system selection menu and i received a warning that "Your theme does not support game collections......" It asked it i still wanted to enter game collections, i said yes, and selected a new collection to create and everything worked, not sure why the error message appeared.
                                          • I know i have asked this before, but would it be possible to allow custom sorting of the created collections? Right now we can group and sort them, but it would be cool if we could manually edit their location. One solution that would make me happy would be to add a setting that retropie would always be the last system. Right now i have my systems set by "brand" so NES, SNES, N64, then Sega, Sega32x, Dreamcast, then psx, psp, pspminis. I have arcade as my first folder and retropie as my last. That way when i start up, i have arcade ready to go and one move to the left is my retropie menu. If i sort them, they change to alphabetical and retropie menu is in the middle of my list. I turn sorting off and all the favorites and customs are the first things to the left. If i could turn sorting off and still have Retropie as my first menu to the left, i would be extremely happy.
                                          • If you are at the start menu and you let the system sit and go to screensaver, the screen turns black, when you wake it up, i get the error that the theme is not set up for custom systems. I chose to enter anyways and everything works fine.

                                          With all this information said, this is a really fun addition and it works really well, i can't imagine the time you have put into this! I love the small features like the message boxes that pop up when editing the custom systems. As an update to the ps4 controller issue above, i have made it an hour now without any issues, it is pretty random and weird......Thanks again for everything you do.

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

                                            @tmntturtlguy Hi, and thank you for the detailed and thorough reply!

                                            Thanks for testing this with so much attention. Replies inline:

                                            @tmntturtlguy said in Please Test: Creating Custom Collections:

                                            @pjft I finally got around to installing the your latest build and have spent some time playing with it. The following are some things i have noticed. Not all necessarily issues, but just things i have found and my thoughts.

                                            • I had to change my VRAM from 100 to 80 as you and others have suggested when using the ComicBook theme. This is not an issue of just adding a few more systems though. My old ES build prior to favorites i had 18 systems running at vram 100 no issues. On your newest custom systems build even at 8 systems, i need to change to 80. Once i do that it is fine. I think there is something within the new build that is triggering this. Not an issue since it is solvable, and lower is probably a good thing anyways as it shouldn't affect any other functions.

                                            Hm. Yeah, I am not really sure of what exactly causes this or why. Out of curiosity, what exactly caused you to have to move from 100 to 80 - what symptoms were you experiencing?

                                            • When exiting any rom from any system with vram and 100 and at 80 the video comes back at a different speed than the rest of the screen. This is a bit annoying. here is a video.

                                            Doesn't this also occur in your normal build? Could you get a video of that? Are you referring to the fact that zooming out, the video is there but the screen is zooming out around it?

                                            I noticed that a sad side-effect of properly implementing the zoom in/out transition was that the video zoom out with OMX Player enabled does look off precisely because the video now takes center stage, but unfortunately there's no way to zoom OMX Player in and out. Could your previous build be zooming out from the middle (i.e. before the fix was put in place)?

                                            Anyway, a video of your other build would help if you do have the chance :)

                                            • My PS4 controllers with usb dongle (not bluetooth) have weird behaviors at times. This is not present in my main build, just started with my update. I will only have 1 controller on and it will operate great, play for a while, exit a game and then all of sudden the button presses are choppy and lagging in the ES menus. Then i enter another game and all of a sudden the 2nd controller which is plugged in but not turned on becomes the first player. I had this happen a few times, i can't put my finger on a cause. To be fair, I am a few updates behind on my main build, so it could be something else.

                                            I can't really relate this to ES, to the best of my ability, though I'd be curious as to why that'd be happening. Out of curiosity, did you per chance perform and update to any other component, or are you in the exact same setup but just running one binary or the other? The reason I ask is that in the past two weeks I believe I've read a few instances of people complaining about similar issues:

                                            https://retropie.org.uk/forum/topic/11904

                                            and others linked from it. Just a thought.

                                            • All of the sym links i created using @meleu's script still work great, no issues there.

                                            Great!

                                            • I am unable to use my es-system selection script. My script worked great prior to updating to this/the favorites build. Now the script will run and it will work, it change the es_systems.cfg file that is in my .emulationstation folder, however ES will not read it until i manually go and replace it with the exact same es_systems.cfg file with the systems in the exact same order as they were prior to running the script. This happens with both the favorites turned on, and turned off. This will effect only a very few people that have been using my script, so not a big deal for most people, but I am wondering what in your code is making ES fail if it does not find the exact system list it used the last time?

                                            Well, nothing should have really changed that, which is weird. Regardless of whether it affects only a few people or not, if we could avoid it we should - and truth be told, there's no reason why that would be different.

                                            Tell me: how do you know that it is not reading the right es_systems.cfg file? What behavior are you experiencing? Is it the sorting order? The system's names? What?

                                            The only two things I can think of are:

                                            • If it's a sorting order issue, check if the "SortAllSystems" option is on, and disable it. Then restart ES.
                                            • If it's something else, let me know, but if that's the case, then I'd check if the es_systems.cfg file actually contains the content you expect. There are only two locations where it'll read it from, so for some reason maybe there is/was a problem with it on that particular test? It needs to read a es_systems.cfg file from somewhere otherwise it won't work at all.
                                            • when creating custom systems, pressing select while in the new custom systems gamelist view to finish editing seems odd. I think it would make more sense to be in the main start menu with the other collections options. Just my opinion though.

                                            Good feedback, thanks. Others have mentioned it, so I'll add it as well to the start menu.

                                            • After adding a few collections and playing a few games I went to check a setting in the start menu from the system selection menu and i received a warning that "Your theme does not support game collections......" It asked it i still wanted to enter game collections, i said yes, and selected a new collection to create and everything worked, not sure why the error message appeared.

                                            The logic there is hit or miss. I'm actually considering removing that warning altogether, as it seems to be error prone and a lot scarier than it should. I'll try to investigate a bit more, but yeah...

                                            Thanks!

                                            • I know i have asked this before, but would it be possible to allow custom sorting of the created collections? Right now we can group and sort them, but it would be cool if we could manually edit their location. One solution that would make me happy would be to add a setting that retropie would always be the last system. Right now i have my systems set by "brand" so NES, SNES, N64, then Sega, Sega32x, Dreamcast, then psx, psp, pspminis. I have arcade as my first folder and retropie as my last. That way when i start up, i have arcade ready to go and one move to the left is my retropie menu. If i sort them, they change to alphabetical and retropie menu is in the middle of my list. I turn sorting off and all the favorites and customs are the first things to the left. If i could turn sorting off and still have Retropie as my first menu to the left, i would be extremely happy.

                                            I can certainly make RetroPie be one of the last systems. Sorting all might be a bit more tricky, as we don't really have the UX patterns for that.

                                            I personally like having the 3 last systems being the new auto systems, but it is a preference rather than anything particularly "dogmatic". I could however create an option to hide the RetroPie system...? I'll think about that, or maybe ask for more opinions on that.

                                            EDIT: It might be more complicated than I'd like it to be, though, so don't hold your hopes up, but consider it.

                                            • If you are at the start menu and you let the system sit and go to screensaver, the screen turns black, when you wake it up, i get the error that the theme is not set up for custom systems. I chose to enter anyways and everything works fine.

                                            The video screensaver not working when you're on a menu is a long-standing bug for me (note taken). However, which menu are you in when you get that error? Could it have been that you were in the collections menu and woke it up by pressing "B" to exit it?

                                            With all this information said, this is a really fun addition and it works really well, i can't imagine the time you have put into this! I love the small features like the message boxes that pop up when editing the custom systems. As an update to the ps4 controller issue above, i have made it an hour now without any issues, it is pretty random and weird......Thanks again for everything you do.

                                            Not at all, thank you for testing and for providing all this feedback!

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