Starcraft et Brood War
Comme disait l'autre: "warcraft, mais dans l'espace!"
Un p'tit screen pour montrer aux sceptiques que ça marche:
Notez aussi que la démo de Starcraft fonctionne bien sur le même principe.
Starcraft peut désormais être installé automatiquement grâce à l'utilitaire PlayOnLinux, de même pour son extension Brood War. Pour en savoir plus, rendez-vous sur la page de ce wiki dédiée à PlayOnLinux.
Pré-Requis
Configuration de wine
La configuration nécessaire pour WINE est la même que pour Diablo II.
A noter que le Vertex-Shader n'est pas obligatoire, désactivez-le si vous avez une carte avec un chipset ATI…
Installation
Pour installer le jeu utilisez une console, positionnez-vous dans le lecteur de CD et utilisez la commande wine
pour lancer le fichier install.exe
cd /media/cdrom0 wine ./install.exe
ou selon les versions:
cd /media/cdrom0 wine "./StarCraft (Windows).exe"
Ensuite, laissez-vous guider par l'installateur, la procédure est la même que sous Windows.
Démarrage
Pour lancer le jeu, tapez la ligne de commande suivante dans une console.
wine "c:/program files/starcraft/starcraft.exe"
Problèmes
Affichage des menus sur Battle.net
Si vous essayez de jouer sur Battle.net vous vous rendrez compte que l'affichage des menu est dégradé. Mis à part ouvrir l'oeil, il n'y a pas de solution miracle, cependant, ceux-ci redeviennent normaux dès que vous avez crée ou rejoint une partie.
Impossible de patcher automatiquement le jeu
Puisque le système de patchage automatique via Battle.net ne fonctionne pas, vous devez opérer manuellement si vous désirez patcher StarCraft.
- Allez sur la page dédiée aux patchs pour StarCraft sur le site de Blizzard.
- Téléchargez le dernier patch en date et placez-le sur le bureau.
- Utilisez la commande
wine
avec une console pour installer le patch.
wine Desktop/nomDuPatch.exe
A l'heure actuelle , le dernier patch est le 1.1.6.1.
Problèmes sonores
Vérifiez tout d'abord votre connectique et le fonctionnement correct du son sous Ubuntu. Fermez les autres programmes utilisant les fonctions sonores si nécessaire.
De même, il est préférable de laissez se terminer le son d'introduction de "install.exe". Attendez jusqu'à ce que vous puissiez faire "blop-blop" avec les menus, et lancer l'application.
Si cela ne fonctionne toujours pas chercher dans le menu Audio de winecfg
Configurations connues comme fonctionnelles
- OSS, avec activation de DirectSound ("Émuler le pilote") et Accélération Matérielle sur "Émulation".
- ALSA, avec à peu-près tout. Possibilité d'un décalage notamment dans les menus.
Le jeu se lance en 640x480 en haut à gauche
Si vous êtes sous dapper, essayez donc d'installer wine 0.9.2.7. Si ça ne marche toujours pas, il faudra songer à passer sur Edgy
J'ai corrigé les fautes sur ce chapitre - Zoloom
J'ai un widescreen (écran large), et l'image du jeu est coupée en bas
Les écrans larges sont de plus en plus courants sur nos machines, et beaucoup de joueurs ont du mal à utiliser Starcraft, car en se lançant il configure parfois mal l'affichage, et le bas de l'image est coupé.
La solution: adapter la résolution après avoir lancé le jeu. Il y a deux façons de faire:
- mettre une résolution plus élevée (mais il y aura de la place inutilisée sur l'écran)
- écraser un peu l'image (je ne sais pas si c'est possible avec tous les écrans, mais c'est la solution que j'ai choisie)
Pour commencer, voyons un peu les résolutions supportées chez vous, ainsi que les fréquences. Exécutez dans une console:
xrandr
J'obtiens, entre autres:
[...] 640x480 56.0 57.0 [...]
Mon écran supporte donc une résolution de 640x480 avec pour fréquences 56Hz et 57Hz.
Sur ma machine, Starcraft se lançait en 640x480 à 56Hz, et le bas de l'image était coupé. J'ai donc essayé de modifier la fréquence à 57Hz après avoir lancé le jeu, et là tout s'est bien passé, il s'est adapté à mon écran large (image un peu étirée, évidemment).
Voici un petit script Bash qui lance le jeu puis adapte la résolution:
#!/bin/bash export WINEDEBUG="-all" cd chemin/vers/Starcraft wine StarCraft.exe & sleep 4 xrandr -s 640x480 --rate 57.0
Remplacez chemin/vers/Starcraft et les paramètres de la dernière ligne (résolution et fréquence) par ceux qui vont bien chez vous, et ça devrait marcher!
Les utilisateurs de PlayOnLinux peuvent aussi s'en sortir en procédant comme suit
Allez dans le répertoire ~/.PlayOnLinux/configurations/installed. Editez le fichier Starcraft qui s'y trouve.
Ajoutez-y à la fin:
sleep 4 xrandr -s 640x480 --rate 57.0
en remplaçant bien entendu les paramètres de la seconde ligne par ce qui convient à votre écran.
Sauvegardez, puis supprimez les éventuels fichiers temporaires du répertoire.
Vous pouvez maintenant lancer le jeu depuis PlayOnLinux, et les problèmes d'affichage devraient se corriger automatiquement!
Ralentissement suivant les bâtiments et unités sélectionnées
Si vous rencontrez des ralentissements avec le jeu (pas un simple petit lag mais un ralentissement constant), c'est que vous n'avez pas l'OpenGL activé sur wine.
Ceux-ci sont dût au fait que StarCraft n'utilise pas directement DirectX mais passe par l'interface GDI de Windows.
C'est l'interface GDI qui fait appel aux fonctions de DirectX, ce qui fait une sorte de surcouche ralentissement le jeu sous wine.
En activant l'OpenGL au lieu d'utiliser GDI + DirectX, wine va lire les instructions GDI et les transcrire en instructions OpenGL.
Au final, au lieu de deux librairies appelées, vous aurez seulement OpenGL.
L'avantage étant que comme OpenGL est natif linux (et toute plate-forme ;)), cela va beaucoup plus vite qu'une réimplémentation de GDI et DirectX.
Pour cela, dans la console et utilisez la commande regedit
regedit
Cela vous affichera une fenêtre semblable à la Base de Registre de Windows.
Allez sur la clé HKEY_CURRENT_USER\Software\Wine
. Si il n'existe pas de clef Direct3D
, créez là et entrez-y.
Ensuite, créez deux chaînes :
DirectDrawRenderer
avec la valeuropengl
.RenderTargetLockMode
avec la valeurreadtex
.
Vous pouvez ensuite fermer la fenêtre, dorénavant, les prochaines applications lancées avec wine utiliseront OpenGL.
Ajout du problème des ralentissements de StarCraft - Otheym
Jouer à Starcraft en réseau local via internet
Si vous voulez jouer à Starcraft en réseau via internet, vous rencontrerez vite un soucis avec Battle.net, les menus ne sont pas lisibles, et à moins de les connaître par cœur, il n'est pas évident de s'y retrouver. Une solution existe cependant, créer un réseau local via internet avec hamachi.
- Récupérer hamachi (un deb sur le site officiel) et hamachi gui : deb hamachi et deb hamachi gui
- Récupérer jpcap (un deb aussi après recherche sur internet) : c'est un programme java qui capture des paquets : deb jpcap
- Récupérer scToolile (une classe java à mettre dans /home/monhome, il faut chercher dans yahoo car google n'est pas toujours ton ami…): lien sur un post d'un forum macosX...
- En option, mais c'est tout de même bien agréable : mumble (paquet deb synaptic) pour papoter via internet.
Pour jouer, créez ou rejoignez un réseau Hamachi, une fois que vos ami(e)s sont là, dans un terminal tapez :
sudo java scToolile
Faites votre choix, 1 pour héberger une partie (non testé) ou 2 pour rejoindre une partie, ne fermez pas le terminal ! Vous verrez une succession de points, c'est normal, scToolile travaille et redirige les paquets de starcraft vers hamachi.
Enfin il ne vous reste plus qu'à lancer Starcraft, choisir > multijoueur dans le menu de départ, puis > partie réseau local (udp) dans le deuxième menu et > créer ou rejoindre une partie.
Une remarque : le son me semble plus agréable en choisissant oss dans winecfg, par contre ça ne marche pas avec mumble, du coup je vous conseille fortement de repasser le son en alsa et de profiter grâce à pulse audio du son du jeu et du son de mumble.