Please Test: Creating Custom Collections
-
@pjft Ohhhh, and the theme I'm using calls them Custom Collections. Gotcha.
-
@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
ZxSpectrumWhere would the
my custom collections
be inserted in this case?
Could we modify the name of the folder tozz my custom collections
in order to have this be the last in the alphabetical order? -
@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.
-
@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.
-
@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.
-
@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" -
@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.
-
@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?
-
@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 -
@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.
-
<?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.
-
@pjft
I tried to recreate and now it works. Even the entryBeat '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? -
@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.
-
@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. Myes_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" />
-
@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.
-
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. -
@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!
-
@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.
-
@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!
-
@pjft Sorry I misunderstood. I thought the
custom-xxxx.cfg
files will be filtered. But this makes no sense in manner. So if you create files as you should do... via keyboard input on ES that string will be filtered - makes sense :)Thank you :)
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.