All posts by ferocious

Debunking di giochi per Windows

Vorrei sfatare la credenza, assai diffusa, della inferiorità di Linux rispetto a Windows nell’attività ludica col computer. Dopo molti anni passati a smanettare con i sistemi operativi open source, ho deciso di scrivere un debunking del falso mito “Windows è migliore di Linux” perché ritengo che i vecchi pregiudizi siano ormai superati, si diceva e si dice ancora oggi che il sistema operativo di Microsoft ha più videogiochi, possiede API specifiche per programmare il suono e la grafica, c’è il software di controllo (driver) della scheda video con prestazioni eccezionali, e via discorrendo. Non è più così.
Ultimamente vengono fatti sempre più spesso tentativi di ridimensionare la cattiva fama di Linux in questo particolare ambito dell’informatica e la letteratura sull’argomento si sta arricchendo (vd. anche il tag debunking), segno che i tempi cominciano davvero a cambiare.

L'incontro fra Microsoft e Linux
L’incontro fra Microsoft e Linux

Molte persone si lamentano per la scarsità di giochi, la realtà è però diversa, loro vorrebbero poter eseguire i giochi preferiti su Linux. Ci sono quattro semplici soluzioni a questo problema: cercare un titolo equivalente, ma di tipo open source; individuare quelli multi-piattaforma (i cosiddetti cross-platform); provare con Wine; predisporre il computer con il dual boot (il doppio sistema di avvio).
Ogni sistema operativo ha una rispondenza di mezzi ai fini e delle aree d’impiego dove dimostra di essere superiore rispetto alle piattaforme software alternative. Nel progetto originario di Linux non c’era l’obiettivo di avvicinare la gente ai videogiochi perché chiaramente esistevano già le console dedicate. Linux è stato prima un software di nicchia dei geek, poi una scelta obbligata per gli esperti e i professionisti con un’ampia conoscenza di UNIX, Internet e reti di computer; tuttavia oggi i suoi utilizzi sono ben più ampi e gode di crescente popolarità in nuovi campi. Linux viene infatti apprezzato nella computer grafica, nella ricerca scientifica, nel mobile computing, e nello svago – come cercherò di dimostrare.

Quando c’era Loki Software (dal 1998 al 2001), i migliori giochi di Windows venivano “portati” su Linux, erano Quake III Arena, Civilization: Call to Power, Myth II, Soldier of Fortune, Railroad Tycoon II, Descent II e tanti altri. Finalmente una software house faceva investimenti nel settore, al pari di Microsoft o Apple. Distribuiva anche diversi strumenti (poi diventati free software) che semplificavano la procedura di installazione, configurazione o rimozione del gioco stesso: il programma Loki Installer, le librerie SDL e OpenAL (ancora ampiamente utilizzate). Seppur coraggiosa ed originale, l’impresa terminò purtroppo dopo appena tre anni per bancarotta. I PC Games dominavano il mercato e la maggior parte dei giocatori, potendo avviare sia Windows che Linux, era contraria ad acquistare due versioni dello stesso gioco. Inoltre la vendita avveniva per corrispondenza, ad esempio tramite il negozio Tux Games, dato che era difficile trovare i Loki Games sugli scaffali dei supermercati. Comunque un’altra software house, la compagnia Linux Game Publishing, continuò l’impresa riproponendo un discreto numero di videogiochi.

L’ultimo decennio ha visto l’avvento della banda larga e di nuove forme di pagamento per via telematica. Sono quasi scomparsi gli intermediari fra sviluppatori e giocatori, se quest’ultimi non trovano un titolo nei grandi magazzini, provano a comprarlo online e a scaricarlo dal Web. È l’era della content delivery di Steam, Green House, GOG e Direct2Drive.

