bnetlauncher

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
    w3 Warcraft 3: Reforged
    dst2 Destiny 2 (Bungie have purposely disabled overlay)
    codbo4 Call of Duty: Black Ops 4

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:

Destiny 2

Bungie has decided to implement anti-cheat mechanisms that also cause most overlays to not work as expected.

See https://www.bungie.net/en/Help/Article/46101 for more information. If you need SteamController functionality https://alia5.github.io/GloSC/ is currently the best option.

Troubleshooting

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

Aditional options

There’s also the following additional options provided by command line switches:

  • --timeout <seconds>, -t <seconds> changes how many seconds it tries to look for the game before giving an error (15 seconds by default).
  • --notask, -n starts the launcher directly instead of trying to use a scheduled task
  • --leaveopen, -l leaves the client open after launcher the game. If combined with --notask option it will show you as playing on steam until you close the client.

Adding more Games

From v2.00 onward bnetlauncher uses a internal gamedb.ini to control how games are launched. More games or custom configs can be manually added by creating a gamedb.ini file in:

  • %localappdata%\madalien.com\bnetlauncher\gamedb.ini
  • the directory where the bnetlauncher executable is located.

gamesdb.ini.sample is distributed with bnetlauncher containing a copy of the built in shortcuts.

Important: Those defaults are not changeble. bnetlauncher will always override them with it’s internal gamesdb.ini file. However it is possible to create different entries with custom options.

Exemple entry:

[codbo4]
name=Call of Duty: Black Ops 4
client=battlenet
cmd=VIPR
exe=BlackOps4.exe
options=noargs,waitforexit

Explaining what each part does:

  • [codbo4] the id that’s passed to bnetlauncher to select the game ie bnetlauncher.exe codbo4
  • name=Call of Duty: Black Ops 4 a friendly name for the game
  • client=battlenet the client the game uses, currently only battlenet is supported
  • cmd=VIPR command to launch the game in the client
  • exe=BlackOps4.exe game exe that bnetlauncher will look for after launch, can use % as a wildcard ie Diablo III%.exe to support 32 and 64 bit builds of the game.
  • options=noargs,waitforexit list of coma separated options, currently supported:
    • noargs doesn’t throw an error when retrieving blank arguments from the game
    • waitforexit leave bnetlauncher open and waiting until the game existing
    • nolaunch don`t directly launch the game but just open the client and try to find the game for an additional 60s this can in theory be used for hacky PTR support.

Known Issues

  • Destiny 2 will not have Steam Overlay or any associate features when using bnetlauncher. This is intended by Bungie and cannot be fixed. Steam Input users can use https://alia5.github.io/GloSC/ to work around it.
  • Enabling multiple instances of battle.net client in it’s options might 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 automatically launch battle.net client PTR versions of games, the client provides no direct option to do this, however a workaround can be done by creating a new game entry and the nolaunch option and manually clicking play.
  • Default launching the client trough a scheduled task may be incompatible with some setups, workaround is provided with notask switch/option.
  • 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.
  • There’s no built in routine to clean up the log files if they pile up (logging is disabled by default)

Uninstalling

To remove all traces of bnetlauncher from your system:

  • type ‘Task Scheduler’ in start menu and open it, expand library and delete bnetlauncher folder to remove the tasks used to start the client
  • type %localappdata%\madalien.com in start menu and open the folder, delete bnetlauncher folder to remove log and gamedb.ini files

Requirements

Special Thanks

internet coder Maruf for ghost tray icon fix code github Ethan-BB for the new parameters to launch games on battle.net.
github RobFreiburger and iMintty for Starcraft Remastered and Destiny 2 support respectively.
/u/fivetwofoureight for creating and allowing me to use his icon. /u/malecden, Maverick, /u/sumphatguy and others for their help pointing out bugs.

Downloads

bnetlauncher_v202.zip
github repo (Source Code, Issue Tracking)
Other versions

169 thoughts on “bnetlauncher”

  1. World of Warcraft crashes on Startup with this LOG:

    —————————
    Wow
    —————————
    This application has encountered a critical error:

    ERROR #132 (0x85100084) Fatal exception!

    Program: D:\World of Warcraft\_retail_\Wow.exe
    ProcessID: 1784
    Exception: ACCESS_VIOLATION

    The instruction at “0x00007ffa06834ee7” referenced memory at “0x0000000000000fa0”.
    The memory could not be “read”.

    Press OK to terminate the application.
    —————————
    OK
    —————————

    best regards

    1. Never experienced crashing caused by bnetlauncher, so right now i’m unable to reproduce the issue. Check if you don’t have other overlay software that may cause instability when interacting with steam overlay or even aggressive antivirus software.

    2. OK, the bnetlauncher won’t work if DirectX12 is enabled in Wow.

      If i switch to DirectX 11, the bnetlauncher works fine.

      Steam doesn’t support DirectX 12 apps.

      best regards

Leave a Reply to Maverick Cancel reply

Your email address will not be published.