Grid Sage Forums

Grid Sage Forums

  • March 29, 2024, 04:56:17 AM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  

News:

LINKS: Website | Steam | Wiki

Author Topic: Local keyboard layout ignored  (Read 8291 times)

infectedm

  • Derelict
  • **
  • Supported Cogmind Alpha Access 2015-2017 (Prime Tier)
  • Posts: 27
    • View Profile
Local keyboard layout ignored
« on: May 24, 2015, 07:08:55 AM »

The game seems to always use US keyboard layout, which is a little confusing when using manual input on terminals. Because I have a german keyboard, pressing z to enter manual mode won't work, because z is switched with y on german keyboards. The terminal commands themselves contain parantheses, which are also mapped differently on my keyboard (shift+8/9 on german keyboard).

Just a minor inconvenience for me, but I thought you should know.

http://frontype.com/keyboarding/540px-Computer-keyboard-Germany.svg.png
« Last Edit: May 24, 2015, 11:17:11 AM by infectedm »
Logged

k00pa

  • Unaware
  • *
  • Supported Cogmind Alpha Access 2015-2017 (Prime Tier)
  • Posts: 2
  • \o/
    • View Profile
    • http://devblog.laurimakinen.net/
Re: Local keyboard layout ignored
« Reply #1 on: May 24, 2015, 10:45:19 AM »

Same issue here with Finnish keyboard.

I cannot use the [ ] keys to scroll the inventory.

http://frontype.com/keyboarding/540px-Computer-keyboard-Sweden.svg.png
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #2 on: May 24, 2015, 10:30:29 PM »

Same issue here with Finnish keyboard.

I cannot use the [ ] keys to scroll the inventory.

http://frontype.com/keyboarding/540px-Computer-keyboard-Sweden.svg.png
No wonder you were asking me where that was ;). (Temporary workaround, by the way: Use t/m/i keys to sort your inventory and get different items to the top--it's rare that you'd have more than 15 or so items, anyway. Or I could be wrong and some of you are major packrats--Cogminds masquerading as Scavengers :P)

It is true Cogmind is based entirely on US keyboard values. One solution would be remappable keys, though as I've discussed elsewhere that's almost certainly not going to be a possibility.

I could however look into detecting layouts and translating keys automatically, though I didn't have experience with this and wasn't sure if that would be an optimal solution for players with non-US keyboards. I'm also not sure yet that the engine can support it in an ideal manner. If I can get something like this to work, I could combine it with a text file parser that allows anyone to define keys to translate into other keys, though I'd have to look into what values that would take in order to be compatible with the engine.

This might take some work, but I do believe it's very important. I'll be leaving this in the open bugs board and anyone else feel free to chime in.
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

cpf

  • Unaware
  • *
  • Supported Cogmind Alpha Access 2015-2017 (Prime Tier)
  • Posts: 1
    • View Profile
Re: Local keyboard layout ignored
« Reply #3 on: July 01, 2015, 02:55:41 AM »

+1; as a dvorak user, this is a biggy for me :)
All other roguelikes don't have an issue with it, and I'm quite proficient in vim keys because of my job.
Translatable keys would be cool, preferably you'd take the input the os gives. I'm guessing you're currently "reading the keyboard raw"?
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #4 on: July 01, 2015, 07:44:02 AM »

+1; as a dvorak user, this is a biggy for me :)
All other roguelikes don't have an issue with it, and I'm quite proficient in vim keys because of my job.
Translatable keys would be cool, preferably you'd take the input the os gives. I'm guessing you're currently "reading the keyboard raw"?
Ooh, a Dvorak user, welcome :)

It currently reads the raw input because that's all the underlying library provides. There's no easy way around it, but I'll try something eventually. I'm sure it will end up being a huge time sink :/
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

Reiver

  • Derelict
  • **
  • Participated in the Alpha Challenge 2015
  • Posts: 64
    • View Profile
Re: Local keyboard layout ignored
« Reply #5 on: July 05, 2015, 09:29:13 PM »

FWIW, I'm a Dvorak user, too.

I've just been switching my keyboard layout back to ASCII to run the game. It's not ideal, but I'm pretty used to doing it with shonky software. :P ;) (Yes, I'm kidding.)
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #6 on: July 05, 2015, 09:38:22 PM »

Oh wow, a second Dvorak user... I wasn't even aware of these keyboards until a few months back when reading about alternative US layouts. Pretty cool stuff, too bad it didn't become a standard :/

I do hope to find a satisfactory solution, though it won't be in the near term.

Shonky?!
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

Reiver

  • Derelict
  • **
  • Participated in the Alpha Challenge 2015
  • Posts: 64
    • View Profile
Re: Local keyboard layout ignored
« Reply #7 on: July 06, 2015, 06:20:09 PM »

Inability to deal with alternative keyboard layouts is a classic hallmark of shonky software, yes :D

That, if nothing else, is probably reason enough to bother - professional pride.  ;)
Logged

simendsjo

  • Unaware
  • *
  • Posts: 8
    • View Profile