Qualora Valve rilasciasse Steam per Linux – è più che una congettura, abbiamo visto il primo esemplare del programma dopo lo scoop di Phoronix – si giocherebbe una partita alla pari con Windows. Molti altri giocatori passerebbero da Windows a Linux sapendo che i popolari Half Life, Counter-Strike, Team Fortress sono diventati cross-platform.
Per il momento però, se escludiamo l’idea di scegliere i giochi open source equiparabili ai titoli che ho appena citato, dobbiamo usare Wine. In poche parole, e senza entrare nel merito del funzionamento del programma, eseguiamo le applicazioni Windows su Linux, FreeBSD e Mac OSX. Questo sistema presenta ulteriori vantaggi: Wine è economico, infatti il suo costo è nullo (free) rispetto ai cento euro che occorrono per acquistare una licenza di Microsoft Windows; si scarica dalla Rete sotto forma di codice sorgente o di pacchetto con il codice binario pronto all’uso; ha una elevata compatibilità con Windows, dalla versione 3.1 alla recente Windows 7; è ottimo in termini di prestazioni.

Tanto il neofita quanto l’hardcore gamer apprezzano anche CrossOver Games e Cedega. Questi due software sono basati su Wine e forniscono una GUI (Graphic User Interface) che facilita sia l’installazione che la configurazione di numerosi giochi; l’utente può anche usufruire dell’assistenza di personale qualificato in caso di difficoltà con le operazioni. Da un confronto con Wine e Windows stesso, Crossover e Cedega hanno mostrato un livello di efficienza pari o superiore in molti test. Ma la qualità di questi software ha un prezzo che è meglio pagare quando Wine fa le bizze e non abbiamo tempo per aspettare una soluzione oppure una patch. In realtà con i videogiochi più gettonati fila tutto liscio. Di recente ho registrato un account di World of Warcraft e ho potuto constatare quanto sia semplice e veloce predisporre il necessario per l’avvio della partita online; riporto ulteriori esempi dagli esiti soddisfacenti: Guild Wars, GTA, Fallaout, Runes of Magic, Medal of Honor, Call of Duty, Battlefield 1942. Wine amplia le opportunità di gioco in Linux, ma non fa i miracoli. Prima di acquistare qualche cosa è bene informarsi se dà problemi, per esempio nella lista AppDB il software funzionante viene contrassegnato con “medaglie” di platino, oro o argento.

Un elenco di giochi è presente anche in Playonlinux. Gli utenti di questo programma usano i menu e le icone di una interfaccia grafica per scorrere la lista di videogiochi (o applicazioni) che desiderano provare. Alla base c’è un insieme di istruzioni, scritte nei linguaggi Python e Bash, che passate a Wine ne automatizzano i processi di installazione, configurazione o rimozione. Quando eventuali bug vengono scoperti, oppure una nuova applicazione supera i test, gli sviluppatori rilasciano un aggiornamento. Con Playonlinux sono finiti i tempi cupi passati a cercare nella Rete le soluzioni ai bug, le patch o i parametri di Wine.

Schermata di Playonlinux
Schermata di Playonlinux

L’hardware di un PC deve fornire una potenza adeguata al gioco, che il sistema sia Windows o Linux è indifferente. Un computer costruito con la componentistica di dieci anni fa a malapena riesce ad eseguire Enemy Territory: Quake Wars; la CPU Athlon XP 1500+ e la scheda video Radeon 9700 sono tipici esempi di pezzi troppo vecchi per essere montati oggigiorno nei cabinet, a meno che si voglia usare solo giochi e applicazioni altrettanto vecchie, mi riferisco a Counter-Strike, Quake 3, ecc. Oltre al requisito hardware/software, c’è un altro aspetto da considerare: l’assemblaggio di una “macchina da gioco” Linux deve cominciare con la ricerca delle componenti compatibili perché i prodotti sono garantiti in genere per Windows. Prendiamo la scheda video, è un elemento decisivo nella composizione dell’immagine sullo schermo che deve funzionare sempre ai massimi livelli, pertanto prima di acquistarla bisogna svolgere una opportuna verifica su Internet, magari chiedendo l’opinione di altri utenti nei forum: la scheda deve servire perfettamente il sistema operativo. Intel, ATI e nVidia sono le principali aziende che progettano GPU (Graphic Processing Unit, l’unità centrale di elaborazione della grafica) per le schede video; il programma che controlla le funzioni disponibili a livello hardware (il driver) è unico, in genere, per l’intera gamma di modelli: abbiamo quindi il Catalyst per le Radeon di ATI e l’UDA per le GeForce di nVidia; tralascio quelli open source perché il livello di prestazioni che possono raggiungere con i giochi è purtroppo inferiore.

