Fix for Linux/Lutris users stuck in Battle.net update loop

After lots of tinkering I found a fix.

  1. Download that copy of the old Agent.exe in another comment or use an old backup you have

  2. Rename/backup old Agent8009/Agent.exe and paste the new one there (ignore the new Agent8012 and make sure you’re not running the launcher)

  3. In Lutris, right click your bnet entry and Duplicate it

  4. Right-click on the duplicate entry, configure and point to the new Agent8009/Agent.exe you downloaded.

  5. Run the duplicate Bnet entry in Lutris to load the old Agent

  6. Then run your original Bnet entry to load the launcher and it should now update. Tested with WotLK Classic.


Link for old agent can be found on r/Lutris subreddit in this thread:

reddit
/r/Lutris/comments/xkroyc/battle_net_keeps_freezing/ipg4s0c/

edit: A possibly better solution could be renaming your data/cache folder in Agent/Data/Cache and relaunching. Better since it’s simpler and doesn’t need you to download an agent backup if you didn’t have an old one which I luckily did on another pc. Thanks to u/jhu533369 for this option.

1 Like

Should also add that with Wine 7.2.2 or 7.2, it doesn’t start at all. I had to set the runner in Lutris to Lutris-GE-Proton-7-14, then this method worked.

Also, it still doesn’t update. Caught in a neverending loop of “waiting on another update”.

Oh yes I should add that I’m using lutris-staging-5.19 which I changed to a while ago since one of the versions 7x at the time led to crashes/incredibly slow performance and issues on character screen.

Did you try clearing the agent/data/cache so the launcher can refetch the file or by duplicating Bnet in Lutris and pointing the duplicate to executable agent8002, loading that then loading bnet?

I tried both solutions on 2 machines and they worked, although the latter solution didn’t work the first time on my main machine.

Seems to be working now. But I did it differently.

First of all, I didn’t replace any of the Agent.exe files. I have the old Agent.7984 folder still. So I pointed the bnet duplicate to the Agent.7984/Agent.exe, and the original to the standard launcher file.

I’m using lutris-fshack-6.21-6, and I’ve disabled both fsync and esync. Not sure if the latter matters.

And I cleared out the cache folder.

What made the difference for me was allowing the bnet launcher to handle the different Agent.exe files itself, and pointing to my 7984 folder instead.

Edit: I also switched to the beta version of the bnet app.
Edit2: I also switched to windows7 in the wine config for the prefix.
Edit3: It got stuck on “Reclaiming space” for all WoW flavors, but closing down the prefix and all running processes, then starting up again with the old Agent.exe first, then the launcher, that solved it. Updates were able to finish.
Edit4: I enabled fsync and esync on the restart, seems to be working.
Edit5: The game can’t be launched at all from the launcher using this runner, though. Crashes at startup, so I have to run the game exe manually through another prefix with another runner.

First of all, I didn’t replace any of the Agent.exe files. I have the old Agent.7984 folder still. So I pointed the bnet duplicate to the Agent.7984/Agent.exe, and the original to the standard launcher file.

What exactly do you mean by this? Did you symlink some file to Agent.7984/Agent.exe? If so, which file?

I mean exactly what I wrote, I just wrote it kind of messy.

I did not change any of the Agent.xxxx folders at all. This is what I meant.

So in the 2nd lutris entry, the duplicate of the first, I run the drive_c/ProgramData/Battle.net/Agent/Agent.7984/Agent.exe file. With this running, I can start the bnet launcher as per usual, and was able to update the games.

No game would run in this prefix anymore, though. So I made another prefix with windows set to 10, lutris to my most recent and so on, and ran the games manually through that. Should also be noted that we have to manually (or by lutris shortcut like above) run the Agent.7984/Agent.exe file before running the games if we want access to bnet chat and friendslists.

And I didn’t need to symlink anything to Agent.7984/Agent.exe, because I had that folder and its content already.

Agent 8020 fixes these issues

Howdy Everyone!

I do apologies we didn’t post here sooner but the development teams was aware that a recent change did cause havoc with Wine and the software used for Steam Deck. This wasn’t intended.

A fix was deployed and it appears it’s working. If you are still having issues please try a reinstall of the app so it fully updates to the 8020 build.

30 Likes

So is it also safe to turn esync and fsync on without WoW randomly freezing (for me mostly after some hours)?

Thanks Blizzard for the quick fix.

Thank you!

The WoW PTR doesn’t start anymore, complains about unsupported video card, just heads up.

1 Like

I never ran into this except when I leave battle.net running in the background, battle.net will randomly freeze after a while and take down wine with it.

1 Like

thanks for the fix blizzard!

Yes, same here but WoW also froze randomly w/o using the bnet launcher at all. I saw that I got the new agent w/o even running the launcher (/home/USER/Games/battlenet/drive_c/ProgramData/Battle.net/Agent/Agent.8020/), so I guess it’s also used by the game client, talking about wotlk classic in this case.

Wow, thank you so much! I’m reinstalling everything now. (Had to factory reset from experiments gone wrong)

This is the funniest unintentional breaking I’ve ever seen, TBH. I think y’all even released an agent in an attempt to fix it that was just as broken as the others. I won’t hold it against y’all, but please respond a little sooner to say it wasn’t on purpose LOL.

Thank you so much. It seems to work. Now i can change the launcher back to bnet instead of starting D3 directly and have to enter the auth code every time… :slight_smile:

Thanks Blizz

This is happening to me too, on beta and ptr but not retail or classicwotlk and It was working last weekend 17th Sept not sure when it stopped working but same issue. Not expecting any official support but just raising awareness.

Thank you. Appreciate that this was done.

Thank you so much for this!!! Jubilant /salute to everyone!!!