ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.24k stars 175 forks source link

American Truck Simulator: no letter inputs #11257

Closed PimpOfSune closed 1 month ago

PimpOfSune commented 1 month ago

Your system information

Please describe your issue in as much detail as possible:

Gamepad and non-letter keyboard inputs are being recognized just fine by the game. But not letters.

Proper en_US layout is selected on game start, I can verify it by trying typing stuff in Steam overlay. The game acts like no keys pressed if I try to use letters anywhere. Notably, I can't connect to World of Trucks anymore since my password, obviously, isn't numbers-only. And the game refuses to paste anything from clipboard either (even through [Shift]+[Insert]). (and I was dumb enough to delete current profile BEFORE trying to make new profile as I wanted to start from scratch, last time I played was before 1.5x update series)

The only other game where I had keyboard issues of SIMILAR kind is Postal 2: there, for some reason, letter inputs are completely scrambled (I enter [A] but the game recognizes it as [D], and [S] is perceived as some numpad input). Every other game behaves fine.

Flipping Steam Input to different options don't seem to affect anything in either game. Removing sticked Thrustmaster GP XID Pro doesn't affect anything either. Swapping controls scheme in the game don't do too. Rollback to v1.49 did nothing (current game version is 1.51). Rollback to v1.43 did nothing either - inputs worked well back in early 2022 but it isn't now.

Steps for reproducing this issue:

Run the game natively. Fail to do anything, including login to World of Trucks account, because letters input from keyboard does not work.

PimpOfSune commented 1 month ago

Outputs from two specific locale related commands from terminal. Feel free to delete this comment if it's redundant.

locale

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=ru_RU.UTF-8
LC_TIME=ru_RU.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=ru_RU.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=ru_RU.UTF-8
LC_NAME=ru_RU.UTF-8
LC_ADDRESS=ru_RU.UTF-8
LC_TELEPHONE=ru_RU.UTF-8
LC_MEASUREMENT=ru_RU.UTF-8
LC_IDENTIFICATION=ru_RU.UTF-8
LC_ALL=

localectl

System Locale: LANG=en_US.UTF-8
               LC_NUMERIC=ru_RU.UTF-8
               LC_TIME=ru_RU.UTF-8
               LC_MONETARY=ru_RU.UTF-8
               LC_PAPER=ru_RU.UTF-8
               LC_NAME=ru_RU.UTF-8
               LC_ADDRESS=ru_RU.UTF-8
               LC_TELEPHONE=ru_RU.UTF-8
               LC_MEASUREMENT=ru_RU.UTF-8
               LC_IDENTIFICATION=ru_RU.UTF-8
    VC Keymap: (unset)                      
   X11 Layout: us
    X11 Model: pc105
PimpOfSune commented 1 month ago

The problem was fixed (kinda) by swapping input sources, making en_US topmost: Screenshot from 2024-09-16 20-36-27 While topmost input source is ru_RU (or whatever causes the bug for you), launched game still ignores ALL letters regardless of currently selected keyboard layout. As prefering (often inaccurate) list in settings over currently-selected layout is probably 100% game's fault, this issue can probably be closed. And maybe deleted.