È il momento di fare alcuni esempi concreti, cominciando da un gioco gratuito, d’azione e cross-platform che attualmente spopola su Internet.

Quake Live

Quake Live è un First Person Shooter (letteralmente tiratore in prima persona, spesso abbreviato con FPS) che ridà vita al classico e arcinoto Quake 3 Arena di dieci anni fa, sia modificando il motore grafico del gioco sia introducendo una serie di nuove funzioni: l’integrazione col web browser, le statistiche persistenti, il medagliere e un sistema per confrontare i livelli di esperienza dei giocatori, detti gladiatori, che si scontrano in un’arena attrezzata di armi, munizioni, scudi, potenziatori ed energizzanti.

Quake Live dentro il web browser
Quake Live dentro il web browser

Runes of Magic

Ci sono anche i “giochi di ruolo”, conosciuti come RPG (Role Player Game). Runes of Magic è un clone, in parte gratuito, di World of Warcraft; con questo non voglio dire che sia fatto male, tutt’altro! Su Linux “gira” abbastanza bene, ma l’installazione richiede molta pazienza perché viene distribuito con due archivi di notevoli dimensioni (4GB ciascuno). Senza un computer potente è meglio lasciar perdere questo gioco. Io l’ho provato su Ubuntu con l’ultima versione di Wine (1.2 RC2) e in Rete il sistema mostrava dei limiti evidenti nel gestire i luoghi affollati.

Heroes of Newerth

Preferisco catalogare Heroes of Newerth (HON) tra i giochi di strategia, tuttavia possiede alcune caratteristiche tipiche del gioco di ruolo: l’eroe ottiene attacchi speciali e vari attributi superando venticinque livelli di esperienza; inoltre può rafforzarsi acquistando gadget, armi e armature nei negozi. La classe del personaggio è basata sulla forza, l’intelligenza o l’agilità. La scelta deve essere fatta con giudizio, in modo che ci sia compensazione fra i cinque eroi della squadra. L’equilibrio rischia di spezzarsi facilmente quando i giocatori portano avanti azioni suicide e senza tatticismo –– nel gergo del gioco si dice “alimentare il nemico”. Per tutti è fondamentale guadagnare i soldi uccidendo i PNG o distruggendo le torri dell’avversario che difendono l’obiettivo del gioco: l’altare al centro della base.

HON: assalto alla torre
HON: assalto alla torre

Le grandi software house (Microsoft e Apple) dominano il mercato dei videogiochi perché fanno grandi investimenti per i sistemi operativi Windows e OS X, ma in Linux non mancano le opportunità di giocare e il programma Wine permette di arrivare ai titoli che oggi non sono cross-platform. Il sistema dual-boot potrebbe essere l’alternativa: quando Windows (oppure OS X) e Linux sono installati sulla stessa macchina, abbiamo praticamente tutto il “parco giochi” per PC a nostra disposizione e dato che spesso ci consegnano XP, Vista o Seven all’acquisto di un computer, sarebbe ingenuo non sfruttarli per giocare ai titoli che non si possono ancora eseguire su Linux.

 

Hard Disk esterno con Icy Box

Pochi giorni fa si è guastato il mio computer portatile Asus che usavo da almeno tre anni, in attività di vario tipo. Ho effettuato un controllo alla sua parte elettronica, ma non c’era più nulla da fare. Si è surriscaldato durante queste giornate afose di luglio; già altri proprietari del modello A6Tc hanno subìto prima di me lo stesso danno. Probabilmente per un errore di progettazione la scheda video ha raggiunto temperature elevate, bruciandosi.

