Steam sous Mandriva Linux
De Wiki de la communauté Mandriva.
- Il est très recommandé de désactiver les effets 3D de Compiz. Les effets 3D de KDE ne posent pas de problème généralement et peuvent être interrompos en pressant ALT+SHIFT+F12.
- Vous devez utiliser les pilotes graphiques propriétaires des cartes Nvidia ou ATI. Vous pouvez les activer via
Drakx11.
- L'accélération 3D doit être activée (elle est activée par défaut).
Installation de Wine
| Pour installer wine, lancez Sélectionnez-le et cliquez sur Appliquer. Aide Vous pouvez également installer en utilisant la console en tant qu'administrateur : urpmi wine Vous pouvez également télécharger la dernière version de Wine depuis le site officiel ou en activant le dépôt main/backport. |
Configuration de Wine
Lancer la commande winecfg.
Dans l'onglet application : pour Version windows, sélectionner windowsXP.
Dans l'onglet affichage :
- Cocher « Permettre aux applications directx d'empêcher la souris de quitter ... »
- Décocher « Emuler un bureau virtuel »
- Cocher « Permettre au gestionnaire de fenêtres de contrôler les fenêtres »
- Support du Vertex Shader : matériel
- Cocher « Permettre le pixel shaders »
Dans l'onglet audio :
- Pilote Alsa est activé
- Pilote OSS est désactivé.
- Acceleration Matérielle : Full
- Emulation Pilote est décoché
- Échantillonnage à "48000"
- Bits par échantillon à "16" bits
Pour ceux qui rencontrent des problèmes avec le support sonore, veuillez vous rendre dans la section "Quelques astuces et problèmes connus".
Installation de Steam
Vous pouvez télécharger le programme d'installation de Steam depuis le site officiel.
Une fois que vous avez renseigné les champs pour vous connecter à votre compte, vous pouvez procéder au téléchargement des jeux.
Si vous avez un système Windows accessible où Steam est installée, vous pouvez copier le répertoire C:\Program Files\Steam\steamapps - et uniquement celui-ci - dans /home/UTILISATEUR/.wine/drive_c/Program Files/Steam.
Vous éviterez ainsi des heures de téléchargement inutiles. Pensez toutefois à modifier les droits de ce fichier de manière à pouvoir disposer des droits en écriture.
Lancer un jeu
Exécuter Steam
Pour lancer Steam :
env WINEPREFIX="$HOME/.wine" WINEDEBUG=-all wine "C:\Program Files\Steam\Steam.exe"
Vous pouvez créer une icône sur votre bureau avec cette commande.

