Page suivante Page précédente Table des matières

2. Quake/Quakeworld

Pour installer Quake sur votre système Linux, vous aurez besoin de quelques composants de la distribution officielle de Quake par id. Cela pourra être n'importe quel CD-ROM DOS/Windows acheté à votre détaillant favori ou la version shareware téléchargée sur Internet (reportez-vous ci-dessous pour plus de détails sur la manière d'acquérir la version shareware).

Ou bien, si vous avez déjà Quake installé sur une machine DOS/Windows, vous pouvez utiliser les fichiers provenant de cette installation.

2.1 Configuration Minimale

Vous aurez besoin, au strict minimum, de la configuration suivante :

En Option:

2.2 Installation de Quake

Téléchargement des fichiers nécessaires **

Tous les fichiers nécessaires pour Quake Linux sont disponibles sur le site ftp d'id Software, ftp.idsoftware.com. Ce site pouvant être très sollicité, vous pouvez utiliser l'un des sites miroirs ci-dessous :

Les fichiers Quake mentionnés dans cette section sont :

Autres logiciels mentionnés:

Création du répertoire d'installation ++

La première chose que vous avez à faire est de décider où vous souhaitez installer Quake. Beaucoup l'installent dans /usr/games/quake. L'administrateur système que je suis a choisi d'installer tout ce qui n'est pas partie intégrante de ma distribution Linux sous /usr/local. Aussi,, pour moi, Quake a trouvé sa place sous /usr/local/games/quake. Si vous choisissez de l'installer ailleurs, n'oubliez pas de substituer le chemin approprié partout où /usr/local/games/quake est indiqué.

Remarque aux utilisateurs de Redhat: Si vous envisagez d'installer QuakeWorld depuis les paquetages rpm, vous devrez probablement installer Quake sous /usr/local/games/quake, étant donné que rpm installe dans ce répertoire par défaut.