Grazie alla modularità dei laptop moderni, certi elementi possono essere sostituiti in caso di rottura con altri più potenti o recuperati dai sistemi mal funzionanti. Mi dispiaceva rinunciare a 80 GB del disco rigido installato nel portatile, quello spazio poteva servirmi come memoria ausiliaria per il salvataggio di documenti, musiche, foto e file multimediali. Dovevo riciclare questa vecchia componente acquistando un box esterno.

Quasi sempre si tratta di unità da 2,5” di larghezza, con uno spessore molto piccolo, al fine di ingombrare il meno possibile. La funzione principale del dispositivo Icy Box B-220U-Wh è di collegare un disco rigido da 2,5” con interfaccia IDE a un computer via cavo seriale USB. Non solo permette di recuperare i vecchi dischi da portatili in disuso, ma si rivela anche un accessorio molto comodo in periodi di vacanze, avendo una trasportabilità eccezionale: è leggerissimo e si infila facilmente in un marsupio.

Il box acceso
Il box acceso

Imballaggio

Sull’involucro di cartone spiccano i grandi caratteri bianchi su sfondo nero usati per il marchio del fabbricante, la foto del dispositivo e un corpo di donna stilizzato che rammenta la leggerezza di questo prodotto. La confezione presenta inoltre una finestra nel punto dove il dispositivo è stato imballato: essa permette all’acquirente di farsi una chiara idea delle dimensioni dell’oggetto rispetto alla scatola che è molto più grande.
All’interno abbiamo la guida cartacea per il montaggio, un CD con il software di controllo e backup per Windows e alcuni accessori. Le spiegazioni sono tradotte in varie lingue, c’è anche l’italiano. I programmi sono superflui, se si intende adoperare l’Icy Box in un ambiente Linux. Invece la custodia di similpelle, il cavo USB e persino il cacciavite per il serraggio delle viti sono veramente utili.

Caratteristiche del prodotto

Le caratteristiche salienti del dispositivo riportate dal fabbricante sono essenzialmente quattro: un’eccellente dissipazione del calore fornita dalla base in alluminio; le dimensioni ridotte permettono un facile trasporto; un collegamento USB 2.0 da 420Mbit/s (60MB/s) che procura l’alimentazione (non c’è necessità di un alimentatore supplementare); supporta dischi da 2,5” alti fino a 9mm, ossia la maggioranza installata nei portatili di marca.

Montaggio e manutenzione

Poiché non sono richieste competenze particolari, il montaggio è alla portata di tutti; talmente facile e intuitivo che si può trascurare il manuale. Prima di tutto bisogna aprire il box, separando il coperchio bianco dalla base metallica. Poi si attacca il disco rigido al pettine PATA saldato sulla piccola basetta, dove trovano posto anche il controller , i tre led di segnalazione e la presa di alimentazione/trasmissione dati. Sul lato interno del coperchio ci sono le sedi per il circuito elettronico, esse servono anche per fissare fra loro i pezzi del box tramite due viti. La superficie esterna del dissipatore è protetta da una pellicola di plastica contro i graffi: può essere strappata dopo l’avvitamento delle viti al coperchio. L’assemblaggio si sbriga in dieci minuti, dopodiché basta allacciare la nuova periferica al computer con il cavo USB e accedere alla memoria di massa tramite le funzioni del sistema operativo. La superficie esterna si pulisce da impronte e polvere con un panno di “microfibra” che è impiegata spesso su altri oggetti domestici (CD, occhiali, ecc.), con risultati soddisfacenti.

Il Seagate Momentous 5400.2 aveva un laccio che agevolava l’estrazione dal suo alloggiamento nel portatile, ma ostacolava in questo caso la chiusura della scatoletta, per cui l’ho rimosso con un paio di forbici.

Momentous 5400.2
Momentous 5400.2

Per la progettazione della componente B-220U-Wh, Icy Box ha tenuto conto di tre principali funzionalità che espongo di seguito:

  1. L’impiego di materiali particolari (plastica e alluminio) per smorzare le vibrazioni del disco rigido
  2.  L’isolamento interno del disco rigido onde evitare il passaggio di eventuali correnti elettriche verso l’esterno.
  3. Fornire informazioni all’utente tramite tre led blu di segnalazione dello stato di accensione e utilizzo del dispositivo.

