Eric Niquette UI, UX, Accessibility

Installing the Battle.net launcher and Blizzard games on the Steam Deck

Published Updated December 6, 2023

The Steam Deck is a fantastic gaming device but its Linux-based operating system can make it a little tricky to install Windows-based game launchers.

Introduction

Itching for Diablo or World of Warcraft on the go? You could use an automated tool and be done in seconds, but half the "fun" of Linux-based systems is figuring out how to make things work, right?

Adding Windows-based launchers to the Steam Deck isn't too difficult thanks to Proton; in most cases, the process only involves a little bit of fiddling and a few settings to configure.

What is Proton?

Proton is the Windows compatibility layer developped by Valve for the Steam operating system. In other words, it allows Linux systems, like the one the Steam deck uses, to run Windows executables when native builds aren't available.

Compatibility

Proton is specialized tool rather than a universal fix. While it enables some - if not most - games to run smoothly, others may simply faily to launch, suffer from performance issues, or encounter crashes.

Before purchasing a game, always check its Steam Deck and Proton compatibility. Steam offers the Deck Verified program which checks for performance, legibility, and controls. The program is not praised for its accuracy, particularly in the indie game scene, but serves as good general marker. Additionally consult community-driven resources like ProtonDB as you'll often find solutions to common issues in the comments.

Automatically installing the Battle.net launcher

There are a handful of automated and semi-automated tools designed to add non-Steam launchers to the Steam Deck. The one I prefer is, fittingly, called NonSteamLaunchers and is simply run directly from a small script.

  1. Boot the Deck into desktop mode (Nested Desktop mode may not work for this)
  2. Download the .desktop file and save it to your own desktop
  3. Run NonSteamLaunchers.desktop from the desktop
  4. Check the desired options and press OK to being the installation. Steam will then restart.
  5. While still in desktop mode, open your Steam games list and launch Battle.net
  6. Login to Battle.net and install the desired games
Screenshot of the NonSteamLaunchers launcher selection menu with the Battle.net option checked
NonSteamLaunchers supports a wide array of tools and websites, including Battle.net.

That's all there is to it. The shortcut should automatically be configured to use Proton and can be launched from game mode as well. Diablo, Warcraft, and others can be launched from Battle.net.

Manually installing the Battle.net launcher

Configuring the installer

The first thing you'll need to do is download the Battle.net installer. Save the executable to your desktop so its easy to find. Right-click the file and select "Add to Steam."

We now need to set the launcher to run with Proton:

  1. Boot the Deck into desktop mode
  2. Open Steam and navigate to the Games list
  3. Right-click "Battle.Net-Setup.exe" and select Properties
  4. Select the Compatibility tab
  5. Enable "Force the use of a specific Steam Play compatibility tool"
  6. Select "Proton Experimental" or the most recent version if that fails
  7. Close the Properties panel

The launcher is now configured to run in Proton. You can launch it to begin the installation.

Installing Battle.net

Once the installer fires up, select the appropriate language and select Continue.

When prompted to select an installation path, you can leave it at the default path, which will install in the Proton-emulated Windows in the home directory, or select your own. The Z:/ drive is your internal solid-state drive, and E:/ is typically the SD card.

Once the installation completes, exit the application and remove "Batte.Net-Setup.exe" from your games list. We don't need it anymore.

Adding the launcher to Steam

To add the launcher to our Steam Games list, we'll have to locate the laucher's executable.

  1. Boot the Deck into desktop mode
  2. Open Steam
  3. Select the "Games" menu option
  4. Select the "Add Non-Steam Game to My Library" option
  5. Press the "Browse" button
  6. Navigate to the following folder where the ID value is the most recent ten-digit (the longest ones in there) folder found in the "compdata" directory:
    /home/deck/.local/share/Steam/steamapps/compatdata/ID/pfx/drive_c/Program Files (X86)/Battle.net/
  7. Select "launcher.exe"
  8. Close the Properties panel

Tip: If you can't find the file, open the file browser (Dolphin) and navigate to the compatdata folder. From there, run a search for "launcher.exe" and add it to your Steam library.

Configuring the launcher

Like the installer, the executable has to be configured to use the Proton compatibility layer:

  1. Select "launcher.exe" in your games list
  2. Press the Manage button
  3. Select Properties from the drop-down menu
  4. Select the Compatibility tab
  5. Enable "Force the use of a specific Steam Play compatibility tool"
  6. Select "Proton Experimental" or the most recent version available
  7. Close the Properties panel

Troubleshooting

A recent Linux update seems to be breaking the launcher for some users. To rectify the issue, add the following string to the Launch options:

WINE_SIMULATE_WRITECOPY=1 %command%
Screenshot of the Steam launch options command

Conclusion

You should now have a working installation of the Battle.net launcher on your Steam Deck. If you want to launch games directly, bypadding Battle.net, you can repeat the process of adding it to your games list.

Customize the launcher

If you'd like to customize the launcher's artwork in Steam, you can use the SteamGridDB Decky Loader plugin for a seamless integration.