Kids & Kiosk Mode, coming back [testers needed!]
-
First off, thanks for the great work on this! I can't wait for the PR to go through so this stuff is available on the master.
While you're locking out ES menu options, I'd like to humbly request a "scraper lock" option. This would disable the Scraper (and maybe "Edit This Game's Metadata"), but leave the other ES options alone.
My use case for this is setting up a system for reasonably savvy adults who might want to change their system volume, try out a new theme, or configure a different kind of controller. I wouldn't want to prevent those things by turning on Kiosk mode, especially if I don't know what controller they'll be using. Certain options, like the VRAM limit, might be potentially disruptive, but are basically recoverable.
But that Scraper... Unless they're familiar with ES setup, they aren't going to know what that does, and it's at the very top of the menu, innocent and enticing. It's capable of wiping out hours of hand curated, difficult-to-recover metadata, and it doesn't give much warning.
I think it would be good to be able to protect that with a setting that you have to deliberately turn off, ideally with some kind of "be careful with this" warning. Also, once the system is all setup, the Scraper just takes up space on the menus, but that's minor compared to the above.
Thanks again for the existing effort and for any consideration on this!
-
Hi @AmadhiX ,
Thanks for the feedback, did you encounter any issue while testing?Regarding further flexibility of the items to either show or hide: While I understand the use-case you are describing here, the request is beyond the scope current PR.
What I am trying to cater for here is a limited set of the most common scenarios, and frankly, yours will not easily make the cut.A better solution for you would be to introduce a separate resource file where all items can be manually selected/deselected, depending on the goal that the end-user has in mind. Like proposed by @Rion, @EctoOne, and @paffley earlier in this thread. That however, is a completely new addition to this PR, and I will not pick that up anytime soon. Sorry.
A quick fix would be to just make all gamelist.xml files read-only, that would prevent alterations from within ES. Or use backups, to restore the systems if/when folks destroy it. It will also affect the recorded play history though.If you want to get your hands dirty, it's very easy to remove the scraper menu option altogether, just comment out this line, recompile ES, and you are good to go.
-
Hi @Zigurana,
Thanks for the detailed response, even if the answer was no. :P
I haven't had a chance to test out the latest yet, but I've been keeping an eye on the kid/kiosk branch for a bit and am really glad someone is "bringing it home." I'll check it out with @meleu's tool and post my findings.
I don't think read-only xml files will prevent images from being overwritten, and I don't necessarily want to recompile as a one-off, but I really appreciate your taking the time to offer up those solutions. Maybe one of these days I'll have the time to actually dive into ES and put together a PR of my own. :)
Thanks again!
-
@Zigurana I'm now running the kiosk mode from the official repo and its 100% !
The only thing I would love to see (on my personal build) would be the 'Theme' select option as I like to flick through different themes depending on my mood ha!
If you ever decide to create the .cfg file for what is to be displayed (true/false) as discussed previously, please let me know and ill test for you.
Keep up the great work guys, retropie has come so far! You guys are a credit to the scene.
-
Woaw i miss this thread before, cool to see all you tests :D
The dream will become reality !!!
Winter is coming, and with it Kiosk Mode <3 -
This has just been merged into the master branch,
so if you update from source, you will get it!Edit: I was wrong, see BuZz's response below.
Thanks everyone, for testing this out!
-
@zigurana They will need to update retropie-setup and install emulationstation-dev from experimental or else they won't get it since it's not yet merged to the stable branch which we track from the main emulationstation module
-
@buzz I’ve been trying to follow this the best I can and I know I already updated from source a while back and got the kiosk UI mode added to my build by just updating emulation station and retropie setup. What exactly is it that is still only included in the dev branch? At this point should I just wait and it’ll be merged to the master soon? I’m assuming it’s the finished kids mode and whatever goodies come with that.
-
@paffley 100% agreed with paffley!
-
@cjax08 features are only graduated to the main branch after sufficient testing in the development branch, so really the more people test it the better.
-
@buzz Thanks for the DEV build, it works perfectly :D
@Zigurana I want to try all the options of this new Kids & Kiosk Mod, i write this little notice to know if i forgot noting ?
UI mode to "Full" (no changes), or "Kiosk" which will hide all menu items that can potentially alter the system configuration.
These include:-
For Kiosk, that would mean filtering out all items with the hidden Metadata tag set to true (black-listing).
-
For kids-mode, it would mean filtering out all items, except for the ones with the kid tag set to true (white-listing) .
-
In the Start / GuiMenu : All items except for the "Quit" menu, which only contains the "shutdown system" option.
-
In the Select / GamelistOptions : The CustomCollection menus, and Edit Metadata
As was the case with the previous implementation, unlocking the protected mode (Kiosk), is done by inputting the konami cheat code (up, up, down, down, left, right, left, right, b, a).
Detail :
KIOSK MODE REMOVED OPTIONS
GAMELIST MENU :- JUMP TO LETTER : ??? Why ? Is it possible to make it come back please ? It is important for big rom collections...
- EDITING THIS GAME METADATA : OK
GUI MAIN MENU :
- SCRAPER : OK
- SOUND SETTING -> ONLY VOLUME OPTION : OK
- UI SETTINGS : OK
- GAME COLLECTION : OK
- OTHER SETTINGS : OK
- CONFIGURE INPUT : OK But it can't alter the system configuration, and without it we can't add a new Gamepad if a friend come with it to home...
- QUIT : OK But is it possible to enable the RESTART EMULATIONSTATION to let us add or modify a game on gamelist.xml with PC by SSH. We don't have the option RELOAD GAMELIST on RETROPIE :(
And i'm agree with @pjft for this menu configuration, for my part i prefer remove the Shutdown option too.
Now i must test the KID mod to see what more is removed and if the Gamepad-shortcut for toggling favs was removed.
But i'm locked on KIOSK mode, KONAMI code not working, help please.
-
-
Hi @darknior
There is no reason to yell like that, I can read normal fonts just fine.To switch back, please have a look here: https://github.com/RetroPie/RetroPie-Setup/wiki/Child-friendly-EmulationStation#switching-modes
What type of controller are you using?I'll have a look at the jump-to-letter functionality. Should be easy enough to fix.
Regarding the Quit menu: There is a non-communicated setting:hideQuitMenuOnKidUI
, which will hide the Quit menu altogether when set totrue
. I am not planning on restoring RESTART EMULATIONSTATION in kiosk mode, you should revert back toFull
mode when you are in a administration session. -
@zigurana said in Kids & Kiosk Mode, coming back [testers needed!]:
There is no reason to yell like that, I can read normal fonts just fine.
Sorry lol it's because i write all UPERCASE like on the ES menu, i don't want to cry :p
-
Thanks for jump-to-letter functionality
I try again the code and now it works fine ... strange ...
I have a x360 Pad and a SFC30 Pad. Now it works with the SFC30.Thanks for the doc link :)
-
@darknior
I've prepared a PR for the JUMP TO functionality.
The list of characters now only contains those that are actually present in the list, rather than the complete alphabet. Also added support for numbers and (some) symbols while I was at it.If you would be so kind to test this, using the excellent test tool, I would be most obliged!
repo: zigurana\EmulationStation
branch: JumpToLetterWhenFiltered -
@zigurana Woaw excellent, i didn't see this ES test project before, i love it, so easy and fast to test branch :)
I have test your branch : JumpToLetterWhenFiltered and it works perfectly for me in KIOSK mode and KID mode.
For the KONAMI code, it's with my x360 GamePad i can't perform it :(
With the SFC30 it's work at first try ... i don't understand why? -
@darknior Try to remap the X360 controller in ES. Odds are you have some buttons swapped? Or maybe you're using the "swap ES A/B buttons" setting, and maybe that affects it?
-
@pjft said in Kids & Kiosk Mode, coming back [testers needed!]:
@darknior Try to remap the X360 controller in ES. Odds are you have some buttons swapped? Or maybe you're using the "swap ES A/B buttons" setting, and maybe that affects it?
No i swap no buttons, and don't use the swap ES A/B buttons. I already think to that and also try the code with a b and b a.
Ans all other skin options working fine with the good button when i want to launch a game, quit a list, put a fav ... etc ... -
@darknior Hm.
Have you tried to run
jstest
and confirm that the joystick is only sending those events in order (i.e. that there are no unintended events being sent, like an overly sensitive analog joystick movement or something)? Sometimes my Dual Shock 3 does that, as the analog joysticks are kind of worn out, and they're no longer quite centered at all times.I don't know, if
jstest
doesn't give you any insight into extra events being sent, I don't have any further ideas. -
I have try
https://github.com/recalbox/recalbox-os/wiki/Tester-votre-joystick-avec-jstest-(FR)ls /dev/input/js* jstest /dev/input/js0 (FSC30) and jstest /dev/input/js0 (x360)
I'm not sure to make fine the test, but if i understand fine when i push a key, it works same.
The difference was in the Joystick settings, maybe it is the problem ?
I take this on this folder : /opt/retropie/configs/all/retroarch/autoconfig
# Xbox 360 Wireless Receiver settings input_up_btn = "15" input_down_btn = "16" input_left_btn = "13" input_right_btn = "14"
# 8Bitdo SFC30 GamePad settings input_up_axis = "-1" input_down_axis = "+1" input_left_axis = "-0" input_right_axis = "+0"
Or there : /opt/retropie/configs/all/emulationstation/es_input.cfg
<inputConfig type="joystick" deviceName="Xbox 360 Wireless Receiver (XBOX)"> <input name="pageup" type="button" id="4" value="1"/> <input name="start" type="button" id="9" value="1"/> <input name="up" type="button" id="15" value="1"/> <input name="a" type="button" id="0" value="1"/> <input name="b" type="button" id="1" value="1"/> <input name="down" type="button" id="16" value="1"/> <input name="pagedown" type="button" id="5" value="1"/> <input name="right" type="button" id="14" value="1"/> <input name="x" type="button" id="2" value="1"/> <input name="select" type="button" id="8" value="1"/> <input name="y" type="button" id="3" value="1"/> <input name="left" type="button" id="13" value="1"/> </inputConfig> <inputConfig type="joystick" deviceName="8Bitdo SFC30 GamePad" deviceGUID="05000000102800000900000000010000"> <input name="pageup" type="button" id="6" value="1"/> <input name="start" type="button" id="11" value="1"/> <input name="up" type="axis" id="1" value="-1"/> <input name="a" type="button" id="0" value="1"/> <input name="b" type="button" id="1" value="1"/> <input name="down" type="axis" id="1" value="1"/> <input name="pagedown" type="button" id="7" value="1"/> <input name="right" type="axis" id="0" value="1"/> <input name="x" type="button" id="3" value="1"/> <input name="select" type="button" id="10" value="1"/> <input name="y" type="button" id="4" value="1"/> <input name="left" type="axis" id="0" value="-1"/> </inputConfig>
SFC30 Pad use axis and x360 Pad use button.
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.