È stato prodotto un dispositivo maneggevole e leggero con un unico difetto: il chassis è difficile da riaprire senza un cacciavite, e si rischia di graffiare la superficie; il serraggio viene fatto solo con due viti su un lato e un incastro sull’altro.
Ho rilevato la velocità di trasmissione dei dati con il programma hdparm per Linux e l’ho poi verificato con il file manager Midnight Commander, trasferendo un file video di grosse dimensioni. Mentre il fabbricante prometteva picchi di 60MB/s, il Seagate Momentous 5400.2 lavorava a 30MB/s che è un valore molto inferiore rispetto alla media dei dischi SATA (70MB/s). Personalmente li ritengo sufficienti per la maggior parte delle applicazioni, ma non consiglio di utilizzare questa unità di accesso per giocare. In passato mi è capitato di mettere i Videogiochi su un hard disk SATA esterno che trasferiva informazioni via USB a 12MB/s, ma i grossi flussi di dati generavano tempi di caricamento appena accettabili.

La confezione
La confezione

Giganti del software a confronto

La storia di Unix ha qualcosa di sorprendente: Thompson e Ritchie iniziarono a svilupparlo nel 1969 nei Bell’s Lab e dopo quasi quarant’anni non si contano nemmeno più le sue varianti: System V, Xenix, BSD, Irix, SunOS, NetBSD, FreeBSD, e molti altri. Anche se alla fine tutti questi sistemi operativi discendono da appena due o tre tipi di Unix, oggi si notano ancora numerose caratteristiche in comune con l’originale di AT & T.
Soltanto negli ultimi tempi Linux si è affermato tra i sistemi operativi di fascia home computing, mentre FreeBSD ha catalizzato maggiormente l’interesse dei professionisti dell’high tech. Nonostante questo, spinto soprattutto dalla curiosità, ho provato l’ultima versione di FreeBSD (la 7.1) con i videogiochi, l’aspetto che prediligo di più di un computer. Purtroppo, i miei titoli preferiti non hanno funzionato. Ho rinunciato, per problemi vari, a giocare con Quake Wars, Quake 4 e Doom 3.

Pur senza svolgere un benchmark comparativo approfondito, ho potuto farmi una idea delle principali proprietà del sistema. Ora, non me la sento di dire se in generale FreeBSD sia migliore di Linux o viceversa, come dice Matthew D. Fuller nel suo blog: “siamo tutti d’accordo nel considerare Unix la scelta migliore, ma abbiamo idee divergenti su quale usare”. Entrambi hanno eccellenti qualità nell’ambito delle attività di Rete (networking), possono “girare” su molte architetture hardware in commercio, e vengono adoperati quando la sicurezza diventa un fattore critico per la salvaguardia delle informazioni o delle operazioni di un server. Sono pertanto la soluzione ideale per Lanparty o partite in multiplayer.

Spesso ci si riferisce con Linux solo al kernel (il nucleo, dall’inglese) del sistema operativo, mentre il nome FreeBSD viene dato all’insieme dei software che girano sul calcolatore sotto la licenza BSD. Un’altra differenza, abbastanza evidente, si riscontra nel ciclo di sviluppo: decentralizzato su Linux, centralizzato in FreeBSD. Il prodotto finale è di solito una distribuzione Linux che combina il kernel, gli strumenti di produttività, un ambiente desktop e altre applicazioni, mediante un gestore di pacchetti (deb, rpm, tar, ecc.); al contrario gli sviluppatori di FreeBSD lavorano sempre sullo stesso gruppo di programmi (base system) che consegnano aggiornato e pronto per l’installazione. Al massimo esistono delle varianti che soddisfano i gusti di determinate utenze di computer, ad esempio l’utente occasionale (casual user) di PC-BSD. Le maggiori distribuzioni Linux sono Ubuntu, OpenSUSE e Fedora. I derivati di FreeBSD più famosi sono PC-BSD, Mac OS X, m0n0wall.

