<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <TITLE>Linux Quake HOWTO: Quake II</TITLE> <LINK HREF="Quake-HOWTO-4.html" REL=next> <LINK HREF="Quake-HOWTO-2.html" REL=previous> <LINK HREF="Quake-HOWTO.html#toc3" REL=contents> </HEAD> <BODY> <A HREF="Quake-HOWTO-4.html">Avanti</A> <A HREF="Quake-HOWTO-2.html">Indietro</A> <A HREF="Quake-HOWTO.html#toc3">Indice</A> <HR> <H2><A NAME="s3">3. Quake II</A></H2> <P>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 <A HREF="#quake2-shareware">Scaricare i file necessari</A> 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. <P> <H2><A NAME="ss3.1">3.1 Prerequisiti</A> </H2> <P>Come minimo avrete bisogno di: <P> <UL> <LI>Un Pentium 90 o superiore (raccomandato il 133) </LI> <LI>16 MB di RAM (raccomandati 24) </LI> <LI>Il CD-ROM di Quake 2 <B>o</B> la versione demo (q2-314-demo-x86.exe) </LI> <LI>Linux con kernel versione 2.0.24 o successiva </LI> <LI>libc 5.2.18 o successiva </LI> <LI>Uno dei seguenti: <UL> <LI>un server X11 che supporti le estensioni di memoria condivise MITSM. Sono supportati gli schermi a 8 e 16 bit (per il renderer X). </LI> <LI>SVGAlib 1.2.10 o successiva (per i renderer SVGA e GL) </LI> </UL> </LI> <LI>25-400 Mb di spazio disco libero (a seconda di come fate l'installazione) </LI> <LI>Accesso all'account di root della macchina su cui state installando. </LI> </UL> <P> <P>Opzionali: <UL> <LI>Una scheda audio supportata </LI> <LI>Una scheda grafica accelerata 3Dfx Voodoo Graphics o Voodoo2 o Voodoo Rush 3D. </LI> <LI>Le librerie grafiche 3Dfx installate (per il renderer GL) </LI> <LI>Le Mesa 2.6 o successive (per il renderer GL) </LI> </UL> <P> <H2><A NAME="ss3.2">3.2 Installazione di Quake II</A> </H2> <P> <P> <H3><A NAME="quake2-files"></A> Scaricare i file necessari**</H3> <P>Tutti i file necessari per Quake II per Linux sono disponibili nel sito ftp della id Software, <A HREF="ftp://ftp.idsoftware.com">ftp.idsoftware.com</A>. Questo sito può essere spesso congestionato. Quindi potete usare uno dei mirror: <UL> <LI> <A HREF="ftp://ftp.cdrom.com/pub/idgames/idstuff">ftp.cdrom.com/pub/idgames/idstuff</A> (California, USA) </LI> <LI> <A HREF="ftp://ftp.gamesnet.net/idsoftware">ftp.gamesnet.net/idsoftware</A> (California, USA) </LI> <LI> <A HREF="ftp://ftp.stomped.com/pub/mirror/idstuff">ftp.stomped.com/pub/mirror/idstuff</A> (Minnesota, USA) </LI> <LI> <A HREF="ftp://mirrors.telepac.pt/pub/idgames">mirrors.telepac.pt/pub/idgames</A> (Lisbon, Portogallo) </LI> <LI> <A HREF="ftp://download.netvision.net.il/pub/mirrors/idsoftware">download.netvision.net.il/pub/mirrors/idsoftware</A> (Haifa, Israele) </LI> </UL> <P>I file di Quake II nominati in questa sezione sono: <UL> <LI>I binari di Quake II per Linux <UL> <LI>il pacchetto tar.gz per libc5 <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-i386-unknown-linux2.0.tar.gz">ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-i386-unknown-linux2.0.tar.gz</A> </LI> <LI>il pacchetto tar.gz per glibc <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-glibc-i386-unknown-linux2.0.tar.gz">ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-glibc-i386-unknown-linux2.0.tar.gz</A> </LI> <LI>il pacchetto rpm per libc5 <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-2.i386.rpm">ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-2.i386.rpm</A> </LI> <LI>il pacchetto rpm per glibc <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-glibc-2.i386.rpm">ftp.idsoftware.com/idstuff/quake2/unix/quake2-3.19a-glibc-2.i386.rpm</A> </LI> </UL> </LI> <LI>La versione demo di Quake II per Windows <A NAME="quake2-shareware"></A> <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/q2-314-demo-x86.exe">ftp://ftp.idsoftware.com/idstuff/quake2/q2-314-demo-x86.exe</A> </LI> <LI>Il sorgente di Quake II <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/source/q2source-3.14.shar.Z">ftp://ftp.idsoftware.com/idstuff/quake2/source/q2source-3.14.shar.Z</A> </LI> <LI>Acchiappabandiera per Quake II <A HREF="ftp://ftp.idsoftware.com/idstuff/quake2/ctf/102.zip">ftp://ftp.idsoftware.com/idstuff/quake2/ctf/102.zip</A> </LI> </UL> <P>Altro software nominato: <UL> <LI>le librerie grafiche SVGAlib <A HREF="http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.tar.gz">http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.tar.gz</A> </LI> <LI>i binari di SVGAlib per libc5 <A HREF="http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz">http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz</A> </LI> <LI>le librerie a runtime Glide <A HREF="http://glide.xxedgexx.com/3DfxRPMS.html">http://glide.xxedgexx.com/3DfxRPMS.html</A> </LI> <LI>la libreria grafica Mesa 3D <A HREF="http://www.ssec.wisc.edu/~brianp/Mesa.html">http://www.ssec.wisc.edu/~brianp/Mesa.html</A> </LI> <LI>l'utilità di decompressione unzip <A HREF="http://sunsite.unc.edu/pub/Linux/utils/compress/unzip-5.31.tar.gz">http://sunsite.unc.edu/pub/Linux/utils/compress/unzip-5.31.tar.gz</A> </LI> </UL> <P> <H3>Creazione della directory di installazione</H3> <P>La prima cosa che dovete fare è decidere dove volete installare Quake II. Molti lo mettono in <CODE>/usr/games/quake</CODE>. Gli amministratori di sistema anali come me scelgono di installare tutto quello che non fa parte della distribuzione standard sotto <CODE>/usr/local</CODE>, quindi per me Quake II va in <CODE>/usr/local/games/quake2</CODE>. Se scegliete di installarlo da qualche altra parte, sostituite il percorso appropriato dove io indico <CODE>/usr/local/games/quake2</CODE>. <P>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. <P> <BLOCKQUOTE><CODE> <PRE> mkdir /usr/local/games/quake2 cd /usr/local/games/quake2 </PRE> </CODE></BLOCKQUOTE> <P> <H3>Installare dal CD</H3> <P>Inserite il CD di Quake II nel drive, e montatelo: <P> <BLOCKQUOTE><CODE> <PRE> mount -t iso9660 /dev/cdrom /mnt/cdrom </PRE> </CODE></BLOCKQUOTE> <P>Se il vostro CDROM normalmente è montato altrove, sostituite la sua posizione al posto di <CODE>/mnt/cdrom</CODE>. Se non siete sicuri di dove sia montato il CDROM, controllate la documentazione della vostra particolare distribuzione. <P> <UL> <LI><B>Installazione completa</B> 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: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 cp -r /mnt/cdrom/Install/Data/* . </PRE> </CODE></BLOCKQUOTE> Ci saranno un sacco di inutili file per Windows in giro, che potrete tranquillamente cancellare: <BLOCKQUOTE><CODE> <PRE> rm -f /usr/local/quake2/*.dll rm -f /usr/local/quake2/quake2.exe rm -f /usr/local/quake2/baseq2/gamex386.dll </PRE> </CODE></BLOCKQUOTE> </LI> <LI><B>Installazione parziale</B> 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: <BLOCKQUOTE><CODE> <PRE> 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 </PRE> </CODE></BLOCKQUOTE> 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. </LI> </UL> <P> <H3>Installazione da Windows a Linux</H3> <P>Se avete Quake II installato sotto Windows su un'altra macchina, potete trasferire i file da <CODE>quake2\baseq2</CODE> 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. <P>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. <P>Come al solito, sostituite <CODE>/win95/games/quake2</CODE> nel seguente esempio con il percorso corretto per la partizione Windows e per l'installazione di Quake II. <P> <UL> <LI>Se volete copiare i file dalla partizione Windows, fate così: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 cp -r /win95/games/quake2/baseq2 . </PRE> </CODE></BLOCKQUOTE> </LI> <LI>Per creare dei collegamenti ai file di Quake II per Windows, fate: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ln -s /win95/games/quake2/baseq2 . </PRE> </CODE></BLOCKQUOTE> 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 installazione Windows. Se per voi va bene, modificate la partizione <CODE>/etc/fstab</CODE> in modo che la partizione Windows venga montata con le opzioni <EM>umask=002,gid=XXX</EM>, dove XXX è l'id del gruppo "utenti". Per sapere quale è, guardate in <CODE>/etc/group</CODE>. Quando avete aggiornato <CODE>fstab</CODE>, smontate e rimontate la partizione Windows, ed avete fatto. </LI> </UL> <P> Avete finito di installare i file di dati di Quake II. Passate all'" <A HREF="#quake2-linux-binaries">Installazione dei binari per Linux</A>". <P> <P> <H3>Installazione della versione demo **</H3> <P>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. <P>Vedere la sezione <A HREF="#quake2-files">Scaricare i file necessari</A> più avanti, per sapere dove trovare il demo di Quake II. Scaricatela e mettetela nella directory di Quake II. <P>La distribuzione demo è un file zip autoscompattante (o per lo meno si scompatta automaticamente in altri sistemi operativi). Potete estrarla usando il comando <B>unzip(1)</B>, che dovrebbe essere incluso nella maggior parte delle distribuzioni moderne. Se non l'avete, lo potete scaricare dal sito elencato nella sezione <A HREF="#quake2-files">Scaricare i file necessari</A>. <P>Entrate nella directory di Quake II ed estraete l'archivio: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 unzip q2-314-demo-x86.exe </PRE> </CODE></BLOCKQUOTE> <P>Ora dovete cancellare alcune cose e spostarne altre: <BLOCKQUOTE><CODE> <PRE> rm -rf Splash Setup.exe mv Install/Data/baseq2 . mv Install/Data/DOCS docs rm -rf Install rm -f baseq2/gamex86.dll </PRE> </CODE></BLOCKQUOTE> <P>La demo di Quake II ora è installata. Dovete solo aggiungere i binari per Linux. <P> <H2><A NAME="quake2-linux-binaries"></A> <A NAME="ss3.3">3.3 Aggiungere i binari per Linux </A> **</H2> <P>Ci sono quattro pacchetti di Quake II per Linux disponibili: <UL> <LI>un pacchetto tar.gz per libc5 </LI> <LI>un pacchetto tar.gz per glibc </LI> <LI>un pacchetto rpm per libc5 </LI> <LI>un pacchetto rpm per glibc </LI> </UL> <P>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. <P>Vedere la sezione <A HREF="#quake2-files">Scaricare i file necessari</A> per sapere dove trovare i file di Quake II per Linux. <P> <H3>Installare i pacchetti RPM **</H3> <P>L'installazione dei pacchetti rpm dovrebbe essere semplicissima: <P> <BLOCKQUOTE><CODE> <PRE> su root rpm -Uvh quake2-xxxxx.i386.rpm </PRE> </CODE></BLOCKQUOTE> <P>Rpm si potrà lamentare che non trova <CODE>libglide2x.so</CODE>. 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 <CODE>--nodeps</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> su root rpm -Uvh quake2-xxxxx.i386.rpm --nodeps </PRE> </CODE></BLOCKQUOTE> <P> <H3>Installare i pacchetti tar.gz **</H3> <P>Per installarli, scompattate con tar i file nella directory di Quake II. Fatelo come root, in modo da impostare i permessi corretti sui file. <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake su root tar -xzf qwcl2.21-i386-unknown-linux2.0.tar.gz </PRE> </CODE></BLOCKQUOTE> <P> <H2><A NAME="ss3.4">3.4 Impostare i permessi **</A> </H2> <P>Se avete usato <CODE>rpm</CODE> o <CODE>tar</CODE> da root quando avete installato il pacchetto di Quake II sul sistema, i permessi sui file dovrebbero essere corretti. L'eseguibile <CODE>quake2</CODE> deve essere stato installato setuid root per poter fargli accedere ai dispositivi grafici del sistema. Per questioni di sicurezza, le librerie di rendering <CODE>ref_*.so</CODE> 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, <CODE>quake2</CODE> non partirà. <P>Se volete usare Quake II solo con i renderer GL o X, il file <CODE>quake2</CODE> non ha bisogno di essere setuid root. Vedere <A HREF="Quake-HOWTO-6.html#no-setuid">Utilizzare le versioni X e GL senza setuid</A> nella sezione Tips and Tricks per avere informazioni su come utilizzare Quake II senza permessi di root. <P> <H3>Quake2.conf **</H3> <P> <P>Per ragioni di sicurezza, esiste un file <CODE>quake2.conf</CODE>, che dice a Quake II dove trovare le librerie di rendering di cui ha bisogno (<CODE>ref_*.so</CODE>). Contiene solo una linea, che dovrebbe essere il percorso per la vostra installazione di Quake II. Quake II cerca questo file in <CODE>/etc</CODE>. Se avete installato Quake II da un file <CODE>.rpm</CODE>, questo file sarà stato installato automaticamente. Se l'avete installato da un pacchetto <CODE>.tar</CODE>, dovete crearlo così: <P> <BLOCKQUOTE><CODE> <PRE> su root cd /usr/local/games/quake2 pwd > /etc/quake2.conf chmod 644 /etc/quake2.conf </PRE> </CODE></BLOCKQUOTE> <P> <H2><A NAME="ss3.5">3.5 Il renderer X</A> </H2> <P>Quake II dovrebbe essere pronto a girare sotto X. Provate: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 +set vid_ref softx </PRE> </CODE></BLOCKQUOTE> <P>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 <A HREF="Quake-HOWTO-5.html#troubleshooting">Risoluzione dei problemi</A>. <P> <H2><A NAME="quake2-svgalib"></A> <A NAME="ss3.6">3.6 Il renderer SVGAlib </A> </H2> <P>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 <B>deve</B> essere configurata correttamente prima di poter usare Quake II fuori da X. <P><CODE>libvga.config</CODE> è il file di configurazione di SVGAlib. Sulla maggior parte dei sistemi lo troverete in <CODE>/etc</CODE> o in <CODE>/etc/vga</CODE>. <P>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. <P>Se non l'avete già, scaricatela dal sito indicato nella <A HREF="Quake-HOWTO-2.html#quake-files">sezione dei file</A> più sopra. Se avete la RedHat 5.x o un'altra distribuzione di Linux basata su glibs, guardate le <A HREF="Quake-HOWTO-5.html#glibc">considerazioni su Glibc, RedHat 5.x, Debian 2</A> nella sezione Risoluzione dei problemi/FAQ per avere delle informazioni importanti su come compilare le librerie per poterle usare con Quake. A <A HREF="http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz">http://sunsite.unc.edu/pub/Linux/libs/graphics/svgalib-1.3.0.libc5.bin.tar.gz</A> è disponibile un binario delle SVGAlib precompilato con le libc5 per chi non ha voglia di ricompilare il tutto. <P>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 <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 </PRE> </CODE></BLOCKQUOTE> <P> <A HREF="Quake-HOWTO-6.html#running-from-x">Utilizzare i giochi SVGA e GL da X</A> 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. <P> <H2><A NAME="quake2-gl"></A> <A NAME="ss3.7">3.7 Il renderer OpenGL</A> </H2> <P>Il Quake per le OpenGL hardware-accelerate è Quake come Dio comanda. Non c'è possibile sostituto, e una volta provato non si torna indietro. <P>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). <P>Le librerie SVGAlib, Glide e Mesa devono essere tutte installate e configurate correttamente sul sistema, per poter usare <CODE>quake2</CODE>. Le seguenti sezioni copriranno brevemente i passi da seguire per farlo. <P> Il Linux 3Dfx HOWTO di Bernd Kreimeier ( <A HREF="mailto:bk@gamers.org">bk@gamers.org</A>) ( <A HREF="http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html">http://www.gamers.org/dEngine/xf3D/howto/3Dfx-HOWTO.html</A>) è una buona fonte di informazioni. <P> Il newsgroup <A HREF="news://news.3dfx.com/3dfx.glide.linux">3dfx.glide.linux</A> sul news server della 3dfx (news.3dfx.com) è un'altra buona fonte di informazioni sull'intersezione di Linux, glide, Mesa e Quake. <P> <P> <H3>SVGAlib</H3> <P> Quake II usa le SVGAlib per ricevere input dal mouse e dalla tastiera, quindi dovrete configurarle come illustrato nella sezione <A HREF="#quake2-svgalib">Renderer SVGAlib</A>. <P> <H3><A NAME="quake2-glide"></A> Glide</H3> <P>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. <P>Potete trovare l'ultima versione delle glide su <A HREF="http://glide.xxedgexx.com/3DfxRPMS.html">http://glide.xxedgexx.com/3DfxRPMS.html</A>. Scegliete il (i) pacchetti appropriati per il vostro sistema, ed installateli seguendo le istruzioni che trovate sulla pagina web. <P>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 <CODE>/dev/3dfx</CODE> e potrete usare GLQuake come utente normale. <P>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. <B>NOTA: usate questo test da una console virtuale, <EM>non</EM> X!</B> È 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. <P> <BLOCKQUOTE><CODE> <PRE> /usr/local/glide/bin/test3Dfx </PRE> </CODE></BLOCKQUOTE> <P>Il vostro schermo dovrebbe diventare blu e chiedervi di premere un tasto qualsiasi. Dopo che avrete premuto il tasto dovreste tornare al prompt. <A HREF="news://news.3dfx.com/3dfx.glide.linux">3dfx.glide.linux</A> sul news server della 3dfx (news.3dfx.com) è un'ottima fonte di informazioni per problemi specifici di glide per Linux. <P> <H3>Mesa </H3> <P>Una volta installato glide, dovrete installare Mesa, un'implementazione free di OpenGL di Brial Paul <A HREF="mailto:brianp@elastic.avid.com">(brianp@elastic.avid.com)</A>. 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: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 cp libMesaGL.so.2.6 /usr/local/lib ldconfig </PRE> </CODE></BLOCKQUOTE> <P>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 <A HREF="ftp://iris.ssec.wisc.edu/pub/Mesa">ftp://iris.ssec.wisc.edu/pub/Mesa</A>. Se avete RedHat 5.x o un'altra distribuzione basata sulle glibc, guardate le <A HREF="Quake-HOWTO-5.html#glibc">considerazioni su glibc, RedHat 5.x, Debian 2</A> nella sezione Risoluzione dei problemi/FAQ per avere informazioni importanti sulla compilazione delle librerie per Quake. <P>Dopo aver compilato il tutto seguendo le istruzioni, dovrete fare due cose: <P> <UL> <LI>Eliminare la precedente installazione delle Mesa. Se avevate prima installato le <CODE>libMesaGL.so.2.6</CODE> come descritto sopra, le dovete eliminare, o Quake II potrebbe non usare le nuove versioni. <BLOCKQUOTE><CODE> <PRE> cd /usr/local/lib/ rm -f libMesaGL.so.2* </PRE> </CODE></BLOCKQUOTE> </LI> <LI>Se le nuove Mesa hanno un numero di versione principale maggiore di 2, dovete crearne un link con il nome <CODE>libMesaGL.so.2</CODE>: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/lib/ ln -s /wherever/you/installed/it/libMesaGL.so.3.0 libMesaGL.so.2 ldconfig </PRE> </CODE></BLOCKQUOTE> </LI> </UL> <P>Ora passate ad una console virtuale (CTRL+ALT+F1) ed avviate Quake II: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 +set vid_ref gl </PRE> </CODE></BLOCKQUOTE> <P> <H3><A NAME="q2-3dfxgl"></A> lib3dfxgl.so **</H3> <P>Con Quake II versione 3.19 è disponibile un'alternativa alla libreria Mesa. <CODE>lib3dfxgl.so</CODE> è 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. <P> Come le Mesa, <CODE>lib3dfxgl.so</CODE> ha bisogno delle Glide per accedere alla scheda 3Dfx. Il pacchetto di Quake II contiene uno script, <CODE>glqwcl.3dfxgl</CODE> per usare Quake II su sistemi glibc con questa libreria. Il prossimo paragrafo spiega come usare Quake II con la <CODE>lib3dfxgl.so</CODE> su un sistema libc5. Su un sistema glibc, per fare funzionare lo script, l'eseguibile <CODE>glqwcl</CODE> <B>non deve essere setuid</B>, e non va usato da root. <CODE>glqwcl</CODE> caricherà silenziosamente le Mesa invece delle <CODE>lib3dfxgl.so</CODE> se si fa girare con i permessi di root. Queste richieste implicano che abbiate installato il driver <CODE>/dev/3dfx</CODE> se gira con permessi di root. Questa richiesta di non essere root implica che abbiate installato il driver <CODE>/dev/3dfx</CODE>. <P> Sui sistemi basati sulle libc5, si applica la richiesta di non essere root riportata sopra, ma dovrete anche creare un link simbolico a <CODE>lib3dfxgl.so</CODE> che si chiami <CODE>libMesaGL.so.2</CODE>, così: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake ln -sf lib3dfxgl.so libMesaGL.so.2 </PRE> </CODE></BLOCKQUOTE> e poi fare partire Quake II da uno script che dica a <CODE>$LD_LIBRARY_PATH</CODE> di guardare nella directory corrente: <HR> <PRE> #!/bin/sh LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH" ./quake2 +set vid_ref gl $* </PRE> <HR> <P> Potete vedere quale driver viene caricato guardando l'output nella console quando Quake II parte, così: <P> <BLOCKQUOTE><CODE> <PRE> 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 </PRE> </CODE></BLOCKQUOTE> <P> Se <CODE>GL_VENDOR</CODE> dice <CODE>Brian Paul</CODE> invece di <CODE>3Dfx Interactive Inc.</CODE>, vuol dire che viene ancora usato Mesa invece del driver miniport. <P> <H2><A NAME="quake2-glx"></A> <A NAME="ss3.8">3.8 Il renderer GLX</A> **</H2> <P> <P> <CODE>ref_glx.so</CODE> è 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. <P> Quake II è un'applicazione GLX, e come tale deve essere usata da dentro X. <P>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 <CODE>$MESA_GLX_FX</CODE> al valore "fullscreen" prima e dopo il comando <CODE>quake2</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> export MESA_GLX_FX=fullscreen ./quake2 +set vid_ref glx +set _windowed_mouse 1 </PRE> </CODE></BLOCKQUOTE> <P>Perché usare l'opzione <CODE>+_windowed_mouse 1</CODE>? 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 <EM>molto</EM> 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. <CODE>+_windowed_mouse 1</CODE> elimina questo problema dicendo a <CODE>glqwcl.glx</CODE> di agganciare il mouse e non farlo muovere all'esterno della finestra. <P> <H2><A NAME="ss3.9">3.9 Opzioni da linea di comando specifiche di Linux</A> </H2> <P>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 <A HREF="Quake-HOWTO-1.html#general-quake-sources">Informazioni generali su Quake</A> per questo tipo di informazioni. <P>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 <CODE>+set</CODE> dalla linea di comando, così: <P> <BLOCKQUOTE><CODE> <PRE> ./quake2 +set cd_dev /dev/hdc </PRE> </CODE></BLOCKQUOTE> <P> <DL> <DT><B>cd_dev <EM>device</EM></B><DD><P>Nome del device del CD-ROM <P> <DT><B>nocdaudio <EM>valore</EM></B><DD><P>Disabilita il CD audio se <EM>valore</EM> è diverso da zero. <P> <DT><B>sndbits <EM>num</EM></B><DD><P>Imposta la dimensione in bit del campionamento sonoro. Il default è 16. <P> <DT><B>sndspeed <EM>num</EM></B><DD><P>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. <P> <DT><B>sndchannels <EM>num</EM></B><DD><P>Indica suono stereo o mono. Il default è 2 (stereo). Usate 1 per il mono. <P> <DT><B>nostdout <EM>valore</EM></B><DD><P>Non mandare nessun output allo stdout. Usate questa opzione se non volete che l'output di console sia mandato sul terminale. </DL> <P> <H2><A NAME="ss3.10">3.10 Server Quake II</A> </H2> <P>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 <A HREF="Quake-HOWTO-1.html#other-sources">Altre fonti di informazioni</A> nella prima parte di questo documento. <P> <H3>Server "in ascolto"</H3> <P>Si può inizializzare un server "in ascolto" di Quake II dall'interno del gioco, usando il menù <EM>Multiplayer</EM>. In questo modo si può ospitare un gioco e parteciparvi allo stesso tempo. <P>Per iniziare un server "in ascolto", inizializzare Quake II, aprite il menù di Quake II con il tasto Esc, e scegliete la voce <EM>Multiplayer</EM>. Da lì dovrebbe essere piuttosto auto-esplicativo. <P> <H3>Server dedicati</H3> <P>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. <P>Per inizializzare un server dedicato, usate l'opzione da linea di comando <CODE>+set dedicated 1</CODE>. Potete impostare dei parametri aggiuntivi sia da linea di comando sia da un file di configurazione che va impostato dalla linea di comando con <CODE>+exec</CODE>. Il file di configurazione dovrebbe essere nella directory <CODE>baseq2</CODE>. <P>Qui sotto sono elencate alcune opzioni comuni per i server. Per impostarle sulla linea di comando, date <CODE>+set fraglimit 30</CODE>. Le opzioni vengono impostate nello stesso modo anche nel file di configurazione, solo che non serve il <CODE>+</CODE> prima di <CODE>set</CODE>. Per invocare il file di configurazione fate così: <CODE>+exec server.cfg</CODE>. <P> <DL> <DT><B>fraglimit</B><DD><P>Numero di frag richiesti prima che la mappa cambi <DT><B>timelimit</B><DD><P>Tempo in minuti che deve passare prima che la mappa cambi <DT><B>hostname</B><DD><P>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. <DT><B>maxclients</B><DD><P>Il massimo numero di giocatori che si può connettere contemporaneamente al server. </DL> <P> 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 ( <A HREF="http://www.planetquake.com/f176">http://www.planetquake.com/f176</A>). <P> <H3>Altre fonti di informazioni sui server</H3> <P> <UL> <LI>La FAQ per i server di Quake II hanno una guida passo-passo per impostare un server di Quake II sotto Linux: <A HREF="http://www.bluesnews.com/faqs/q2s-faq.html">http://www.bluesnews.com/faqs/q2s-faq.html</A> </LI> <LI>Grant Cornelius Reticulus Copernicus Sperry ( <A HREF="mailto:flubber@xmission.com">flubber@xmission.com</A>) ha dei file di configurazione base per i server di Quake II e degli script di avvio a <A HREF="http://www.atomicage.com:80/quake/server/server_cfg/">http://www.atomicage.com:80/quake/server/server_cfg/</A>. </LI> </UL> <P> <H2><A NAME="ss3.11">3.11 Moduli e aggiunte</A> </H2> <P>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 <CODE>quake2</CODE> prima di giocare. <P> <P> <H3>Moduli dal lato client</H3> <P>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. <P>I pacchetti dei moduli dal lato client di solito contengono un nuovo file <CODE>gamei386.so</CODE> e uno o più file <CODE>.pak</CODE>, oltre, forse, ad altri file. Questi nuovi file verranno installati in una sottodirectory della directory di Quake II. Usate <CODE>+set game <EM>mod-dir</EM></CODE> sulla linea di comando per usare il modulo. Rocket Arena 2, ad esempio, si installa in una directory <CODE>arena</CODE>. Per giocare a RA2, inizializzate il client così: <BLOCKQUOTE><CODE> <PRE> ./quake2 +set game arena </PRE> </CODE></BLOCKQUOTE> <P> <H3>Capture the Flag (acchiappabandiera)</H3> <P>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ì: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 mkdir ctf cd ctf unzip -L /wherever/you/put/it/q2ctf102.zip </PRE> </CODE></BLOCKQUOTE> <P>Per giocare a CFT inizializzate Quake II con <CODE>+set game ctf</CODE>. <P> <H3>Moduli dal lato server </H3> <P>Usare un modulo di Quake II su un server non è molto diverso da usarne uno dal lato client. In genere dovrete installare i file <CODE>gamei386.so</CODE> e <CODE>server.cfg</CODE> in una nuova sottodirectory, ed inizializzare il server con <BLOCKQUOTE><CODE> <PRE> ./quake2 +set game XXXX +set dedicated 1 +exec server.cfg </PRE> </CODE></BLOCKQUOTE> dove XXXX è il nome della nuova sottodirectory del modulo. La procedura esatta varia da modulo a modulo, naturalmente. Controllate la documentazione del modulo stesso per avere dettagli specifici. <P> <H3>Sorgenti del gioco</H3> <P>L'intero gioco, con l'eccezione del motore, risiede in una libreria condivisa, <CODE>gamei386.so</CODE>. I moduli di Quake II vengono creati cambiando il contenuto di questo file. Il sorgente C è disponibile gratuitamente (section <A HREF="#quake2-files">Scaricare i file necessari</A> più sopra), e possono essere scaricati e modificati. <P>Dopo che avrete scaricato il sorgente, ecco come cominciare: <P> <BLOCKQUOTE><CODE> <PRE> 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 </PRE> </CODE></BLOCKQUOTE> <P>Vi si presenterà un po' di legalese a cui dovete rispondere <CODE>yes</CODE>, e i sorgenti vengono estratti. Per compilare un nuovo file <CODE>gamei386.so</CODE> da questi ultimi basta un semplice <CODE>make</CODE>. Con questa libreria appena compilata potete giocare a Quake dando: <P> <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 +set game mymod </PRE> </CODE></BLOCKQUOTE> <P>Non è ancora troppo esaltante, dato che quello che avete appena compilato è identico al <CODE>gamei386.so</CODE> "normale", ma questa dovrebbe essere una buona informazione con gli aspiranti autori di moduli. <P> <H3>Pacchetti missione **</H3> <P> <UL> <LI><B>Pacchetto missione 1: The Reckoning</B> 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 <CODE>/mnt/cdrom</CODE> e che Quake II sia installato in <CODE>/usr/local/games/quake2</CODE>: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 cp -r /mnt/cdrom/Data/all/* xatrix/ rm -f xatrix/gamex86.dll </PRE> </CODE></BLOCKQUOTE> Se volete installare le sequenze video: <BLOCKQUOTE><CODE> <PRE> cp -r /mnt/cdrom/Data/max/xatrix/video xatrix </PRE> </CODE></BLOCKQUOTE> Giocate a The Reckoning così: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 +set game xatrix </PRE> </CODE></BLOCKQUOTE> </LI> <LI><B>Pacchetto missione 2: Ground Zero</B> 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 <CODE>/mnt/cdrom</CODE> e che Quake II sia installato in <CODE>/usr/local/games/quake2</CODE>: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 cp -r /mnt/cdrom/Data/all/* rogue/ rm -f rogue/gamex86.dll </PRE> </CODE></BLOCKQUOTE> Se volete installare le sequenze video: <BLOCKQUOTE><CODE> <PRE> cp -r /mnt/cdrom/Data/max/rogue/video rogue </PRE> </CODE></BLOCKQUOTE> Giocate a Ground Zero così: <BLOCKQUOTE><CODE> <PRE> cd /usr/local/games/quake2 ./quake2 +set game rogue </PRE> </CODE></BLOCKQUOTE> </LI> </UL> <P> <HR> <A HREF="Quake-HOWTO-4.html">Avanti</A> <A HREF="Quake-HOWTO-2.html">Indietro</A> <A HREF="Quake-HOWTO.html#toc3">Indice</A> </BODY> </HTML>