User interface for modifying hotkeys

Started by Proxima, August 15, 2019, 03:48:31 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Proxima

Having just installed NL 12.6, one of the first things I wanted to do was make my own set of hotkeys, which I never really did with past NL versions -- I always used the defaults with a few changes. I'm not at all happy with the current interface, so I wanted to open a discussion about how it could be improved. (I grant this is probably not high priority, since setting hotkeys is something most users will only do once and then never look at again.) My complaints are:

* On opening NL for the first time, I am prompted to choose between two hotkey layouts by name -- I forget exactly what the names were, but they didn't tell me anything about what the layouts actually were.

* A new player might not want either of the default layouts, but a blank layout (perhaps with just the mouse functions and Esc?) so it's quicker and easier to input their own preferred hotkeys.

* Moving on to the hotkey selection screen itself. It wasn't at all obvious that after pressing, for example, "S" and then choosing what function it has, I had to deselect it by clicking in the list of hotkeys, then pressing something else. To my mind, it would be better for pressing any key to always select that key.

* Assigning a function to a key that currently doesn't have one is awkward -- I have to select "Show Unassigned Keys" or use "Find Key", and in the latter case it turns "Show Unassigned Keys" on for me. Having this off is useful so I can get an overview of the keys I've assigned and whether there are any important functions I haven't assigned a key to yet. It would be better if the unassigned key just appears at the bottom of the list. (Also, "Find Key" would be redundant with my suggestion that pressing a key always finds it.)

* Pressing Tab cycles between the buttons, which at first gave me the impression I would be unable to select Tab to change its function. (It turns out you can select Tab by pressing T, which cycles between all the keys whose names start with T.) I can easily see new players making this mistake and either getting frustrated or settling for a layout that's not actually what they would prefer.

namida

First two are very good points, and should be fairly easy to resolve.

I'm not sure what you mean by the 3rd point. This is probably something that will make more sense to me once I try to reproduce it.

Fourth one - specifically moving them to the bottom of the list - should be doable, although a bit trickier than resolving the first two points.

The last one is because forms, by default, have special behaviour for tab. I think, if I want to address this, I would have to disable keyboard input (other than for the purpose of pressing a key to select it in the list, of course, or typing into the enter duration box for frameskips) on this menu altogether - otherwise, even if it's resolved for Tab, it may remain an issue for other keys.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Simon

Very nice, yes, there is lots of UI improvement potential in the hotkey dialog. Proxima and namida have the big points already.

If we keep Find Key button, remove the one-time message box on the Find Key button, and instead put the msgbox's text on/besides Find Key.

-- Simon

namida

For the next update, I have implemented the suggestion of having a nearly-none setting. The new third option sets only 5 keys - pause on MMB, hold-to-scroll on RMB, zoom in and out on the respective directions of the mouse wheel, and exit gameplay on Esc.

The rest of these are bigger changes, so any change on them will come later.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)