BSD e GNU sono due licenze di utilizzo dei programmi, fra le tante disponibili nel panorama del software di tipo open source. Rispetto alle alternative, sono state preferite da una ampia base di sviluppatori fervidamente convinti dei vantaggi che la ridistribuzione del codice sorgente può portare alla società.

FreeBSD 7.1

Questa era la mia prima installazione di FreeBSD e pertanto temevo di commettere qualche pasticcio; durante la procedura tenevo pronto sulla scrivania un computer portatile collegato al sito Internet http://www.freebsd.org, per evitare di bloccarmi in passaggi poco chiari. La grafica del programma di setup (sysinstall), realizzata con la libreria curses, mi ha lasciato perplesso fin dall’inizio. Però è andato tutto liscio sotto ogni aspetto: scelta della lingua, configurazione della tastiera, impostazione della scheda e dei servizi di rete, selezione dei pacchetti software da un elenco di categorie, e così via. Io poi avevo già creato una partizione di tipo FreeBSD con fdisk di Ubuntu, quindi credo di aver semplificato il procedimento. Sapevo infatti che il “partizionamento” faceva riferimento alle unità logiche che si usano raramente in Linux.

Inizialmente volevo svolgere un benchmark con Phoronix Test Suite, poi ho avuto un ripensamento perché non riuscivo a fare la maggior parte dei test previsti. Visto l’insuccesso, ho ripiegato su un altro metodo, forse laborioso ma efficace: l’esecuzione del timedemo in Enemy Territory. Mi serviva la registrazione (demo) di una partita, da ripetere sia su Linux che FreeBSD con alcune opzioni per il calcolo del frame rate medio di ciascun sistema. Non immaginavo che dal confronto potesse risultare una differenza di prestazioni quasi insignificante. A 800×600 pixels c’era uno scarto di appena quattro frame per secondo e raggiunta la risoluzione di 1280×1024, con un alto livello di dettaglio dell’immagine, sia Linux che FreeBSD facevano cento frame al secondo. Questi dati dovrebbero incoraggiare anche i più scettici a trasferire Enemy Territory da un sistema all’altro. Di solito su FreeBSD i videogame per Linux sono eseguiti con un emulatore (linuxator) che il giocatore, avido come è di tempi di risposta rapidi, potrebbe giudicare male; ma in questo caso non ha penalizzato l’elaborazione in modo marcato. Il computer utilizzato per la prova era il mio PC “assemblato” con la seguente componentistica, già ampiamente descritta in passato:

  • CPU Amd Athlon 64 X2 4800+
  • Mobo Gigabyte GA-M57SLI-S4
  • Kingston KVR800D2N5 DDR2 800Mhz, 1024MB * 2
  • Hard Disk Western Digital Caviar 80GB, 7200 rpm, 8MB di cache
  • Scheda video XFX Nvidia GeForce 8600 GTS, 256MB DDR2

Il software preso in esame invece era:

  • Linux Ubuntu 8.10 (x86), Xorg 1.5.2, Nvidia 180.44
  • FreeBSD 7.1 (x86), Linuxator con Linux From Scratch 6.4, Xorg 1.5, Nvidia 180.44

Spesso gli utenti tornano a usare Linux dopo un breve periodo di prova di FreeBSD. Per varie ragioni: i giochi commerciali sono una rarità, devono installare un emulatore (linuxator oppure vmware), non tutti vengono eseguiti meglio che in Linux. Ma soprattutto hanno difficoltà a trovare altri giocatori, ai quali chiedere aiuto o consigli.

 

Panzer sulla strada per Mosca

