ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.19k stars 173 forks source link

Requesting key... never completes for CD key #212

Closed jvarho closed 2 years ago

jvarho commented 11 years ago

I'm trying to get the CD key link for a non-Linux game I own (Crusader Kings II), so I can use it to sign up on their forums. The request never completes, it just says "Requesting key..." and copying to clipboard does nothing.

1) Open the game in library. 2) Click the CD key link on the right hand side. 3) A new window pops up but the request never completes.

System info:

Processor Information: Vendor: AuthenticAMD Speed: 2800 Mhz 4 logical processors 4 physical processors HyperThreading: Unsupported FCMOV: Supported SSE2: Supported SSE3: Supported SSSE3: Supported SSE4a: Supported SSE41: Unsupported SSE42: Unsupported

Network Information: Network Speed:

Operating System Version: Ubuntu 12.10 (64 bit) Kernel Name: Linux Kernel Version: 3.5.0-21-generic X Server vendor: The X.Org Foundation X Server release: 11300000

Video Card: Driver: X.Org Gallium 0.4 on AMD RV770

Driver Version:  2.1 Mesa 9.0
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 60 Hz
VendorID:  0x1002
DeviceID:  0x9442
Number of Monitors:  1
Number of Logical Video Cards:  1
Primary Display Resolution:  1920 x 1080
Desktop Resolution: 1920 x 1080
Primary Display Size: 20.08" x 11.30"  (23.03" diag)
                                        51.0cm x 28.7cm  (58.5cm diag)
Primary VRAM Not Detected

Sound card: Audio device: Nvidia MCP77/78 HDMI

Memory: RAM: 3954 Mb

Miscellaneous: UI Language: English LANG: en_US.UTF-8 Microphone: Not set Total Hard Disk Space Available: 24605 Mb Largest Free Hard Disk Block: 16279 Mb

Installed software:

Recent Failure Reports: Fri Dec 21 11:53:12 2012 GMT: file ''/tmp/dumps/assert_20121221135304_1.dmp'', upload yes: ''CrashID=bp-20540da8-691f-4d9d-be7c-a727e2121221''

frankc-valve commented 11 years ago

Dup of this Steam for Linux group issue (and others related to key activation). We're investigating. For now, the only supported games are listed here.

frankc-valve commented 11 years ago

I tested this with today's build and (although I didn't get a dialog box) the key was copied to my clipboard and I was able to paste it anywhere I needed. Please reopen if you still have issues with the key.

dent007 commented 11 years ago

Today I tried to get "Mount & Blade: Warband" CD key and have totally same issue. Seems like that also actual for all non-linux games in my library (e.g Europa Universalis III).

sxxx commented 11 years ago

I have latest version of Steam, but still have same bug. Can't get key for Europa Universalis III too.

frankc-valve commented 11 years ago

@dent007, how are you accessing this menu option? Using the latest Linux Steam client, I see Mount & Blade on my Libray page but when I right-click I do not have a View CD Key option. I'm not sure this is expected (since I'm using the Linux client) or not but I can't repro your hanging dialog bug.

sxxx commented 11 years ago

@frankc-valve, for me "CD key" option is available in right "Links" menu on game page, right under DLC. Screenshot is here: http://www.sendspace.com/file/u8kq6k It's will be really bad if you completely remove this options for non-linux games, because for Paradox games "cd keys" are used to register games on their forum.

Majkl578 commented 11 years ago

