Installation de l’application Blizzard Battle.net avec Wine

update Fonctionne encore mieux avec wine-3.17 !


Pour pouvoir jouer à Hearthstone sous Ubuntu, j’utilisais habituellement PlayOnLinux, mais depuis quelque temps ça ne marche plus car ce n’est plus suffisamment à jour :(

Du coup le mieux c’est d’installer l’application Blizzard Battle.net juste avec Wine. Le gros avantage est la rapidité de lancement du jeu : là ou je pouvais attendre 5 minutes avant de voir l’application s’afficher, c’est désormais instantané !!

Script

Mon snippet bitbucket est la version la plus à jour du script.
Clonez ou téléchargez le où vous voulez, et pour des raisons pratiques créez un lien symbolique dans les scripts locaux :

sudo ln -s ~/blizzard-battlenet-via-wine/blizzardBattleNet.sh /usr/local/bin/blizzardBattleNet.sh

Voici également une copie du script, si vous préférez :

#!/bin/bash

if [ $# -lt 1 ] ; then
    echo "[error] you need to specify an options: run, config or install"
    exit
fi

# initialize
argument=$1
export WINEPREFIX=~/.winehq/blizzardBattleNet
programFiles="$WINEPREFIX/drive_c/Program Files (x86)"
installFile="$WINEPREFIX/install.exe"
runFile="Battle.net Launcher.exe"

# create prefix
if [ ! -d $WINEPREFIX ]; then
    mkdir -p $WINEPREFIX
fi

# boot
wineboot

# install
if [ "$argument" = "install" ]; then
    if [ -d "$programFiles/Battle.net" ]; then
        echo "[error] application already exists, remove it before install"
        exit
    fi

    winetricks fonts corefonts
    winetricks dlls vcrun2015
    winetricks settings win7
   
    wget -O "$installFile" "https://www.battle.net/download/getInstallerForGame?os=win&locale=enUS&version=LIVE&gameProgram=BlizzardBattleNet_APP"
    wine "$installFile"
# config
elif [ "$argument" = "config" ]; then
    winecfg
# fix
elif [ "$argument" = "fix-hearthstone-fireside-gathering" ]; then
    echo "[info] removing the file $programFiles/Hearthstone/Hearthstone_Data/Plugins/LocationAPI.dll"
    rm "$programFiles/Hearthstone/Hearthstone_Data/Plugins/LocationAPI.dll"
else
    cd "$programFiles/Battle.net"
    wine "$runFile"
fi

N’oubliez pas de rendre éxecutable votre script :

sudo chmod +x /usr/local/bin/blizzardBattleNet.sh

On peut maintenant passer à l’installation.

Installation

Tout d’abord installez une version récente de Wine.

Ensuite lancer le script :

blizzardBattleNet.sh install

On va vous proposer d’installer Mono et/ou Gecko dans votre préfixe, vous pouvez cliquer sur « Annuler » :

Installez ensuite « Visual C++ 2015 » :

Quand l’installation de Blizzard Battle.net commence, choisissez votre langue et laissez vous guider :

Connexion

L’application Blizzard Battle.net va vous demander de vous connecter, mais vous pouvez éventuellement avoir le message d’erreur suivant : cliquez sur « Fermer » :

Connectez vous en utilisant le formulaire :

Installation de Hearthstone

Suite à l’installation précédente, il vous suffit de lancer l’installation de Hearthstone :

Et voilà, c’est terminé ! Félicitations !

Utilisation

Pour lancer l’application, rien de plus simple :

blizzardBattleNet.sh run

Bugs qu’on sait résoudre

Forcer DirectX 9

Si vous voulez forcer l’utilisation de « DirectX 9 » pour le jeu Hearthstone, il vous suffit d’ajouter le paramètre additionnel suivant : -force-d3d9 dans réglages du jeu :

Fireside Gathering

L’application cherche les « Fireside Gathering » autour de notre localisation et ça plante avec Wine. Une solution très simple est de supprimer le fichier DLL qui cause ce bug.

blizzardBattleNet.sh fix-hearthstone-fireside-gathering

Attention : vous devrez relancer ce fix après les mises à jours du jeu ;)

18 réflexions au sujet de « Installation de l’application Blizzard Battle.net avec Wine »

  1. Un grand merci pour ton travail (je suivais ton thread sur le site pol) et grace à ce tuto je peux continuer à jouer après le patch de hier, PoL ne lancait plus Hearthstone depuis …
    Et j’avais aussi le lag de plusieurs minutes avec pol, et je ne l’ai plus maintenant!

    Pour info, je suis sur debian stretch + backports
    Winehq installé depuis les dépots wine, version winehq-staging (wine-3.8)
    winetricks cloné depuis github @master (20180513-next)

    Merci ;)

  2. Hello,

    J’ai essayé d’installer le client Bnet sur Linux, je n’ai pas eu de problèmes sauf que lors de la connexion je n’ai pas le formulaire supplémentaire « moche ». Je n’ai pas trouvé comment ils sont rajoutés.
    Si quelqu’un a une idée ça serait cool !

    De plus, dans ce cas précis il s’agit d’hearthstone mais par curiosité est ce que d’autres jeux fonctionnent ?

    Merci d’avance

    • As-tu suivi ce tuto pour installer wine ? Et quel version de wine as-tu ?

      Pour ce qu’il est des autres jeux, je n’ai jamais testé ;) Je pense que Heroes of the Storm fonctionne, mais pour les autres, faut sûrement plus de bibliothèques !

        • Tu peux essayer d’ajouter dotnet45 et ie8 avec Winetricks, voir si ça débloquerait le formulaire ?
          Et tu pourrais aussi essayer de revenir à la version 3.7 ou 3.8 qui ont de bons retours.

          Tiens nous au courant !

    • Manque de bol… super installation… mais… j’ai les vidéos qui sont saccadées et je ne suis pas arrivé à lancer une partie au final …
      Une idée ?
      J’aurai bien voulu modifier des options (par exemple 1) ajouter l’option « enable CMST » depuis winecfg mais il n’y a pas l’onglet « staging » ou 2) modifier le paramètre de résolution vers du 1024*768) mais je n’y arrive pas/pas accès
      merci d’avance

  3. je suis sur ubuntu 16.04 et j’ai eu un pépin lors de la mise à jour de la staging vers la 3.15.
    J’ai tout viré, repris la devel et tenté plusieurs choses dont ton chouette script. Conclusion : je peux installer battlenet mais l’install d’hearthstone est totalement freezé (la fenetre d’install s’ouvre bien mais ca ne va pas plus loin).

    Bref si quelqu’un a une idée je suis preneur ;)

    • @manu, n’aurais tu pas oublié l’argument pour forcer D3D9? Ca m’a fait ca une fois quand je l’avais oublié?

      Depuis la derniere MaJ de Bnet, de mon coté, j’ai perdu toute les polices dans Battlenet.
      HS se lance (on vois le bouton, mais ya pas le label JOUER dessus :) ), mais aucun label … une idée?

      @kmelia, tu veux pas mettre ce script sur github? comme ca on pourrait récupérer les MaJ quand il y en a?

        • Pour les problèmes de police j’ai ca qui règle le problème de mon coté : winetricks settings fontsmooth=rgb

          Pour l’install du jeu c’est toujours impossible. A priori je ne peux pas forcer l’option avant comme indiqué avant d’avoir installer le jeu non ? Sinon c’est une option de démarrage de Battlenet ?

          Oui ce serait une chouette idée un petit dépot à jour ;)

      • Le snippet est créé !

        J’ai également mis à jour l’article avec des nouvelles copies d’écran, car depuis wine-3.17 je trouve que c’est vraiment mieux : le login moche n’existe plus, on voit les « news » dans l’application battle.net, bref : la classe ;)

  4. Hey @kmelia, merci pour le snippet, je vais voir si ya moyen de *s’abonner* pour savoir si tu l’as modifié :)

    Sinon, juste pour faire un retour, je suis en wine staging et la derniere MaJ de wine a resolu mes problèmes de font, tout n’a jamais aussi bien marché :)
    J’ai pas essayé le fireside gathering, je suis pas fou quand meme, mais bon, le login est plus buggé, tous les onglets marchent bien dans BattletNet …

    Et un détail en plus qui m’a déjà rendu service, j’utilise *borgbackup* [1] pour faire des bakups de mon install. Comme ca dès que j’ai une install qui marche, ou apres une MaJ (wine ou Battlenet/hearthstone), je fais un backup incrémental, histoire de pas refaire une setup depuis 0 en cas de problème.
    $ cd $HOME && borg create -p :wine-hs.borg::{now} .wine-hs

    [1] Demo de l’outil https://www.borgbackup.org/demo.html

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *