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

    Favorites for EmulationStation

    Scheduled Pinned Locked Moved Ideas and Development
    emulationstatiofavouritestestingfilter
    115 Posts 15 Posters 51.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.
    • herb_fargusH
      herb_fargus administrators
      last edited by

      This is completely unrelated to recent stuff and definitely putting a cart before a horse but hypothetically speaking if the backend was changed to SQLite would the filtering code be more or less deprecated?

      If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

      Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

      pjftP 1 Reply Last reply Reply Quote 0
      • mattrixkM
        mattrixk @Zigurana
        last edited by

        @Zigurana This is awesome!

        I've had a little bit of a play and it seems to be working without a problem.

        I'm glad you built this before I started sorting my games into folders (fav, genre, player number, etc), as that would have been a lot of work. I think I'll still make a "Kids" folder though, unless you plan on adding another custom metadata item just for that, the same way you've done it for "favourites". I know you already have the full Kid-Friendly mod, but I think a simple metadata tag has it's place too, for those users that don't want/need the full setup.

        I like the "*" to denote the favourites. That way you can see which items in the list are favourited without having to scroll to each individually and look for a special icon/image. If you don't like the star, maybe just another simple symbol like "-" or "~"?

        I also like the brackets around the folders.

        Speaking of Folders, there is an issue with them that I've noticed recently, and this build does it too.

        If you have a System with a Folder, the first item in the folder won't display any metadata (image, description, genre, etc) until you scroll up or down, then if you go back to it, the metadata shows up.

        It happens if the first item is either a Game, or another Folder (a Sub-Folder). If the first item is a Sub-Folder, then the same thing happens for the first item within that Folder as well.

        Any thoughts on what may cause this?

        My ES themes: MetaPixel | Spare | Io | Indent

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

          @herb_fargus that was something that was taken into account during the implementation, as we tried to keep it fairly close to MVC as possible.

          Part of it will, certainly - the Model will be replaced by a simple query, rather than the current logic to go through the metadata and parse things - but the rest should be able to be reused.

          That being said, the Model but was also kind of a big part of the effort for that particular change, so yes, a lot of the code will be replaced by something simpler, but at least we get to use it already for the near future :)

          Edit: @mattrixk there is certainly a long standing bug around that with folders. I thought it had been fixed recently by @jdrassa , but if that still happens in the current main branch we should take a look.

          @Zigurana Did you check the approach from recalbox I sent you a while ago, with the star glyph? I suspect it is a standard character across several fonts, but may need to check. Maybe this testing stage is a good opportunity to validate that as several people can run it with several themes and check that before it gets actually merged to master.

          @Syhles Zigurana's kids mode fork has these options as system-wife filters, so that's why I was bringing it up in case he does want to go down that route as well. The architecture for filters that I put together was system specific (and does not save across sessions) but it should be reasonably easy to add favorites and kids/kiosk mode as an option as well by using it as a setting, and setting that particular filter for all Systems when loading the settings and creating the Systems data. I don't want his vision to be restricted by what's there, feature-wise!

          Z 1 Reply Last reply Reply Quote 3
          • mattrixkM
            mattrixk @Zigurana
            last edited by

            @Zigurana Is it possible to have the folders stay at the top of the list, like a normal file explorer?

            My ES themes: MetaPixel | Spare | Io | Indent

            Z 1 Reply Last reply Reply Quote 0
            • Z
              Zigurana @pjft
              last edited by

              @pjft said in Favorites for EmulationStation:

              @Zigurana well done!
              Could we not use the component that has On/Off, use some logic to convert that to the right filter strings, and call it "Show favorites only"?

              That would be the best way, so maybe I'll go ahead and try to implement something like that.

              Are you also going to implement a system wide option for it? Let me know if you need any guidance across the code - either here, via GitHub or via email. Happy to help and discuss changes that may be needed to support things.

              I think a global "show favorites only" option makes sense, but let's discuss a possible strategy on GitHub.

              at first glance the square brackets are useful around the folders. Does that solve your alphabetical sorting issues as well, out of curiosity?

              Nah, this is cosmetic only, the sorting issue is still open.

              If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

              1 Reply Last reply Reply Quote 1
              • Z
                Zigurana @mattrixk
                last edited by

                @mattrixk said in Favorites for EmulationStation:

                @Zigurana I think I'll still make a "Kids" folder though, unless you plan on adding another custom metadata item just for that, the same way you've done it for "favourites". I know you already have the full Kid-Friendly mod, but I think a simple metadata tag has it's place too, for those users that don't want/need the full setup.

                The plan is exactly that, to introduce new metadata types for hidden and child-friendly, and reinstate the "forced filtering" when a specific UI mode is set. The end goal is to get feature-parity with the old kid-mode branch, so I can get rid of that one altogether.

                If you have a System with a Folder, the first item in the folder won't display any metadata (image, description, genre, etc) until you scroll up or down, then if you go back to it, the metadata shows up.
                Any thoughts on what may cause this?

                Not sure, is there an issue raised for this on the Retropie repo?

                If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                1 Reply Last reply Reply Quote 0
                • Z
                  Zigurana @pjft
                  last edited by Zigurana

                  @pjft said in Favorites for EmulationStation:

                  @Zigurana Did you check the approach from recalbox I sent you a while ago, with the star glyph? I suspect it is a standard character across several fonts, but may need to check. Maybe this testing stage is a good opportunity to validate that as several people can run it with several themes and check that before it gets actually merged to master.

                  I tried it with the carbon and pixel themes, but got only '?' characters. I wrote it down to Recalbox having more/better unicode support also for their translation efforts. It is an trivial change so I could reinstate it if need be.
                  On the other hand, I've seen folks here on the forum modifying fonts in order to get the glyphs they want. That route is still possible, but maybe the std asterisk is not the right character to pick, it may be occurs in game-names as well?

                  @Syhles Zigurana's kids mode fork has these options as system-wife filters,

                  Yes a specific filter for 90-s platformers, what can I say, she just loves commander keen! :-p

                  If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                  mattrixkM 1 Reply Last reply Reply Quote 1
                  • Z
                    Zigurana @mattrixk
                    last edited by

                    @mattrixk said in Favorites for EmulationStation:

                    @Zigurana Is it possible to have the folders stay at the top of the list, like a normal file explorer?

                    I had a small code change for exactly that prepared, but the question is if this is expected behavior for all users. For instance in case of multi-disk games grouped in a folder, would you want to see it on top of the list, or at its alphabetical location?
                    At least with the brackets, it's a bit more clear than just the color - change for folders.
                    (btw would more colors for game-types be useful?)

                    If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                    1 Reply Last reply Reply Quote 1
                    • mattrixkM
                      mattrixk @Zigurana
                      last edited by

                      @Zigurana said in Favorites for EmulationStation:

                      what can I say, she just loves commander keen!

                      That's a euphemism if ever I've heard one.

                      multi-disk games grouped in a folder

                      I didn't think of this. I don't really use folders that way, so it didn't occur to me. Maybe an option to say whether the folders should be at the top or alphabetical? Either as an option in the select menu, or as something that could be added to the gamelist.xml?

                      Is there a way to display what filters are active? We could maybe have a <text> field in the Theme just lists out the active filters.

                      My ES themes: MetaPixel | Spare | Io | Indent

                      Z 1 Reply Last reply Reply Quote 2
                      • Z
                        Zigurana @mattrixk
                        last edited by

                        @mattrixk said in Favorites for EmulationStation:

                        Maybe an option to say whether the folders should be at the top or alphabetical? Either as an option in the select menu, or as something that could be added to the gamelist.xml?

                        That could be a solution, if a bit unwieldy, I will do a PR on this so people can test it.

                        Is there a way to display what filters are active? We could maybe have a <text> field in the Theme just lists out the active filters.

                        That's a really good idea for theming improvements!

                        If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                        1 Reply Last reply Reply Quote 1
                        • Serj TargarienS
                          Serj Targarien
                          last edited by Serj Targarien

                          @Zigurana, I don't really think forcing brackets on folders or reordering them to the top of the list without an option to turn that off would be a good idea for everyone's build.

                          The way I'm using folders for multidisk games is getting all the disks inside a scraped folder names after the game, which sits properly in alphabetical order until I want to play that game, and then selecting the active disk from a list inside the folder. Not having brackets in the list keeps it aesthetically pleasing and coherent as it is. If i want a folder to go to the top of the list or identify itself as a folder, I can do it with a special character as explained in the "Folder Icon" section in the NES mini theme (https://retropie.org.uk/forum/topic/8391/cardboard-mini-nes-nes-mini-and-famicom-mini-themes):

                          Folder Icon

                          If you use subfolders for your roms the themes have the ability to show a folder icon. To do so you need to name the folder with a preceding '#' symbol. Eg. name the folder '# Japan' and the '#' will be displayed as the folder icon followed by the word 'Japan'. It will look something like this:

                          0_1489358825939_arcade-preview-2.png

                          This way i can keep my "ninja" multidisk folders, and still have an indication for proper folders an get them to show on the top of the list.

                          Other than that, I totally appreciate the effort in merging the kids-kiosk modes in the main branch and hope everything goes great. Keep up the good work!

                          Z 1 Reply Last reply Reply Quote 1
                          • Z
                            Zigurana @Serj Targarien
                            last edited by

                            @Serj-Targarien
                            Thanks for that input.
                            I believe that the NES-mini theme also uses a custom font where the '#' glyph is replaced by the folder icon, correct?
                            That would (for me) be an acceptable way of working, the best of both worlds actually.

                            If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                            pjftP Serj TargarienS 2 Replies Last reply Reply Quote 0
                            • pjftP
                              pjft @Zigurana
                              last edited by

                              @Zigurana and if experience taught me anything use that you don't want to mess with someone who has a folder specifically for Ninja games :)

                              Great to hear - let me know if I can help in any way!

                              1 Reply Last reply Reply Quote 3
                              • Serj TargarienS
                                Serj Targarien @Zigurana
                                last edited by

                                @Zigurana Exactly, the folder icon is embedded in the custom font of the theme, replacing the # symbol. That makes it possible to manually flag a folder as a folder and the # at the beginning automatically brings it to the top of the list.

                                mattrixkM 1 Reply Last reply Reply Quote 0
                                • mattrixkM
                                  mattrixk @Serj Targarien
                                  last edited by

                                  @Serj-Targarien that's an interesting way to do things, but making custom fonts is a bit of a pain in the butt.

                                  My ES themes: MetaPixel | Spare | Io | Indent

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

                                    @mattrixk @Serj-Targarien @Zigurana is it a custom font, or an icon that replaces it?

                                    Custom fonts, I agree, would not be something I'd be comfortable on enforcing or recommending.

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      Syhles @pjft
                                      last edited by

                                      @pjft
                                      Font.

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

                                        @Syhles well, that's... unfortunate.

                                        1 Reply Last reply Reply Quote 0
                                        • Z
                                          Zigurana
                                          last edited by

                                          An advantage of having a custom font is that it is fully in the hands of themer, and end-user to set it up how they like.
                                          Maximum flexibility for those who want to tinker.
                                          Apparently others have managed to do this for the NES-mini theme, so they should be able to create a guide.
                                          The alternative would be for one of us to extend the textlistComponent to include an additional asset (icon) for entries/lines. Which would need to be themable if we want to enable themers to adjust it to their needs. I doubt we would be able to make that strategy any easier to use, or efficient to run, but I might be wrong.

                                          If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                                          pjftP mattrixkM ruckageR 3 Replies Last reply Reply Quote 1
                                          • pjftP
                                            pjft @Zigurana
                                            last edited by

                                            @Zigurana Sure. I suppose my concern is always "what about themes that don't have a custom font, how will the folder be rendered"?

                                            Maybe that solution is obvious to those who are already using such features, but it's unclear to me how we would keep folders in simple (i.e. non-custom-font) themes looking fine. :)

                                            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.