Rebindable key mappings?
« Reply #8 on: July 09, 2015, 09:13:30 AM »

Running the game on a non-qwerty keyboard and/or keyboard without dedicated numpad doesn't work very well.

I'm running the programmer dvorak keyboard layout on a TypeMatrix 2030 keyboard, and while several keybindings works as expected, several don't.

NOTE: I'm running the game in Wine, and this might be the cause of my issues, but I'm not able to verify this as the game won't run in my virtualized windows environment (VirtualBox + Win 8.1).

NOTE2: I've only been playing for <20m, so some of these issues might be a little premature to bitch about :)

General: When wanting a number, it doesn't actually check of the number is pressed, only the specific key. Example: 1 is Shift+( on my keyboard, but pressing ( is interpreted as 1. Pressing Shift+( doesn't do anything (mayby it's interpreted as '(' and not bound?).
The Shift key might be the problem here (but other things are working with shift).

Trying to see the keybindings forces all dialogs (like item info) to be closed first. This is a bit annoying.

Having to press ESC to close each window and the key also working as a menu toggle is very annoying... I would rather have a dedicated close/cancel key.

Should it be possible to change the L\A\I\C view using keyboard shortcuts? A and C would clash with Shift-a~z for part info.

Trying a keybinding that isn't sensible in a situation should preferably give an error message to avoid confusion. Did I press the right key? Why doesn't it work now? Do I need to recheck the bindings? Messages like "Cannot xxxx without yyy", "C-S-1 not bound to an action" and similar is nice to have.

Menu screen: I'm unable to get to the menuitem 6 og 7 on my keyboard (the keys ] and [).

Force Melee: C+S+movement. On my keyboard this is C+S+Fn+Movement, and doesn't work. I think this is pretty normal

A general suggestion: Make it possible to cycle through items in eXamine mode too.
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #9 on: July 09, 2015, 09:31:00 AM »

Hi simendsjko, I've merged your topic over here in the open bugs board where we've been discussing this.

Keyboard layout detection is for now restricted by an unfortunate limitation of the engine, one that I'll eventually be trying to work around. It does indeed currently only detect keys by their location, so all the strangeness you're experiencing would be caused by that. If you can't use a different keyboard and/or setting (not ideal, I know), for now the mouse works for everything, though yeah, not as hardcore or satisfying as kicking butt with the keyboard :P

Having to press ESC to close each window and the key also working as a menu toggle is very annoying... I would rather have a dedicated close/cancel key.
I find that annoying, too, and I didn't even include this "feature" in the initial release, a decision not well received by several people so I added that behavior in Alpha 1b. ESC was the dedicated key! The menu toggle as you call it was accessed by F1, ?, and F12. I did give in to the idea that for beginners "ESC" is the most natural way to access a game's main menu...

If it annoys you, I could add a switch to the config file to turn it off manually. How about that?

Should it be possible to change the L\A\I\C view using keyboard shortcuts? A and C would clash with Shift-a~z for part info.
Yeah, there aren't any keys left :/

Trying a keybinding that isn't sensible in a situation should preferably give an error message to avoid confusion. Did I press the right key? Why doesn't it work now? Do I need to recheck the bindings? Messages like "Cannot xxxx without yyy", "C-S-1 not bound to an action" and similar is nice to have.
I think this is mostly a side-effect of your alternate keyboard layout, which is the real root of the problem there.

A general suggestion: Make it possible to cycle through items in eXamine mode too.
Ctrl-Tab does that (and Shift for reversal, as expected).
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

simendsjo

  • Unaware
  • *
  • Posts: 8
    • View Profile
Re: Local keyboard layout ignored
« Reply #10 on: July 09, 2015, 10:58:04 AM »


(...) for now the mouse works for everything, though yeah, not as hardcore or satisfying as kicking butt with the keyboard :P

Not at all :) But I don't understand why the keyboard mode has to
be distinct from a regular mode with mouse? Other games supports
both and lets you use the mouse when useful. A good example is
tiled crawl / stone soup where you can click on the mini-map with
the mouse as auto walk. There is no need to change modes, just
only use one peripheral at a time.

(...) The menu toggle as you call it was accessed by F1, ?, and F12. I did give in to the idea that for beginners "ESC" is the most natural way to access a game's main menu...

If it annoys you, I could add a switch to the config file to turn it off manually. How about that?

Adding a switch doesn't sound like a good solution. Adding
switches for a lot of things tends to clutter the interface, help
page and code-base. I would much rather have as many keybindings
as possible configurable. Settings such as this is perhaps most
useful for games used to roguelikes, and the same gamers is also
used to manually editing configuration files.

Should it be possible to change the L\A\I\C view using keyboard shortcuts? A and C would clash with Shift-a~z for part info.
Yeah, there aren't any keys left :/

I noticed these are actually bound to F5-F8, so just changing the
text in the GUI should fix the confusion.

Trying a keybinding that isn't sensible in a situation should preferably give an error message to avoid confusion. Did I press the right key? Why doesn't it work now? Do I need to recheck the bindings? Messages like "Cannot xxxx without yyy", "C-S-1 not bound to an action" and similar is nice to have.
I think this is mostly a side-effect of your alternate keyboard layout, which is the real root of the problem there.

I agree if you look at my example (because of the odd
number-buttons), but I find it useful in the more general case.
Shift+A when no Power is assigned doesn't give feedback. , and
; doesn't give any feedback and so on.

A general suggestion: Make it possible to cycle through items in eXamine mode too.
Ctrl-Tab does that (and Shift for reversal, as expected).
[/quote]

Sorry, my bad. Didn't read the documentation properly.
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #11 on: July 09, 2015, 09:00:56 PM »


(...) for now the mouse works for everything, though yeah, not as hardcore or satisfying as kicking butt with the keyboard :P

Not at all :) But I don't understand why the keyboard mode has to
be distinct from a regular mode with mouse? Other games supports
both and lets you use the mouse when useful. A good example is
tiled crawl / stone soup where you can click on the mini-map with
the mouse as auto walk. There is no need to change modes, just
only use one peripheral at a time.

