Ever since steam allowed to add non steam games to it that it become my gaming hub having all my games there ready to be launched.

There’s many ways to add blizzard games to steam, but I’ve made bnetlauncher to be the simplest method while retaining the benefits of automatic login.

Howto Use

  1. Extract the included exe to any location you want (ex: steam folder)
  2. Add the exe to steam as a non-steam game shortcut
  3. On the shortcut properties open Set Launch Options… and add one of the following codes:
    code game
    wow World of Warcraft
    d3 Diablo 3
    hs Heartstone
    ow Overwatch
    sc2 Starcraft 2
    hots Heroes of the Storm
    scr Starcraft Remastered
    dst2 Destiny 2 (Bungie seems to have purposely disabled overlay)

The result should look something like this:

Additionally, can also use Change Icon to use the icon of the game you’re adding. If you’re still unsure how it should work you can watch a video bellow of bnetlauncher in action:

Optional: In case of problems logging can be enabled by creating a enablelog.txt file inside "%localappdata%\\bnetlauncher\", you can open the location by pasting the path into explorer or the run dialog in windows (WinKey+R).

Known Issues

    • Destiny 2 will not have Steam Overlay or any associate features when using bnetlauncher. This is intended by Bungie and cannot be resolved. Steam Input users can use GloSC
    • Enabling multiple instances of client in it’s options will break bnetlauncher functionality.
    • Users of MSI Afterburner, Fraps and other overlay software might experience crashes do to incompatibility
      with their own overlay and steam’s, to solve the issue disable the 3rd party application overlay.
    • The game, bnetlauncher and steam must all have the same running permissions to work properly, this means if
      one of them is running has Administrator/Elevated Permissions, then all of them must also be run has
      Administrator/Elevated Permissions.
    • It’s not possible to launch PTR versions of games, bnetlauncher uses client URI handler to
      start the games, which does not support the PTR versions. I haven’t found a solution for this.
    • If bnetlauncher is used to start multiple games at the same time the last ones to launch will not be automaticly
      signed in.
    • Starting multiple copies of Startcraft Remastered may cause bnetlauncher to show an error since the game only allows
      one instance to be run at the same time.
    • Users of the 1.5 beta series will need to delete the “%localappdata%\\ Launcher for Steam”
      directory by hand.
    • There’s no built in routine to clean up the log files if they pile up (logging is disabled by default)
    • On close client will leave a “ghost” tray icon after being closed by bnetlauncher, moving the mouse
      over it will make it disappear.

github repo (Source Code)
Older versions