Exécution d'un jeu Valve
Pour installer un jeu, il suffit de double-cliquer sur celui-ci depuis l'interface de Steam. Suivez l'assistant, et le téléchargement débutera. Une fois terminé, pour lancer un jeu source ou Counter Strike, il suffit de double-cliquer à nouveau sur le jeu. Vous pouvez également créer un script (par exemple launch_CS.sh ) avec une commande du type :
#!bash cd ~/.wine/drive_c/Program\ Files/Steam && WINEDEBUG=-all wine Steam.exe -fullscreen -width 1280 -height 1024 -applaunch 10 -heapsize 512000 -novid
Le WINEDEBUG=fixme-all est essentiel voire OBLIGATOIRE. C'est grâce à lui que vous augmenterez les performances fps des jeux. En effet, il évite d'avoir des messages d'erreurs en grand nombre dans la console et allège le CPU.
- -gl : permet de forcer l'utilisation de l'opengl pour les mods hl1 (Half Life, Counter Strike, Team Fortress, Day of Defeat, etc..)
- -fullscreen : permet d'avoir le jeu en plein écran
- -Width 1280 - height 1024 : à configurer selon la définition de votre écran
- -novid : désactive l'affichage de la vidéo, accélère le chargement du jeu
- -console: force le lancement de la console dans les jeux Valve
- -autoconfig : réinitialise la configuration des paramétrages sonore et vidéo du jeu
- -nosound : empêche le jeu d'utiliser votre carte son
- -dxlevel 81 : force l'utilisation de la version indiquée de DirectX (8.1 dans l'exemple), les valeurs peuvent être : 70, 81 ou 90
- -heapsize ZZZ: permet d'allouer une certaine quantité de RAM au jeu, à renseigner selon le tableau ci dessous :
| Quantité mémoire | Valeur heapsize |
|---|---|
| 4gb | 2097152 |
| 3gb | 1572864 |
| 2gb | 1048576 |
| 1gb | 524288 |
| 512mb | 262144 |
| 256mb | 131072 |
- -applaunch XX : permet de sélectionner le jeu à lancer avec XX à configurer selon la liste ci-dessous :
| Jeux HL | Valeur applaunch |
|---|---|
| Counter Strike | 10 |
| Team Fortress Classic | 20 |
| Day of Defeat | 30 |
| Deathmatch Classic | 40 |
| Opposing Force | 50 |
| Ricochet | 60 |
| Half Life | 70 |
| Counter Strike Condition Zero | 80 |
| Jeux HL2 | Valeur applaunch |
|---|---|
| Counter Strike Source | 240 |
| Day of Defeat Source | 300 |
| Half Life 2 | 220 |
| Half Life 2 : Deathmatch | 320 |
| Half-Life 2 Lost Coast | 340 |
Exécuter les jeux dans un second serveur X
Cette astuce a été trouvée sur le site de linuX-gamers.net.
Il est possible d'exécuter vos jeux depuis un serveur X dédié. Ainsi, votre bureau est indépendant de l'exécution des jeux. Vous pouvez basculer sur le second serveur X par la combinaison de touches CTRL+ALT+F8 et jouer, revenir sur votre bureau sans fermer le jeu via la combinaison CTRL+ALT+F7 et ainsi de suite. Si le jeu plante pour une raison particulière, il suffit de tuer le second serveur via la combinaison de touche CTRL+ALT+BACKSPACE et vous vous retrouverez dans votre environnement par défaut. Cela ne nuit en rien aux performances, au contraire !!
Pour ce faire, il faut d'abord créer un script Bash qui se nommera lance_steam.sh
#!bash env WINEPREFIX="$HOME/.wine" WINEDEBUG=-all wine "C:\Program Files\Steam\Steam.exe -fullscreen -width 1280 -height 1024 -applaunch 10 -heapsize 512000 -novid"
Puis de créer un second script qui se nommera steam.sh qui force l'exécution du script et lance_steam.sh sur le serveur :1.0 :
#!/bin/bash xinit $HOME/lance_steam.sh $* -- :1
Pensez à donner les droits d'exécution à ces programmes : chmod 755 ${HOME]/lance_steam.sh et chmod 755 ${HOME]/steam.sh
Pour lancer Steam dans un second serveur, exécutez simplement le script steam.sh.
Il est possible que vous obteniez un message d'erreur du type :
Xlib: connection to ":1.0" refused by server Xlib: No protocol specified xterm Xt error: Can't open display: :0.0
Ce message apparaît car X ne vous autorise pas à créer ce nouveau serveur. Pour résoudre ce problème, procédez comme suit : Dans un terminal, tapez la commande xauth.
[vouf@localhost ~]$ xauth Using authority file /home/vouf/.Xauthority xauth>
Exécutez ensuite la commande list pour afficher vos autorisations :
xauth> list localhost/unix::0 MIT-MAGIC-COOKIE-1 68d682a4f137b4f4679248eybc36a7c5 xeroc/unix:0 MIT-MAGIC-COOKIE-1 68d682a4f137b4f4679248eybc36a7c5
Comme vous pouvez le constater, nous sommes ici autorisés à exécuter uniquement le cookie MIT-MAGIC-COOKIE-1-Code sur le serveur localhost/unix::0. Nous allons faire en sorte d'obtenir l'autorisation de l'exécuter sur le second serveur localhost/unix:1.0.
xauth> add :1.0 MIT-MAGIC-COOKIE-1 68d682a4f137b4f4679248eybc36a7c5
Pour sauvegarder ce paramétrage, tapez exit
xauth> exit
Si vous tapez, "quit" les changements ne seront pas sauvegardés.
Résolution de problèmes connus
Problèmes de son
Sous KDE, il est conseillé de fermer kopete, Amarok, et les applications qui monopolisent les ressources de la carte son. De plus, si vous observez des grésillements lorsque vous jouez, vous pouvez positionner dans l'onglet Audio l'Acceleration Matérielle à Emulation.
Utiliser Alsa pour profiter d'un fonctionnement simultané avec Teamspeak si celui-ci est exécuté avec la commande "aoss" ou "padsp" avec PulseAudio.Teamspeak peut être installé également depuis wine. Les meilleurs résultats sont toutefois obtenus avec la commande "padsp".
Optimiser l'affichage de Steam
Il est très fortement conseillé de réduire Steam avant de lancer un jeu. Celui-ci à tendance à consommer de nombreuses ressources machines lorsqu'il est en plein écran. Cela vous apportera un gain notable de fps en plein jeu.
Depuis l'option Paramètres de Steam, onglet messages, je vous conseille de désactiver l'option Sorties et Nouvelles à venir.
Pour améliorer l'affichage des polices,si vous disposez de Windows, vous pouvez copier le contenu du répertoire c:\windows\fonts vers /home/votre_login/.wine/drive_c/windows/fonts.
Pour désactiver les effets de transparence des fenêtres Steam qui ne font que le ralentir, éditer le fichier :
Rechercher le texte "Frame.TransitionEffectTime" et remplacer la valeur 0.25 par 0.
Steam Community
Vous pouvez également accélérer le lancement de steam en exécutant la commande suivante dans un terminal. Celle ci permet de désactiver la connexion au réseau d'amis steam par défaut :
echo -ne "REGEDIT4\n[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography]\n\"MachineGuid\"=\"$(uuidgen)\"\n" | wine regedit -
L'envoi et la réception de messages à ses amis steam ne fonctionne qu'à partir de la version 1.1.6 de wine.
Améliorer les performances DirectX
Depuis Wine 0.9.49, le " GL Shading Language" pour les vertex et pixel shaders est activé. Le problème est que cela diminue significativement les performances directx. Il est possible de le désactiver en procédant comme décrit ci-dessous
- Dans un terminal, lancer l'éditeur de registre délivré par Wine :
- Se positionner dans le répertoire : HKEY_USERS\S-1-5-4\Software\Wine
- Dans ce répertoire, créer une nouvelle clé Direct3D . Un répertoire Direct3D vient d'être créé.
- Dans ce dernier, créer une nouvelle "valeur chaîne" que vous nommerez "UseGLSL" en cliquant sur le menu "Edition/Nouvelle/Valeur Chaîne".
- Fixer la valeur de cette chaîne à "disabled"
- Quittez l'éditeur
Vous pouvez éventuellement réactiver cette fonction en forçant la valeur de cette variable à "enabled" Vous pouvez profiter de cette action pour déclarer la mémoire de votre carte vidéo en créant une "Valeur Chaîne" qui se nommera VideoMemorySize. Dans ce cas, fixer sa valeur à 256 si par exemple votre carte vidéo comporte 256 Mo.
Astuces jeux
Pour CS, forcer le jeu à fonctionner en opengl et non en directx. Activer ce mode depuis les options du jeu. Vous aurez des performances excellentes.
A titre indicatif, voici mes réglages vidéo sous Dod Source. J'ai un bon taux de fps qui dépasse 50.).