@frankc-valve: Please reopen this as the issue is still unresolved (for me at least). When I request CD Key for Crysis 2 (but it's also same for GTA IV), it never completes, related console output:

CAPIJobRequestUserStats - Server response failed 2
cdkeydisplaydialog.cpp (97) : Assertion Failed: pApp->RequiresLegacyCDKey()
Assert( Assertion Failed: pApp->RequiresLegacyCDKey() ):/home/buildbot/buildslave_steam/steam_rel_client_ubuntu12_linux/build/src/steamui/cdkeydisplaydialog.cpp:97

Installing breakpad exception handler for appid(steam)/version(1360282734_client)
Uploading dump (in-process) [proxy '']
/tmp/dumps/assert_20130208231612_1.dmp
success = yes
response:  CrashID=bp-165462cb-416b-4350-a0ad-9e4a22130208
conq commented 11 years ago

I'm having the same problem with "Wargame: European escalation"

gabbe commented 11 years ago

And I have the same problem with "TrackMania United".

sxxx commented 11 years ago

Still have the same problem with Europa Universalis III.

Bulkin commented 10 years ago

Still a problem: can't retrieve cd key for any non-linux game

jared-wallace commented 8 years ago

Did this ever get fixed? I'm seeing this with the latest build. Trying to get my Doom 3 key.

Strit commented 8 years ago

@jared-wallace I have the exact same issue. Purchased Doom 3 pack, got the doom3-data-steam and doom3 packages from the AUR installed. But I can't get the CD key from steam, which I need to activate the game. The game launches fine, but I get "stuck" on the activation step.

Any idea what can be done here?

jared-wallace commented 8 years ago

I just started downloading the game on a Windows box. VM would probably work too. As soon as it started, I could grab the key.

On December 11, 2015 9:04:40 AM CST, Dan Johansen notifications@github.com wrote:

@jared-wallace I have the exact same issue. Purchased Doom 3 pack, got the doom3-data-steam and doom3 packages from the AUR installed. But I can't get the CD key from steam, which I need to activate the game. The game launches fine, but I get "stuck" on the activation step.

Any idea what can be done here?


Reply to this email directly or view it on GitHub: https://github.com/ValveSoftware/steam-for-linux/issues/212#issuecomment-163958262

Sent from my Android device with K-9 Mail. Please excuse my brevity.

Strit commented 8 years ago

I really hope that "get a windows install" is not the answer from Valve to this problem.

ghost commented 7 years ago

I'm having the same problem. Bought Trackmania 2 Stadium from Steam on Linux but cannot get the CD key to use it to play the game using Wine. The dialog opens but is stuck at "Requesting key..."

rea987 commented 7 years ago

Hi, I am copying my findings from #5024.

System Information

The issue in as much detail as possible:

Steam client has an option to show CD Key of certain games. Here are those games:

ShowCDKeyOnLaunch: https://steamdb.info/search/?a=app_keynames&keyname=179 ShowCDKeyInMenu: https://steamdb.info/search/?a=app_keynames&keyname=181

However, as I found out, Steam for Linux is unable to show cd keys of non-Linux titles:

Here is the CD Key output of Warhammer 40,000: Dawn of War - Game of the Year Edition:

When I try to see the cd key of a Linux game, Steam for Linux instantly shows the key:

Cities in Motion 2 via Steam for Linux:

https://yadi.sk/i/MZ9wymlo3K3d8T

As it turned out Steam client two different method to show CD keys; ShowCDKeyOnLaunch and ShowCDKeyInMenu. Apparently, CD key "option" of the games that use ShowCDKeyOnLaunch method does not show up on Steam client if the games don't support that OS (eg Linux). FlatOut: Ultimate Carnage which uses ShowCDKeyOnLaunch method is an example of that:

Steam for Linux: https://yadi.sk/i/6lVS9Hjx3K5AiM Steam for Windows via PlayOnLinux: https://yadi.sk/i/2NZHmMaP3K5Ai5

On the other hand, CD key option of the games that use ShowCDKeyInMenu method does appear on Steam client of all 3 operating systems, but CD key cannot be retrieved if the game does not support the operating system in question (eg Linux). Previously showed Warhammer 40,000: Dawn of War - Game of the Year Edition is an example of that.

A Feral Interactive employee, edddeduck_feral explained the cause of the problem on Reddit:

https://www.reddit.com/r/linux_gaming/comments/6grmop/steam_for_linux_doesnt_show_cd_key_for_windows/distlgd/

Steps for reproducing this issue:

  1. Launch Steam for Linux
  2. Find a game which has CD key option.
  3. See if CD key option appears.
  4. If CD key option is present, click it to get license code of non-Linux games.

. My system information via Steam client: Github Gist

jomarocas commented 5 years ago

The solution on valve is, games execute proton games only for windows or mac, put the same key that have in windows

Rich43 commented 5 years ago

I have having this issue with Trainz Simulator 12 on Ubuntu, checking for the key is mandatory on startup, so the game will not start.

priand1 commented 5 years ago

FWIW, I can confirm that Tom Clancy's Splinter Cell: Conviction is getting its requested key when I start it with steam for windows and a current wine installation instead of using steam for linux and proton 4.2.2.

Bednar87 commented 5 years ago

I have the same issue when installing assassin's creed unity. "Failed to request product key from Steam, please try again in a few minutes."

erikbadman commented 5 years ago

I also have this issue with Assassins Creed Unity. "Failed to request product key from Steam, please try again in a few minutes."

linux-nost commented 5 years ago

I have the same problem with AC: Unity. I've tried both my copy of the game and my wife's copy, but neither works...

EyeOfMidas commented 5 years ago

I am unable to play Assassin's Creed II for the same reason. I have a CD key I got from Steam Support, but I can't get past this step to actually use it.

WoutLin commented 5 years ago

I have this issue with Driver San Francisco appid 33440. I had Steam on PlayOnLinux and actually got a cd key from Steam. However my PlayOnLinux got deleted and I wish to use Steam Proton but keep getting this error. Even though I have a cd key (I copied it) there is no way (that I have found) to install the key manually. I contacted Steam Support and the response was to report it here.

jomarocas commented 5 years ago

im waiting for this support for proton in linux @kisak-valve but nothing for update, the game that i test is assassin creed 2 only

GabrielGMartinsBr commented 5 years ago

I have the same problem. When I try to run the game and the CD Key error message appears, these two lines are inserted into the terminal:

GameAction [AppID 33230, ActionID 1] : LaunchApp changed task to ShowCDKey with "" GameAction [AppID 33230, ActionID 1] : LaunchApp waiting for user response to ShowCDKey ""

WoutLin commented 5 years ago

I installed Steam on PlayOnLinux and now Driver San Francisco gets the cd key but through Steam Proton it still will not. The only problem now is when the game is launched it says "running" but after about a minute with nothing happening "running" stops and nothing.

tijder commented 5 years ago

I got a way to bypass the steam key not loading. For Assassin's Creed Brotherhood I got it fixed with this steps: You need to edit ~/.steam/steam/appcache/appinfo.vdf . Edit the line with the text "legacykeyregistrylocation^@HKEY_CURRENT_USER\Software\Valve\TestApp48195\SteamKey" edit it to "legacykeyregistrylocation2^@HKEY_CURRENT_USER\Software\Valve\TestApp48195\SteamKey". With this typo steam will start the game without loading the game key.

EyeOfMidas commented 5 years ago

Using @tijder 's tip, I was able to get Assassin's Creed II to start.

I used nano to edit the key legacykeyregistrylocation^@HKEY_CURRENT_USER\Software\Valve\TestApp33361\SteamKey and renamed it to legacykeyregistrylocation2^@HKEY_CURRENT_USER\Software\Valve\TestApp33361\SteamKey

I was prompted to sign in to UPlay and had to link my steam account, but once I did I was able to start Assassin's Creed II without any trouble.

tijder commented 5 years ago

The problem is Steam will repair the file. So I think a nice generic command to run before starting Steam is something like this: sed -i 's/legacykeyregistrylocation/legacykeyregistrylocation2/g' ~/.steam/steam/appcache/appinfo.vdf

linux-nost commented 5 years ago

I've tried the solution @tijder suggested, but it doesn't work in my case. I've noticed that the Steam client recreates the file every time it starts. Then, if I edit the file with the client open it doesn't produce any effect. Maybe I'm doing something wrong... Besides this solution wouldn't work for AC: Unity, because it doesn't seem to store the key in the registry so there is no "legacykeyregistrylocation" record.

jomarocas commented 5 years ago

The problem is Steam will repair the file. So I think a nice generic command to run before starting Steam is something like this: sed -i 's/legacykeyregistrylocation/legacykeyregistrylocation2/g' ~/.steam/steam/appcache/appinfo.vdf

for me working goog but, i waiting for this solution in steam

Arucard1983 commented 5 years ago

Some games from Assassin's Creed saga are not playable on Proton due to CDKey failure. Using Lutris and the Windows version of Steam, all games that requires CDKey runs fine.

Valve should fix this annoyance quickly.

My sugestion are adding a fake Windows setting, such as PROTON_FORCE_WINDOWS=1 on relevant games, in order to get the Windows version keys, and resume the Steam DRM checks.

PedroHLC commented 4 years ago

[Came here from #68, took a look at #190. Someone should close them] Here @tijder solution isn't working, I have 48196 (ACIIB Deluxe CD Key) and 48198 (ACIIB Deluxe Mac) and changing them both doesn't seem to solve anything, using the generic sed doesn't either.

antimech commented 4 years ago

@PedroHLC I confirm. @tijder it doesn't work now.

tijder commented 4 years ago

@antimech for me it's still working. Maybe something else needs to be changed in this file ~/.steam/steam/appcache/appinfo.vdf. I'm running the normal version of ac:brotherhood.

DominykasPetke commented 4 years ago

The editing appinfo.vdf file trick doesn't seem to be working anymore in the Beta (2020-03-03), stable is still fine. (AC:Brotherhood)

Alstruit commented 4 years ago

The problem is Steam will repair the file. So I think a nice generic command to run before starting Steam is something like this: sed -i 's/legacykeyregistrylocation/legacykeyregistrylocation2/g' ~/.steam/steam/appcache/appinfo.vdf

Make sure to set the immutable bit to prevent steam from reverting it back.

# chattr +i ~/.steam/steam/appcache/appinfo.vdf

NexonSU commented 4 years ago

The problem is Steam will repair the file. So I think a nice generic command to run before starting Steam is something like this: sed -i 's/legacykeyregistrylocation/legacykeyregistrylocation2/g' ~/.steam/steam/appcache/appinfo.vdf

Make sure to set the immutable bit to prevent steam from reverting it back.

# chattr +i ~/.steam/steam/appcache/appinfo.vdf

Stable 27.04.2020 not working =(

mohkale commented 4 years ago

still not working with AC2 for me :cry:.

Aquassaut commented 4 years ago

Same with AC2 and AC Brotherhood

jayrlsw commented 4 years ago

I am also having this issue with AC Brotherhood

Cheaterman commented 3 years ago

Bumping this for AC Brotherhood - seems like ValveSoftware/Proton#190 is also a duplicate of this.

jomarocas commented 3 years ago

a update for this?

vaslabs commented 3 years ago

having the same issue, only managed to play AC II by installing through lutris installing steam dxvk (https://lutris.net/games/assassins-creed-ii/) . It plays relatively well , I had only one crash with ~10 hours of play.

cverstege commented 3 years ago

This bug is now known for nearly 8 years. And it most probably is quite an easy fix inside the Steam client. This issue is probably making dozens of games unplayable through proton which otherwise would just work fine. The devs even went the extra mile to prevent the old workaround (this might have been a side effect of something else, but still...) Valve time is crazy. This issue will probably be fixed once Portal 3 or L4D3 is released.

Please Valve devs, I know you hate it too, when a bug this old is still around :) And I'd love to play through the whole Assassin's Creed Saga on my Linux machine!

cverstege commented 3 years ago

To provide some more Information: Assassin's Creed 2 (33230) and Assassin's Creed Brotherhood (48190) won't launch because the key "can't be retrieved from steam". Assassin's Creed Revelations works just fine through Proton.

I think this might be, because of some misconfiguration with the steam depots. AC2 and AC Brotherhood are both available on Mac, but via a strange Mac DLC? Normally this would be done with via a Mac depot on the steam servers, but here it seems to be done with this DLC. So the DLCs for me AC2 are:

and for AC Brotherhood:

I think that the current behavior might be intended, as for those games the Mac and Windows keys might differ. So on Mac, only the key from the Mac DLC should be shown and on Windows only the Windows key should be shown. This might confuse the steam client as there is no Linux key and it is only allowed to show the Windows key if there are no other platform specific keys? It's just a guess.

inside ~/.steam/steam/appcache/appinfo.vdf the games and DLCs have a validoslist which might be the cause for this? I'm just guessing here, as other games that are Windows only and have keys are launching just fine. Their keys are retrievable as well. Like Assassin's Creed Revelations (201870) or the Trackmania² (228760, 232910, 243360, 600720) games and Trackmania Turbo (375900). They also use legacykeyregistrylocation and not legacykeyregistrylocation2. EDIT: the 2 was intended as a typo, so that steam does not try loading the key. Added this for better understanding.

Maybe @kisak-valve @Plagman or @frankc-valve can have a look at this again, as this might be a different cause than the original bug report had.

FYI: sed -i 's/validoslist/oslist/g' ~/.steam/steam/appcache/appinfo.vdf did not help when trying to launch AC2 or trying to retrieve the key, But I think that the file will be overwritten when launching steam. I did not investigate it further. Maybe someone else can try an pick up from here.

Edit: I also tried adding the Steam Key from a Windows install of AC2 to the registry ~/.steam/registry.vdf with:

                "TestApp33361"
                {
                    "SteamKey"      "123-4567-890A-BCDE-FGHI"
                }

This had no effect.

And thank you for your hard work! (Not mine, but it totally stand behind this: https://medium.com/telework/a-thank-you-letter-for-kisak-at-valve-a74115c35d8e)

Edits: added a little more context and steam AppIDs

vaslabs commented 3 years ago

@cverstege I think you are right about steam client getting confused with the keys. If you run it on command line steam does [33230]Non-Steam Controller Configs Enabled: 1 ExecuteSteamURL: "steam://cdkeys/33230"

but if you run steam steam://cdkeys/33361 it works

33361 is the windows dlc

That works without an internet connection (after you get the key once), so there must be a cache or registry file somewhere with the keys, if we find it we can have a workaround until they fix it

cverstege commented 3 years ago

Thanks @vaslabs for the hints. I think the problem is the ShowCDKeyOnLaunch key for the Mac DLCs, as the Windows keys can be requested just fine. I tested it as well. This flag (see https://steamdb.info/app/33362/ for AC2 and https://steamdb.info/app/48197/ for ACB) forces Steam to fetch the CD key when launching the game, even though were not on macos. This flag is also set on the Windows Key, but this seems to be fine. I need to test if the Mac keys are fetchable from a Windows install or what exactly happens there We could remove this from ~/.steam/steam/appcache/appinfo.vdf but Steam will overwrite this which each launch. Maybe starting steam in offline mode will prevent an overwrite? Edit: Steam is stuck on the logging in screen when starting in offline mode and a with modified appinfo.vdf... Valve devs are too clever :smiley:

Trying to add a fake key for the mac dlc in ~/.steam/registry.vdf does not seem to work. Edit: neither does disabling this dlc or removing mentions of it in ~/.steam/steam/steamapps/appmanifest_33230.acf has any effect (online and offline mode, just reinstalls the dlc when starting in online mode). Changing the files at runtime has no effect either