14

Now that Starcraft 2 is free to play, is there a painless way to run it in Linux?

People have been doing it with different success for years, but the hacks are spead over different resources and often are distro specific.

I have some specific limitations though.

Since I saw file names like Starcraft64 on a Windows install of Starcraft 2, I would like to run it on a clean 64bit Linux distribution without the multilib 32bit compat layer installed.

I am fine with either 64bit stable wine or the 64bit staging wine, no wrappers like PlayOnLinux or Lutris should be involved.

Is it possible to install and run Starcraft 2 this way?

So far I went to starcraft2.com website and downloaded the installer, but when I ran the file tool on it, I was told it is a 32bit Windows executable, so obviously it won't be able to run under pure 64 wine.

  • 1
    Just so you know: software (and hardware) recommendations are off-topic here. If you're asking about how to get StarCraft 2 to run on Wine specifically, I believe that might be allowed. – Nolonar Nov 17 '18 at 11:33
  • 3
    @Nolonar my question is even more specific, it is about if it's possible to install and run the free version of StarCraft 2 on 64bit Wine. I know it runs on 32bit Wine. Blizzard isn't Linux friendly, so I have to ask here. – AnonymousLurker Nov 17 '18 at 11:39
6

Yes there is, and I'm amazed on how easy that is. You can do all installation, download and configuration with flatpack (a similar installer like Ubuntu snaps).

This is the tutorial for Ubuntu:

sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt-get update
sudo apt install --install-recommends flatpak
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak remote-add --if-not-exists winepak https://dl.winepak.org/repo/winepak.flatpakrepo
flatpak install winepak com.blizzard.StarCraft2

You can also do the same following this guide for other distros.

Seat back relax, that's it. After it finishes:

flatpak run com.blizzard.StarCraft2
| improve this answer | |
  • In Ubuntu 16.04 it's far from painless. I got Warning: org.winepak.Platform.Extension.corefonts not installed during install and thefore running SC2 then throws /app/bin/battlenet-installer: line 21: /app/lib/extension/corefonts/bin/corefonts-install64: No such file or directory. – tmt Jan 31 at 16:09
  • I sort of fixed it by running install of org.winepak.Platform.Extension.corefonts which surprisingly works but then the issues continue: I can start it but half of the fonts in the Battle.net app are unreadable (kind of unsurprising considering the install issues related to fonts). I could still manage to download SC2 anyway (I knew what each of the broken buttons say :-)) but when I start SC the resolution is completely screwed. Hopefully, it works better in newer versions of Ubuntu. – tmt Jan 31 at 16:55
  • I'm running this on Linux Mint 19, based on Ubuntu 18. I have the same problems with the fonts. The resolution you just need to fix inside Starcraft settings (if your resolution is not broken enough lol) and set to you screen resolution. – Erlon R. Cruz Feb 2 at 13:12
  • *update: I have tried to install recently with flatpack but I'm hitting an error in the final step, the 'run' part where the 'Battle.net Launcher.exe' just can't be downloaded. The download starts but errors with connection error in about 18% of download. Curiously if I go to the blizzard site, I get the same error trying to download it manually. – Erlon R. Cruz Feb 2 at 13:18
  • Winepak maintainer has stopped working on the project. Hence this solution does not work anymore. – Karsus May 23 at 14:46
1

I was able to run the installer and load the battle.net login normally with a 64bit wine prefix, so I think it should work fine. This was done on Ubuntu 18.04, with wine-4.0-rc2. As a side note, I did have the multilib 32bit compat layers installed, but I don't know how much that affects 64bit wineprefixes.

| improve this answer | |
  • 2
    lack of multilib limitation is exactly the show stopper, battle.net is 32bit, according to this forum answer us.battle.net/forums/en/bnet/topic/20766717149#post-5 – AnonymousLurker Jan 29 '19 at 13:32
  • Well, when trying to install wine in ubuntu via wiki.winehq.org/Ubuntu , installing just the amd64 part wasn't enough to get a functional wine setup (no wineserver, only wine64 & wine64-preloader). It had to grab the i386 libs & the i386 part of wine as well. Once it did that, the installer ran. So, I'm thinking there's no good way around this. Installing all of wine, while not fully 64-bit, might be your only way. – Alex Castro Jan 30 '19 at 17:14
  • Ubuntu is a multilib distro. – AnonymousLurker May 13 '19 at 11:06
1

Short answer no. It takes several ppa/and git repos and the install seems to change from version to version of Starcraft. So it is always painful. I got the current version running and it is playable (4.10.1.75800). I use the internal intel gpu.

What did not work for me:

  • wine version bundled with the distro (battle net does not even start)
  • wine stable version from winehq with vulkan support and wineD3D (battle.net runs but the game crashes with a segmentation fault)

What did work for me

  • Purge bundled wine

    sudo apt purge wine
    
  • Install wine staging as described here from wine-hq (4.14~bionic) with this workaround here

  • Install the newest winetricks from github repo

    wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
    
  • Install corefonts and d9vk_master via winetricks gui or cli

  • Update to the latest ppa version of the mesa vulkan driver (for intel)

    sudo apt update
    sudo apt install mesa-vulkan-drivers libvulkan1
    
  • Reboot

  • Get the starcraft installer from here and run it via wine
  • I need the nohiz flag to be set to run the game. Otherwise the game crashes after a couple of minutes

    export INTEL_DEBUG=nohiz; wine start /unix .wine/drive_c/Program\ Files\ \(x86\)/Battle.net/Battle.net.exe
    
  • This issue is probably fixed

| improve this answer | |
  • I'm trying to follow the wine-hq instructions; but when I try to install the packages they suggest, I keep getting errors about missing :386 dependencies. How can I install all of those? – einpoklum Sep 28 '19 at 20:11
  • Did you do an: sudo dpkg --add-architecture i386. What is the exact error message? – crasu Sep 29 '19 at 21:15
  • Yes I did. It was a message about "package X depends on pacacke Y:i386 but Y:i386 is not going to be installed"; and then if I also mark Y:i386 for installation, it says "package Y:i386 depends on pacacke Z1:i386 and Z2:i386 but they are not going to be installed" etc. etc. – einpoklum Sep 29 '19 at 21:41
1

I'm too low-rep to comment, BUT I would like to add to @Erlon r. Cruz's answer that you may be required to install some other packages. To his script (prior to the last step) I had to add:

flatpak install winepak org.winepak.Platform.Extension.corefonts flatpak install winepak org.winepak.Platform.Extension.vcrun2015 flatpak install flathub org.freedesktop.Platform.GL.nvidia-XXX-XX flatpak install flathub org.freedesktop.Platform.GL32.nvidia-XXX-XX

where XXX-XX is the version number of your linux nvidia-driver.

After this I had some minor issues, but they all got fixed in client.

| improve this answer | |
-2

Yeah setup Lutris and will be way easier, first install Wine Staging then Lutris, Lutris will handle the prefix and setup for the game which will make you just click "next next finish".

Lutris.net

| improve this answer | |
  • 1
    i'm afraid you didn't read the question and didn't pay attention to limitations – AnonymousLurker Jan 19 '19 at 6:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.