QuakeWorld zegt het beter dan ik zou kunnen:"QuakeWorld is een Internet multi-player specifieke versie van Quake. Ondanks dat de originele versie van Quake over het Internet gespeeld kan worden, hadden modem gebruikers - de meerderheid van de spelers, minder dan een voldoening gevend spel. Symptomen zoals buitensporig achterblijven - acties die in werkelijkheid veel later plaatsvonden dan wanneer je ze deed; verlies van pakketjes - het spel zou blijven hangen en verscheidene seconden later verdergaan; en diverse andere moeilijkheden plaagde de gebruikers. Nadat hij realiseerde hoeveel mensen Quake op het internet speelde en hoeveel dit wilde, maar dit niet konden te wijten aan het ongenoegen bij het spel, besloot John Carmack van id Software een versie Quake te maken die voor de gemiddelde modem Internet speler werd geoptimaliseerd. Deze Internet specifieke versie doet slechts 1 ding, deathmatch spelen via een TCP/IP netwerk zoals het Internet. Het geeft geen ondersteuning voor solo spel, en je kunt er niets mee zonder verbinding naar een speciale server."Je hebt de volledige, geregistreerde of de in de detailhandel verkrijgbare versie van Quake nodig om QuakeWorld te kunnen spelen, en een Linux QuakeWorld client. QuakeWorld clients zijn er in dezelfde soorten (X11, SVGAlib en Mesa) als de gewone Quake, maar ze zijn allen in één package gebundeld, dus je hoeft alleen één bestand te downloaden. Je hebt echter vier packages om uit te kiezen: een libc5 tar.gz packageeen glibc tar.gz packageeen libc5 rpm packageeen glibc rpm packageInstalleer slechts één van deze packages. Elk bevat dezelfde bestanden, ze worden slechts gekoppeld met verschillende libraries. Redhat 5.x gebruikers zouden moeten kiezen voor het glibc rpm package. Gebruikers van op glibc gebaseerde systemen zonder rpm ondersteuning zouden het glibc tar packages moeten gebruiken. De libc5 rpm is voor Redhat distributies van voor 5.0 en andere distributies die gebruik maken van het rpm package formaat. De libc5 tar.gz package is voor Slackware en alle anderen.Zie de sectie voor de lokatie van de Linux Quakeworld bestanden.De voorvereisten en configuratie voor deze binaries zijn hetzelfde als voor Quake, dus raadpleeg de voorgaande secties voor hulp bij het instellen van SVGAlib voor glide/Mesa.

Installeren van de RPM packages Installatie van de rpm packages zou zo simpel moeten zijn als:su root rpm -Uvh qwcl-xxxxx.i386.rpmqwcl, glqwcl en glqwcl.glx zullen setuid root worden geïnstalleerd zodat ze de grafische devices op je systeem kunnen benaderen. De X- en GL-clients kunnen zonder rootprivileges worden gedraaid als je de volgende instructies in hieronder opvolgt.Het kan zijn dat rpm een melding geeft dat het libglide2x.so niet kan vinden. De library Glide is alleen nodig als je een 3Dfx kaart hebt en Quakeworld in GL-mode (glqwcl) wilt draaien. Als je niet van plan bent om de GL-mode te gebruiken, kun je de afhankelijkheid van glide overschrijven met de --nodeps optie:su root rpm -Uvh qwcl-xxxxx.i386.rpm --nodeps

Installeren van de tar.gz packages Untar gewoon het bestand in je Quake directory om het te installeren. Doe dit als root zodat de juiste bestandspermissies worden ingesteld:cd /usr/local/games/quake su root tar -xzf qwcl2.21-i386-unknown-linux2.0.tar.gzqwcl, glqwcl en glqwcl.glx zullen setuid root worden geïnstalleerd zodat ze de grafische devices op je systeem kunnen benaderen. De GL- en X-clients kunnen zonder rootprivileges worden gedraaid als je de instructies in hieronder opvolgt.