Si par hasard, Counter Strike Source refuse de se lancer, vous pouvez essayer de forcer la définition de votre écran. Par exemple, voici la procédure à suivre pour un écran en 1280x1024 :
Dans Steam clic droit sur le jeu, puis "Définir les options de lancement" et ajouter -novid -width 1280 -height 1024.
Message d'erreur : The sound hardware is in use by another app
Lors du chargement d'un jeu, il se peut que vous soyez confrontés à ce message d'erreur : The sound hardware is in use by another app'.
Cette erreur est gênante et fréquente chez certaines personnes. La cause est un ou plusieurs autres processus qui bloquent le serveur de son ALSA. La solution est assez simple à réaliser. Cet exemple vous permet de solutionner le problème chez vous lorsqu'il apparaît.
Ouvrez une console et passez en mode super-utilisateur (root). Ensuite, tapez la commande suivante : service alsa restart. Après avoir validé, vous devriez avoir un message similaire :
Doing alsactl to store mixer settings... [ OK ]
no. (sound is being used by pid 12242 12256 12242 12256)) [ÉCHEC ]
Il est possible de voir plusieurs nombres. Ces nombres sont les identifiant des processus qui bloquent le son. Vous devez les sélectionner, les copier, et les coller à la suite d'une nouvelle commande comme montré ci-contre.
kill 12242 12256 12242 12256.
(La commande kill (tuer) permet de terminer sans délai les processus récalcitrants).
Enfin, pour que la solution soit prise en compte, exécutez une dernière fois service alsa restart.
Votre jeu aura enfin du son.
Message d'erreur : The registry is in use by another process
Lors du lancement d'un jeu à partir de Steam, il se peut que vous soyez confrontés à ce message d'erreur : The registry is in use by another process'.
Ce n'est pas un message d'erreur critique. Le jeu reste correctement installé et tout à fait exécutable en patientant quelques secondes avant de retenter.
Pour résoudre ce problème, sélectionnez le jeu dans Steam, puis clic droit et sélectionnez propriétés. Choisissez l'onglet Fichiers locaux et cliquez sur Vérification de l'intégrité du cache jeu. Cette opération est un peu longue mais permet (en principe) de remédier à ce problème. Si cela se reproduit après avoir fait la vérification, sachez qu'il vous suffit de patienter quelques secondes, puis de relancer le jeu pour ne plus avoir le message d'erreur.
Configurer le Pare-feu pour les jeux en réseau
Les jeux en réseau nécessitent d'ouvrir certains ports réseaux pour jouer en réseau et sur Internet. Sous Mandriva, vous devez exécuter
drakfirewall et, après avoir cliqué sur le bouton Avancé, compléter la ligne des ports à ouvrir avec celle-ci :
1200/udp 27000:27015/udp 27020:27039/tcp
Cela va permettre d'ouvrir les ports nécessaires pour le bon fonctionnement des jeux en réseau.

