Install the latest Wine Staging

The current staging has patches in it to make running StarCraft possible. You can install the latest staging from:

https://wine-staging.com/installation.html

Run the installer inside of a new Wine prefix like $HOME/sc-prefix and install the game there. Do not start the game after the installer is done. Hit x to close the installer when it’s finished.

Before you run it, run wineconfig on your StarCraft prefix.

env WINEPREFIX="$HOME/sc-prefix" wine winecfg

Download the installer from:

https://www.blizzard.com/en-us/download/confirmation?platform=windows&locale=enUS&version=LIVE&id=bnetdesk

Then run the installer

env WINEPREFIX="$HOME/sc-prefix" wine Battle.net-Setup.exe

Then make sure you have the correct dependencies. On Ubuntu I needed to run:

sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install libasound2:i386 libasound2-plugins:i386 libc6:i386 libncurses5:i386 libstdc++6:i386 libxtst6:i386 libldap-2.4-2:i386 libfreetype6:i386

I needed the package libgl1-mesa-glx on Ubuntu 16, but I don’t need that one anymore.

An Arch user reported he needed lib32-mpg123. You might possibly need other packages as well.

I did have to reboot after installing the dependencies and drivers, otherwise they wouldn’t work.

You can create a shortcut like:

env WINEPREFIX="$HOME/sc-prefix" wine StarCraft.exe

that runs inside the StarCraft folder. That way you can run using a shortcut instead of having to manually open a terminal every time.

If you don’t want the launcher to launch modify the shortcut to

env WINEPREFIX="$HOME/sc-prefix" wine StarCraft.exe -launch

Run the DXVK script

I had issues with performance on Nvidia, so to fix them I used DXVK

First you need to make sure you have 64 and 32 bit versions of Vulkan

sudo apt-get install libvulkan1 libvulkan1:i386

download https://github.com/doitsujin/dxvk/releases unzip the whole archive somewhere, open terminal in that folder and run

env WINEPREFIX="$HOME/sc-prefix" ./setup_dxvk.sh install

What this does is it replaces the .dll files in the prefix with the files from the folder and does a native override in winecfg

Issues

If you encounter issues with StarCraft, there are two entries in Wine DB for the latest versions:

SD Remastered

You can check each issue for workarounds. I list some of them here.

Blizzard launcher

If Blizzard launcher has buttons you can’t click or see, change the version of the launcher to Windows 2003. It’s the Battle.net.exe executable inside of Blizzard App folder (not inside the StarCraft folder itself). This will give you a message that your Windows version is not supported, so you can change it back if you don’t need it.

Difficulties logging in, 6:3 Error

If you can’t log in to the Battle.net app, on the log-in screen you will see styled boxes on top. Those do not work. Use the white boxes below them. You won’t be able to see what you’re typing, but you will be able to log in if you type into them and hit the Enter key. If you are logged in, you won’t get 6:3 Error.

Lag in ladder games

Make sure to forward port 6112 on UDP.

Ctrl+5 doesn’t work

Ctrl+5 is a shortcut in fcitx for Reload configuration in Global Config (check Advance Option). Not a StarCraft bug per se, but international users keep running into it.

Appendix: How to Install from source

Use https://github.com/wine-compholio/wine-patched so you don’t have to apply staging patches manually.

$ git clone https://github.com/wine-compholio/wine-patched

and then follow this guide to compile it

https://wiki.winehq.org/Building_Biarch_Wine_On_Ubuntu

Note that you don’t need to run the `clean` command on a freshly created folder.

After you finish building the 32 bit Wine you don’t need to install it system-wide, just make the shortcut point to the correct version of Wine.