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.
______________________________________________________________________