Giocai a un gioco molto simile a Panzer General nel 1988. Lo trovai allegato a una rivista per il computer C64. Si chiamava “Obiettivo Mosca”. In realtà il titolo originale era “Road to Moscow”, ma a quei tempi la casa editrice Logica 2000 faceva rimuovere da esperti programmatori la protezione ai videogiochi per ridistribuirli nelle edicole con nuovi nomi e prezzi più bassi. Panzer General fu pubblicato nel 1994 da Strategic Simulations. Riscosse subito un enorme successo fra gli utenti del sistema MS-DOS; ottenne anche un Origin Awards come miglior gioco di strategia e simulazione. Si trattava, essenzialmente, di un wargame a turni con regole analoghe a quelle degli scacchi: il giocatore muoveva i propri pezzi sullo scacchiere quando gli toccava, cercando di limitare le perdite o di mettere in trappola l’avversario.
Nonostante siano passati oltre dieci anni, Panzer General secondo me esercita ancora una forte attrattiva, perciò voglio riproporlo. Certo potrebbe sembrarci banale se lo confrontiamo con i titoli recenti costruiti con la grafica 3D, la musica e gli effetti sonori innovativi permessi dalle nuove tecnologie. Comunque, ho passato ugualmente le ultime due settimane a ideare piani, spostare pedine e contenere le minacce del nemico come un vero Generale. Il gioco resta divertente, inoltre segue fedelmente alcuni avvenimenti della seconda guerra mondiale. Ripassare un po’ di storia in questo modo, non guasta: tra gli scenari previsti spiccano l’invasione della Polonia, l’operazione Barbarossa, la caduta di Berlino, la campagna d’Africa di Rommel, soprannominato la volpe del deserto.

Bisogna affrontare un altro giocatore o il computer su 38 scenari di battaglie sia storiche che immaginarie del periodo compreso fra gli anni 1939 e 1945, presi singolarmente o all’interno di una campagna di guerra (sono le due modalità di gioco). Durante una “campagna”, si assume il comando supremo delle armate tedesche, composte da unità di vario tipo: forze di terra (Heer), aeree (Luftwaffe) e navali (Kriegsmarine). In questo gioco le unità hanno nomi storici e riportano informazioni accurate; guadagnano esperienza, scontro dopo scontro diventano più forti. Ogni missione va portata a termine entro un certo numero di turni senza trascurare l’obiettivo: distruggere tutte le unità dell’avversario, oppure occupare le aree strategiche (città, aeroporti, porti). Se si raggiunge lo scopo col massimo numero di mosse, la vittoria si dice minore, altrimenti è maggiore, quindi schiacciante. C’è una disfatta quando tutte le unità vengono distrutte, oppure scade il tempo concesso per la guerra: siamo tacciati di incompetenza al comando e non c’è altra possibilità che riprendere la campagna dall’inizio. La strategia è una disciplina; qui si fanno i conti con diversi fattori importanti governati dalla IA: le condizioni meteo, la difesa eccezionale, il fuoco difensivo, l’attacco di sorpresa, i rifornimenti ai mezzi o il rinforzo delle truppe.

Lgeneral: Operazione Barbarossa
Lgeneral: Operazione Barbarossa

Il progetto Lgeneral cerca di rilanciare e aggiornare Panzer General. L’engine utilizza gli scenari 2D originali, quelli presenti sui dischi distribuiti da Stratecic Simulations. Oggi sono pure raccolti online in un archivio tar, e l’autore di Lgeneral ci tiene a precisare che il materiale ancora è sotto copyright di SSI, ma utilizzabili. Le due versioni del gioco si differenziano soltanto per poche modifiche alle regole. LGeneral non è perfetto sotto tutti i punti di vista: si può migliorarlo aggiungendo un menù per la selezione delle unità, i messaggi di aiuto o segnalazione, ad esempio quando soppraggiungono i rinforzi; bisogna correggere gli svarioni della IA, troppo evidenti nelle battaglie navali tra sommergibili; la IA del gioco schiera le unità sullo scacchiere nelle solite posizioni prevedibili. Non resta altro da fare che provare personalmente LGeneral, per di più senza troppo impegno, dato che non serve cercare un emulatore e configurarlo.

Linux e il 3D Benchmarking

