mika76 / mamesaver

Mamesaver is a mame emulated screensaver - get all the good ol' games playing their demo modes while you procrastinate and enjoy!
https://mika76.github.io/mamesaver/
MIT License
37 stars 10 forks source link

Hotkey to switch from screensaver to gameplay #13

Closed nullpainter closed 6 years ago

nullpainter commented 6 years ago

Occasionally when watching the MAME screensaver (instead of doing work), I've thought it'd be nice to actually play the game being displayed. Unfortunately any interaction naturally stops the screensaver.

What are your thoughts about an optionally-configurable hot key (or maybe just tab?) which allows users to enter the game itself? It should be fairly trivial to implement.

nullpainter commented 6 years ago

Was just watching a game which had an inexplicable and slow 'preparing' countdown from 1000 down to 0, and was thinking another nice hotkey would be to ignore the current game (equivalent to going to the screensaver's options, finding the game and unchecking it).

Maybe a global 'enable hotkeys' option would cover both of these?

Then you could have further keys to skip to the next game, etc.

(Ah, feature bloat!)

mika76 commented 6 years ago

They sound great to me - actually the play game hotkey idea I remember someone mentioning years ago so it seems like it would be quite useful.

(Ah, feature bloat!) To tell you the truth it's nice that someone is showing the project some ❤️ and it's nice to hear other ideas for how it can grow.

nullpainter commented 6 years ago

Then you could have further keys to skip to the next game, etc.

To facilitate this, I may shuffle the game list on startup and play them in shuffled order instead of randomly selecting a game each time. This will also minimise the chance of users seeing the same games too often.

So, hot keys thus far could be:

  1. Enter game mode (with #15, this will be quite visible as the bezel will be hidden and the game view size increased accordingly) - maybe tab?
  2. Deselect game from inclusion in saver, skipping to next game - maybe del?
  3. Next game
  4. Previous game
  5. Donate bitcoin $ (j/k) 😉
mika76 commented 6 years ago

Sounds great - with #15 you could show the name of the next and previous game too - if you make the bezel bigger you could even show this menu of buttons - just remember this is a screensaver first so nothing should actually be on the screen in the same place for too long - a menu might not be the best idea

nullpainter commented 6 years ago

Hotkeys functionality all completed! The only outstanding thing is documenting it outside README.md. I toyed with a tooltip on the screensaver dialog, but this looked a bit naff.

I don't think there's too much of an issue displaying the hotkeys in-game - burn-in really isn't a problem with LCDs - but I was thinking that we could either change its position per game, or just display it for the first game?

I've attached a quick prototype for your thoughts. Unfortunately the keyboard font I found doesn't scale well, so don't mind that (also don't worry about the game title - it was called 'A' because I was testing my game shuffling was sane) 😄

Do you think that something like this is too intrusive? I'm in two minds. I currently have the hotkey toggle on the main tab, but I could always make a new Hotkeys tab and just list them there. Would save faffing with my .lay builder, too...

hotkeys

nullpainter commented 6 years ago

I currently have the hotkey toggle on the main tab, but I could always make a new Hotkeys tab and just list them there.

I think I'm rubber ducking now. I may just add a new tab unless you really want them in-game...

andyvans commented 6 years ago

Showing them on the first game is probably enough. It really doesn't take long to remember what they are.

nullpainter commented 6 years ago

More drab, but does the job. Thoughts?

image