ValveSoftware / SteamOS

SteamOS community tracker
1.54k stars 69 forks source link

Games don't default to system language #862

Open rlach opened 1 year ago

rlach commented 1 year ago

Your system information

Please describe your issue in as much detail as possible:

When launching games on Steam on Windows the games will default to system language. The language set in GameOS settings doesn't seem to matter, and all games default to English.

This is of little problem for some games that allow user to switch language from the get go. But some games throw the player into the game without main menu, and the user doesn't have opportunity to change the language until the game takes the user trough first stage or the tutorial.

Finding the language settings can also be quite hard, especially for users with no to low English knowledge. Additionally some games only allow changing language trough launchers or separate config programs, which are hard to impossible to operate/launch in Game mode(Witcher 2 for example). If you by accident don't change language when Witcher 2 config first appears you won't have another chance unless you reinstall the game or launch the exe in desktop mode.

Steps for reproducing this issue:

  1. Set your language to Polish(other non-English languages will do) in GameOS settings
  2. Disable cloud sync to make sure you don't download configuration with language set by accident
  3. Fresh install Cyberpunk 2077(or any other game supporting Polish)
  4. Launch Cyberpunk 2077
  5. The game launches in English, but it should launch in Polish

Additional note

This MIGHT be a duplicate, or related to https://github.com/ValveSoftware/SteamOS/issues/794 but honestly I don't understand that glibc issue. I think this situation is separate, since it concerns possibly all steam games and not external games like that issue. I haven't found single game yet that would use proper language on launch, the only exception was Monster Hunter Rise, which syncs settings between systems, and downloaded info that I want to use Polish from the cloud.

NightHammer1000 commented 1 year ago

Yep. That is related to my Issue at https://github.com/ValveSoftware/SteamOS/issues/794

The issue here is that we can't change the Locale setting of the OS and Wine defaults either to "en_us" or "C" And there is no easy, working way to get other locals to work in SteamOS. You can try to pass LC_ALL= %command% as an launch Command, but I found that this does not work most of the Time, because the locale files are not found and it defaults back to "C"

bertogg commented 1 year ago

You can try to pass LC_ALL= %command% as an launch Command, but I found that this does not work most of the Time, because the locale files are not found and it defaults back to "C"

Does setting LANG=pl or LANGUAGE=pl make a difference?

rlach commented 1 year ago

I've tried it on Untitled Goos Game. I've uninstalled the game and re-downloaded it (since it was set to Polish in my settings, I wanted to make sure I have a clean install). I've launched it with on SD set to Polish with arguments: LANG=pl LANGUAGE=pl %command% and it defaulted to English. So nope, those don't make a difference.

I've also tried: LANG=pl LANGUAGE=pl LC_ALL=pl_PL.UTF-8 %command% but it didn't help as well.

For comparison launching it on windows 11 set to Polish launches the game in Polish. This game is good for testing it, since the word "Presents" you see in the first logo is translated to "Prezentuje" if you're in Polish language.