L’analisi delle prestazioni di un elaboratore consiste nel misurare le capacità di calcolo con un insieme di programmi (carico di lavoro, detto workload) particolari. “Nella maggior parte dei casi le prestazioni sono l’attributo più importante nell’orientare la scelta fra diversi elaboratori disponibili” (Patterson e Hennessy, Struttura e progetto dei calcolatori, pag. 37). Certamente la misura da sola non suggerisce alcuna indicazione utile all’acquirente. Occorre ripeterla fra varie macchine, cioè svolgere un confronto e poi riferire i risultanti. Studiando questi dati, nel corso degli anni, i progettisti hanno perfezionato gli elementi del personal computer che davano maggiori prestazioni in certe aree piuttosto che in altre. L’acceleratore grafico (GPU) ha sostituito la CPU nei calcoli geometrici e si è specializzato sul rendering delle scene 3D. La tecnologia SLI (o l’alternativa Crossfire), di recente invenzione, promette di raddoppiare o triplicare (quasi), a seconda del numero di GPU messe in parallelo, le prestazioni dell’elaboratore con le applicazioni 3D che sono prevalentemente giochi basati su OpenGL o DirectX. Gli ingegneri hanno aggiunto poi alla GPU le istruzioni macchina per risolvere complicate formule di matematica e fisica, mi riferisco all’engine CUDA di nVidia. Una valutazione accurata sull’efficienza del sistema hardware e software viene svolta con un gruppo di benchmark. Si tratta spesso di programmi individuati fra quelli che l’utente utilizza abitualmente (Phoronix Test Suite), oppure sono applicazioni specifiche che esaminano determinate componenti (CPU2006, RAMSpeed, ecc). Oggi la grafica 3D richiede più potenza e memoria di qualsiasi altro programma per PC. Quando usiamo i videogiochi come carico di lavoro sul nostro banco di prova, otteniamo una previsione molto attendibile delle prestazioni del calcolatore. Il metodo è semplice. Possiamo valutare l’affidabilità del nostro computer partendo dai seguenti giochi: Quake III, Unreal Tournament 4, Doom 3, Enemy Territory, Quake Wars, Savage 2, Nexuiz, perché li troviamo a pagamento, gratuitamente o come demo nel World Wide Web e con uno sforzo minimo riusciamo a installarli in Linux.

Quake Wars

Quake Wars si adatta bene all’analisi delle prestazioni. Il suo motore grafico è derivato da Doom 3 e incorpora la tecnologia denominata MegaTexture che migliora indubbiamente l’aspetto del gioco negli spazi aperti della mappa. Possiamo adoperare, per il nostro scopo, la versione di prova oppure quella commerciale. Prima dobbiamo scegliere la mappa, quindi registrare una partita da Internet e poi ripetere la registrazione con una opzione determinata. Al termine dell’operazione, il motore grafico calcola il frame rate dividendo il numero totale di immagini che compongono l’animazione con il tempo, espresso in secondi, impiegato dalla macchina fisica per visualizzarle. Il risultato esprime l’effettiva prestazione della scheda grafica e del sottosistema hardware/software. Il valore suggerisce anche a quale risoluzione video possiamo giocare senza perdere troppa qualità nell’immagine.

Scarica uno dei pacchetti messi a disposizione per Linux

  1. Quake Wars demo v2.0 – Contiene la mappa Valley
  2. Quake Wars 1.5 Full – Richiede il DVD

Per registrare una partita, collegati a un server e premi il tasto F12. Troverai il file della registrazione nella directory:

$HOME/.etqw/base/demos

Dalla console del gioco esegui i seguenti comandi in successione:

com_unlock_FPS 1
com_unlock_timingMethod 0
com_showFPS 1
timeNetDemo FILENAME.ndm
condump FILENAME.log

Puoi mettere questi comandi, preceduti dalla parola chiave seta, in un file di testo chiamato NOMEFILE.cfg:

seta com_unlock_FPS 1
seta com_unlock_timingMethod 0
seta com_showFPS 1
timeNetDemo FILENAME.ndm (* questo senza seta *)

Poi dalla console devi soltanto invocarlo con: exec NOMEFILE.cfg

Non dimenticare la riga di comando di Unix che abilita la console (se disabilitata):

etqw +set com_AllowConsole 1