(...) The menu toggle as you call it was accessed by F1, ?, and F12. I did give in to the idea that for beginners "ESC" is the most natural way to access a game's main menu...

If it annoys you, I could add a switch to the config file to turn it off manually. How about that?

Adding a switch doesn't sound like a good solution. Adding
switches for a lot of things tends to clutter the interface, help
page and code-base. I would much rather have as many keybindings
as possible configurable. Settings such as this is perhaps most
useful for games used to roguelikes, and the same gamers is also
used to manually editing configuration files.
The switch wouldn't go in the interface. It would be a cfg-only feature. That's where I put special requests by players that aren't needed by the majority. We already have several switches based on requests between Alpha 1 and 1b.

Keybindings might never be manually configurable. It's the one accessibility feature I want but would require a massive investment of time and may not even work. The best I may be able to allow is detection of keyboard layouts and automated conversion of keypresses. Of course, if I do go that far then manual configuration might be just a little further (but would still be limited in that you couldn't split multi-function keys into separate keys). We'll have to wait and see on this.

Should it be possible to change the L\A\I\C view using keyboard shortcuts? A and C would clash with Shift-a~z for part info.
Yeah, there aren't any keys left :/
I noticed these are actually bound to F5-F8, so just changing the
text in the GUI should fix the confusion.
Fix the confusion, but both looks terrible, and actually adds a different kind of confusion--then you won't so easily remember what each one does. It's theoretically easier to remember "five through eight, in the same order as shown there, with letters representing the word that describes their function." This may not be the case for everyone, but I believe it applies to the majority.

Trying a keybinding that isn't sensible in a situation should preferably give an error message to avoid confusion. Did I press the right key? Why doesn't it work now? Do I need to recheck the bindings? Messages like "Cannot xxxx without yyy", "C-S-1 not bound to an action" and similar is nice to have.
I think this is mostly a side-effect of your alternate keyboard layout, which is the real root of the problem there.
I agree if you look at my example (because of the odd
number-buttons), but I find it useful in the more general case.
Shift+A when no Power is assigned doesn't give feedback. , and
; doesn't give any feedback and so on.
I see what you mean. Hm, due to the way input is distributed, such a notification system could easily be wrong in some cases, unless I put a lot of time into adding special checks all over the place just for this. (The input is distributed from a central management class, but hundreds of individual subconsoles handle their own input and results, and in some cases input might be accepted by multiple consoles and used in some but not others. It's complicated...)
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #12 on: July 09, 2015, 10:19:04 PM »

I don't understand why the keyboard mode has to be distinct from a regular mode with mouse? Other games supports both and lets you use the mouse when useful. A good example is tiled crawl / stone soup where you can click on the mini-map with the mouse as auto walk. There is no need to change modes, just only use one peripheral at a time.
Oh yeah, forgot to address this one. The mode changes are required because some keys and options, and even the hidden cursor, behave differently in each mode.
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon

simendsjo

  • Unaware
  • *
  • Posts: 8
    • View Profile
Re: Local keyboard layout ignored
« Reply #13 on: July 10, 2015, 02:02:26 AM »

I don't understand why the keyboard mode has to be distinct from a regular mode with mouse? Other games supports both and lets you use the mouse when useful. A good example is tiled crawl / stone soup where you can click on the mini-map with the mouse as auto walk. There is no need to change modes, just only use one peripheral at a time.
Oh yeah, forgot to address this one. The mode changes are required because some keys and options, and even the hidden cursor, behave differently in each mode.

I see. Don't think it's a big deal (but somewhat annoying) as it's easy to press F2 -> use mouse -> F2.
Logged

Kyzrati

  • Administrator
  • True Cogmind
  • *****
  • Posts: 4266
    • View Profile
    • Cogmind
Re: Local keyboard layout ignored
« Reply #14 on: November 03, 2017, 06:23:25 AM »

This old topic was more or less resolved (as best as possible given the engine) earlier this year. So any future relevant discussion can continue in the main thread. Cogmind includes a number of keyboard layout files already, with some more to come soon.
Logged
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon