New ES Feature: Random Collection - Testers and Theme makers needed
-
@pjft said in New ES Feature: Random Collection - Testers and Theme makers needed:
Hi all.
I have been working for the past week on a feature that I was needing here, related to game discovery. I pretty much was missing the times when I went to a videogame store or an arcade and browsed all the different new games that were there and had to play the ones that were available.
With large collections on our setups these days - well, pretty much anything over a few dozens or hundreds starts becoming tricky to choose what to play unless you already have an idea - I created a new automatic collection tentatively called “Random”. You have the option to select what systems and collections to select games from, you can select how many games to use from each system and collection, and you can choose how many games you want in the final collection if you want to trim it down to a certain number. You can also regenerate the random game selection on the fly.
The code is currently in a Pull Request for the ES-dev code, and I should merge it at some point tomorrow after I run some final tests for some edge cases that occurred to me. Also, never merge code and log off, as if something breaks it’s rough. Still, if anyone feels confident and wants to try it out, it’s there but you can also wait for tomorrow.
What do I need from all of you
First, testing and having fun with it. I’m mostly interested in understanding where this breaks, as there were a lot of moving pieces to make this happen. I think things are solid now, but I’m very much open to be proven wrong.
Second, and most important, when enabled, this will introduce a new automatic collection to the themes. Since no themes are ready for it yet, that system will show at the top level, unthemed.
Since I suck at design, would anyone be available to:
- Help create the logos and icons for Carbon, the default theme for ES?
- Update your existing themes to add support for the new auto-random collection. Tagging some of the folks I know were active in theming such as @alphatoanant (Artbook, others), @3Draco (ComicBook more recently), @dmmarti and @UDb23 .
The collection theme folder is auto-random, and the name is random unless someone has a nicer suggestion. “Surprise Me” was a close second, but I kind of grew fond of Random, so it’ll probably stay.
Happy to provide more info, but if we can at least get Carbon ready, it’ll be easier to make this feature part of the main EmulationStation that’s installed by default on RetroPie, rather than staying on the dev branch.
Thanks all, and looking forward to tomorrow.
will this only work on newer versions of ES? or should it work on older versions of es?
not seeing how or where to install this? -
@Retrodade said in New ES Feature: Random Collection - Testers and Theme makers needed:
will this only work on newer versions of ES? or should it work on older versions of es?
You need to install the development version of EmulationStation, as @pjft mentioned earlier
This change is now merged to emulationstation-dev. Just install/update it from RetroPie-Setup.
-
@pjft Nice x 2 :)
Some minor layout issues from cursory testing:
The menu entries are not named consistently: "Custom Game Collections" but only "Random Collection Settings" (I am missing the Game after Random.) However, in the then opened submenu it is named as expected (see below).
The Menu Title is quite long, but it is ok as the user navigated into it and knows the full name nevertheless.
But: "Max Items" could be named "Max Games"
In the menu "Automatic Collections" (and also in "Custom Collections"= the Menu Title still reads "Games from Systems", I guess it should read "Games from Auto Collections" and "Games from Custom Collections"
One more thing (maybe personal preference): Did you consider to use the
SliderComponent
for the values 0 to 5 in this and the "Systems" and "Custom Collections" as widget? -
-
@Lolonois cool, thanks for the pointers:) I'll look into those.
I did not look into slider components, to be honest, though I see how that could also work.
-
Hi everyone. Just before the weekend, a short update:
- @Lolonois I updated the labels following your feedback. Thanks! I did not have it in me to switch the number selection to a widget for now for lack of time, but happy to take that change if you want to go ahead with it.
- @windg I added an option to select a collection with entries you want to exclude. Good to add all those scripts, or just games you don't want to be selected for the Random collection.
Hope this is useful! Have a great weekend everyone.
-
Thank you very much !
-
@windg By all means, hope it's useful!
-
This is how it would like with the Slider Control:
These are the applied changes.
Initially I did not read about the exclude function here, which puzzled me initially. But with the hint to create a new custom collection and use that one to exclude games it makes sense.
However, I do not see entries like "+Start xy" in my lists, maybe because I have set "Parse Gamelists Only" set to On. But I do understand the motivation to deliberately exclude games for reasons.
-
Feature-wise nothing will be changed with the PR 859 [1], some changes "under-the-hood".
Heads up: Only for the testers of the initial version announced here, there is a change in how the settings are stored. To save you the work to manually re-apply your selections you made, I have provided a script [2] which does the conversion of the respective parameters in the
es_settings.cfg
. Put it on your Pi, run it as userpi
withpython3 <scriptname>
before you run the ES with PR 859 applied.If you start to explore this feature the first time after PR859 is merged, no action is needed.
[1] https://github.com/RetroPie/EmulationStation/pull/859
[2] https://gist.github.com/Gemba/4729e3560264511ea06aadb18f439112 -
@Lolonois Thanks. The script works as intended. For those that don't do a lot of python work, you may need to install the lxml extension before running the script:
sudo apt install python3-lxml
-
-
Is this available for any theme? I can't seem to find the option to turn this on after updating from the RetroPie Setup Script
-
@mrmadcatz You need to install the
-dev
version of EmulationStation, from the experimental packages section. -
Ah! I didn't realize it had to be updated via experimental packages for the dev version. Giving it a try now. Thanks @mitu!!
-
Any advice on how to add an icon for a theme like snes-mini? I can't figure out how to add one for an automated collection. I forked the original repo and was going to work on adding an icon, but I'm not sure where to put it or how to implement it.Actually, I think I've figured out how to add an icon to the es-theme-snes-mini theme. What would be the best way to submit this? I know ruckage no longer seems to be active with this theme, so a PR of my fork to the original repo may not be the best here.
-
@mrmadcatz Hm. You may submit a PR to the original repo, but certainly feel free to commit it to your fork, if you'd like to maintain it.
-
@pjft Will do. Here is the icon I came up with. It's as close to the "theme" as I could get, but I think I did alright:
This is an alternate:
And one more:
-
@mrmadcatz Wow, this looks cool! Thanks for putting it together :)
-
@pjft Okay, these are the finals that I landed on. I think I imitated the actual icons & logos in the original with 99% accuracy.
forart/icons
andart/icons_usa
:
and for
art/nes_icons
andart/nes_icons_usa
:
I also updated the various folders in the
backgrounds
folder to ensure that however the user has their theme configured via theconfig.xml
used to customize the theme, a corresponding background will be present.I created a pull request to the original ruckage/es-theme-snes-mini upstream repo. Not sure if it'll get accepted, but here's to hoping. Otherwise, I can share my personal Fork of the repo with you that has these icons in it if you'd like (or if you can direct me where to submit them for RetroPie in general, it would be much appreciated).
Either way, cheers and thanks for the awesome new auto-collection.
-
@mrmadcatz Thanks! I don't know know the exact process to submit a new theme to be included on RetroPie.
@mitu is there a process to get a theme added to esthemes? Couldn't find much in the Themes docs.
-
@pjft said in New ES Feature: Random Collection - Testers and Theme makers needed:
@mitu is there a process to get a theme added to esthemes? Couldn't find much in the Themes docs.
Yes, it's a PR to add a line to the
esthemes
module, like this.In this case though, @ruckage's theme readme asks for not redistributing modifications of their theme, so I'll ty to respect that and maybe not approve any forks to be included. However, if you can add it just as a patch/diff to the existing theme, (like this), then I'm ok with it.
EDIT: fixed the PR example link.
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.