Bon. Contrairement à mes autres scripts, celui-ci nécéssite un peu de préparation avant de fonctionner. Tout d'abord, si vous voulez pouvoir lancer le jeu sans obligatoirement être root, il vous faudra le programe sudo. Si vous désirez pouvoir le lancer à partir de X, il vous faudra également le programme open (désolé, je n'ai pas trouvé l'url, mais il doit sûrement figurer dans votre distribution sous forme de package, voire être déjà installé par défaut). Ensuite, il faut lire attentivement le StarCraft-HOWTO pour savoir comment faire fonctionner StarCraft via wine.
StarCraft fonctionne ? Bien, passons à la suite. Pour que mon script fonctionne correctement, il faut que la résolution par défaut pour une profondeur de 8 bits soit de 640x480. Pour cela, il va falloir modifier le fichier XF86Config (sur ma Debian, il est dans /etc/X11, pour les autres distributions, je ne sais pas).
Normalement vous avez un (ou plusieurs) groupe(s) de lignes qui ressemble(nt) à ça:
Section "Screen"
Driver "Accel"
Device "Primary Card"
Monitor "Primary Monitor"
DefaultColorDepth 32
[...]
SubSection "Display"
Depth 8
Modes "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
C'est la sous-section "Display" comportant "Depth 8" qui nous
interesse. Il faut que la première valeur de l'option "Modes" soit
"640x480". Modifiez donc le fichier en conséquence. Cela aura pour
effet de faire démarrer le serveur X par défaut en 640x480, si et
seulement si on mentionne l'option 8 bits (-bpp 8). Comme on ne
travaille que très rarement en 8 bits (256
couleurs...), ce n'est pas trop gênant...Maintenant, nous allons configurer sudo pour que n'importe quel user puisse lancer le jeu. Il faut que dans le fichier /etc/sudoers figurent les deux lignes:
Cmnd_Alias STARCRAFT=/usr/local/games/starcraft.sh...dans la partie "Cmnd alias specification", et
ALL ALL=(root) NOPASSWD: STARCRAFT...dans la partie "User privilege specification".
On pourrait ne mettre qu'une seule ligne, au lieu de duex, qui serait:
ALL ALL=(root) NOPASSWD: /usr/local/games/starcraft.sh...mais bon, moi je trouve ça plus propre avec l'alias...Cependant, c'est votre machine, vous faites ce que vous voulez :-)
ATTENTION: le fichier /etc/sudoers s'édite avec une commande bien précise, "visudo", qui vous indique à la fin de l'édition si votre fichier comporte des erreurs de syntaxe. N'éditez en aucun cas ce fichier à la main, à fortiori si vous n'êtes pas habitué à sa syntaxe: sudo ne marcherait plus.
Pour la syntaxe exacte, "man sudoers".
Voilà, on est presque prêts. Pour pouvoir lancer le jeu en ne tapant que la commande "starcraft", il faut définir un alias grâce à la commande:
alias starcraft='sudo /usr/local/games/starcraft.sh'...où vous remplacerez le chemin /usr/local/games par le chemin dans lequel vous aurez recopié le script starcraft.sh.
Dernière chose à faire, modifier certaines variables dans le script, de manière à correspondre avec votre installation. Je pense surtout aux variables pointant vers des répertoires, afin que le script trouve bien les fichiers dont il a besoin.
Voilà, c'est fini. Ouvrez un xterm, tapez "starcraft" et... Bon jeu !
Pour downloader le fichier, cliquez ici.
Du coup ça fait une ligne en moins dans la section "BUGS" juste en dessous. Cool !