124 thoughts on “bnetlauncher”

    1. Do you know what’s the new shortcut if any?

      PS: I just downloaded and tested heartstone and the shortcut seems to still function as expected.

    1. The code shouldn’t be hard to follow, almost all the functionality is in Program.cs. Just start in the Main function and follow the code down, if you just read the comments it should give you a general idea. Unless you want to know something more specific.

  1. I’ve followed the included instructions, but it fails to launch the requested program. Checking the logs, it doesn’t display an error.

    [2016-11-08 20:54:29.3360]: Launcher for Steam version 1.8.6156.2282 started
    [2016-11-08 20:54:29.3390]: OS: Microsoft Windows NT 6.2.9200.0, Runtime: 4.0.30319.42000
    [2016-11-08 20:54:29.3420]: Checking for other bnetlauncher processes
    [2016-11-08 20:54:29.3460]: No other bnetlauncher detected
    [2016-11-08 20:54:29.3510]: Got parameter: ow
    [2016-11-08 20:54:29.3550]: Got valid alias for game ‘Overwatch’
    [2016-11-08 20:54:30.0483]: client is fully running with pid = 6200
    [2016-11-08 20:54:30.0513]: Issuing game launch command ‘battlenet://Pro’ at ’08:54:30.0513′

    1. Try this, Click Winkey+R to open the run dialogue and then paste battlenet://Pro on it and OK, does it launch Overwatch? If not you may need to reinstall the client. Alternatively you may try to fix it my using this reg file but reinstalling will likely be there safer route.

  2. Is there any way to toggle a region? For example, I want to launch the Overwatch PTR through this, but it keeps defaulting to the Americas region.

    1. Is there any way to toggle a region? For example, I want to launch the Overwatch PTR through this, but it keeps defaulting to the Americas region.

      This is something I would like to make happen but so far been unsuccessful, I even thought I had figured it out recently but it turned out to be a dead end. So for now there’s just no way to do it, sorry.

  3. And the problem was…. MSI Afterburner/Rivatuner hooking up on overwatch before steam overlay could.

  4. Does the job thanks a lot! Had a problem with it crashing on launch but read the comments and reinstalled battlenet. Thanks!

  5. That’s cool man. I’ll definitely check out the Origin related links, even though I actually don’t have that many games there. I do have quite a few GOG games, though, and it would be nice to use the Steam overlay and still get the tracking and achievements on GOG. But I guess there’s a point where you need to accept that some things won’t always be as streamlined as one would’ve wished. Not in this corporate run, DRM-filled world…

    However. I’m very, very interested in getting Uplay stuff to work with the Steam overlay. I’d say Uplay is probably the only place (except Battlenet) where I actually have “real” games I care about, outside of Steam. And with Wildlands, For Honor and a new WD coming up, a polished script solution (or really any solution) would surely be worth its weight in honey!

  6. Been using the beta version (v17b2) for a few weeks now, works like a charm for Overwatch and HearthStone! If someone made an app like this (*hint hint*) that worked with Uplay, Origin and GOG Galaxy as well, I’d be happy to pay for it in honey, backrubs, money, beer – or any other currency that the developer might prefer.

    Anyway, thanks for all the time and energy you invested in this project. I’ll share your web page forever now <3

    1. You’re not the first to ask for Origin and I’ll say it’s very unlikely I’ll ever do anything with it, I don’t own any recent titles on Origin and the ones I do, battlelogium and Origin Requirement Remover already do everything a launcher could do only much better.

      As for uplay I actually already have a personal solution in the form of a powershell script that use for The division and The Crew, maybe I’ll polish it up for “public consumption”.

  7. So as not to be one of those guys that fixes it and abandons it to leave everyone else in suspense, figured I’d post. I fixed it, in a way that strikes me as odd.. perhaps I missed something somewhere. But, I followed your original screenshots for setting it up; Placing the launcher.exe in the Steam directory and letting that be its place. Worked fine for awhile. Just to try to take a stab at this, I moved the launcher.exe to’s directory instead and adjusted my shortcuts. Has worked fine since with no issues. There permissions on both directories are identical, so I am at a loss to explain why this is.

  8. I reviewed the video a few times, got a overwatch installation on my computer (don’t own it so can only get to the login screen where it asks me if I wan to buy it) and everything seems to be working as it should.

    bnetlauncher requests client to start Overwatch, closes it and reopens it under steam to make steam overlay attach to the game, it all ran on my computer the same way it seemed to run on your video being the only difference the start and stop of atbroker.exe (accessibility tools from Microsoft).

    The only thing that would occur me to try at this point would be to temporarily disable any Anti-Virus or other overlay software to see it has any effect.

    I’ll also try and run some tests some other machines but that’s about all I can do atm.

  9. Daf, I do not. I enabled it just now, the end result was a secondary window popped up prompting me for my login information.

  10. Daf, I apologize for the delay, don’t have much time to sit down and record these things as of late. But I got the footage for you. It’s only of Process explorer itself, and I saw above about disabling browser acceleration but it yielded the same results, so I turned it back on, hence the multiple helper exe’s running.

  11. Thanks for this, really useful 🙂

    You should throw the sourcecode up on github so you people can report issues and maybe even fix them.

  12. If any of you are having the no overlay problem, it may be RivaTuner Statistics Server if you have MSI Afterburner installed. That was my problem. You can disable application detection for Overwatch specifically in the RivaTuner options.

    1. Looked at the log and couldn’t find anything that would explain the behavior you described. So I would really appreciate if you could record it with process explorer open with the bnetlauncher processes visible (minimize wininit.exe and chrome.exe process trees) in the hopes of figuring out what’s going wrong.

  13. Daf,

    I apologize for the late reply, had some RL issues. As I said, the log never had anything in it, assuming it’s in the actual enablelog.txt file. The only thing that’s possibly worth noting is that when I did look in the folder, a file was in there labeled bnetlauncher_startedclient.lock. I deleted it but it never came back. I’m willing to attempt to record behavior and upload it somehow if that would be an example, but it’s not recording logs as it is.

    Is there anything else I can do?

  14. Ah ha! You are correct, I had apparently disabled the hardware acceleration.

    Thank you for the note about the flaw in my modification. I usually have running, so it would have been awhile before I noticed it but it definitely would have left me scratching my head eventually.

    I have scrapped my modified version and have been using 17b2, your beta version. Functioning smoothly so far, but I will report any issues. Thanks for your swift and thorough responses!

  15. I could never figure out why I don’t have two “ Helper.exe” processes, so I modified your launcher to only check for one. It seems to be working just fine so far, but are there any problems I may run into only checking for one instance of the process?

    Also, any ideas why I no longer have the second helper process? Your unmodified version worked fine for me a few days ago. To my knowledge there hasn’t been any updates to the app and I haven’t made any setting changes.

    1. I honestly don’t know, on my own personal computer client always create the two processes so that’s what i used to make sure the client was fully running. Making bnetlauncher check for a single process breaks launching games without the client running so i’m trying to better understand what’s going on in the client. Some theories I had so far where running the client in admin mode (didn’t work), 32bit windows (haven’t been able to test yet) and the launcher not having 3D acceleration on (not sure how to test for that). Once I actually understand what’s going I hope i’ll be able to push something that might work for everyone.

    2. It seems in Client settings -> general -> advanced settings -> disable browser hardware acceleration will cause only one “ Helper.exe”, I’m assuming you disabled that setting which caused bnetlauncher to fail, I’ll try and figure out a better way to test if client is fully open.

  16. desktop app Helper Update Agent

    Those are the three processes I see running.

  17. It can’t find my launcher anymore today. Battle net is open and running.

    [2016-09-26 14:33:56.1758]: Launcher for Steam version 1.6.6032.35355 started
    [2016-09-26 14:33:56.1788]: Checking for other bnetlauncher processes
    [2016-09-26 14:33:56.1818]: No other bnetlauncher detected
    [2016-09-26 14:33:56.1869]: Using parameter: battlenet://WoW
    [2016-09-26 14:35:56.2755]: Helpers did not start.
    [2016-09-26 14:35:56.2785]: Could find the running and failed to start it. Exiting

    1. It seems bnetlauncher is not finding two processes named “ Helper.exe” running, could you confirm that they’re indeed running on your system when you open the client?

  18. [2016-09-23 15:31:11.2879]: Launcher for Steam version 1.6.6032.35355 started
    [2016-09-23 15:31:11.2889]: Checking for other bnetlauncher processes
    [2016-09-23 15:31:11.3309]: No other bnetlauncher detected
    [2016-09-23 15:31:11.3319]: Using parameter: battlenet://Pro
    [2016-09-23 15:31:11.6679]: client is fully running with pid = 6652
    [2016-09-23 15:31:11.6689]: Issuing game launch command at ’03:31:11.6679′

    i cant launch overwatch 🙁

  19. Bnetlauncher stopped functioning for me as of the Streaming update. I followed your instructions to enable logging but nothing is in the log itself. If this was already solved I apologize but saw nothing. Blizzard file Switch’s association is present. I too am running Windows 10 Pro x64 Build 1511.

    The behavior is as follows; The launcher WILL actually make the game of choice launch, but the process itself terminates and I get no overlay. In Overwatch’s case in particular, it will launch, try to connect and have an overlay, then closes, then re-launches and prompts me for my login.

    Any help would be appreciated, hate not having my overlay.

    1. Do you have blizzard streaming enabled? Could you also still post the log (or email it to me if you prefer)?

  20. I just tried and Windows doesn’t recognize the command, it asks me to search an application on the Windows Store. It could be the problem, I don’t know if it’s specific to me or if Blizzard changed something but it doesn’t work on my friend’s computer too.

    Thank you for your answer

    1. There’s a few things you can try, you can go to “Control Panel\Programs\Default Programs\Set Associations” and check if BATTLENET entry is associated to “Blizzard File Switcher” (it’s actually just the in program files), you can try reinstalling the client to see if it restores the association or you can try importing this regfile of the file association i took of my computer (Windows 10 Pro 64bit), only do the registry import as a last resort though.

  21. Good morning,

    Your launcher worked a few months ago but I think a recent Battlenet update broke it, it doesn’t work anymore. Here is the log :

    [2016-09-07 13:28:54.2728]: Launcher for Steam version 1.6.6032.35355 started
    [2016-09-07 13:28:54.2932]: Checking for other bnetlauncher processes
    [2016-09-07 13:28:54.2987]: No other bnetlauncher detected
    [2016-09-07 13:28:54.3032]: Using parameter: battlenet://WoW
    [2016-09-07 13:28:54.3670]: client not running, trying to start it
    [2016-09-07 13:28:55.4422]: Failed to start client.
    [2016-09-07 13:28:55.4452]: Could find the running and failed to start it. Exiting

    Thank you for your work by the way

    1. With the client closed, could you try pressing Winkey+R to open the run menu and typing battlenet:// and seeing if the client actually starts?

  22. Do you plan to add support to Overwatch Test and add an option to toggle if should close or not after the game launches?

    1. Sorry for the late reply (notification on new comments borke down).

      Supporting the launch of PTR version is not supported trough the current method used by bnetlauncher, I might look into it but atm there’s no immediate plans to add it.

      As for leaving client open it’s not a good idea as it would make steam think you never closed the game until you closed the client. I already spent a few hours trying to work around that without much success.

  23. Tried using this today on Windows 10 Pro, but nothing happens. Tried with the client running and closed.

    Here’s the log:

    [2016-08-25 15:54:01.1277]: Launcher for Steam version 1.6.6032.35355 started
    [2016-08-25 15:54:01.1297]: Checking for other bnetlauncher processes
    [2016-08-25 15:54:01.1337]: No other bnetlauncher detected
    [2016-08-25 15:54:01.1377]: Using parameter: battlenet://Pro
    [2016-08-25 15:56:01.2405]: Helpers did not start.
    [2016-08-25 15:56:01.2425]: Could find the running and failed to start it. Exiting

    1. Are you running the client as administrator? The log seems to indicate bnetlauncher is finding a client but not helper processes

  24. I get a strange error that doesn’t let me launch any games using bnetlauncher… Instead, a windows 10 “choose an app to open bnetlauncher” that’s completely empty shows up instead and doesn’t boot any games. Here’s the log:

    [2016-08-22 15:49:33.8424]: Launcher for Steam version 1.6.6032.35355 started
    [2016-08-22 15:49:33.8424]: Checking for other bnetlauncher processes
    [2016-08-22 15:49:33.8474]: No other bnetlauncher detected
    [2016-08-22 15:49:33.8474]: Using parameter: battlenet://Pro
    [2016-08-22 15:49:34.1208]: client is fully running with pid = 4164
    [2016-08-22 15:49:34.1208]: Issuing game launch command at ’03:49:34.1208′
    [2016-08-22 15:49:34.2024]: Searching for new child processes for the game
    [2016-08-22 15:49:34.3485]: No child process found.
    (goes on for a while)
    [2016-08-22 15:49:45.2656]: No child process found.
    [2016-08-22 15:49:45.9070]: No child process found.
    [2016-08-22 15:49:46.5643]: No child process found.
    [2016-08-22 15:49:47.2169]: No child process found.
    [2016-08-22 15:49:47.8617]: No child process found.
    [2016-08-22 15:49:48.5076]: No child process found.
    [2016-08-22 15:49:49.1505]: No child process found.
    [2016-08-22 15:49:49.6519]: No child process game found, giving up and exiting

    But if I run the game before bnetlauncher crashes, it works, but doesn’t stick. Upon the next launch, it does the same thing. How can I solve this problem?

  25. Actually scratch that.. I found the issue. It apparently doesn’t like if I run it without being open first. With the older 1.3 I could use this and it would just start it, then launch. But this one seems to be different. Should I just keep the launcher open all the time?

    1. The latest version should work in the same way, are you still having issues? If so could you provide a log?

  26. Sadly this doesn’t work for me anymore. 1.3 recently stopped working, so I updated to 1.6 and it launches the launcher with Overwatch selected, but it won’t automatically start the game. The overlay doesn’t work either, on the launcher nor the game.

  27. I’m running into an unfortunate issue where this program, or, I suppose you can say the Steam overlay, conflicts with TSNotifer (a TS3 overlay If TSNotifier is already running, the game will not allow the Steam overlay to inject, essentially preventing it from being usable even though the game is being launched through Steam. Launching TSNotifier only after the game has started through Steam has the opposite effect; the overlay never appears, but the Steam overlay continues to work.

    I doubt this is an issue you can solve with this utility, but I thought it’d be good to bring it to your attention, just in case.

  28. every time i try to start it, [2016-07-28 01:06:51.3649]: Launcher for Steam version 1.6.6032.35355 started
    [2016-07-28 01:06:51.3774]: Checking for other bnetlauncher processes
    [2016-07-28 01:06:51.3794]: No other bnetlauncher detected
    [2016-07-28 01:06:51.3814]: Using parameter: battlenet://Pro

    this happens and it just says its in game for like 3 seconds and then closes

    1. Hi hedi, sorry for the late reply. Could you see if the “Windows Management Instrumentation” service is enabled and running on your system?

  29. I just tested the new version and everything is working fine for me. I only have Overwatch though, so I can’t really say anything regarding other games. I’ll download HOTS and HS later.

  30. From the log everything seems to be working as intended so the overlay should be showing normally.

    Do other games show the overlay? If it’s just Overwatch then I’ll try running some tests on a friends machine (don’t own it and there’s not starter edition) .

  31. The log only works if you create a enablelog.txt in %localappdata%\\bnetlauncher\ (you can copy the address into explorer to open it.

    Could you do that and send me the content of the log so I can try and see what’s going on?

  32. Every blizzard games launch well but I don’t have the overlay, and steam doesn’t say I’m in game. I have nothing in the log :/

Leave a Reply

Your email address will not be published.