Bien! Maintenant, créons le répertoire dans lequel nous allons installer Quake, et déplaçons-nous dedans (les instructions suivantes partent du principe que c'est notre répertoire courant).

mkdir /usr/local/games/quake
cd /usr/local/games/quake

Installation de Quake depuis un CD ++

Si vous installez Quake depuis un CD-ROM, lisez ceci. Si ce n'est pas le cas, vous avez la permission de sauter cette section.

Il y a au moins deux versions de Quake CD en circulation. J'ai l'une des plus anciennes, contenant la version 1.01 de Quake. J'ai pu rencontrer d'autres CD avec la version 1.06. Vous possédez la version 1.01 si vous avez des fichiers appelés quake101.1 et quake101.2. Si vous trouvez un fichier appelé resource.1, vous avez la version la plus récente. Montez votre CD Quake et déterminez quelle version vous possédez. Dans l'exemple ci-dessous, remplacez /dev/cdrom et /mnt/cdrom par le fichier et le point de montage appropriés à votre système:

mount -t iso9660 /dev/cdrom /mnt/cdrom
ls /mnt/cdrom

Voilà pour ce qui est de l'installation à partir du CD. Vous pouvez maintenant passer à la section Installation des Binaires Linux.

Installation sous Linux depuis DOS/Windows

Si vous avez Quake installé sous Windows ou DOS sur une machine différente, vous pouvez transférer les fichiers dans quake\id1\ sur votre système Linux via FTP ou tout autre moyen. Gardez à l'esprit que les noms des fichiers sur Linux doivent être en minuscules pour que Quake puisse les trouver, aussi vous devrez éventuellement les renommer après le transfert. Notez également qu'il peut être ensuite nécessaire de supprimer votre installation sous DOS/Win afin de rester en règle avec les termes de la licence consentie par ID SOFTWARE. Ce ne sera pas ma faute si vous faites quelque chose d'illégal.

Si vos systèmes DOS/Win et Linux sont sur la même machine, vous avez deux possibilités: copier les fichiers de votre partition DOS/Windows sur votre partition Linux, ou créer des liens sur les fichiers nécessaires sous Linux. Les deux options fonctionnent aussi bien. Vous économisez simplement à peu près 50 megaoctets d'espace disque quand vous créez des liens au lieu de copier.

Quoi que vous choisissiez de faire, commencez par vous déplacer dans votre répertoire Quake et créez un nouveau répertoire appelé id1:

cd /usr/local/games/quake
mkdir id1

Remplacez /win95/games/quake par le chemin correspondant à votre partition DOS/Windows et à votre répertoire d'installation Quake.

Les fichiers de données Quake sont maintenant installés. Passez à l' Installation des Binaires Linux.

Installation de la Version Shareware

L'unique épisode de la version shareware de Quake est gratuitement disponible au téléchargement sur le site ftp de ID SOFTWARE. Il a toutes les fonctionnalités de la version complète, avec deux limitations majeures: vous ne pouvez pas jouer à QuakeWorld avec, et vous ne pouvez pas modifier les niveaux.

L'installation de la version shareware de Quake n'est pas très différente de l'installation à partir du CD.

Voyez la section Téléchargement des fichiers nécessaires pour trouver les références de la distribution shareware. Téléchargez-la et décompressez-la dans votre répertoire Quake :

cd /usr/local/games/quake
unzip -L /wherever/you/put/it/quake106.zip

Maintenant vous avez (entre autres) un fichier appelé resource.1 qui est en fait une archive lha (lha est un format de compression et d'archivage comme zip ou tar). Nous utiliserons la commande lha(1) pour l'extraction.

Si lha n'est pas déjà installé sur votre système, vous pouvez l'obtenir depuis ftp://sunsite.unc.edu/pub/Linux/utils/compress/lha-1.00.tar.Z.

lha e resource.1

Lorsque lha aura terminé, votre répertoire Quake contiendra bon nombre de fichiers nouveaux. Un répertoire appelé id1/ aura également été créé. Les fichiers de ce répertoire sont les seuls importants pour Quake Linux, aussi vous pouvez sans crainte supprimer tous les autres. Si vous êtes totalement nouveau dans Quake, ou même si vous ne l'êtes pas, vous pouvez souhaiter conserver les fichiers*.txt. Sur mon système, je rassemble tous les "readme" dans une répertoire doc/. Pour ce faire :

cd /usr/local/games/quake
mkdir doc
mv *.txt doc
rm -f *

Maintenant vous êtes prêt à installer les binaires Linux.

2.3 Ajout des Binaires Linux

Décidez lequel des trois composants de Quake vous souhaitez installer:

Téléchargez les paquetages que vous souhaitez (reportez-vous à la section Téléchargement des fichiers Nécessaires) et extrayez-les dans votre répertoire Quake de ce façon:

cd /usr/local/games/quake
tar -xzf XXXX-i386-unknown-linux2.0.tar.gz

2.4 Mise en place des Permissions

Les serveurs de Quake et QuakeWorld peuvent être exécutés par n'importe quel utilisateur. Les clients Quake, de toute façon, ont besoin d'accéder à vos cartes son et graphique, ce qui requiert des privilèges que les utilisateurs normaux n'ont pas. Une (mauvaise) façon de contourner le problème est de toujours lancer Quake en tant que root. Tout Administrateur Système Responsable hurlera à l'évocation de cette suggestion malsaine. Rendre les binaires de Quake "setuid root" est une solution plus acceptable (Ndt: setuid est une instruction Linux/Unix rendant ici possible l'exécution par des joueurs n'étant pas root). Quake peut alors être exécuté par un utilisateur normal et a toujours les privilèges nécessaires aux accès son et graphique. Setuid présente cependant un risque de sécurité. Un utilisateur astucieux peut exploiter un bug ou un trou de sécurité dans Quake pour parvenir à un accès root sur votre système. Bien sûr, si vous n'exécutez pas de session multi-utilisateur, cela peut ne pas être une grosse préoccupation..

squake est le seul client Quake qui doit être exécuté avec les permissions root. Avec un peu de travail, vous pouvez exécuter les clients X et GL sans setuid. Exécuter les jeux X et GL sans setuid, dans la section Trucs et Astuces, vous expliquera comment faire.

Si vous projetez de d'exécuter squake, rendez-le setuid root avec les commandes suivantes :

chown root squake
chmod 4755 squake

Si vous décidez d'exécuter quake.x11 et glquake setuid root sur votre système, vous pouvez répéter ces commandes sur ces binaires.

2.5 X11 Quake

Si vous installez le client X11, voici venu le moment de le tester. Vous pouvez avoir besoin d'affiner la configuration pour glquake et squake, mais quake.x11 est maintenant prêt à s'exécuter.

cd /usr/local/games/quake
./quake.x11

Si tout fonctionne, une petite fenêtre Quake doit apparaître avec la première démo en action. Vous devez entendre les effets sonores et éventuellement la musique si le CD est monté. Si rien ne se passe, consultez l'aide de la section Problèmes.

2.6 Quake SVGAlib

Squake et glquake nécessitent SVGAlib pour s'exécuter. (glquake utilise SVGAlib pour traiter les entrées clavier et souris, si cela vous surprend). SVGAlib est fournie avec les distributions de Linux les plus modernes et doit être correctement configurée pour que squake ou glquake fonctionnent convenablement.

libvga.config est le fichier de configuration de SVGAlib. Sur la plupart des systèmes, vous le trouverez dans /etc ou /etc/vga. Soyez certain que les paramètrages de la souris, du moniteur et de la carte vidéo contenus dans ce fichier sont corrects pour votre système. Reportez-vous à la documentation de SVGAlib pour plus de détails.

Si vous n'avez pas encore SVGAlib installé, téléchargez le depuis le site mentionné dans la Section fichiers ci-dessous. Si vous possédez une Redhat 5.x, ou une autre distribution basée sur la glibc, référez-vous à Considérations relatives à Glibc, RedHat 5.x et Debian 2, dans la section Problèmes/FAQs, pour d'importantes recommandations sur la compilation des librairies à utiliser avec Quake. Une librairie binaire "libc5 SVGAlib" précompilée est disponible à http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar .gz pour ceux qui ne veulent pas se mesurer aux tracas de la compilation de libc5.

Vous devrez lancer squake d'une console virtuelle. Il ne fonctionnera pas sous X à moins que vous ne soyez root lorsque vous le lancez. Et lancer un jeu en tant qu'utilisateur root est quelque chose à proscrire. Aussi, si vous êtes sous X, faites un CTRL+ALT+F1, login et alors:

cd /usr/local/games/quake
./squake

Lancer des jeux SVGA et GL depuis X, dans la section Trucs et Astuces ci-dessous, vous expliquera comment lancer Quake SVGA et Quake GL depuis X sans passer manuellement sur une console virtuelle.

2.7 GLQuake

L'utilisation de tout matériel accélérateur ouvre la Voie Royale de Quake. Rien ne peut le remplacer, et l'essayer c'est l'adopter.

Pour exécuter glquake, vous avez besoin d'une carte graphique 3D avec chipset Voodoo, Voodoo2 ou Voodoo Rush. Il y a des points particuliers à respecter pour déclarer une carte Voodoo Rush, et je ne peux les développer ici car, franchement, je ne saurais pas de quoi je parle. Une prochaine version de ce HOWTO couvrira cet aspect (Si quelqu'un souhaite s'en charger, je serai heureux d'intégrer ses explications).

Les librairies SVGAlib, Glide, et Mesa doivent être correctement installées et configurées pour que glquake fonctionne. Les sections suivantes vous expliqueront brièvement comment vous y prendre.

Le Linux 3Dfx HOWTO ( http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html) de Bernd Kreimeier ( bk@gamers.org) est une source d'informations plus complète.

Le newsgroup des serveurs 3dfx (news.3dfx.com) 3dfx.glide.linux est une autre bonne source d'information, au croisement de Linux, glide, Mesa et Quake.

SVGAlib

glquake utilise SVGAlib pour gérer la souris et le clavier, aussi vous devrez le configurer comme il est précisé dans la section Quake SVGAlib.

Glide

Glide est une librairie qui fournit un API pour la programmation des cartes de type 3dfx. Si vous souhaitez que la librairie graphique Mesa utilise votre carte 3dFX, vous devez l'avoir. La dernière version de glide peut être trouvée sur http://glide.xxedgexx.com/3DfxRPMS.html. Choisissez le(s) paquetage(s) approprié(s) à votre système, et installez-le(s) en vous reportant aux instructions de la page web.

Notez bien que tant que vous n'aurez pas téléchargé le paquetage du driver 3Dfx en plus de la librairie Glide, vous ne pourrez lancer que des applications Glide (comme GLQuake) sous root. Installez le module /dev/3dfx et vous pourrez jouer à GLQuake en tant que simple utilisateur.

Une fois que glide est installé, exécutez le programme de test fourni. Souvenez-vous que ce programme est une bonne solution pour réinitialiser votre affichage si une application glide plante et éteint votre écran. NOTA: lancez ce test d'une console virtuelle, pas depuis X! Il est possible que cette application test perde le contrôle du clavier et de la souris sous X, et vous vous retrouveriez bloqué.

/usr/local/glide/bin/test3Dfx

Votre écran doit virer au bleu et vous demander de presser une touche. Une fois cette touche pressée, vous retournerez au prompt. 3dfx.glide.linux sur le serveur de news 3dfx (news.3dfx.com) est une bonne source d'information pour les problèmes spécifiques à glide sous Linux.

Mesa

Une fois glide installé, vous aurez besoin d'installer Mesa, l'OpenGL libre réalisé par Brian Paul (brianp@elastic.avid.com). Par chance, vous n'avez pas à chercher bien loin, car Mesa 2.6 est inclus avec les binaires de QLQuake et QuakeWorld. Tout ce que vous avez à faire est de le placer au bon endroit:

cd /usr/local/games/quake
cp libMesaGL.so.2.6 /usr/local/lib
ldconfig

Si vous souhaiter une version plus récente de Mesa (Mesa 3.0 est lors de la rédaction de ce document la plus récente) visitez le site ftp://iris.ssec.wisc.edu/pub/Mesa. Si vous avez une distribution RedHat 5.x ou une autre distribution basée sur glibc, reportez-vous aux Considérations relatives à Glibc, RedHat 5.x et Debian 2, dans la section Problèmes/FAQs, pour d'importantes recommandations sur la compilation des librairies à utiliser avec Quake.

Après une compilation conforme à ces instructions, vous avez deux choses à faire:

Maintenant passons sur une console virtuelle (CTRL+ALT+F1) et lançons glquake.

cd /usr/local/games/quake
./glquake

2.8 Commandes d'options en ligne spécifiques à Linux

Cette section rassemble les commandes en ligne qui sont spécifiques aux versions Linux de Quake. Il existe beaucoup d'autres options, mais elles dépassent le cadre de cet HOWTO. Recherchez ce genre d'information sur les sites listés dans la section Informations Générales sur Quake.

-mem num

Spécifie la mémoire à allouer en megaoctets (par défaut 8Mo, ce qui doit être suffisant dans la plupart des cas).

-nostdout

Ne renvoie aucune information sur la sortie standard. Utilisez cette option si vous voulez éviter de collecter tous les messages des consoles sur votre terminal.

-mdev device

Le fichier système de la souris, par défaut /dev/mouse

-mrate speed

La fréquence, en bauds, de la souris, par défaut 1200.

-cddev device

Le fichier système du CD, par défaut /dev/cdrom.

-mode num

Utilise le mode vidéo indiqué (squake uniquement).

-nokdb

N'initialise pas le clavier.

-sndbits 8 or 16

Définit la taille de l'échantillon sonore en bits. La valeur par défaut est 16 si cela est supporté.

-sndspeed speed

Définit la fréquence sonore. Les valeur usuelles sont 8000, 11025, 22051 ou 44100. La valeur par défaut est 11025.

-sndmono

Positionne le mode son en mono.

-sndstereo

Positionne le mode son en stéréo (par défaut s'il est supporté).

2.9 QuakeWorld **

http://www.quakeworld.net est plus éloquent que je ne saurais l'être:

QuakeWorld est une version Internet de Quake multi-joueurs. Bien que l'on puisse jouer avec la version originale de Quake sur Internet, les utilisateurs de modems - la majorité des joueurs, y trouvaient moins de satisfaction. Des symptômes comme un retard excessif (des actions réalisées bien après qu'elles aient été initiées), des pertes de paquets (le jeu se bloquait et repartait quelques secondes plus tard), et diverses autres difficultés harcelaient les utilisateurs. Après avoir pris conscience du nombre de personnes qui jouaient à Quake sur Internet, et du nombre de celles qui souhaitaient le faire mais s'abstenaient car elles n'étaient pas satisfaites des performances, John Carmack de id Software décida de créer une version de Quake optimisée pour le modem moyen d'un joueur internaute. Cette version Internet spécifique ne fait qu'une chose, exécuter au mieux le jeu sur un réseau TCP/IP tel qu'Internet. Elle n'a aucun support pour un usage individuel, et vous ne pouvez rien faire sans être connecté à un serveur spécial.

Vous avez besoin de la version complète, déclarée ou achetée, de Quake pour jouer à QuakeWorld, et d'un client QuakeWorld pour Linux. Les clients QuakeWorld sont semblables aux clients normaux Quake (X11, SVGAlib and Mesa), mais ils sont rassemblés dans un seul paquetage, aussi vous n'avez à télécharger qu'un fichier. Quoi qu'il en soit, vous devrez choisir entre 4 paquetages:

Installez un seul de ces paquetages. Chacun contient les mêmes fichiers, ils sont simplement liés à des librairies différentes. Les utilisateurs de Redhat 5.x choisiront le paquetage rpm glibc. Les utilisateurs de systèmes basés sur glibc sans support rpm choisiront le paquetage glibc tar. Le rpm libc5 est réservé au distributions Redhat antérieures à la 5.0 et les autres distributions utilisant le format de paquetage rpm. Le paquetage libc5 tar.gz est destiné à la distribution Slackware et à toutes les autres.

Voyez la section Téléchargement des Fichiers Nécessaires pour trouver l'adresse des fichiers Quakeworld pour Linux.

Les prérequis et la méthode de configuration de ces binaires sont les mêmes que ceux de Quake, aussi référez-vous aux section précédentes détaillant la configuration de SVGAlib ou de glide/Mesa.

Installation des paquetages RPM ++

L'installation des paquetages rpm est aussi simple que ceci:

su root
rpm -Uvh qwcl-xxxxx.i386.rpm

qwcl, glqwcl et glqwcl.glx seront installés setuid root pour pouvoir accéder aux périphériques graphiques de votre système. Les clients X et GL peuvent être lancés sans les privilèges root si vous suivez les instructions Exécuter des jeux X et GL sans setuid ci-dessous.

Rpm peut se plaindre de ne pas trouver libglide2x.so. La librairie Glide est uniquement nécessaire si vous possédez une carte 3Dfx et souhaitez lancer QuakeWorld en mode GL (glqwcl). Si vous ne prévoyez pas d'utiliser le mode GL, vous pouvez passer outre les dépendances de glide avec l'option --nodeps:

su root
rpm -Uvh qwcl-xxxxx.i386.rpm --nodeps

Installation des paquetages tar.gz ++

Il suffit de "détarer" le fichier dans votre répertoire Quake. Effectuez cette opération en tant que root, et les permissions convenables seront conservées:

cd /usr/local/games/quake
su root
tar -xzf qwcl2.21-i386-unknown-linux2.0.tar.gz

qwcl, glqwcl et glqwcl.glx seront installés setuid root et pourront donc accéder aux périphériques graphiques de votre système. Les clients X et GL peuvent être lancés sans les privilèges root si vous suivez les instructions Exécuter des jeux X et GL sans setuid ci-dessous.

Exécution de QuakeWorld ++

Une fois que QuakeWorld est installé à coté de vos fichiers Quake, vous pouvez le lancer par:

./qwcl +connect some.server.address

Voyez la section Logiciels apparentés pour trouver de l'information sur quelques formidables interfaces pour QuakeWorld qui rendent facile la localisation de serveurs.

2.10 Serveurs

La plupart des informations, pour ne pas dire toutes, concernant le fonctionnement des serveurs QW DOS/Windows sont transposables pour le fonctionnement sous Linux.

Pour lancer un serveur QuakeWorld, faites simplement:

./qwsv

Le manuel officiel du serveur QuakeWorld se trouve sur http://qwcentral.stomped.com.

2.11 Modes et Ajouts

Un des aspects les plus sympathiques des jeux Quake réside dans le fait que les auteurs les ont rendus facilement enrichissables. Les utilisateurs peuvent créer leurs propres niveaux, ajouter de nouvelles armes, de nouveaux monstres ou même changer totalement les règles du jeu.

Capture du Drapeau

Il s'agit de ma variation favorite sur Quake et Quake 2. A lieu de simplement se jeter partout et tuer tous ceux que vous rencontrez (ce qui est quand même méritant, n'exagérons pas!), CTF (Ndt : Capture The Flag en anglais) est une variante plus stratégique, basée sur un jeu par équipe. Dave 'Zoid' Kirsch, qui est également le mainteneur du portage de Quake sous Linux, en est le créateur.

Tout ce que vous devez savoir sur CTF peut être trouvé sur http://captured.com/threewave/. Vous avez besoin de ftp://ftp.cdrom.com/pub/quake/planetquake/threewave/ctf/client/3wctfc.zip pour jouer. Pour installer la partie client de CTF, créez simplement un répertoire appelé ctf dans votre répertoire Quake et 'unzippez' le fichier 3wctfc.zip à cet endroit. Le fichier readme.txt regorge d'informations très utiles.

cd /usr/local/games/quake
mkdir ctf
cd ctf
unzip -L /wherever/you/put/it/3wctfc.zip

Pour toute information sur le lancement d'un serveur CTF, reportez-vous aux pages mentionnées ci-dessus.

Mission Packs **

Activision a réalisé deux "add-on packs" de niveaux supplémentaires pour Quake, Scourge of Armagon et Dissolution of Eternity.

Les Outils Quake

Quelqu'un voudra-t-il contribuer à ce HOWTO en m'envoyant quelques informations sur qcc, bsp et tout cela ?


Page suivante Page précédente Table des matières