Draaien van QuakeWorld Zodra QuakeWorld te midden van je Quake bestanden is geïnstalleerd, kun je het opstarten met: ./qwcl +connect some.server.addressZie de sectie voor info over een aantal front-ends voor QuakeWorld die het makkelijk maken servers te vinden.lib3dfxgl.so Met Quakeworld versie 2.30, is er een alternatief voor de library Mesa beschikbaar. lib3dfxgl.so is een mini-GL driver geoptimaliseerd voor Quake die in wat betere herhalingsfrequenties voorziet dan Mesa. Dit is een port van een driver die 3Dfx voor Quake onder Windows ontwikkelde, en blijkbaar werken nog niet alle mogelijkheden correct. Dus hopelijk kunnen we verwachten dat zijn performance met de tijd zal verbeteren.Net als Mesa, vereist lib3dfxgl.so Glide om toegang te kunnen krijgen tot je 3Dfx kaart. Met de Quakeworld packages wordt een script meegeleverd, glqwcl.3dfxgl voor het draaien van Quakeworld met deze library op glibc systemen. De volgende paragraaf legt uit hoe je Quakeworld met lib3dfxgl.so op een libc5 systeem draait. Om dit script werkend te krijgen op een glibc systeem moet het uitvoerbare bestand glqwcl niet setuid zijn, noch zou je het als root moeten draaien. glqwcl zal in stilte Mesa laden in plaats van lib3dfxgl.so als het met root permissies wordt opgestart. Deze niet-root vereiste gaat er vanuit dat je de /dev/3dfx hebt geïnstalleerd.Op een libc5 systeem, zul je als volgt een symbolische koppeling naar lib3dfxgl.so met de naam libMesaGL.so.2 aan moeten maken: cd /usr/local/games/quake ln -sf lib3dfxgl.so libMesaGL.so.2 Start vervolgens Quakeworld vanuit het script waarin $LD_LIBRARY_PATH aangeeft in de huidige directory te kijken: #!/bin/sh LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH" ./glqwcl $*Je kunt zien welke driver wordt geladen door de uitvoer op je console te bekijken op het moment dat QuakeWorld start: GL_VENDOR: 3Dfx Interactive Inc. GL_RENDERER: 3Dfx Interactive Voodoo^2(tm) GL_VERSION: 1.1 GL_EXTENSIONS: 3DFX_set_global_palette WGL_EXT_swap_control GL_EXT_paletted_texture GL_EXT_shared_texture_palette GL_SGIS_multitextureAls GL_VENDOR Brian Paul aangeeft in plaats van 3Dfx Interactive Inc., dan wil dat zeggen dat Mesa nog steeds wordt gebruikt in plaats van de miniport-driver.glqwcl.glx ++ glqwcl.glx is verbonden met de standaard OpenGL-libraries in plaats van met Mesa. Dit staat Quakeworld toe op andere 3D hardware te draaien die door andere OpenGL-implementaties wordt ondersteund. Voor dit moment, ben ik niet bekend met enige OpenGL-implementaties die andere hardware dan 3Dfx ondersteunen, maar deze renderer geeft de waarborg dat als ze verschijnen, we in staat zullen zijn om er Quakeworld mee te spelen.Gebruik van de GLX-interface verwijdert ook GL Quake II's afhankelijkheid van SVGAlib voor de toetsenbord- en muisinvoer.Dit is een GLX-applicatie en moet als zodanig vanuit X worden uitgevoerd.Je kunt deze client met Mesa/3Dfx gebruiken als je Mesa en Glide installeert zoals uitgelegd in de voorgaande sectie, stel vervolgens de omgevingsvariabele $MESA_GLX_FX in op "fullscreen" voordat je quake2 opstart:export MESA_GLX_FX=fullscreen ./glqwcl.glx +_windowed_mouse 1Waarom de optie +_windowed_mouse 1? Denk eraan dat dit een X-applicatie is, die gebruik maakt van je 3Dfx-kaart. Zelfs al neemt het beeld je hele scherm in beslag, Quakeworld draait nog steeds in een venster. Dit betekent dat als je niet zeer voorzichtig bent, je de muisaanwijzer buiten het Quakeworld venster zou kunnen verplaatsen en Quakeworld zal plotseling niet meer reageren op muis- en toetsenbordinvoer. +_windowed_mouse 1 voorkomt dit probleem door glqwcl.glx de muis ver voor te zijn en het niet toe te staan dat het zich buiten het venster begeeft.