Linux Quake HOWTO
 Bob Zimbinski ([email protected]), Brett A. Thomas
 ([email protected]), e Mike Hallock ([email protected])
 v1.0.1.15, 30 August 1998

 Questo documento illustra come installare ed usare Quake, QuakeWorld e
 QuakeII e come risolvere i problemi correlati, su un sistema Intel
 Linux.

 1.  Introduzione

 Quake, QuakeWorld e Quake II sono giochi di azione in 3D tremendamente
 famosi, sviluppati dalla id Software.

 Se non li conoscete, ci sono posti migliori di questo HOWTO dove
 impararne le basi. Guardate la sezione ``Altre fonti di informazione''
 per averne una lista.

 Questo documento assume che abbiate Linux funzionante, e in alcuni
 casi anche il sistema X Window. X non � indispensabile, ma � un buon
 modo per provare un'installazione base. Se non avete X, potete
 tranquillamente saltare tutti i riferimenti ad esso.

 Le sezioni di questo documento che sono state aggiornate nell'ultima
 versione hanno un ** prima del titolo. Le sezioni aggiornate nella
 versione precedente hanno un ++.


 1.1.  Feedback, commenti, correzioni

 Questo documento di certo non contiene tutto quello che si deve sapere
 sul Linux Quake. Con il vostro aiuto, per�, possiamo portarlo sempre
 pi� vicino a quell'ideale. Vorremmo che questo HOWTO fosse il pi�
 completo ed accurato possibile, quindi se trovate errori od omissioni,
 fatecele sapere.  Le domande, i commenti e le correzioni dovrebbero
 essere inviati a Bob Zimbinski ([email protected]) o a Mike Hallock
 ([email protected]).  Le critiche costruttive sono ben accette, i flame
 no.



 1.2.  Ringraziamenti **

 La versione originale di questo documento � stata scritta da Brett
 A.Thomas ([email protected]) e da Mike Hallock ([email protected]).  Bob
 Zimbinski ([email protected]) ha riscritto ed espanso il documento
 originale.

 Dei ringraziamenti speciali vanno alle seguenti persone, per averci
 portato Quake per Linux:


 �  John Carmack e il resto della id Software per questi giochi
    eccezionali.


 �  Dave 'Zoid' Kirsch ([email protected]) per il porting per Linux.


 �  Dave Taylor ([email protected]) per aver cominciato questo strano
    affare del porting di Linux.


 �  Daryll Strauss ([email protected]) per il porting di glide per
    Linux.

 �  Brian Paul ([email protected]) per la libreria grafica Mesa.


 �  David Bucciarelli ([email protected]) per il driver Mesa/glide.


 Grazie alle seguenti persone per il loro contributo a questo HOWTO:


 �  Mike Brunson ([email protected]) per il suggerimento sul vid_restart.


 �  Joey Hess ([email protected]) per le informazioni su come fare
    girare i giochi svga e gl da X.


 �  Joe S. ([email protected]) per un enorme pila di suggerimenti


 �  Brad Lambert ([email protected]) per la nota su -noudp.


 �  agx ([email protected]) per le informazioni
    sull'installazione di Quake e per averci fatto notare QIPX.


 �  Derrik Pates ([email protected]) per avermi fatto pensare
    alla sicurezza.


 �  Michael Dwyer ([email protected]) per le idee sulle
    "considerazioni sui SO".


 �  Derek Simkowiak ([email protected]) per la procedura di
    installazione da CD di Quake I


 �  sunstorm ([email protected]) informazioni sul Quake Mission
    Pack 2.


 �  Neil Marshall ([email protected]) per informazioni sugli schermi.



 1.3.  Altre fonti di informazioni



 1.3.1.  Informazioni specifiche su Quake per Linux **



 �  LQ:Linux Quake & Utilites http://www.linuxquake.com/.


 �  Linux Quake Page http://captured.com/threewave/linux/


 �  QuakeWorld.net http://www.quakeworld.net





 1.3.2.  Informazioni su Quake in generale



 �  id Software http://www.idsoftware.com


 �  PlanetQuake http://www.planetquake.com


 �  QuakeWorld Central http://qwcentral.stomped.com


 �  3Dfx's GL Quake FAQ (piuttosto obsolete)
    http://www.3dfx.com/game_dev/quake_faq.html


 �  Farenheit 176 Console Command Listing
    http://www.planetquake.com/f176


 �  rec.games.computer.quake.* newsgroups



 1.3.3.  Informazioni sui giochi per Linux



 �  LinuxGames http://www.linuxgames.com/


 �  The Linux Game Tome
    http://www.cs.washington.edu/homes/tlau/tome/linux-game.html



 2.  Quake/Quakeworld

 Per installare Quake sul vostro sistema Linux dovete avere una qualche
 forma della distribuzione ufficiale di Quake della id, o il CD-ROM per
 dos/Windows comprato in un negozio, o la versione shareware scaricata
 dalla rete (vedere ``sotto'' per i dettagli su come procurarvi la
 versione shareware). In alternativa, se avete Quake installato su una
 macchina DOS/Windows, potete usare i file rilevanti da quella
 installazione.


 2.1.  Requisiti minimi

 Come minimo avrete bisogno di:



 �  Un Pentium 90 o superiore (raccomandato un 133)


 �  16 MB di RAM (raccomandati 24)


 �  Il CD-ROM di Quake o la versione shareware (quake106.zip)


 �  Linux con il kernel 2.0.24 o successiva


 �  libc 5.2.18 o successiva


 �  Uno dei seguenti:


 �  X11R5 o successivo (per xquake)

 �  SVGAlib 1.2.0 o successiva (per squake e glquake)



 �  30-80 megabyte di spazio libero su disco (a seconda del tipo di
    installazione)


 �  Accesso come root nella macchina su cui installate




 Opzionali:


 �  Una scheda audio supportata


 �  Una scheda grafica accelerata 3Dfx VooDoo Graphics o VooDoo2 3D


 �  Mesa 2.6 o successiva (per glquake)



 2.2.  Installare Quake



 2.2.1.  Scaricare i file necessari**

 Tutti i file necessari per Linux Quake sono disponibili sul sito ftp
 della id Software, ftp.idsoftware.com. Questo sito pu� essere carico
 alle volte, quindi � meglio usare uno di questi mirror:


 �  ftp.cdrom.com/pub/idgames/idstuff (California, USA)


 �  ftp.gamesnet.net/idsoftware (California, USA)


 �  ftp.linuxquake.com/lqstuff (Michigan, USA)


 �  ftp.stomped.com/pub/mirror/idstuff (Minnesota, USA)


 �  mirrors.telepac.pt/pub/idgames (Lisbona, Portogallo)


 �  download.netvision.net.il/pub/mirrors/idsoftware (Haifa, Israele)


 I file di Quake nominati in questa sezione sono:


 �  Distribuzione Shareware di Quake per Windows
    ftp://ftp.idsoftware.com/idstuff/quake/quake106.zip


 �  Binario di Quake per X11
    ftp://ftp.idsoftware.com/idstuff/unsup/unix/quake.x11-1.0-i386-unknown-
    linux2.0.tar.gz


 �  Binario di Quake per SVGAlib
    ftp://ftp.idsoftware.com/idstuff/unsup/squake-1.1-i386-unknown-
    linux2.0.tar.gz


 �  Binario di Quake per OpenGL/Mesa
    ftp://ftp.idsoftware.com/idstuff/unsup/unix/glquake-0.97-i386-unknown-
    linux2.0.tar.gz


 �  Client di QuakeWorld per Linux (in ciascun pacchetto ci sono i
    client per X11, SVGAlib e GL)


 �  pacchetto tar.gz per libc5
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwcl-2.30-i386-unknown-
    linux2.0.tar.gz


 �  pacchetto tar.gz per glibc
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwcl-2.30-glibc-
    i386-unknown-linux2.0.tar.gz


 �  pacchetto rpm per libc5
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwcl-2.30-1.i386.rpm


 �  pacchetto rpm per glibc
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwcl-2.30-glibc-1.i386.rpm





 �  Server di QuakeWorld per Linux


 �  pacchetto tar.gz per libc5
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwsv-2.30-i386-unknown-
    linux2.0.tar.gz


 �  pacchetto tar.gz per glibc
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwsv-2.30-glibc-
    i386-unknown-linux2.0.tar.gz


 �  pacchetto rpm per libc5
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwsv-2.30-1.i386.rpm


 �  pacchetto rpm per glibc
    ftp://ftp.idsoftware.com/idstuff/quakeworld/unix/qwsv-2.30-glibc-1.i386.rpm



 �  Pacchetto client di Capture the Flag
    ftp://ftp.cdrom.com/pub/quake/planetquake/threewave/ctf/client/3wctfc.zip


 Altro software nominato:


 �  utilit� di archiviazione lha
    ftp://sunsite.unc.edu/pub/Linux/utils/compress/lha-1.00.tar.Z.


 �  librerie grafiche SVGAlib
    http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.tar.gz


 �  binari delle SVGAlib per libc5
    http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz


 �  librerie di runtime Glide http://glide.xxedgexx.com/3DfxRPMS.html




 2.2.2.  Creazione della directory di installazione ++

 La prima cosa che dovete fare � decidere dove installare Quake. Molte
 persone lo mettono in /usr/games/quake.  Gli amministratori di sistema
 anali come me scelgono di installare tutto quello che non fa parte
 della distribuzione standard sotto /usr/local, quindi per me Quake va
 in /usr/local/games/quake.  Se scegliete di installarlo da qualche
 altra parte, sostituite il percorso appropriato dove io indico
 /usr/local/games/quake.

 Nota per gli utenti RedHat. Se volete installare QuakeWorld dai
 pacchetti rpm, dovreste probabilmente installare Quake in
 /usr/local/games/quake, dato che gli rpm si installano in questa
 directory per default.

 Quindi andate avanti e create la directory in cui volete installare
 Quake, ed entrateci con cd. Il resto di queste istruzioni assumeranno
 che questa sia la vostra directory corrente.




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






 2.2.3.  Installazione dal CD di Quake ++

 Se si sta per installare dal CD-ROM di Quake, allora si legga questa
 sezoine, altrimenti si � liberissimi si saltarla.

 Ci sono almeno due versioni del CD di Quake in circolazione. Io ne ho
 una abbastanza vecchia che ha la versione 1.01 di Quake, e ne ho visti
 altri che contengono la versione 1.06. Avete la 1.01 se dentro ci sono
 file che si chiamano  quake101.1 e quake101.2. Se al loro posto vedete
 un file che si chiama  resource.1, avete un CD pi� nuovo.


 Montate ora il vostro CD di Quake, e determinate quale versione avete.
 Nell'esempio riportato qui sotto, sostituite /dev/cdrom e /mnt/cdrom
 con il file di device ed il punto di mount propri del vostro sistema:




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







 �  Se sul CD avete un file resource.1, andate avanti al punto
    successivo. Per i CD versione 1.01 dovrete scaricare il pacchetto
    Quake shareware per aggiornare i file .pak dopo l'installazione.
    L'operazione viene spiegata nell'ultimo punto di questa sezione.


 �  Concatenate i due file resource dal CD in un singolo file sull'hard
    disk:



           cat /mnt/cdrom/quake101.1 /mnt/cdrom/quake101.2 > resource.1







 �  Continuate ora al prossimo paragrafo, ma quando mi riferisco a
    /mnt/cdrom/resource.1, al suo posto usate
    /usr/local/games/quake/resource.1.







 �  � ora il momento di estrarre i file di Quake. Il file resource.1
    sul CD � in realt� un archivio lha (un formato di compressione di
    archivi come zip o tar). Per estrarlo useremo il comando lha. Se
    non lo avete installato sul vostro sistema, lo potete scaricare da
    ftp://sunsite.unc.edu/pub/Linux/utils/compress/lha-1.00.tar.Z.




           lha e /mnt/cdrom/resource.1






 Quando avete fatto con lha, la directory di Quake dovr� contenere
 molti nuovi file. Dovr� essere creata anche una directory id1/. I file
 in questa directory sono i soli importanti per Quake per Linux, quindi
 potete tranquillamente cancellare tutto il resto. Se � la prima volta
 che usate Quake, o anche in caso contrario, potreste voler tenere i
 file *.txt.  Sul mio sistema, butto tutti i readme che si accumulano
 dentro una directory doc/; quindi:




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








 �  Se avete fatto l'installazione da un CD versione 1.01, ora dovete
    sovrascrivere il file  id1/pak0.pak con quello della versione
    shareware. Installate la versione shareware come descritto in
    ``Installazione della versione shareware'', ma fatelo in una
    directory temporanea, in modo da non dover sovrascrivere i veri
    file di Quake. Quando avete installato i file shareware, copiate il
    file  id1/pak0.pak dalla directory temporanea in
    /usr/local/games/quake/id1, dopodich� potete cancellare la
    directory con i file shareware.



 E questo � quanto per installare dal CD. Potete saltare direttamente
 alla sezione "``Installazione dei file binari di Quake per Linux''".


 2.2.4.  Installazione da DOS/Windows a Linux

 Se avete Quake installato sotto Windows o DOS su un'altra macchina,
 potete trasferire i file da quake\id1\ al sistema Linux usando FTP o
 in qualche altro modo. Tenete presente che i nomi dei file nel vostro
 sistema Linux devono essere in minuscolo per poter essere usati,
 quindi dovrete probabilmente rinominare i file dopo il trasferimento.
 Notate anche che potrebbe essere necessario cancellare l'installazione
 in DOS/Windows per restare in regola con i termini della licenza della
 id. Non � colpa mia se fate qualcosa di illegale.

 Se DOS/Windows e Linux sono sulla stessa macchina avete due
 possibilit�: copiare i file dalla partizione DOS/Windows alla
 partizione Linux, o fare un link. Le due cose sono equivalenti; potete
 semplicemente risparmiare circa 50 megabyte di spazio disco se fate un
 link invece di una copia.

 Qualsiasi cosa abbiate scelto, per prima cosa passate nella directory
 di Quake e createne una nuova di nome id1:




           cd /usr/local/games/quake
           mkdir id1







 �  Se volete copiare i file dalla partizione DOS/Windows, fate
    qualcosa del genere:




           cp /win95/games/quake/id1/*.pak id1








 �  Per creare i link, fate:




           cd id1
           ln -s /win95/games/quake/id1/*.pak .







 Sostituite /win95/games/quake con il percorso corretto per la
 partizione DOS/Windows e per la directory di installazione di Quake.

 I file dei dati di Quake sono ora installati. Andate avanti fino a
 "``Installazione dei binari di Quake per Linux''".


 2.2.5.  Installazione della versione shareware

 La versione shareware di Quake con un solo episodio si pu� scaricare
 gratuitamente dal sito ftp della id. Ha tutte le caratteristiche della
 versione completa, con un paio di limitazioni: non ci si pu� giocare a
 Quakeworld, e non si possono usare livelli personalizzati o
 modificati.

 Installare la versione shareware di Quake non � molto diverso da
 installare da CD.

 Vedere la sezione  ``Scaricare i file necessari'' per sapere da dove
 prendere la distribuzione shareware. Scaricatela ed estraetela nella
 directory di Quake:




           cd /usr/local/games/quake
           unzip -L /dove/la/vuoi/mettere/quake106.zip





 Ora, tra l'altro, avete un file che si chiama resource.1 che in realt�
 � un archivio lha (lha � un formato di compressione ed archiviazione
 di file come zip o tar). Per estrarlo si usa il comando  lha(1).  Se
 non ce l'avete installato, lo potete prendere da
 ftp://sunsite.unc.edu/pub/Linux/utils/compress/lha-1.00.tar.Z.
           lha e resource.1





 Quando avete fatto con lha, la directory di Quake dovr� contenere
 molti nuovi file. Dovr� essere creata anche una directory id1/. I file
 in questa directory sono i soli importanti per Quake per Linux, quindi
 potete tranquillamente cancellare tutto il resto. Se � la prima volta
 che usate Quake, o anche in caso contrario, potreste voler tenere i
 file *.txt.  Sul mio sistema, butto tutti i readme che si accumulano
 dentro una directory doc/; quindi:




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





 Ora siete pronti ad installare i binari per Linux.


 2.3.  Aggiungere i binari per Linux

 Decidete quale dei tre tipi di Quake volete installare:


 �  X11 Quake vi fa usare Quake in una finestra del desktop di X. � il
    modo meno eccitante di usarlo, ma � un buon modo per provare
    l'installazione.

 �  Squake � il client di Quake per SVGAlib. Gira a schermo pieno sulla
    console di testo.


 �  GLQUake � il client di Quake per OpenGL, l'Unico Modo per giocare a
    Quake se avete una scheda accelerata 3Dfx.


 Scaricate i pacchetti che vi servono  (vedere la sezione ``Scaricare i
 file necessari'') ed estraeteli nella directory di Quake, cos�:




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






 2.4.  Impostare i permessi

 I server di Quake e QuakeWorld possono essere usati da qualsiasi
 utente.  I client di Quake, invece, hanno bisogno di accesso alle
 schede sonore e grafiche, cosa che richiede privilegi che i normali
 utenti non hanno.  Un (brutto) modo di superare questo problema � di
 usare Quake da root.  Ai bravi amministratori di sistema si
 accapponer� la pelle pensando ad una cosa del genere. Una soluzione
 pi� accettabile � rendere i binari di Quake setuid root; in questo
 modo Quake pu� essere usato da qualsiasi utente, mantenendo i
 privilegi di accesso alla scheda sonora e grafica. Anche il setuid
 presenta dei rischi di sicurezza. Un utente furbo potrebbe sfruttare
 un buco di sicurezza in Quake per ottenere accesso di root al vostro
 sistema. Ovviamente, se non usate un sistema multiutente, questo pu�
 non importarvi.

 squake � l'unico client di Quake che deve essere usato con i permessi
 di root. Con un po' di fatica, potete fare in modo di poter usare i
 client X e GL senza setuid.  ``Usare i client X e GL senza permessi di
 root'' nella sezione Tips and Tricks vi spiega come fare.


 Se volete usare squake, rendetelo setuid root con i seguenti comandi:



           chown root squake
           chmod 4755 squake





 Se avete deciso che � ok usare quake.x11 e glquake setuid root sul
 vostro sistema, potete ripetere i comandi qui sopra anche per quei
 binari.



 2.5.  X11 Quake

 Se avete installato il client X11, questo � un buon momento per
 provarlo.  Per  glquake e squake c'� bisogno di configurare altre
 cose, ma quake.x11 dovrebbe essere pronto.




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





 Se tutto va bene dovrebbe apparire una piccola finestra di Quake con
 la prima demo. Dovreste poter sentire anche degli effetti sonori e, se
 il CD � montato, anche della musica. Se qualcosa di queste non accade,
 controllate la sezione ``Risoluzione dei problemi''.


 2.6.  SVGAlib Quake

 Sia squake che glquake hanno bisogno della SVGAlib (glquake usa la
 SVGAlib per gestire l'input da tastiera e da mouse, se ve lo state
 chiedendo).  La SVGAlib � compresa nella maggior parte delle
 distribuzioni di Linux moderne, e deve essere configurata
 correttamente per poter utilizzare squake o glquake.

 libvga.config � il file di configurazione della SVGAlib. Sulla maggior
 parte dei sistemi lo troverete nelle directory  /etc o /etc/vga.
 Assicuratevi che il mouse, il monitor e la scheda video vi siano
 impostati in maniera corretta per il vostro sistema. Per avere altri
 dettagli consultate la documentazione della SVGAlib.

 Se non l'avete gi�, scaricatela dal sito indicato nella ``sezione dei
 file'' pi� sopra.  Se avete la RedHat 5.x o un'altra distribuzione di
 Linux basata su glib, guardate le ``considerazioni su Glibc, RedHat
 5.x, Debian 2'' nella sezione Risoluzione dei problemi/FAQ per avere
 delle informazioni importanti su come compilare le librerie per
 poterle usare con Quake.  A
 http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz
 � disponibile un binario delle SVGAlib precompilato con le libc5 per
 chi non ha voglia di ricompilare il tutto.

 Dovreste usare squake da una console virtuale. Non funzioner� da X, a
 meno che non siate root quando lo avviate, e utilizzare un gioco come
 root � una cosa da evitare. Quindi, se siete in X, fate CTRL+ALT+F1,
 fate il login e poi




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





 ``Utilizzare i giochi SVGA e GL da X'' nella sezione dei Tips & Tricks
 pi� avanti spiega come lanciare Quake per SVGA e GL da X senza passare
 manualmente ad una console virtuale.


 2.7.  GLQuake

 Il Quake per le OpenGL accelerate via hardware � Quake come Dio
 comanda. Non c'� possibile sostituto, e una volta provato non si torna
 indietro.

 Per usare glquake, vi serve una scheda 3D con i chipset grafici
 Voodoo, Voodoo2 o Voodoo Rush. Ci sono delle procedure particolari da
 seguire se avete una scheda Vodoo Rush, ma non ve le posso illustrare
 perch�, francamente, non saprei quello che direi. Una versione futura
 di questo HOWTO coprir� anche i problemi del Rush (se qualcuno ne
 vuole scrivere, sar� contento di inserire il pezzo qui).

 Le librerie SVGAlib, Glide e Mesa devono essere tutte installate e
 configurate correttamente sul sistema, per poter usare glquake. Le
 seguenti sezioni copriranno brevemente i passi da seguire per farlo.

 Il ([email protected]) Linux 3Dfx HOWTO
 (http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html) di Bernd
 Kreimeier � un buon posto dove cercare altre informazioni.

 Il newsgroup 3dfx.glide.linux sul news server della 3dfx
 (news.3dfx.com) � un'altra buona fonte di informazioni
 sull'intersezione di Linux, glide, Mesa e Quake.


 2.7.1.  SVGAlib

 glquake usa le SVGAlib per ricevere input dal mouse e dalla tastiera,
 quindi dovrete configurarle come illustrato nella sezione ``SVGAlib
 Quake''.


 2.7.2.  Glide

 Glide � una libreria che fornisce un'API per programmare le schede
 3Dfx.  Se volete che le librerie grafiche Mesa usino la vostra scheda
 3Dfx, le dovete avere.

 Potete trovare l'ultima versione delle glide su
 http://glide.xxedgexx.com/3DfxRPMS.html. Scegliete il (i) pacchetti
 appropriati per il vostro sistema, ed installateli seguendo le
 istruzioni che trovate sulla pagina web.

 Notate che a meno che non scarichiate il pacchetto dei device driver
 per 3Dfx oltre alla libreria Glide, potrete utilizzare solo le
 applicazioni Glide (come GLQuake) come root. Installate il modulo
 /dev/3dfx e potrete usare GLQuake come utente normale.

 Una volta che avete installato glide, provate il programma di test che
 lo accompagna. Ricordatevelo: � un buon modo di resettare il display
 se un'applicazione di glide (come GLQuake) crasha e lascia lo schermo
 spento.  NOTA: usate questo test da una console virtuale, non X! �
 possibile che l'applicazione di test perda il fuoco della tastiera e
 del mouse in X, e a quel punto non avreste modo di chiuderlo.





           /usr/local/glide/bin/test3Dfx





 Il vostro schermo dovrebbe diventare blu e chiedervi di premere un
 tasto qualsiasi. Dopo che avrete premuto il tasto dovreste tornare al
 prompt.  3dfx.glide.linux sul news server della 3dfx (news.3dfx.com) �
 un'ottima fonte di informazioni per problemi specifici di glide per
 Linux.


 2.7.3.  Mesa

 Una volta installato glide, dovrete installare Mesa,
 un'implementazione free di OpenGL di Brial Paul
 ([email protected]). Fortunatamente, non dovrete cercare
 lontano, perch� le Mesa 2.6 sono incluse con i binari di QLQuake e
 QuakeWorld. Tutto quello che dovete fare � spostarle nel posto giusto:




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





 Se volete aggiornare le Mesa ad una versione pi� recente (al momento
 in cui scrivo le Mesa 3.0 sono le pi� aggiornate), potete scaricarle
 da  ftp://iris.ssec.wisc.edu/pub/Mesa Se avete RedHat 5.x o un'altra
 distribuzione basata sulle glibc, guardate le ``considerazioni su
 glibc, RedHat 5.x, Debian 2'' nella sezione Risoluzione dei
 problemi/FAQ per avere informazioni importanti sulla compilazione
 delle librerie per Quake.
 Dopo aver compilato il tutto seguendo le istruzioni, dovrete fare due
 cose:



 �  Eliminare la precedente installazione delle Mesa. Se avevate prima
    installato le libMesaGL.so.2.6 come descritto sopra, le dovete
    eliminare, o Quake potrebbe non usare le nuove versioni.




           cd /usr/local/lib/
           rm -f libMesaGL.so.2*








 �  Se le nuove Mesa hanno un numero di versione principale maggiore di
    2, dovete crearne un link con il nome libMesaGL.so.2:




           cd /usr/local/lib/
           ln -s /dovunque/siano/libMesaGL.so.3.0 libMesaGL.so.2
           ldconfig








 Ora passate ad una console virtuale (CTRL+ALT+F1) ed avviate glquake.




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







 2.8.  Opzioni da linea di comando specifiche di Linux

 Questa sezione ricopre le opzioni da linea di comando specifiche della
 versione di Quake per Linux. Ci sono molte altre opzioni per Quake, ma
 vanno al di l� di questo HOWTO. Controllate su alcuni dei siti
 elencati nella sezione ``Informazioni generali su Quake'' per questo
 tipo di informazioni.




    -mem num
       Specifica la memoria in megabyte da allocare (il default � 8MB,
       che dovrebbe essere sufficiente nella maggior parte dei casi).



    -nostdout
       Non mandare output nello stdout. Usate questa opzione se non
       volete che tutto l'output della console sia mandato sul
       terminale.



    -mdev device
       Il dispositivo del mouse, il default � /dev/mouse



    -mrate speed
       Il baud rate del mouse, il default � 1200



    -cddev device
       Il dispositivo del CD, il default � /dev/cdrom



    -mode num
       Per usare le modalit� video indicate (solo per squake)



    -nokdb
       Non inizializzare la tastiera



    -sndbits 8 o 16
       Imposta la dimensione in bit del campionamento sonoro. Il
       default � 16, se supportato



    -sndspeed speed
       Imposta la velocit� del suono. I valori normali sono 8000,
       11025, 22051 e 44100. Il default � 11025.



    -sndmono
       Imposta il suono mono



    -sndstereo
       Imposta il suono stereo (� il default, se supportato)



 2.9.  QuakeWorld **

 http://www.quakeworld.net spiega tutto meglio di quanto possa farlo
 io:




 QuakeWorld � una versione di Quake multi-giocatore specifica
 per Internet. Mentre la versione originale di Quake pu�
 essere giocata su Internet, chi giocava via modem - la mag�
 gioranza dei giocatori - avevano una soddisfazione minore.
 Per gli utenti si prospettavano un lag eccessivo, cio�
 azioni che avvenivano molto dopo che le si faceva, la
 perdita di pacchetti, in cui il gioco si fermava e ripren�
 deva diversi secondi dopo, e varie altre difficolt�. Dopo
 aver realizzato che molte persone giocavano a Quake su
 Internet, e quanti altri avrebbero voluto ma non potevano
 perch� il gioco non era soddisfacente, John Carmack della id
 Software decise di creare una versione di Quake ottimizzata
 per il giocatore medio su Internet via modem. La versione
 specifica via Internet fa solo una cosa, cio� giocare a
 deathmatch su una rete TCP/IP come Internet.  Non ha sup�
 porto per il gioco singolo, e non si pu� fare niente senza
 connettersi ad un servizio speciale.



 Per giocare a QuakeWorld vi serve la versione registrata, completa o
 commerciale di Quake, ed un client QuakeWorld per Linux. I client di
 QuakeWorld sono degli stessi tipi (X11, SVGAlib e Mesa) del Quake
 normale, ma sono tutti impacchettati insieme in un singolo pacchetto,
 quindi avete bisogno di scaricare un file solo.  Dovete per� scegliere
 tra quattro pacchetti:


 �  libc5 tar.gz


 �  glibc tar.gz


 �  libc5 rpm


 �  glibc rpm


 Installate solo uno di questi pacchetti: ciascuno contiene gli stessi
 file, sono solo linkati con librerie diverse.  Gli utenti di RedHat
 5.x possono scegliere il pacchetto rpm glibc.  Chi ha un sistema
 basato su glibc senza supporto rpm dovrebbe usare il pacchetto glibc
 tar. L'rpm libc5 � per le distribuzioni RedHat precedenti alla 5.0 e
 per altre distribuzioni che usano il formato rpm.  Il pacchetto tar.gz
 libc5 � per la Slackware e per tutti gli altri.

 Vedere la sezione ``Scaricare i file necessari'' per sapere dove
 trovare i file di QuakeWorld per Linux.

 I prerequisiti e la configurazione di questi binari sono gli stessi
 che per Quake, quindi riferitevi alle sezioni precedenti per avere
 aiuto su come impostare le SVGAlib o le glide/Mesa.


 2.9.1.  Installazione dei pacchetti RPM ++

 Per installare i pacchetti rpm dovrebbe essere sufficiente







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





 qwcl, glqwcl e glqwcl.glx saranno installate setuid root in modo che
 possano accedere ai dispositivi grafici del sistema. I client X e GL
 possono essere usati senza privilegi di root se seguite le istruzioni
 in ``Utilizzare i giochi per X e GL senza setuid'' pi� avanti.

 L'rpm pu� lamentarsi che non trova libglide2x.so.  La libreria glide �
 necessaria solo se avete una scheda 3Dfx e volete usare QuakeWorld in
 modalit� GL (glqwcl).  Se non volete usare la modalit� GL, potete
 superare le dipendenze di glide con l'opzione --nodeps:




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






 2.9.2.  Installazione dei pacchetti tar.gz ++

 Per installare, fate untar del file nella directory di Quake. Fatelo
 come root, in modo da impostare i corretti permessi dei file:




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





 qwcl, glqwcl e glqwcl.glx saranno installati setuid root in modo che
 possano accedere i dispositivi grafici sul vostro sistema. I client GL
 e X possono essere utilizzati senza privilegi di root se seguite le
 istruzioni in ``Utilizzare i giochi per X e GL senza setuid'' pi�
 avanti.



 2.9.3.  Utilizzare QuakeWorld ++

 Una volta installato QuakeWorld insieme ai file di Quake, potete farlo
 partire con:



           ./qwcl +connect some.server.address






 Vedere la sezione ``Software correlato'' per le informazioni su
 qualche front end per QuakeWorld che rende pi� facile trovare i
 server.



 �  lib3dfxgl.so  **


    Con la versione 2.30 di QuakeWorld � disponibile un'alternativa
    alle librerie Mesa. lib3dfxgl.so � un mini driver GL ottimizzato
    per Quake che fornisce una framerate leggermente migliore delle
    Mesa.  Si tratta del porting di un driver che la 3Dfx ha sviluppato
    per Quake sotto Windows, ed apparentemente ancora non tutte le sue
    caratteristiche funzionano bene; quindi speriamo che la sua
    validit� aumenti nel tempo.

    Come le Mesa, lib3dfxgl.so ha bisogno delle Glide per accedere alla
    scheda 3Dfx. Il pacchetto di QuakeWorkd contiene uno script,
    glqwcl.3dfxgl per usare QuakeWorld su sistemi glibc con questa
    libreria. Il prossimo paragrafo spiega come usare QuakeWorld con la
    lib3dfxgl.so su un sistema libc5. Su un sistema glibc, per fare
    funzionare lo script, l'eseguibile glqwcl non deve essere setuid, e
    non va usato da root. glqwcl caricher� silenziosamente le Mesa
    invece delle lib3dfxgl.so se si fa girare con i permessi di root.
    Queste richieste implicano che abbiate installato il driver
    /dev/3dfx.


    Sui sistemi basati sulle libc5 dovrete creare un link simbolico a
    lib3dfxgl.so che si chiami libMesaGL.so.2, cos�:



           cd /usr/local/games/quake
           ln -sf lib3dfxgl.so libMesaGL.so.2





 e poi fare partire QuakeWorld da uno script che dica a
 $LD_LIBRARY_PATH di guardare nella directory corrente:


 ______________________________________________________________________
      #!/bin/sh

      LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH" ./glqwcl $*

 ______________________________________________________________________



 Potete vedere quale driver viene caricato guardando l'output nella
 console quando QuakeWorld parte, cos�:




           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_multitexture


 Se GL_VENDOR dice Brian Paul invece di 3Dfx Interactive Inc., vuol
 dire che viene ancora usato Mesa invece del driver miniport.



 �  glqwcl.glx **



    glqwcl.glx viene linkato con le librerie OpenGL standard invece che
    con Mesa. Questo permette a QuakeWorld di girare su hardware
    supportato da altre implementazioni delle Mesa. In questo momento
    non conosco nessuna implementazione che supporti hardware diverso
    dalle 3Dfx, ma questo modo di agire assicura che quando apparissero
    ci si potrebbe giocare a QuakeWorld.

    QuakeWorld � un'applicazione GLX, e come tale deve essere usata da
    dentro X.

    Potete usare questo client con le Mesa/3Dfx se installate le Mesa e
    le Glide come illustrato nella sezione precedente, e poi impostate
    la variabile d'ambiente $MESA_GLX_FX al valore  "fullscreen" prima
    e dopo il comando quake2:




           export MESA_GLX_FX=fullscreen
           ./glqwcl.glx +_windowed_mouse 1





 Perch� usare l'opzione  +_windowed_mouse 1? Ricordate che questa �
 un'applicazione di X che usa la scheda 3Dfx. Anche se il display
 occupa tutto lo schermo, QuakeWorld sta sempre girando dentro una
 finestra.  Ci� significa che se non siete molto attenti, potreste
 spostare il puntatore del mouse fuori della finestra di QuakeWorld, e
 QuakeWorld smetterebbe di rispondere all'input dal mouse e dalla
 tastiera.  +_windowed_mouse 1 elimina questo problema dicendo a
 glqwcl.glx di agganciare il mouse e non farlo muovere all'esterno
 della finestra.




 2.10.  Server


 La maggior parte, se non tutte, le informazioni su come fare girare un
 server QW su DOS o Windows sono applicabili nello stesso modo ad un
 server Linux.

 Per inizializzare un server di QuakeWorld, digitate semplicemente:





           ./qwsv





 Il manuale ufficiale del server di QuakeWorld risiede in
 http://qwcentral.stomped.com.


 2.11.  Moduli ed aggiunte

 Una delle cose pi� belle dei giochi di Quake � che gli autori li hanno
 resi facilmente estensibili. Gli utenti finali possono creare i propri
 livelli, aggiungere nuove armi o mostri, o anche cambiare
 completamente le regole del gioco.


 2.11.1.  Capture the flag (acchiappabandiera)

 Questa � la mia variazione favorita sia di Quake che di Quake2. Invece
 di girare intorno ed uccidere tutti quelli che incontrate (che ha i
 suoi meriti, non capite male!), l'acchiappabandiera � un gioco a
 squadre e molto pi� strategico.  Dave 'Zoid' Kirsch, maintainer dei
 porting di Quake per Linux, ha creato questo modulo.

 Tutto quello che volete sapere del modulo per l'acchiappabandiera
 (CTF) si trova in http://captured.com/threewave/ Per giocare vi serve
 ftp://ftp.cdrom.com/pub/quake/planetquake/threewave/ctf/client/3wctfc.zip.
 Per installare la parte client di CTF, create una directory con nome
 ctf nella vostra directory di Quake, e scompattatevi il file
 3wctfc.zip. Il file readme.txt che lo accompagna � pieno zeppo di
 informazioni utili.




           cd /usr/local/games/quake
           mkdir ctf
           cd ctf
           unzip -L /dovunque/l'abbiate/messo/3wctfc.zip





 Per le informazioni su come utilizzare un server CTF vedere le pagine
 web menzionate qui sopra.



 2.11.2.  Pacchetti missione **

 La Activision ha rilasciato due pacchetti aggiuntivi di livelli extra
 per Quake, Scourge of Armagon e Dissolution of Eternity.



 �  Pacchetto missione 1: The Scourge of Armagon Assumendo che il
    vostro CD sia montato su /mnt/cdrom e che Quake sia installato in
    /usr/local/games/quake:




           cd /usr/local/games/quake
           mkdir hipnotic
           cp /mnt/cdrom/hipnotic/pak0.pak hipnotic
           cp /mnt/cdrom/hipnotic/config.cfg hipnotic



 Usate il pacchetto missione cos�:



           cd /usr/local/games/quake
           ./quake.x11 -game hipnotic








 �  Pacchetto missione 2: Dissolution of Eternity Installare il secondo
    pacchetto missione richiede una procedura molto simile al primo, ma
    sostituite la parola hipnotic con rogue, e saltate il passo
    config.cfg, dato che quest'ultimo non � incluso nel CD del
    pacchetto missione 2.




 2.11.3.  Strumenti per Quake

 Qualcuno vuole contribuire con delle informazioni su qcc, bsp e tutto
 il resto?



 3.  Quake II

 Per installare Quake II sul vostro sistema Linux vi serve un qualche
 tipo della distribuzione ufficiale di Quake II della id: o il CD-ROM
 per Windows comprato dal vostro negozio di software preferito, o la
 versione demo scaricata dalla rete. Vedere ``Scaricare i file
 necessari'' per avere dettagli sulla versione demo.  Alternativamente,
 se avete gi� Quake installato su una macchina Windows, potete usare i
 file che vi interessano da quella installazione.


 3.1.  Prerequisiti

 Come minimo avrete bisogno di:



 �  Un Pentium 90 o superiore (raccomandato il 133)


 �  16 MB di RAM (raccomandati 24)


 �  Il CD-ROM di Quake 2 o la versione demo (q2-314-demo-x86.exe)


 �  Linux con kernel versione 2.0.24 o successiva


 �  libc 5.2.18 o successiva


 �  Uno dei seguenti:



 �  un server X11 che supporti le estensioni di memoria condivise
    MITSM. Sono supportati gli schermi a 8 e 16 bit (per il renderer
    X).


 �  SVGAlib 1.2.10 o successiva (per i renderer SVGA e GL)




 �  25-400 Mb di spazio disco libero (a seconda di come fate
    l'installazione)


 �  Accesso all'account di root della macchina su cui state
    installando.




 Opzionali:


 �  Una scheda audio supportata


 �  Una scheda grafica accelerata 3Dfx Voodoo Graphics o Voodoo2 o
    Voodoo Rush 3D.


 �  Le librerie grafiche 3Dfx installate (per il renderer GL)


 �  Le Mesa 2.6 o successive (per il renderer GL)



 3.2.  Installazione di Quake II



 3.2.1.  Scaricare i file necessari**

 Tutti i file necessari per Quake II per Linux sono disponibili nel
 sito ftp della id Software, ftp.idsoftware.com. Questo sito pu� essere
 spesso congestionato. Quindi potete usare uno dei mirror:


 �  ftp.cdrom.com/pub/idgames/idstuff (California, USA)


 �  ftp.gamesnet.net/idsoftware (California, USA)


 �  ftp.stomped.com/pub/mirror/idstuff (Minnesota, USA)


 �  mirrors.telepac.pt/pub/idgames (Lisbon, Portogallo)


 �  download.netvision.net.il/pub/mirrors/idsoftware (Haifa, Israele)


 I file di Quake II nominati in questa sezione sono:


 �  I binari di Quake II per Linux


 �  il pacchetto tar.gz per libc5
    ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-i386-unknown-
    linux2.0.tar.gz


 �  il pacchetto tar.gz per glibc
    ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-glibc-
    i386-unknown-linux2.0.tar.gz


 �  il pacchetto rpm per libc5
    ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-2.i386.rpm


 �  il pacchetto rpm per glibc
    ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-
    glibc-2.i386.rpm




 �  La versione demo di Quake II per Windows
    ftp://ftp.idsoftware.com/idstuff/quake2/q2-314-demo-x86.exe


 �  Il sorgente di Quake II
    ftp://ftp.idsoftware.com/idstuff/quake2/source/q2source-3.14.shar.Z


 �  Acchiappabandiera per Quake II
    ftp://ftp.idsoftware.com/idstuff/quake2/ctf/102.zip


 Altro software nominato:


 �  le librerie grafiche SVGAlib
    http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.tar.gz


 �  i binari di SVGAlib per libc5
    http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz


 �  le librerie a runtime Glide http://glide.xxedgexx.com/3DfxRPMS.html


 �  la libreria grafica Mesa 3D
    http://www.ssec.wisc.edu/~brianp/Mesa.html


 �  l'utilit� di decompressione unzip
    http://sunsite.unc.edu/pub/Linux/utils/compress/unzip-5.31.tar.gz



 3.2.2.  Creazione della directory di installazione

 La prima cosa che dovete fare � decidere dove volete installare Quake
 II. Molti lo mettono in /usr/games/quake. Gli amministratori di
 sistema anali come me scelgono di installare tutto quello che non fa
 parte della distribuzione standard sotto /usr/local, quindi per me
 Quake II va in /usr/local/games/quake2.  Se scegliete di installarlo
 da qualche altra parte, sostituite il percorso appropriato dove io
 indico /usr/local/games/quake2.

 Quindi andate avanti e create la directory in cui installerete Quake
 II, ed entrateci. Il resto di queste istruzioni assumeranno che questa
 sia la vostra directory corrente.




           mkdir /usr/local/games/quake2
           cd /usr/local/games/quake2






 3.2.3.  Installare dal CD

 Inserite il CD di Quake II nel drive, e montatelo:




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





 Se il vostro CDROM normalmente � montato altrove, sostituite la sua
 posizione al posto di /mnt/cdrom. Se non siete sicuri di dove sia
 montato il CDROM, controllate la documentazione della vostra
 particolare distribuzione.



 �  Installazione completa Il metodo di installazione pi� semplice �
    l'installazione "completa", che copia tutto il contenuto del CD nel
    disco fisso; richiede circa 350 Mb, e viene fatta con i seguenti
    comandi:




           cd /usr/local/games/quake2
           cp -r /mnt/cdrom/Install/Data/* .






 Ci saranno un sacco di inutili file per Windows in giro, che potrete
 tranquillamente cancellare:




           rm -f /usr/local/quake2/*.dll
           rm -f /usr/local/quake2/quake2.exe
           rm -f /usr/local/quake2/baseq2/gamex386.dll



 �  Installazione parziale Se 450 Mb sono troppo da dedicare a Quake
    II, potete saltare l'installazione delle scene filmate e fare un
    collegamento al CD-ROM; ci� riducer� lo spazio necessario di circa
    200 Mb:




           cd /usr/local/games/quake2
           mkdir baseq2
           cp /mnt/cdrom/Install/Data/baseq2/pak0.pak baseq2
           cp -r /mnt/cdrom/Install/Data/baseq2/players baseq2
           ln -s /mnt/cdrom/Install/Data/baseq2/video baseq2/video






 Da notare che ci� non significa che dovete montare il CD di Quake II
 ogni volta che volete giocare. Se il gioco non riesce a caricare i
 video, semplicemente non li fa vedere.




 3.2.4.  Installazione da Windows a Linux

 Se avete Quake II installato sotto Windows su un'altra macchina,
 potete trasferire i file da quake2\baseq2 al sistema Linux usando FTP
 o in qualche altro modo. Tenete presente che i nomi dei file nel
 vostro sistema Linux devono essere in minuscolo per poter essere
 usati, quindi dovrete probabilmente rinominare i file dopo il
 trasferimento. Notate anche che potrebbe essere necessario cancellare
 l'installazione Windows per restare in regola con i termini della
 licenza della id. Non � colpa mia se fate qualcosa di illegale.

 Se Windows e Linux sono sulla stessa macchina avete due possibilit�:
 copiare i file dalla partizione Windows alla partizione Linux, o fare
 un link. Le due cose sono equivalenti; potete semplicemente
 risparmiare molto spazio disco se fate un link invece di una copia.

 Come al solito, sostituite /win95/games/quake2 nel seguente esempio
 con il percorso corretto per la partizione Windows e per
 l'installazione di Quake II.



 �  Se volete copiare i file dalla partizione Windows, fate cos�:




           cd /usr/local/games/quake2
           cp -r /win95/games/quake2/baseq2 .








 �  Per creare dei collegamenti ai file di Quake II per Windows, fate:


           cd /usr/local/games/quake2
           ln -s /win95/games/quake2/baseq2 .






 Questo secondo metodo richiede che la partizione Windows da cui state
 facendo il link sia scrivibile dagli utenti, il che pu� non essere
 vero per tutti i sistemi. Rendendo la partizione Windows scrivibile,
 date a tutti gli utenti la possibilit� di distruggere l'intera instal�
 lazione Windows. Se per voi va bene, modificate la partizione
 /etc/fstab in modo che la partizione Windows venga montata con le
 opzioni umask=002,gid=XXX, dove XXX � l'id del gruppo "utenti".  Per
 sapere quale �, guardate in /etc/group. Quando avete aggiornato fstab,
 smontate e rimontate la partizione Windows, ed avete fatto.


 Avete finito di installare i file di dati di Quake II. Passate
 all'"``Installazione dei binari per Linux''".



 3.2.5.  Installazione della versione demo **

 La id Software ha una versione demo gratuita di Quake II sul suo sito
 ftp.  � un download di 40 megabyte. Questa demo comprende tutte le
 caratteristiche della versione completa, compresa la possibilit� di
 giocare con pi� giocatori, ma ha solo tre livelli, quindi pu� essere
 difficile trovare un server per giocarci.

 Vedere la sezione ``Scaricare i file necessari'' pi� avanti, per
 sapere dove trovare il demo di Quake II. Scaricatela e mettetela nella
 directory di Quake II.

 La distribuzione demo � un file zip autoscompattante (o per lo meno si
 scompatta automaticamente in altri sistemi operativi). Potete estrarla
 usando il comando unzip(1), che dovrebbe essere incluso nella maggior
 parte delle distribuzioni moderne. Se non l'avete, lo potete scaricare
 dal sito elencato nella sezione ``Scaricare i file necessari''.

 Entrate nella directory di Quake II ed estraete l'archivio:




           cd /usr/local/games/quake2
           unzip q2-314-demo-x86.exe





 Ora dovete cancellare alcune cose e spostarne altre:



           rm -rf Splash Setup.exe
           mv Install/Data/baseq2 .
           mv Install/Data/DOCS docs
           rm -rf Install
           rm -f baseq2/gamex86.dll



 La demo di Quake II ora � installata. Dovete solo aggiungere i binari
 per Linux.


 3.3.  Aggiungere i binari per Linux**

 Ci sono quattro pacchetti di Quake II per Linux disponibili:


 �  un pacchetto tar.gz per libc5


 �  un pacchetto tar.gz per glibc


 �  un pacchetto rpm per libc5


 �  un pacchetto rpm per glibc


 Installatene solo uno. Ciascuno contiene gli stessi file, sono
 soltanto linkati contro diverse librerie. Gli utenti di RedHat 5.1
 devono scegliere il pacchetto rpm per glibc. Chi usa un sistema glibc
 senza supporto per rpm deve usare il pacchetto tar per glibc. L'rpm
 per libc5 � per chi ha una distribuzione RedHat precedente alla 5.0 o
 un'altra distribuzione che usa il formato rpm per i pacchetti. Il
 pacchetto tar.gz per libc5 � per la Slackware e per tutti gli altri.

 Vedere la sezione ``Scaricare i file necessari'' per sapere dove
 trovare i file di Quake II per Linux.


 3.3.1.  Installare i pacchetti RPM **

 L'installazione dei pacchetti rpm dovrebbe essere semplicissima:




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





 Rpm si potr� lamentare che non trova libglide2x.so.  La libreria Glide
 � necessaria solo se avete una scheda 3Dfx e volete usare Quake II in
 modalit� GL. Se non pensate di utilizzare la modalit� GL, potete
 superare la dipendenza dalle Glide con l'opzione --nodeps:




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









 3.3.2.  Installare i pacchetti tar.gz **

 Per installarli, scompattate con tar i file nella directory di Quake
 II.  Fatelo come root, in modo da impostare i permessi corretti sui
 file.




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






 3.4.  Impostare i permessi **

 Se avete usato rpm o tar da root quando avete installato il pacchetto
 di Quake II sul sistema, i permessi sui file dovrebbero essere
 corretti. L'eseguibile quake2 deve essere stato installato setuid root
 per poter fargli accedere ai dispositivi grafici del sistema. Per
 questioni di sicurezza, le librerie di rendering ref_*.so sono
 impostate in modo da appartenere a root e da essere scrivibili solo a
 lui. Se le librerie non sono di root, o sono scrivibili a tutti,
 quake2 non partir�.

 Se volete usare Quake II solo con i renderer GL o X, il file quake2
 non ha bisogno di essere setuid root. Vedere ``Utilizzare le versioni
 X e GL senza setuid'' nella sezione Tips and Tricks per avere
 informazioni su come utilizzare Quake II senza permessi di root.


 3.4.1.  Quake2.conf **


 Per ragioni di sicurezza, esiste un file quake2.conf, che dice a Quake
 II dove trovare le librerie di rendering di cui ha bisogno (ref_*.so).
 Contiene solo una linea, che dovrebbe essere il percorso per la vostra
 installazione di Quake II. Quake II cerca questo file in /etc. Se
 avete installato Quake II da un file .rpm, questo file sar� stato
 installato automaticamente. Se l'avete installato da un pacchetto
 .tar, dovete crearlo cos�:




           su root
           cd /usr/local/games/quake2
           pwd > /etc/quake2.conf
           chmod 644 /etc/quake2.conf






 3.5.  Il renderer X

 Quake II dovrebbe essere pronto a girare sotto X. Provate:




      cd /usr/local/games/quake2
      ./quake2 +set vid_ref softx





 Se va tutto bene, dopo una buona pausa dovrebbe comparire una piccola
 finestra di Quake II con il demo che ci gira dentro. Dovreste sentire
 degli effetti sonori, e forse della musica, se il CD � montato. Se una
 di queste cose non funziona, controllate la sezione ``Risoluzione dei
 problemi''.


 3.6.  Il renderer SVGAlib

 Se volete usare i renderer ref_soft o ref_gl vi serve la SVGAlib
 installata e configurata (Quake II usa le SVGAlib per processare
 l'input da tastiera e da mouse, in caso vi stiate chiedendo a cosa
 serve per il renderer GL).  La SVGAlib � compresa nella maggior parte
 delle distribuzioni, e deve essere configurata correttamente prima di
 poter usare Quake II fuori da X.

 libvga.config � il file di configurazione di SVGAlib. Sulla maggior
 parte dei sistemi lo troverete in /etc o in /etc/vga.

 Assicutatevi che le impostazioni del mouse, del monitor e della scheda
 video in questo file siano corretti per il vostro sistema. Per avere
 altri dettagli controllate la documentazione della SVGAlib.

 Se non l'avete gi�, scaricatela dal sito indicato nella ``sezione dei
 file'' pi� sopra.  Se avete la RedHat 5.x o un'altra distribuzione di
 Linux basata su glibs, guardate le ``considerazioni su Glibc, RedHat
 5.x, Debian 2'' nella sezione Risoluzione dei problemi/FAQ per avere
 delle informazioni importanti su come compilare le librerie per
 poterle usare con Quake.  A
 http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz
 � disponibile un binario delle SVGAlib precompilato con le libc5 per
 chi non ha voglia di ricompilare il tutto.

 Dovreste usare Quake II da una console virtuale se usate i renderer
 ref_soft o ref_gl. Non funzioner� da X, a meno che non siate root
 quando lo avviate, e utilizzare un gioco come root � una cosa da
 evitare. Quindi, se siete in X, fate CTRL+ALT+F1, fate il login e poi




           cd /usr/local/games/quake2
           ./quake2





 ``Utilizzare i giochi SVGA e GL da X'' nella sezione dei Tips & Tricks
 pi� avanti spiega come lanciare Quake II per SVGA e GL da X senza
 passare manualmente ad una console virtuale.


 3.7.  Il renderer OpenGL

 Il Quake per le OpenGL hardware-accelerate � Quake come Dio comanda.
 Non c'� possibile sostituto, e una volta provato non si torna
 indietro.

 Per usare Quake II in modalit� GL, vi serve una scheda 3D con i
 chipset grafici Voodoo, Voodoo2 o Voodoo Rush. Ci sono delle procedure
 particolari da seguire se avete una scheda Vodoo Rush, ma non ve le
 posso illustrare perch�, francamente, non saprei quello che direi. Una
 versione futura di questo HOWTO coprir� anche i problemi del Rush (se
 qualcuno ne vuole scrivere, sar� contento di inserire il pezzo qui).

 Le librerie SVGAlib, Glide e Mesa devono essere tutte installate e
 configurate correttamente sul sistema, per poter usare quake2. Le
 seguenti sezioni copriranno brevemente i passi da seguire per farlo.

 Il Linux 3Dfx HOWTO di Bernd Kreimeier ([email protected])
 (http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html) � una buona
 fonte di informazioni.

 Il newsgroup 3dfx.glide.linux sul news server della 3dfx
 (news.3dfx.com) � un'altra buona fonte di informazioni
 sull'intersezione di Linux, glide, Mesa e Quake.



 3.7.1.  SVGAlib

 Quake II usa le SVGAlib per ricevere input dal mouse e dalla tastiera,
 quindi dovrete configurarle come illustrato nella sezione ``Renderer
 SVGAlib''.


 3.7.2.  Glide

 Glide � una libreria che fornisce un API per programmare le schede
 3Dfx.  Se volete che le librerie grafiche Mesa usino la vostra scheda
 3Dfx, le dovete avere.

 Potete trovare l'ultima versione delle glide su
 http://glide.xxedgexx.com/3DfxRPMS.html. Scegliete il (i) pacchetti
 appropriati per il vostro sistema, ed installateli seguendo le
 istruzioni che trovate sulla pagina web.

 Notate che a meno che non scarichiate il pacchetto dei device driver
 per 3Dfx oltre alla libreria Glide, potrete utilizzare solo le
 applicazioni Glide (come GLQuake) come root. Installate il modulo
 /dev/3dfx e potrete usare GLQuake come utente normale.

 Una volta che avete installato glide, provate il programma di test che
 lo accompagna. Ricoldatevelo: � un buon modo di resettare il display
 se un'applicazione di glide (come GLQuake) crasha e lascia lo schermo
 spento.  NOTA: usate questo test da una console virtuale, non X! �
 possibile che l'applicazione di test perda il fuoco della tastiera e
 del mouse in X, e a quel punto non avreste modo di chiuderlo.




           /usr/local/glide/bin/test3Dfx





 Il vostro schermo dovrebbe diventare blu e chiedervi di premere un
 tasto qualsiasi. Dopo che avrete premuto il tasto dovreste tornare al
 prompt.  3dfx.glide.linux sul news server della 3dfx (news.3dfx.com) �
 un'ottima fonte di informazioni per problemi specifici di glide per
 Linux.

 3.7.3.  Mesa

 Una volta installato glide, dovrete installare Mesa,
 un'implementazione free di OpenGL di Brial Paul
 ([email protected]). Fortunatamente, non dovrete cercare
 lontano, perch� le Mesa 2.6 sono incluse con i binari di Quake II.
 Tutto quello che dovete fare � spostarle nel posto giusto:




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





 Se volete aggiornare le Mesa ad una versione pi� recente (al momento
 in cui scrivo le Mesa 3.0 sono le pi� aggiornate), potete scaricarle
 da ftp://iris.ssec.wisc.edu/pub/Mesa.  Se avete RedHat 5.x o un'altra
 distribuzione basata sulle glibc, guardate le ``considerazioni su
 glibc, RedHat 5.x, Debian 2'' nella sezione Risoluzione dei
 problemi/FAQ per avere informazioni importanti sulla compilazione
 delle librerie per Quake.

 Dopo aver compilato il tutto seguendo le istruzioni, dovrete fare due
 cose:



 �  Eliminare la precedente installazione delle Mesa. Se avevate prima
    installato le libMesaGL.so.2.6 come descritto sopra, le dovete
    eliminare, o Quake II potrebbe non usare le nuove versioni.




           cd /usr/local/lib/
           rm -f libMesaGL.so.2*








 �  Se le nuove Mesa hanno un numero di versione principale maggiore di
    2, dovete crearne un link con il nome libMesaGL.so.2:




           cd /usr/local/lib/
           ln -s /wherever/you/installed/it/libMesaGL.so.3.0 libMesaGL.so.2
           ldconfig








 Ora passate ad una console virtuale (CTRL+ALT+F1) ed avviate Quake II:




           cd /usr/local/games/quake2
           ./quake2 +set vid_ref gl






 3.7.4.  lib3dfxgl.so **

 Con Quake II versione 3.19 � disponibile un'alternativa alla libreria
 Mesa.  lib3dfxgl.so � un mini driver GL ottimizzato per Quake che
 fornisce una framerate leggermente migliore delle Mesa.  Si tratta del
 porting di un driver che la 3Dfx ha sviluppato per Quake sotto
 Windows, ed apparentemente ancora non tutte le sue caratteristiche
 funzionano bene; quindi speriamo che la sua validit� aumenti nel
 tempo.

 Come le Mesa, lib3dfxgl.so ha bisogno delle Glide per accedere alla
 scheda 3Dfx. Il pacchetto di Quake II contiene uno script,
 glqwcl.3dfxgl per usare Quake II su sistemi glibc con questa libreria.
 Il prossimo paragrafo spiega come usare Quake II con la lib3dfxgl.so
 su un sistema libc5. Su un sistema glibc, per fare funzionare lo
 script, l'eseguibile glqwcl non deve essere setuid, e non va usato da
 root. glqwcl caricher� silenziosamente le Mesa invece delle
 lib3dfxgl.so se si fa girare con i permessi di root. Queste richieste
 implicano che abbiate installato il driver /dev/3dfx se gira con
 permessi di root.  Questa richiesta di non essere root implica che
 abbiate installato il driver  /dev/3dfx.

 Sui sistemi basati sulle libc5, si applica la richiesta di non essere
 root riportata sopra, ma dovrete anche creare un link simbolico a
 lib3dfxgl.so che si chiami libMesaGL.so.2, cos�:



           cd /usr/local/games/quake
           ln -sf lib3dfxgl.so libMesaGL.so.2





 e poi fare partire Quake II da uno script che dica a $LD_LIBRARY_PATH
 di guardare nella directory corrente:


 ______________________________________________________________________
      #!/bin/sh

      LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH" ./quake2 +set vid_ref gl $*

 ______________________________________________________________________



 Potete vedere quale driver viene caricato guardando l'output nella
 console quando Quake II parte, cos�:



      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_multitexture





 Se GL_VENDOR dice Brian Paul invece di 3Dfx Interactive Inc., vuol
 dire che viene ancora usato Mesa invece del driver miniport.


 3.8.  Il renderer GLX **


 ref_glx.so � linkato con le librerie OpenGL standard invece che con le
 Mesa. Questo permette a Quake II di girare su altro hardware 3D che
 sia supportato da altre implementazioni OpenGL. Al momento non conosco
 altre implementazioni OpenGL che supportino hardware diversi dalle
 3Dfx, ma questo renderer assicura che quando apparissero ci si
 potrebbe giocare a Quake II.

 Quake II � un'applicazione GLX, e come tale deve essere usata da
 dentro X.

 Potete usare questo client con le Mesa/3Dfx se installate le Mesa e le
 Glide come illustrato nella sezione precedente, e poi impostate la
 variabile d'ambiente $MESA_GLX_FX al valore  "fullscreen" prima e dopo
 il comando quake2:




           export MESA_GLX_FX=fullscreen
           ./quake2 +set vid_ref glx +set _windowed_mouse 1





 Perch� usare l'opzione  +_windowed_mouse 1? Ricordate che questa �
 un'applicazione di X che usa la scheda 3Dfx. Anche se il display
 occupa tutto lo schermo, Quake II sta sempre girando dentro una
 finestra.  Ci� significa che se non siete molto attenti, potreste
 spostare il puntatore del mouse fuori della finestra di Quake II, e
 Quake II smetterebbe di rispondere all'input dal mouse e dalla
 tastiera.  +_windowed_mouse 1 elimina questo problema dicendo a
 glqwcl.glx di agganciare il mouse e non farlo muovere all'esterno
 della finestra.


 3.9.  Opzioni da linea di comando specifiche di Linux

 Questa sezione ricopre le opzioni da linea di comando specifiche della
 versione di Quake II per Linux. Ci sono molte altre opzioni per Quake
 II, ma vanno al di l� di questo HOWTO. Controllate su alcuni dei siti
 elencati nella sezione ``Informazioni generali su Quake'' per questo
 tipo di informazioni.

 Le seguenti sono in realt� cvar (variabili client) che potete
 impostare sulla console di Q2, ma ha pi� senso darle da linea di
 comando.  Impostatele con +set dalla linea di comando, cos�:



      ./quake2 +set cd_dev /dev/hdc







    cd_dev device
       Nome del device del CD-ROM



    nocdaudio valore
       Disabilita il CD audio se valore � diverso da zero.



    sndbits num
       Imposta la dimensione in bit del campionamento sonoro. Il
       default � 16.



    sndspeed num
       Imposta la velocit� del suono. I valori normali sono 8000,
       11025, 22051 e 44100. Il default � 11025.  Se impostato a zero,
       il driver del suono cerca di usare le velocit� in questo ordine:
       11025, 22051, 44100, 8000.



    sndchannels num
       Indica suono stereo o mono. Il default � 2 (stereo). Usate 1 per
       il mono.



    nostdout valore
       Non mandare nessun output allo stdout. Usate questa opzione se
       non volete che l'output di console sia mandato sul terminale.



 3.10.  Server Quake II

 La forza di Linux come server internet lo rende una piattaforma
 perfetta per far girare un server di Quake II per internet. Questa
 sezione tratter� le basi e gli aspetti specifici di Linux
 dell'impostazione di un server di Quake II.  Informazioni pi�
 dettagliate su come utilizzare i server di Quake II sono disponibili
 altrove (vedere la sezione ``Altre fonti di informazioni'' nella prima
 parte di questo documento.


 3.10.1.  Server "in ascolto"

 Si pu� inizializzare un server "in ascolto" di Quake II dall'interno
 del gioco, usando il men� Multiplayer. In questo modo si pu� ospitare
 un gioco e parteciparvi allo stesso tempo.

 Per iniziare un server "in ascolto", inizializzare Quake II, aprite il
 men� di Quake II con il tasto Esc, e scegliete la voce Multiplayer.
 Da l� dovrebbe essere piuttosto auto-esplicativo.


 3.10.2.  Server dedicati

 Per un server di Quake II permanente ed autonomo che giri senza
 un'attenzione costante, usare il server in ascolto non � pratico.
 Quake II ha una modalit� server dedicato pi� adatta a questo tipo di
 utilizzo. Il server dedicato viene avviato da linea di comando e usa
 meno risorse di sistema di un server "in ascolto" perch� non
 inizializza la parte grafica del client.

 Per inizializzare un server dedicato, usate l'opzione da linea di
 comando +set dedicated 1.  Potete impostare dei parametri aggiuntivi
 sia da linea di comando sia da un file di configurazione che va
 impostato dalla linea di comando con +exec. Il file di configurazione
 dovrebbe essere nella directory baseq2.

 Qui sotto sono elencate alcune opzioni comuni per i server. Per
 impostarle sulla linea di comando, date +set fraglimit 30. Le opzioni
 vengono impostate nello stesso modo anche nel file di configurazione,
 solo che non serve il + prima di set. Per invocare il file di
 configurazione fate cos�: +exec server.cfg.



    fraglimit
       Numero di frag richiesti prima che la mappa cambi


    timelimit
       Tempo in minuti che deve passare prima che la mappa cambi


    hostname
       Il nome del vostro server di Quake II. Si tratta di una stringa
       arbitratia, e non ha niente a che fare con il nome di host DNS.


    maxclients
       Il massimo numero di giocatori che si pu� connettere
       contemporaneamente al server.


 Per avere tante informazioni sulla console e sulla linea di comando di
 Quake II quante ne basterebbero per soffocare un cavallo, guardate su
 Farenheit 176 (http://www.planetquake.com/f176).


 3.10.3.  Altre fonti di informazioni sui server



 �  La FAQ per i server di Quake II hanno una guida passo-passo per
    impostare un server di Quake II sotto Linux:
    http://www.bluesnews.com/faqs/q2s-faq.html


 �  Grant Cornelius Reticulus Copernicus Sperry ([email protected])
    ha dei file di configurazione base per i server di Quake II e degli
    script di avvio a
    http://www.atomicage.com:80/quake/server/server_cfg/.







 3.11.  Moduli e aggiunte

 Le modifiche a Quake II come Capture the Flag (acchiappabandiera),
 Jailbreak e Lithium II sono estensioni molto popolari del gioco
 originale di Quake II. Alcuni moduli risiedono interamente nel server
 (Lithium), ed altri richiedono delle modifiche al client (CTF). Per i
 moduli solo su server, potete semplicemente connettervi e giocare. I
 moduli dal lato client vi richiedono di installare dei file aggiuntivi
 nella directory di quake2 prima di giocare.



 3.11.1.  Moduli dal lato client

 Generalmente, l'installazione di un modulo dal lato client consiste
 semplicemente nello scaricare il pacchetto client e spacchettarlo
 nella directory di Quake II, ma dovreste riferirvi alla documentazione
 del modulo per i dettagli specifici. Pu� essere necessario scaricare
 un pacchetto specifico per Linux in aggiunta al pacchetto client
 principale (per Windows). Tenete pure presente che non tutti i moduli
 possono essere disponibili per Linux.

 I pacchetti dei moduli dal lato client di solito contengono un nuovo
 file gamei386.so e uno o pi� file .pak, oltre, forse, ad altri file.
 Questi nuovi file verranno installati in una sottodirectory della
 directory di Quake II. Usate +set game mod-dir sulla linea di comando
 per usare il modulo. Rocket Arena 2, ad esempio, si installa in una
 directory arena. Per giocare a RA2, inizializzate il client cos�:



            ./quake2 +set game arena






 3.11.1.1.  Capture the Flag (acchiappabandiera)

 Dato che questa � la variazione pi� famosa di Quake II a pi�
 giocatori, ho incluso delle istruzioni specifiche per installare
 questo modulo.  Capture the flag per Quake II � disponibile dal sito
 ftp della id. Scaricatelo, poi installatelo cos�:




           cd /usr/local/games/quake2
           mkdir ctf
           cd ctf
           unzip -L /wherever/you/put/it/q2ctf102.zip





 Per giocare a CFT inizializzate Quake II con +set game ctf.


 3.11.2.  Moduli dal lato server

 Usare un modulo di Quake II su un server non � molto diverso da usarne
 uno dal lato client. In genere dovrete installare i file gamei386.so e
 server.cfg in una nuova sottodirectory, ed inizializzare il server con

           ./quake2 +set game XXXX +set dedicated 1 +exec server.cfg





 dove XXXX � il nome della nuova sottodirectory del modulo. La proce�
 dura esatta varia da modulo a modulo, naturalmente. Controllate la
 documentazione del modulo stesso per avere dettagli specifici.


 3.11.3.  Sorgenti del gioco

 L'intero gioco, con l'eccezione del motore, risiede in una libreria
 condivisa, gamei386.so. I moduli di Quake II vengono creati cambiando
 il contenuto di questo file. Il sorgente C � disponibile gratuitamente
 (section ``Scaricare i file necessari'' pi� sopra), e possono essere
 scaricati e modificati.

 Dopo che avrete  scaricato il sorgente, ecco come cominciare:




            cd /usr/local/games/quake2
            mkdir mymod
            cd mymod
            gunzip /dove/lo/mettete/q2source-3.14.shar.Z
            sh /dove/lo/mettete/q2source-3.14.shar





 Vi si presenter� un po' di legalese a cui dovete rispondere yes, e i
 sorgenti vengono estratti. Per compilare un nuovo file gamei386.so da
 questi ultimi basta un semplice make.  Con questa libreria appena
 compilata potete giocare a Quake dando:




            cd /usr/local/games/quake2
            ./quake2 +set game mymod





 Non � ancora troppo esaltante, dato che quello che avete appena
 compilato � identico al gamei386.so "normale", ma questa dovrebbe
 essere una buona informazione con gli aspiranti autori di moduli.


 3.11.4.  Pacchetti missione **



 �  Pacchetto missione 1: The Reckoning The Reckoning richiede la
    versione 3.15 o una successiva. Avrete bisogno almeno di 95 Mb per
    un'installazione minima. Vi servono altri 90 Mb se volete
    installare anche le sequenze video. Assumendo che il CD sia montato
    su /mnt/cdrom e che Quake II sia installato in
    /usr/local/games/quake2:


           cd /usr/local/games/quake2
           cp -r /mnt/cdrom/Data/all/* xatrix/
           rm -f xatrix/gamex86.dll






 Se volete installare le sequenze video:




           cp -r /mnt/cdrom/Data/max/xatrix/video xatrix






 Giocate a The Reckoning cos�:



           cd /usr/local/games/quake2
           ./quake2 +set game xatrix








 �  Pacchetto missione 2: Ground Zero Richiede Quake II versione 3.17 o
    successiva. Avrete bisogno di almeno 120 Mb per un'installazione
    minima. Altri 115 Mb vi servono se volete installare anche le
    sequenze video. Assumendo che il CD sia montato su /mnt/cdrom e che
    Quake II sia installato in /usr/local/games/quake2:




           cd /usr/local/games/quake2
           cp -r /mnt/cdrom/Data/all/* rogue/
           rm -f rogue/gamex86.dll






 Se volete installare le sequenze video:




           cp -r /mnt/cdrom/Data/max/rogue/video rogue






 Giocate a Ground Zero cos�:
           cd /usr/local/games/quake2
           ./quake2 +set game rogue









 4.  Software correlato ++



 4.1.  QStat

 Qstat � un programma basato sulla linea di comando che rende lo stato
 dei server Quake, QuakeWorld e Quake 2 su internet, creato da Steve
 Jankowski mailto:[email protected].

 Ecco il riassunto delle caratteristiche dalla homepage di QStat:


 �  Supporta Windows 95, NT, e la maggior parte degli Unix


 �  Comprende il codice sorgente in C ed un binario per Windows.


 �  Supporta i server del vecchio Quake (NetQuake), QuakeWorld, Hexen
    II, e Quake II


 �  Pu� mostrare tutte le statistiche disponibili, comprese le
    informazioni sui giocatori e le regole del server


 �  Template di output per la generazione automatica di HTML


 �  Modalit� di visualizzazione raw per l'integrazione con i generatori
    di pagine HTML


 �  Cache dei nomi host built-in


 �  Ordina per tempo di ping, giochi, o entrambi


 �  Pi� opzioni di quante ne potreste immaginare


 Qstat � uno strumento indispensabile se volete giocare in rete.  Sono
 stati scritti anche molti front-end per qstat. Alcuni di essi sono
 elencati pi� avanti in questa sezione.

 Potete scaricare la versione pi� recente di qstat dalla sua homepage
 (http://www.activesw.com/people/steve/qstat.html.


 4.2.  XQF

 XQF � un front-end grafico a QStat che usa il toolkit GTK; � il
 miglior browser per i server di QuakeWorld/Quake2 che esista al
 momento, e Roman Pozlevich ([email protected]) sta ancora mandando fuori
 nuove revisioni al ritmo di circa una al mese.

 Se conoscete GameSpy per la piattaforma Windows, questo � il programma
 che pi� gli assomiglia per Linux.

 La homepage di XQF si trova a http://www.linuxgames.com/xqf.


 4.3.  QuickSpy

 QuickSpy � un browser per i server di QuakeWorld a base testuale; �
 un'altro front-end a QStat e funziona piuttosto bene. Se non usate X e
 non avete Quake II, � una possibilit� che vi pu� bastare. Attenzione,
 per�, non � pi� in sviluppo.

 Potete scaricare QuickSpy da
 http://diana.ecs.soton.ac.uk/~rht96r/quake/quickspy/.


 4.4.  QPlug per Linux

 Qplug � un plugin per Netscape che riceve e mostra le informazioni sui
 server di QuakeWorld e Quake II inserite in una pagina web. Una
 versione Windows per Qplug � in giro gi� da un po' di tempo. L'autore,
 Olivier Debon ([email protected]) ha scritto la versione per
 Linux da zero senza aver mai nemmeno visto la versione per Windows.

 Qplut per Linux � disponibile a
 http://www.geocities.com/TimesSquare/Labyrinth/5084/qplug.html.


 4.5.  qkHacklib

 David Bucciarelli ([email protected]), autore dei driver 3Dfx per Mesa,
 ha scritto la libreria qkHack, che tenta di emulare tutte le funzioni
 SVGAlib/fxMesa usate da Quake e Quake II. Questo eliminerebbe la
 necessit� di avere la SVGAlib quando si usa glquake o Quake II con la
 ref_gl.  Altre caratteristiche prese dal README di qkHacklib.



 �  Si pu� passare dinamicamente tra il rendering a tutto schermo e
    quello dentro una finestra semplicemente premendo il tasto TAB (per
    usare questa caratteristica il server X deve essere inizializzato
    in modalit� 16 bpp)


 �  Si pu� usare Ctrl-C nella shell o uccidere il processo di Quake
    senza problemi


 �  si pu� abilitare/disabilitare il `grabbing' da mouse e da tastiera
    premendo F11/F12


 �  si pu� iconizzare e mettere in pausa Quake premendo F10 (non
    utilizzer� pi� cicli di CPU). Potete riavviare il tutto con un
    doppio click nell'icona "****"


 �  si pu� utilizzare Quake con un qualsiasi driver Mesa (ad esempio
    con il driver X11, ma dovete ricompilare le Mesa senza il driver
    Voodoo)


 �  potete usare Quake in qualsiasi macchina Linux ed avere l'output
    dell'hardware accelerato su un box SGI (ok, � una caratteristica un
    po' esotica e teorica, ma � un esempio di quanto potente possa
    essere un'applicazione per GLX/OpenGL)


 Ho provato qkHacklib e funziona benissimo per Quake sul mio sistema.
 In Quake II, comunque, la risposta del mouse diventa veramente lenta.
 Altri hanno riportato per� un successo completo, quindi provatelo se
 vi pare che vi possa essere utile.

 La pagina web di qkHacklib di David Bucciarelli � http://www-
 hmw.caribel.pisa.it/fxmesa/fxqkhack.html.


 4.6.  GiMd2Viewer

 GiMd2Viewer � un modello di Quake II scritto per le Gtk e le OpenGL da
 Lionel Ulmer ([email protected]).  Carica modelli e textures sia da
 file semplici che da file .PAK. Anima anche i modelli (con
 interpolazione dei frame).

 Questo programma � ancora sotto sviluppo e non l'ho ancora provato, ma
 pare piuttosto carino. Cercatelo su
 http://www.mygale.org/~bbrox/GiMd2Viewer/.


 4.7.  QIPX

 QIPX � un insieme di programmi che permettono ai client di Quake per
 Linux (usando il TCP/IP) di connettersi a client Quake per DOS (usando
 IPX).  Penso che sia utile se giocate a netquake su una LAN. QIPX �
 disponibile a
 http://www.geocities.com/SiliconValley/Park/6083/qipx.html.


 4.8.  Ice

 Ice � un editor di mappe per Quake per UN*X, creato da C.J. Beyer e
 John Watson. Non ho usato questo programma, n� so a che stadio di
 sviluppo sia.  La homepage � a http://styx.phy.vanderbilt.edu/~ice/.


 4.9.  Q2getty

 Q2getty � un clone di mingetty di Mike Gleason ([email protected])
 che permette di usare e fare respawn automaticamente di un programma
 (come un server di Quake) su una console virtuale; � disponibile nella
 sezione dei file su http://www.ncftpd.com/unixstuff/q2getty.html.


 4.10.  rcon

 Rcon � un paio di strumenti che permettono l'amministrazione remota di
 un server di Quake II usando il protocollo RCON.  Michael Dwyer
 ([email protected]) ne � l'autore. Rcon 1.1 � disponibile su
 http://sunsite.unc.edu/pub/Linux/games/quake/rcon-1.1.tar.gz".


 4.11.  qlog ++

 Qlog � un parser per i log dei server di QuakeWorld/Quake II
 distribuito sotto GPL, che genera delle statistiche globali sui
 giocatori. L'autore � Craig Knudsen ([email protected]).  La homepage
 di qlog � http://www.radix.net/~cknudsen/qlog/.

 4.12.  Cheapo **

 Cheapo � un proxy che pu� essere usato per fare il routing del
 traffico di una rete di QuakeWorld. Oltre a ci�, il proxy pu�
 modificare i dati ed ha caratteristiche per migliorare il gioco. Ci si
 pu� connettere a cheapo come se fosse un server di QuakeWorld, e poi
 dargli comandi che facciano il forward ad un server reale. Il proxy
 pu� anche essere usato su una macchina che faccia da firewall incapace
 di gestire il traffico di Quake, in modo che le macchine all'interno
 del firewall possano essere usate per giocare. La homepage di Cheapo �
 http://www.saunalahti.fi/~softech/.


 4.13.  qgraph **

 QGraph (Quake Graph) � un'utility per aiutare la gestione dei
 DeathMatch di Quake, i tornei ed i giochi di QuakeWorld.  QGraph � un
 programma che si connette (attraverso una LAN o Internet) ad un server
 di Quake, Quake II, QuakeWorld o Hexen 2, e mostra i dati in tempo
 reale del gioco corrente su quel server. La homepage di QGraph �
 http://www.frag.com/qgraph.



 5.  Risoluzione dei problemi/FAQ



 5.1.  Generalit�



 5.1.1.  Considerazioni sulla differenza tra i sistemi operativi



 �  Distinzione tra maiuscole e minuscole - In DOS e Windows le
    maiuscole non sono importanti: BASE1.TXT � la stessa cosa di
    base1.txt.  Sotto Linux e gli altri Unix, le maiuscole SONO
    importanti: MOTD.TXT e motd.txt sono due file diversi; questo pu�
    portare a dei problemi con i modelli dei giocatori ed i file della
    pelle se sono installati con i nomi di file con delle lettere
    maiuscole.  players/male/santa.PCX deve essere rinominato in
    santa.pcx per poter funzionare sotto Linux. Lo script fixskins.sh
    incluso in QuakeWorld converte tutti i nomi dei file di una
    directory in lettere minuscole. Per comodit� viene riportato qui
    sotto:



    ___________________________________________________________________
         #!/bin/sh
         for x in *; do
            y=`echo $x | tr '[A-Z]' '[a-z]'`
            if [ $x != $y ]; then
               mv $x $y
            fi
         done

    ___________________________________________________________________






 �  Delimitatori dei percorsi - DOS e Windows usano il backslash "\"
    per separare gli elementi dei percorsi. In Unix, il backslash � un
    carattere di escape. Se usate dei percorsi nei vostri file di
    configurazione (o nel codice dei moduli, o da qualsiasi altra
    parte) assicuratevi di usare "/" e non "\".



 �  Caratteri di fine linea - Sotto DOS/Windows, ciascuna linea di un
    file di testo finisce con un carattere di carriage return (CR) e un
    carattere di linefeed (LF). I file di testo in Unix hanno solo il
    linefeed. L'uso di file di testo di DOS/Win in Unix pu� causare
    molti problemi strani a Quake. Usando un file quake2.conf non
    correttamente formattato dal pacchetto di Quake2 3.17, ad esempio,
    d� l'errore "LoadLibrary("ref_XXX.so") failed: No such file or
    directory".  LMCTF-TE riporta un'eccezione di floating point.  Se
    avete un problema che non riuscite a spiegare, provate a rimuovere
    i CR dai file di testo:



           mv file.txt file.bak; tr -d '\r' < file.bak > file.txt








 5.1.2.  Considerazioni su Glibc, RedHat 5.x, Debian 2**

 Le seguenti considerazioni si applicano solo ai binari per Quake I
 (squake, glquake, e quake.x11). QuakeWorld e Quake II sono disponibili
 in entrambe le versioni, libc5 e glibc, rispettivamente dalle versioni
 2.30 e 3.19.

 Gli eseguibili di Quake sono compilati con la libc5. Le distribuzioni
 pi� recenti, come la RedHat 5.1 e la Debian 2.0, usano come libreria C
 di default la glibc, che non � compatibile.  Se usate Quake su un
 sistema glibc dovete fare attenzione ad alcune cose:



 �  Sia la RedHat 5 che la Debian 2 hanno dei pacchetti di
    compatibilit� per libc5 che permettono di usare applicazioni basate
    su libc5.  Assicuratevi di aver installato questi pacchetti.
    Entrambe le distribuzioni hanno messo le librerie basate su libc5
    nella directory /usr/i486-linux-libc5/lib.


 �  Assicuratevi che Quake usi le librerie corrette. Create uno script
    come quello qui sotto che faccia puntare la variabile
    $LD_LIBRARY_PATH alla directory delle vostre librerie di
    compatibilit� prima di usare Quake.


    ___________________________________________________________________
         #!/bin/sh
         export LD_LIBRARY_PATH=/usr/i486-linux-libc5/lib
         ./quake2 +set vid_ref gl $*

    ___________________________________________________________________



 �  Se dovete compilare una libreria come la SVGAlib o le Mesa per
    usarle con Quake, deve essere compilata con le libc5. Semplicemente
    compilare le nuove librerie seguendo le istruzioni di installazione
    vi dar� una libreria linkata alle librerie di default, glibc.
    Assicuratevi che la nuova libreria sia linkata solo con la libc5 ed
    altre librerie ad essa linkate, in modo che sia compatibile con
    Quake. Controllate la documentazione della vostra distribuzione per
    avere delle informazioni su come linkare a librerie non di default.




 5.1.3.  Il mouse non funziona o sembra rispondere a caso.



 �  gpm funziona? gpm � un programma che permette di fare taglia e
    incolla con il mouse sulle console virtuali. Moltre distribuzioni
    lo abilitano per default. Potrebbe interferire con Quake.
    Controllate se sta girando con il seguente comando:



           ps aux | grep gpm





 Se avete dell'output come



           root      6115  0.0  0.4   832   316  ?  S   17:54   0:00 gpm -t PS/2





 gpm sta girando, ed interferisce con Quake. Date gpm -k (da root) per
 ucciderlo. Se non lo fa (gpm -k non sempre funziona sul mio sistema),
 uccidetelo con il comando killall gpm.

 Se non usate mai gpm, potreste voler evitare che parta all'avvio.
 Controllate la documentazione della vostra distribuzione per avere
 informazioni su come farlo.




 �  Il mouse � definito correttamente nel file libvga.config?  Questo
    file in genere si trova in /etc o in /etc/vga.  Apritelo e
    controllate se c'� una linea simile a



           mouse Microsoft





 Sul mio sistema � la prima opzione del file. Assicuratevi che il tipo
 di mouse sia quello giusto per il vostro hardware.


 5.1.4.  Il mio Microsoft Intellimouse o il mio Logitech MouseMan+ non
 funziona.

 La SVGAlib, che gestisce l'input del mouse per i Quake/QW/Q2 SVGA e
 GL, non supporta direttamente l'Intellimouse fino alla versione 1.3.0.
 Se avete una versione della SVGAlib precedente alla 1.3.0 dovreste
 aggiornarla, e poi usare il tipo di mouse IntelliMouse (per i mouse
 seriali) o IMPS2 (per i mouse PS/2) nel file libvga.config.


 5.1.5.  Il mio mouse risponde in ritardo ed � molto pi� lento che
 sotto Windows.



 �  Per molti basta aumentare il valore di sensitivity nella console di
    gioco cura il problema.  Impostare la sensitivity a mano nella
    console o in un file .cfg vi permette di aumentare la sensibilit�
    del mouse pi� dello slider nel men� delle opzioni; ad esempio
    sensitivity 15.



 �  Dall'aggiornamento di Zoid del .plan del 1/7/98:


      Se il renderer GL � lento nel mostrare i video (se sembra
      che la velocit� di successione dei frame sembra essere ral�
      lentato dal movimento del mouse) digitate "gl_finish 1"
      sulla console. Questa opzione forza l'aggiornamento ogni
      frame.





 �  L'ultima versione delle SVGAlib (1.3.0) fornisce moltissimi
    parametri nel file libvga.config per personalizzare il
    comportamento del mouse. Con le impostazioni giuste dovrebbe essere
    possibile far comportare il mouse come volete. Sul mio sistema,
    cambiare mouse_accel_type al valore normal (il default � power) mi
    ha dato i risultati che volevo. Non ho giocato con le altre
    impostazioni, e non pretendo di sapere come funzionano.



 5.1.6.  Ho una Voodoo2, e quando provo ad usare il renderer gl, questo
 riporta che non ho una scheda Voodoo installata.

 Ci sono versioni diverse della Glide per le schede Voodoo e Voodoo 2.
 Assicuratevi di aver montato quella giusta.


 5.1.7.  Quando gioco con una delle versione di Quake sotto SVGAlib o
 GL e premo Ctrl-C, il gioco esce e talvolta lascia la console inuti�
 lizzabile.

 5.1.8.  A volte quando Quake/Quake II esce non in modo corretto, las�
 cia la console inutilizzabile.

 S�, non � carino. La SVGAlib cattura il Ctrl-C e decide cosa farci
 invece di farlo gestire a Quake. Non conosco nessun modo per evitarlo,
 tranne modificando la SVGAlib.

 Se usate Quake da uno script che resetti la tastiera e il terminale,
 come questo qui sotto, avrete meno possibilit� di finire con il
 terminale incasinato se succede.



 ______________________________________________________________________
      #!/bin/sh
      ./quake2 $*
      kbd_mode -a
      reset

 ______________________________________________________________________




 5.1.9.  squake/quake2 non parte e dice " svgalib: cannot get I/O per�
 missions"

 Gli eseguibili di Quake devono girare come root, quindi dovete o farli
 girare come root o renderli setuid root. Controllate le istruzioni di
 installazione in questo documento per avere dettagli sull'argomento.


 5.1.10.  A volte, dopo avero giocato a una delle versioni di Quake su
 X, non funziona la ripetizione dei tasti.

 Per una qualche ragione, la versione per X11 di Quake disabilita la
 ripetizione dei tasti mentre sta girando; se per qualche motivo il
 programma esce in maniera non normale, questa non viene riattivata.
 Fate



           xset r on





 per riabilitarla.


 5.1.11.  Quake/Quake II dice "/dev/dsp : device not configured"

 L'hardware del suono non � configurato correttamente. Forse vi manca
 solo un insmod sound, o forse dovrete ricompilare il kernel. Gli
 utenti RedHat possono provare a richiamare il programma sndconfig(8).
 Controllate la documentazione della vostra distribuzione di Linux e/o
 il Linux Sound HOWTO per avere altre informazioni su come configurare
 il suono sul vostro sistema.


 5.1.12.  Quake/Quake II per GL girano pi� lenti sotto Linux che sotto
 Windows. **

 Il miniport per Windows della GL per 3Dfx � ottimizzato pesantemente
 per quello che fa Quake II. Mesa, d'altra parte, � pi� generale e meno
 ottimizzata. Come risultato Quake II sotto Linux gira pi� lentamente
 che sotto Windows. Non � una limitazione di Linux, ma una dei driver.

 Con le uscite pi� recenti di QuakeWorld e Quake II, il miniport per
 3Dfx citato prima � disponibile anche per Linux. Anche se non porta la
 performance di Quake per Linux allo stesso livello di quella di
 Windows, � un altro passo nella direzione giusta.


 Oltre a questo, per gli utenti di Pentium Pro e Pentium II, ci sono
 alcuni trucchi che si possono fare con il buffering della memoria -
 l'ultimo device driver per 3Dfx ha il supporto per farlo
 automaticamente. Abilitare gli MTRR pu� velocizzare in modo
 significativo (10 fps sul mio sistema) GL Quake. Per informazioni pi�
 dettagliate leggete http://glide.xxedgexx.com/MTRR.html.


 5.1.13.  Come posso far partire un server e scollegarmi, e poi
 tornarci pi� tardi? **

 screen(1) � un'utility valida per questo genere di cose. Vi permette
 di creare molti schermi virtuali in una singola tty e di passare tra
 uno di essi ed un altro. Screen � compreso nella maggior parte delle
 distribuzioni, ma lo potete scaricare da ftp://prep.ai.mit.edu/pub/gnu
 o da qualsiasi mirror GNU.

 Inizializzate screen digitando il comando screen, poi create una nuova
 finestra premendo CTRL-A CTRL-C. Non vedrete molto mentre fate tutto
 ci�, ma state tranquilli, qualcosa sta succedendo.

 Inizializzate il server di QuakeWorld:



           /usr/local/games/quake/qwsv





 Ora aprite una nuova finestra di screen con CTRL-A CTRL-C ed
 inizializzate il server di Quake II:



           /usr/local/games/quake2/quake2 +set dedicated 1





 Potete passare avanti ed indietro tra i server premendo CTRL-A CTRL-N.

 Premete CTRL-A CTRL-D per uscire dal programma. Screen ed i suoi
 server stanno ancora girando, ma non sono pi� visibili nella finestra
 del terminale. Ora potete scollegarvi ed i processi continueranno a
 girare normalmente.

 Usate screen -r per ricollegarvi al processo di screen precedente ed
 accedere di nuovo ai server.

 Questo � tutto. Per avere altre informazioni leggete la pagina man di
 screen(1).



 5.2.  Quake/QuakeWorld


 5.2.1.  Quake muore all'avvio con un segmentation fault.

 In genere questo significa che il setup di rete non � corretto.
 Provate a fare partire Quake con l'opzione -noudp e vedete se l'errore
 si ripete. Se funziona, controllate il file /etc/hosts e verificate
 che ci sia una voce per la vostra macchina. Usate 127.0.0.1 come
 indirizzo IP se avete un accesso via modem che vi assegna un indirizzo
 diverso ogni volta che vi collegate.


 5.2.2.  Che differenza c'� tra glqwcl , glqwcl.3dfxgl  e glqwcl.glx ?
 ++



 �  glqwcl  � il client standard di QuakeWorld per GL che avete visto
    nelle versioni precedenti; � linkato con la libMesaGL.so.2.


 �  glqwcl.3dfxgl � uno script che avvia glqwcl dopo aver precaricato
    la libreria del miniport 3Dfx GL, lib3dfxgl.so.  Precaricare la
    libreria del miniport fa usare le funzioni della GL invece che
    quelle della Mesa. Dato che il miniport della GL � ottimizzato per
    Quake, � una buona cosa.


 �  glqwcl.glx � linkato con le librerie OpenGL standard invece che con
    le Mesa; questo permette a Quake di girare su altro hardware 3D
    supportato da altre implementazioni di OpenGL. Questa �
    un'applicazione X, e quindi deve essere usata da dentro X.



 5.2.3.  Quando uso glqwcl.glx  a tutto schermo da X, non riesco ad
 usare il mouse o la tastiera. ++


 Usate glqwcl.glx con l'opzione +_windowed_mouse 1.  QuakeWorld GLX
 gira in una finestra anche se sembra a tutto schermo. Se spostate il
 mouse mentre il Window Manager � in modalit� focus-follow-mouse,
 probabilmente lo sposterete fuori della finestra, e allora Quake
 smette di rispondere all'input del mouse e della tastiera.
 +_windowed_mouse 1 fa gestire in esclusiva il mouse a QuakeWorld.


 5.3.  Quake II


 5.3.1.  Quando provo a usare Quake II con il renderer GL, non fun�
 ziona, e dice: "LoadLibrary("ref_gl.so") failed: Unable to resolve
 symbol"

 Se subito prima della linea di "Unable to resolve symbol" avete dei
 messaggi come  "can't resolve symbol 'fxMesaCreateContext'", la
 libreria Mesa che avete installato non ha compilato il supporto per le
 glide. Vedere la sezione ``Il renderer GL'' nella sezione
 sull'installazione di Quake per avere delle informazioni su come
 installare le Mesa e glide.


 5.3.2.  Quake II muore con l'errore LoadLibrary("ref_XXX.so") failed:
 No such file or directory



 �  /etc/quake2.conf non ha il percorso giusto per la directory di
    Quake II. Questo file dovrebbe contenere una linea con la directory
    in cui risiede Quake II.




 �  Se /etc/quake2.conf contiene il percorso per la directory, provate
    a rimuovere il file ed a ricrearlo a mano. Alcune versioni di Quake
    II per Linux includevano un file quake2.conf formattato male.



 �  Avete le SVGAlib installate? Controllate in /lib, /usr/lib e
    /usr/local/lib, se c'� il file libvga.so.1.X.X, in cui al posto
    delle X ci sono dei numeri.  Se non lo trovate, dovete prendere ed
    installare la SVGAlib per poter usare Quake II fuori di X.



 �  Se il renderer in questione � ref_gl.so, forse non avete installato
    correttamente le Mesa. Avete copiato libMesaGL.so.2.6 nella
    directory delle librerie come scritto nelle istruzioni di
    installazione?



 �  Se il renderer in questione � ref_gl.so, avete installato le
    librerie glide?



 5.3.3.  Quando aggiusto la luminosit� mentre uso il renderer GL e
 premo "apply", non succede niente!

 Digitate vid_restart nella console per fare attivare le modifiche.


 5.3.4.  Note sulla distribuzione 3.17

 Nel momento in cui sto scrivendo, la versione di Quake II pi� recente
 � la 3.19. Se per qualche ragione state usando la versione 3.17, vi
 potrebbero essere utili le seguenti informazioni.

 Due file di testo (quake2.conf e fixperms.sh) della versione 3.17 sono
 stati salvati inavvertitamente nel formato di testo MS-DOS CR/LF
 invece che nel formato Unix LF, cio� alla fine di ciascuna linea di
 questi file c'� un carattere di carriage return in pi�, e non
 funzioneranno bene finch� non risolverete questo problema.

 Usate tr(1) per togliere i CR.




           for i in fixperms.sh quake2.conf
           do
           mv $i $i.bak
           tr -d '\r' < $i.bak > $i
           done






 5.3.5.  Quando uso Quake II con l'opzione +set vid_ref glx  a tutto
 schermo da X, non riesco ad usare il mouse o la tastiera. ++

 Usate quake2 GLX con l'opzione +set _windowed_mouse 1.  Quake2 GLX
 gira in una finestra anche se sembra prendere tutto lo schermo.  Se
 spostate il mouse mentre il window manager � in modalit� focus-follow-
 mouse, � possibile che spostiate il puntatore fuori della finestra, e
 allora Quake II non risponder� pi� all'input del mouse e della
 tastiera. L'opzione +set _windowed_mouse 1 fa usare solo a Quake II
 l'input del mouse.


 5.3.6.  Perch� non posso passare ad alcune delle modalit� SVGA che
 sono nel men� Video di Quake II? **

 La SVGAlib probabilmente non sa come ricreare le modalit� sulla vostra
 scheda. Quando Quake II parte con il renderer SVGA (ref_soft.so),
 stampa un elenco di tutti i modi che la SVGAlib ha disponibili:



           ------- Loading ref_soft.so -------
           Using RIVA 128 driver, 4096KB.
           mode 320: 200 1075253220
           mode 320: 240 1075253220
           mode 320: 400 1075253220
           mode 360: 480 1075253220
           mode 640: 480 1075253220
           mode 800: 600 1075253220
           mode 1024: 768 1075253220
           mode 1280: 1024 1075253220





 Questi sono i soli modi tra cui potete passare con successo dal men�
 Video. Se ad esempio 512x384 non � sulla lista, sceglierlo dal men�
 video non funziona.

 La SVGAlib vi fa definire delle nuove modalit� video per alcuni
 chipset in libvga.config, in modo che possiate creare da soli le
 vostre modalit� video. Controllate la documentazione della SVGAlib per
 altri dettagli su questo argomento.


 6.  Tips & Tricks




 6.1.  Utilizzare i giochi per X e GL senza setuid

 Se usate solo le versioni X e GL di Quake, QuakeWorld o Quake II, non
 avete bisogno di usarle con permessi di root. La SVGA � l'unica
 modalit� in cui serve. Le versioni da X hanno bisogno solo
 dell'accesso a /dev/dsp, il dispositivo per il suono, alle versioni GL
 serve anche accesso alla scheda 3Dfx.

 /dev/dsp deve essere leggibile e scrivibile da Quake. La maggior parte
 delle distribuzioni gli danno per default i permessi 662 (rw-rw--w-).
 La soluzione pi� semplice � di fare chmod 666 /dev/dsp.  Sulla maggior
 parte dei sistemi la possibilit� di leggere dal device del suono non
 dar� un buco di sicurezza significativo. Se per voi questo approccio
 non � accettabile, create un gruppo a cui farete appartenere /dev/dsp,
 e rendete i giocatori di Quake membri di questo gruppo.

 Per utilizzare le applicazioni glide (come GLQuake) non da root vi
 serve  il driver /dev/3dfx dalla pagina di glide di Daryll Strauss
 (http://glide.xxedgexx.com/3DfxRPMS.html).  Scaricate il pacchetto
 Device3Dfx.xxx.rpm ed installatelo seguendo le istruzioni sulla pagina
 web. Dopo aver installato il driver, assicuratevi che /dev/3dfx ha
 permessi 666 (chmod 666 /dev/3dfx).
 Quando /dev/dsp e /dev/3dfx sono impostati correttamente, potete
 rimuovere il bit setuid dagli eseguibili di Quake/QW/Q2. Da root fate
 chmod 0755 XXXXX, dove XXXXX � glquake quake.x11, o quake2.

 Se avete giocato da root prima di fare queste modifiche, molti dei
 file di Quake (come i file di salvataggio) potrebbero appartenere
 all'utente root, e quindi possono essere inaccessibili ad un utente
 normale, quindi ricordatevi di modificare il proprietario dei file
 prima di provare a giocare non da root.


 6.2.  Usare le versioni SVGA e GL da X**

 I client di QuakeWorld e Quake II per GLX sono applicazioni X native,
 ma dato che usano le Mesa invece che il mini-driver 3Dfx, sono pi�
 lenti delle versioni lib3dfxgl.so. Per questa ragione forse
 preferirete ancora questo modo di inizializzare i giochi da X usando i
 client GLX.

 La parte seguente � basata su uno dei 2 Cent Tip di Joey Hess della
 Linux Gazette ([email protected]). L'originale si trova su
 http://www.ssc.com/lg/issue20/lg_tips20.html#squake.

 S�, � possibile usare Quake da X se siete root, ma non � un buon
 comportamento, e rischiate che Quake crashi e lascino la console che
 non risponde. Con un po' di lavoro potete fare in modo di poter
 giocare come utente normale usando i Quake SVGA e GL da X E passare
 automaticamente a X quando il programma finisce, sia che usciate
 normalmente che non lo facciate.

 Nota: quando dico "Quake" nel testo qui sotto, voglio dire "quake,
 glquake squake, qwcl, glqwcl, qwcl.x11 o quake2".



 �  Per prima cosa vi serve il pacchetto open(1) di Jon Tombs.  Si
    tratta di due programmi molto piccoli che vi permettono di passare
    tra le console virtuali e farci girare dei programmi. Scaricateli
    da http://sunsite.unc.edu/pub/Linux/utils/console/. Non dovrete
    fare molto pi� che make;make install per compilarli ed installarli.
    Una volta installati, dovrete rendere gli eseguibili open e
    switchto setuid root.  Fate cos�:



           cd /usr/local/bin
           chown root open switchto
           chmod 4755 open switchto








 �  Poi salvate il codice qui sotto nel file getvc.c:









    ___________________________________________________________________
            /* getvc.c
             * Prints the number of the current VC to stdout. Most of this code
             * was ripped from the open program, and this code is GPL'd
             *
             * Joey Hess, Fri Apr  4 14:58:50 EST 1997
             */

             #include <sys/vt.h>
             #include <fcntl.h>

             main () {
               int fd = 0;
               struct vt_stat vt;

               if ((fd = open("/dev/console",O_WRONLY,0)) < 0) {
                 perror("Failed to open /dev/console\n");
                 return(2);
               }
               if (ioctl(fd, VT_GETSTATE, &vt) < 0) {
                 perror("can't get VTstate\n");
                 close(fd);
                 return(4);
               }
               printf("%d\n",vt.v_active);
             }

             /* End of getvc.c */

    ___________________________________________________________________


 Compilatelo ed installatelo da qualche parte nel $PATH:



           gcc getvc.c -o getvc
           strip getvc
           mv getvc /usr/local/bin








 �  Ora create lo script runvc:


    ___________________________________________________________________
         #!/bin/sh
         # Run something on a VC, from X, and switch back to X when done.
         # GPL Joey Hess, Thu, 10 Jul 1997 23:27:08 -0400
         exec open -s -- sh -c "$* ; chvt `getvc`"

    ___________________________________________________________________


 Rendetelo eseguibile e mettetelo da qualche parte nel $PATH:






      chmod 755 runvc
      mv runvc /usr/local/bin






 Ora potete usare il comando runvc per cominciare a giocare a Quake.
 Continuate ad usare qualsiasi linea di comando che usate per il gioco,
 ma metteteci all'inizio runvc:



           runvc ./quake2 +set vid_ref gl +connect quake.foo.com





 Passerete automaticamente ad una console virtuale, giocherete a Quake
 e poi quando ha finito passerete di nuovo a X!




 6.3.  Mantenere il mouse dentro la finestra in X

 Dal file readme.linux di Quake II:


      Per default, il mouse non sar� "legato" alla finestra di
      Quake2.  Per farglielo catturare, selezionate "Windowed
      Mouse" dal men� video, o digitate '_windowed_mouse 0' sulla
      console. Fate il contrario per lasciarlo. Potete creare una
      scorciatoia da tastiera per catturare e lasciare il mouse
      cos�: bind i "_windowed_mouse 1" bind o "_windowed_mouse 0"
      In questo modo "i" catturer� il mouse e "o" lo rilascer�.




 6.4.  Le impostazioni "trucchettose " di 3Dfx funzionano anche in
 Linux

 Potreste avere sentito parlare o visto modi di modificare la
 performance delle OpenGL di Quake impostando diverse variabili
 d'ambiente.  Queste variabili sono valide nello stesso modo sotto
 Linux, soltanto si impostano in un modo leggermente diverso. Se una
 guida per Windows/DOS vi dice di fare:



           SET SST_GRXCLK=59





 Sotto Linux dovete fare cos�:



           export SST_GRXCLK=59


 6.5.  Il browser del server del poveraccio

 Joe S. ([email protected]) suggerisce:



           un trucco che faccio con qstat:
           Faccio un file con i miei server preferiti, poi fate
           qstat -f /C/quake2/file.txt | less





 premete Ctrl-z per sospendere, poi copiate gli indirizzi IP o i nomi
 degli host con gpm sulla linea di comando, cos�:




           ./quake2 +connect expert.eqclans.com





 Poi potete usare fg per tornare alla lista pi� tardi...


 6.6.  Usare le lib3dfxgl.so  per Quake I**

 Potete usare il mini-driver 3Dfx (lib3dfxgl.so) da Quakeworld o da
 Quake II anche con glquake. Copiate semplicemente gli script
 glqwcl.3dfxgl o quake2.3dfxgl in un nuovo file, ad esempio
 glquake.3dfxgl; poi copiate lo script glquake.3dfxgl in modo che usi
 glquake invece di glqwcl.  Anche in questo caso si applicano le stesse
 restrizioni per l'uso da root, come anche le differenze tra libc5 e
 glibc.  Vedere le sezioni ``Quakeworld'' o ``Quake II'' per avere
 altre informazioni su lib3dfxgl.so.


 7.  Administrivia



 7.1.  Nuove versioni di questo documento

 Le nuove versioni di questo documento verranno postate periodicamente
 in comp.os.linux.answers e in  rec.games.computer.quake.misc.  Saranno
 anche inserite nei vari siti WWW e FTP, compresa la home page di LDP.

 Le nuove versioni di questo documento saranno periodicamente postate
 in rec.games.computer.quake.misc e in comp.os.linux.misc.

 L'ultima versione del Linux Quake HOWTO pu� sempre essere trovata nei
 seguenti siti:



 �  http://www.linuxquake.com/


 �  http://webpages.mr.net/bobz/



 �  http://www.linuxgames.com/quake



 7.2.  Altri formati di questo documento


 Questo documento � disponibile in una gran variet� di formati diversi;
 molti pi� di quanto servono, in realt�. Li potete trovare in
 http://www.linuxquake.com/howto/other-formats.


 �  testo ASCII


 �  testo ASCII con backspace-overstrikes per poter essere visualizzato
    com man(1)


 �  HTML gi� zippato e pronto per essere inserito nel vostro sito web


 �  Postscript


 �  PRC per poter essere visualizzato sul Palm Pilot con Aportis Doc


 �  SGML


 �  LaTeX


 �  Tutto quello elencato sopra, in un solo pacchetto



 7.3.  Policy di distribuzione


 Copyright (c) 1998, di Bob Zimbinski, Brett A. Thomas e Mike Hallock.
 Questo documento pu� essere distribuito sotto i termini descritti
 nella licenza LDP a sunsite.unc.edu/LDP/COPYRIGHT.html.

 Questo HOWTO � documentazione libera, e pu� essere ridistribuita e/o
 modificata sotto i termini della licenza LDP. Questo documento viene
 distribuito con la speranza che serva, ma senza alcuna garanzia; senza
 neanche la garanzia implicita di essere vendibile o adatto ad un
 particolare scopo. Beh, anche se questo documento vi uccide il cane,
 non � colpa mia.

 Vedere la licenza LDP per ulteriori dettagli.


 7.4.  Storia delle revisioni

 Le sezioni di questo documento che sono state aggiornate nell'ultima
 revisione hanno un ** dopo il titolo. Le sezioni aggiornate nella
 revisione precedente sono contrassegnate da ++.

 Qui sotto � riportata la storia completa delle revisioni di questo
 documento. Non � stata concepita per essere utile a nessuno, tranne
 che agli autori (per questo non viene tradotta :-) n.d.t.) .


 ______________________________________________________________________
      $Log: Quake-HOWTO.sgml,v $
      Revision 1.0.1.15  1998/10/05 21:09:42  bobz
      Fixed a few typos and spelling errors that I missed last time around

      Revision 1.0.1.14  1998/10/05 19:54:17  bobz
      Removed the long-dead LinQuake page from list of Linux Quake sites
      Removed renaissoft.com link
      Minor wording changes throughout
      Added link to svgalib libc5 binary
      Added info about q2 demo
      Updated q2 installation info for the 3.19 release
      moved section about 3.17 textfile problems to the troubleshooting section
      Added part about lib3dfxgl.so to QW section
      Added part about GLX client to QW section
      Added part about lib3dfxgl.so to Q2 section
      Added part about GLX client to Q2 section
      Updated "slower than windows" FAQ
      Removed obsolete TS tip about glibc & q2
      Removed obsolete TS tip about playing w/CD mounted
      Changed tip about running glquake with lib3dfxgl.so
      Added instructions for Q2 mission pack 2
      Added pointer to svgalib libc5 binary
      Added FAQ about svgalib modes in Q2
      Added Cheapo proxy to software section
      Added screen FAQ
      Added qgraph to  software sectoin
      Decided I was lying when I promised a 3Dfx tweak section in the next update

      Revision 1.0.1.13  1998/09/02 01:35:18  bobz
      Fixed some broken url links
      Restored <author> tag
      added an acknowledgement
      added a reminder to the non-root tip
      added qlog listing

      Revision 1.0.1.12  1998/08/30 21:35:23  bobz
      Updated QuakeWorld install section for 2.30 release
      Updated QW file list
      Updated Quake 1.01 install info per email suggestion
      Added QW 2.30 caveat to "Glibc considerations" section
      Updated linux vs. windows speed section for new 3dfx miniport
      Added glqwcl versions FAQ
      Added troubleshooting tip about windows focus and glx
      Added a sentence about /dev/3dfx permissions
      Made runvc script usage clearer
      Added tip about using mini-driver with Quake & QuakeII

      Revision 1.0.1.11  1998/08/15 19:28:49  bobz
      Added glibc topic in Troubleshooting/FAQ section
      Moved non-setuid info to Tips & Tricks section
      Moved rcs log into Revision Hist section
      Changed distribution info a little until LDP wakes up
      Changed references to quake.medina.net to www.linuxquake.com
      Added linuxgames.com to list of places to get current version
      Changed 3dfx Howto pointer
      Moved explanation of change markings (** and ++) to intro section where they'll be noticed
      Mentioned zoid's GL driver port in the Win vs Linux FAQ
      Fixed credit and URL in q2getty

      Revision 1.0.1.10  1998/08/07 19:07:02  bobz
      Changed XQF url
      Added comments to the revision history section
      Started marking changed sections
      Added OS Considerations to troubleshooting section
      Added rcon to Other Software section
      Added ICE to Other Software section

      Revision 1.0.1.9  1998/08/04 21:06:22  bobz
      Updated Acknowledgements
      Added discussion of Quake security
      Added QIPX to "Related Software"
      Added ts topic about -noudp

      Revision 1.0.1.8  1998/08/03 22:09:28  bobz
      Updated and restructured the q2 mods section
      Minor change to gpm troubleshooting info
      Changed sound ts info
      Changed intellimouse ts info

      Revision 1.0.1.7  1998/08/03 04:55:21  mikeh
      Added "Playing" section of Q2 Mods & Addons section.
      Added "Intelimouse" section of Troubleshooting section
      Added RedHat sndconfig part to Troubleshooting section
      Fixed a few spacing problems, and one error message

      Revision 1.0.1.6  1998/08/03 02:01:13  bobz
      Changed abstract.

      Revision 1.0.1.5  1998/07/31 16:07:11  bobz
      Added gpm -k mention in mouse troubleshooting
      mentioned 'sensitivity' in mouse lag troubleshooting
      Added qstat|less tip
      Added "/dev/dsp not configured" to troubleshooting
      Slightly reworded part of the mod compiling section
      Added bit about running mods server side
      corrected required version # in q2 mission pack 1
      Updated acknowledgements section

      Revision 1.0.1.4  1998/07/30 21:08:46  bobz
      Fixed a problem with broken lines in <sect> tags

      Revision 1.0.1.3  1998/07/30 17:40:29  bobz
      Fixed broken link to Latex version.

      Revision 1.0.1.2  1998/07/30 15:46:40  bobz
      Test update.

      Revision 1.0.1.1  1998/07/30 15:43:59  bobz
      Changed version numbering scheme.

      Revision 1.10  1998/07/30 13:51:24  bobz
      Minor version reporting change

      Revision 1.9  1998/07/29 20:42:03  bobz
      Added some server links

      Revision 1.8  1998/07/29 17:37:15  bobz
      Added a Quake II model viewer to the Other Programs section

      Revision 1.7  1998/07/29 16:02:23  bobz
      Added some relative links in Other Formats to make it
      more portable.

      Revision 1.6  1998/07/29 15:18:12  bobz
      Version and date stamps back to the way they were

      Revision 1.5  1998/07/29 14:52:03  bobz
      Added tags for automatic timestamping

      Revision 1.4  1998/07/29 13:17:51  bobz
      Changed captured.com's web address per webmaster's request
      Revision 1.3  1998/07/29 02:11:02  bobz
      Ooops again.  Made "Other formats" a <sect> instead of a <sect1>.

      Revision 1.2  1998/07/29 01:55:41  bobz
      Oops.  I deleted the doctype tag...

      Revision 1.1  1998/07/29 01:48:34  bobz
      Added Other Formats section.
      Changed acknowledgments slightly
      Added ftp.medina.net to list of ftp sites.

      Revision 1.0 1998/07/28
      First publicly released version

      Revision 0.9 1998/07/25
      Restructured,rewritten and expanded by Bob Zimbinski.

      Revision 0.01 1998/06/16
      First Pre-Release version v0.01by Brett A. Thomas and Mike Hallock.

 ______________________________________________________________________