@database "JeaWorldWar.guide" @author "Gianfranco L'Abbate" @(c) "Copyright © 1999 JEASoftware" @$VER: JeaWorldWar.guide 1.095 (24-02-99) @node MAIN @title "JeaWorldWar 1.095" JeaWorldWar 1.095 (BETA-TESTING) Un programma di Gianfranco L'Abbate JEASoftware © 1999 24/02/1999 @{" Diritti " link Diritti} @{" Registrazione e limitazioni " link Registrazione} @{" Condizioni di Distribuzione " link Distribuzione} @{" Requisiti hardware e software " link Requisiti} @{" Regole di JeaWorldWar " link Regole} @{" Perchè ho scritto JeaWorldWar " link Perche} @{" Linguaggio e debiti software " link Linguaggio} @{" Installazione " link Installazione} @{" Uso del programma " link Uso} @{" Punteggio dei giocatori " link classifica} @{" In futuro vorrei aggiungere " link futuro} @{" Bugs e problemi conosciuti " link Bugs} @{" Uso del file azioni.dat " link azioni} @{" Cambiamenti " link cambiamenti} @{" Siate buoni... se potete! " link buoni} @{" Ringraziamenti vari " link Vari} @{" FAQ " link domande} @{" Come è stato realizzato " link realizzato} @{" La mia configurazione attuale " link configurazione} @{" Come contattare l'Autore " link autore} @endnode @node Diritti @title " Diritti " Questo programma è ShareWare. Può essere liberamente copiato e distribuito, con l'unica limitazione di non variare in alcun modo la documentazione e i file distribuiti con esso. Non sono permesse modifiche del software, richieste di denaro per la distribuzione della presente versione nè l'uso commerciale. Nessuno all'infuori di me può chiedere denaro per questo programma. Ovviamente ciò implica che questo programma non può essere incluso in prodotti commerciali senza l'autorizzazione scritta da parte mia. Questo programma può invece essere incluso su floppy e CD-ROM non commerciali come i Fish Disk e rispettive versioni su CD. Eventuali pubblicazioni su riviste specializzate del settore devono essere obbligatoriamente comunicate all'@{" Autore " link autore }. In nessun caso l'autore può essere ritenuto responsabile di eventuali danni o errori dovuti all'uso (corretto o incorretto) del programma. @endnode @node Registrazione @title " Registrazione e limitazioni " Registrazione del programma. La versione ShareWare di questo programma ha (ovviamente) qualche limitazione: - delay di 1 secondo su ogni azione di giocatore umano - inibizione dello spostamento Se la versione demo di questo programma è di vostro gradimento potreste prendere in considerazione l'eventualità di diventare utenti registrati. Cio' significa che potrete usufruire della registrazione per ottenere sconti sulle versioni future del programma (i cosiddetti Upgrade, aggiornamenti periodici del software), e proporre migliorie ed idee da implementare in futuro. Gli utenti registrati hanno come unico obbligo verso il programmatore quello di non duplicare MAI la loro versione registrata del programma. La quota di registrazione e' di £. 10.000 (15.000 se risiedete fuori dall'Italia). Tale quota deve essere inviata all'autore a mezzo vaglia postale. Dovete stampare o ricopiare su un foglio il file @{" Modulo_Registrazione " link Modulo_registrazione}, quindi compilarlo e spedirlo assieme al vaglia con i vostri dati (nella parte denominata Comunicazioni del mittente scrivete "Registrazione a JeaWorldWar 1.0"). Evitate di inviare la somma richiesta inserendola direttamente in una busta chiusa, tale metodo non sicuro e la busta potrebbe non arrivare mai a destinazione. Non si accettano francobolli ne altra merce di scambio. Inviate solo e soltanto lire ITALIANE! Se siete autori di altro software ShareWare e siete disposti a scambiare la registrazione di JeaWorldWar con quella del vostro software potete contattarmi telefonicamente (se parlate italiano...) o per lettera. Alla ricezione della somma suddetta vi verra' inviata l'ultima versione completa del programma. @endnode @node Distribuzione @title " Distribuzione " File di distribuzione La distribuzione di questo prodotto deve contenere i seguenti file: - JeaWorldWar1.095Demo - JeaWorldWar1.095DemoIta - JeaWorldWar.ITA.guide - JeaWorldWar.ENG.guide - pictures/carte.iff - pictures/mappa10.iff - samples/exp - samples/acqua - samples/yes - samples/ohlala - samples/move - samples/cowbell - samples/continente - samples/bell - samples/uh-oh @endnode @node Requisiti @title " Requisiti " Requisiti minimi: Amiga500 (espanso ad 1 mega) con OS 2.0 Una volta lanciato, il programma occupa circa 700 Kbytes. Il programma fa uso della GadTools.library, quindi questa deve risiedere nella directory Libs (potete reperirla molto facilmente ovunque). Il programma è stato testato su Amiga 500 (con espansione ad 1 mega ed OS 2.0) e Amiga 1200. Su Amiga 500 con OS 2.0 ma senza HD vi consiglio di disabilitare (nella finestra di configurazione partita) l'opzione per la creazione del file azioni.dat (@{" Uso del file azioni.dat " link Azioni}), altrimenti per riuscire a giocare dovreste inserire un floppy abilitato in scrittura, e ad ogni azione del gioco, il programma andrà a scrivere sul floppy, causando dei notevoli rallentamenti nel gioco. @endnode @node Perche @title " Perchè questo programma " Perchè ho scritto questo programma Un amico nel 1990 mi ha fatto conoscere un celeberrimo gioco strategico da tavola, un gioco talmente affascinante, un micidiale cocktail di strategia, fortuna e regole particolari. All'epoca non possedevo un computer mio, ma sapevo già programmare in Basic sul C64 di un'altro amico. Dato che non ero molto bravo ancora nel gioco contro i miei amici (ho impiegato 18 partite prima di riuscire a vincerne una... colpa mia o colpa degli avversari tropppo in gamba?) decisi di provare a scrivere questo gioco, in modo da allenarmi contro avversari computerizzati. Mi resi però subito conto della impresa titanica in cui mi ero imbarcato: non si trattava certo di un gioco semplice, ci sono tantissime variabili di cui tener conto, ed inoltre dovevo creare l'intelligenza artificiale per gli avversari. Se ci penso adesso credo di essere stato molto incosciente e di essermi buttato in un progetto che richiedeva molto di più rispetto alla mia esperienza di programmazione. Ma... chi l'ha dura la vince, e così, in una continua altalena di periodi di scoraggiamento a periodi di entusiasmo, siamo arrivati ad oggi, non senza qualche trauma tecnologico (nel '93 finalmente comprai un mio C64, qualche mese dopo passai all'Amiga 500 e all'AmigaBasic, in seguito all'AMOS, poi al linguaggio E e da circa 9 mesi ho un Amiga 1200, a cui da pochi giorni ho aggiunto un lettore CD-Rom). Probabilmente qualcuno di voi osserverà che versioni di quel famoso gioco per Amiga ne sono già state scritte, io ne ho 2, in entrambe però il gioco ha delle differenze rispetto all'originale, ed inoltre la strategia del computer non mi sembra molto efficace. Questa versione invece è praticamente la trasposizione letterale del gioco (salvo qualche piccola eccezione che presto diventerà opzionale) ed inoltre sto introducendo tutte le strategie che mi vengono in mente, in modo da rendere gli avversari computerizzati sufficientemente bravi. Posso dire di essere abbastanza soddisfatto del risultato, ma ho ancora molte cose che posso migliorare, per cui credo che continuerò a dedicare molto del mio tempo a questo scopo. @endnode @node Linguaggio @title " Linguaggio e debiti software " Linguaggio usato e debiti... software! JeaWorldWar1.0 è scritto in E, quindi complimenti a Wouter van Oortmerssen per il bellissimo linguaggio che ha creato e a tutta la nutrita comunità di programmatori in questo linguaggio, sono davvero bravissimi. A tal proposito devo anche ammettere un'altra cosa, molto piu' importante della precedente: non tutto il programma è farina del mio sacco, si avvale anzi di 2 brevi routine di Michael Zucchi, da me modificate, una per caricare un immagine IFF in una finestra e l'altra per il play dei samples. Onore al merito, grazie Michael, mi piacerebbe tanto conoscere un programmatore così in gamba. @endnode @node Installazione @title " Installazione " Installazione Copiate il cassetto JWW dove preferite, poi create un assign indicando il path completo, ovvero il percorso ove risiede il programma eseguibile, es.: Assign JWW: HD1:Giochi/JWW poi aprite il cassetto e lanciate il programma. @endnode @node Uso @title " Come usare il programma " Come usare il programma Il programma apre uno schermo privato ed una finestra principale che lo copre per intero, al cui interno poi si aprirà una finestra di configurazione del gioco. Qui potrete scegliere se iniziare una nuova partita, caricare una interrotta in precedenza oppure uscire dal gioco, scegliere il numero di giocatori, il loro tipo (se si tratta di giocatori computerizzati o umani), il loro colore, creare una sequenza casuale dei giocatori, scegliere se ascoltare gli effetti @{" Audio " link samples}, il numero di samples che devono essere suonati per ogni attacco (1 sample significa che suona un solo sample, Multi-samples suona il numero di armate coinvolte nell'attacco), se visualizzare i dadi, se vedere i messaggi, se avere o no un effetto flash sugli stati convolti in operazioni di attacco, se creare o meno il file @{" azioni.dat " link Azioni}. Chiudendo questa finestra avrà inizio il gioco vero e proprio (per chi non conosca il gioco originale, consiglierei la lettura di @{" Regole di JeaWorldWar " link regole}). Apparirà quindi la finestra di gioco (occupa l'intero schermo del Workbench) in cui è inserito il planisfero, a destra ci sono i pulsanti per le azioni dei giocatori umani, in basso gli indicatori della sequenza dei giocatori, della distribuzione delle carte, 3 box in cui appaiono i messaggi relativi alle azioni dei vari giocatori, del numero di turno e del tempo di gioco. All'inizio del gioco i territori vengono distribuiti automaticamente dal computer, il quale provvede anche a posizionare una bandierina (del colore assegnato al giocatore) in cui è visibile un numero. Tale numero rappresenta il numero di armate presenti su quel territorio. Vorrei farvi notare che è possibile avere su ogni territorio un numero smisurato di armate (si tratta di una variabile a 32 bit... eliminate i numeri negativi e fate voi i calcoli per sapere qual'è il limite teorico... poi fatemi sapere!), ma se superate le 999 unità non potrete vedere sul video il numero reale di armate. Ciò è dovuto alla scarsità di spazio a disposizione, comunque penso che se arrivate a oltre 1000 armate siete troppo difensivisti per questo gioco (oppure siete dei beta-testers che cercano di mandare in palla il programma...) I pulsanti invece vengono abilitati e disabilitati solo se gioca almeno un giocatore umano. Le loro funzioni sono piuttosto semplici (per chi conosca già il gioco): Carte - apre una finestra in cui i giocatori umani possono guardare le carte di cui sono venuti in possesso. Le carte sono divise per colonne, la colonna più a sinistra rappresenta le carte col simbolo cannone, la seguente quella delle carte col simbolo fante, quella ancora seguente le carte col simbolo cavallo ed infine quella con il simbolo jolly. In questa finestra vi sono 2 ulteriori pulsanti, Annulla e Gioca tris, quando volete giocare un @{" tris " link tris}, cliccate sui pulsanti delle carte prescelte, se la combinazione di carte è valida, potrete poi premere su gioca tris, altrimenti potrete decidere di non giocare più quelle carte, ed ecco allora che il pulsante Annulla annulla la selezione precedente. I pulsanti di selezione delle carte recano il nome del territorio, questo assume lo stile grassetto (neretto, bold, o come altro lo chiamate...) se il territorio in questione è occupato dal giocatore attuale. Obiettivo - mostra il vostro obiettivo Attacco - In questo box vi sono 3 pulsanti corrispondenti al numero di armate con cui si desidera attaccare. Prima di un attacco dovete usare uno di questi pulsanti (in modo da informare il computer delle vostre intenzioni), cliccare sullo stato da cui parte l'attacco e poi su quello che lo subisce. Se (ahimè...) l'attacco non è andato a buon fine, potrete (se le armate ve lo consentono) usare il pulsante Rpt (Ripeti) che vi consente di ripetere l'ultimo attacco eseguito senza dover ripetere la precedente sequenza di operazioni. Spostamento - Questo pulsante attiva il modo spostamento per i gadget Tutto, +, -, Esegui. Potreste averne bisogno di rado, in quanto il programma si predispone automaticamente sul modo più logico, ad esempio se avete conquistato uno stato il modo diventa automaticamente trascinamento (e qui vi torna utile il pulsante spostamento, magari non desiderate trascinare ma solo spostare, cliccando su di esso cambierete il modo). Se invece cliccate sul planisfero, il modo diventa automaticamente spostamento. Il modo in uso viene visualizzato sopra al gadget Spostamento. Per usare i gadget Tutto + - Esegui (in modo spostamento) dovete prima cliccare sullo stato da cui volete spostare, poi su quello che volete rinforzare e quindi su cosa volete fare. Verrete informati delle azioni che state svolgendo, ma la cosa più importante è ricordarsi di usare il pulsante Esegui quando avete deciso che le cose vi stanno bene. Se invece di Esegui usate Ok... avrete la sgradita sorpresa che avrete lasciato le cose così com'erano e ora non tocca più a voi! Io vi ho avvisati... Pausa - Regola la velocità delle azioni svolte dal computer, aggiungendo un ritardo che vi permette di leggere i messaggi nel riquadro informazioni. Le regolazioni possibili vanno da 0 (nessuna pausa) a 3 secondi di pausa fra un messaggio e l'altro. Modo - Questo pulsante serve unicamente durante la disposizione dei rinforzi, in quanto il suo stato permette di aumentare (+) le armate dello stato cliccato col mouse o diminuirle (-). Ok - Questo pulsante normalmente comunica al computer che passate i dadi al prossimo giocatore. Al termine della disposizione dei rinforzi ha invece un'altra funzione, quella di confermare se siete sicuri di aver posizionato bene i vostri rinforzi. In caso non siate soddisfatti oppure avete commesso un errore, potete usare il pulsante Modo. Onde evitare involontarie doppie pressioni del gadget ok (che equivarrebbero a passare la mano ad altri avversari, con conseguenti imprecazioni indirizzate al programmatore...) ho inserito un breve ritardo che disabilita il pulsante riabilitandolo poco dopo, aggirando così il problema. Sempre in basso, a destra, vedrete una sequenza di 44 piccoli rettangoli, che di volta in volta assumono varie colorazioni. Rappresentano il mazzo di carte territorio, le carte già giocate, e le carte possedute da ogni singolo giocatore. I rettangoli color arancio indicano il numero di carte ancora disponibili, quelle color celeste le carte già giocate. Le carte in possesso dei vari giocatori assumono i colori dei rispettivi giocatori. @endnode @node futuro @title " In futuro " Nelle prossime versioni vorrei aggiungere... - Salvataggio di più partite, probabilmente con Asl Requester. - Nuove strategie per gli avversari computerizzati. - Pausa del gioco. - Sospensione della partita con classifica. - Animazione proiettili durante attacchi. - Ecc. ecc. (la lista delle cose che ho in mente è decisamente lunga) @endnode @node Bugs @title " Bugs e problemi " Bugs e problemi conosciuti Solo un problema con i gadget ciclici della commodity MCP, che non riconosce correttamente la selezione effettuata. Non conosco esattamente il motivo di tale problema, credo dovrebbe essere una opzione non settata correttamente di MCP, in quanto con CycleToMenù il problema non sussiste. Una precisazione riguardante il funzionamento dei gadget ciclici del colore nella finestra di configurazione del gioco: i giocatori hanno una loro priorità, il giocatore 1 (quello più in alto, con i pulsanti sotto il pulsante che definisce il numero di giocatori) ha la priorità più alta, e questa va via via decrescendo. Se selezionate un colore per un giocatore, tutti quelli che hanno una priorità più bassa non potranno accedere a quel colore, mentre quelli a priorità più alta si. Se per esempio il giocatore 1 ha il colore Verde e tentate di assegnare lo stesso colore al giocatore 2, questo tenterà di assumere quel colore. Ma per il meccanismo delle priorità non vi riuscirà e quindi cercherà il primo colore disponibile (nella lista dei colori) dopo il verde. Tutto ciò può sembrare un pò contorto, lo ammetto, ma non si tratta di un bug, è stato programmato per funzionare in questo modo. Per ulteriori informazioni leggete @{" Uso del file azioni.dat " link Azioni} @endnode @node Azioni @title " Uso del file azioni.dat " Per facilitare l'opera di debugging ho inserito all'interno del programma un "registratore", che registra tutto quello che accade nel corso di una partita. Mi è sembrata una buona idea, in quanto a volte è successo che i beta tester mi parlavano di un determinato problema ma non sapevano specificarmi le azioni che avevano portato al problema, inoltre certi inconvenienti si verificavano solo in determinate situazioni del gioco per cui bisognava avere sott'occhio l'intero planisfero per capire se il problema era un bug oppure derivava dalla strategia adottata dal computer. Con il "registratore" si facilita la vita dei beta tester (che sono già costretti a sopportare la mia programmazione selvaggia...) e la mia. Come funziona la faccenda? Semplicissimo: il registratore crea un file (nominato azioni.dat) nella directory in cui risiede il programma. In questo file viene codificato l'intero svolgimento del gioco, per cui se durante una partita notate un problema oppure individuate qualcosa di sbagliato nella strategia del computer, non dovete far altro (al termine del gioco oppure cliccando sul gadget di chiusura della finestra di gioco) che copiare il file azioni.dat su un floppy disk e spedirmelo, o ancora inviarmi un E-mail con il file azioni.dat a questo indirizzo: denni@mbox.tec.it (è uno dei ragazzi che gestiscono l'AGI di Bari) L'importante è che lo copiate prima di rimettervi a giocare (oppure lo rinominate in modo diverso da azioni.dat), perchè il file viene sovrascritto (ovvero cancellato e rigenerato) ad ogni nuova partita. Tramite questo file (se possibile associato anche al file game.jww) sono in grado di ricreare l'esatta situazione della vostra partita e quindi risolvere gli eventuali problemi. Più copie di questo file mi darete e più veloce sarà il miglioramento del gioco. IMPORTANTE: A CAUSA DELLA CONTINUA SCRITTURA SULL'HARD DISK POTREBBERO VENIRSI A CREARE DEGLI SPIACEVOLI INCONVENIENTI (VEDI INVALIDAZIONE DELLA PARTIZIONE O ALTRI STRANI EFFETTI). L'AUTORE NON SI ASSUME ALCUNA RESPONSABILITA' RELATIVA ALL'USO DEL GIOCO E AGLI EVENTUALI DANNI DA ESSO CREATI. DISABILITATE LA CREAZIONE DEL FILE AZIONI.DAT (NELLA FINESTRA CONFIGURAZIONE) OPPURE POSIZIONATE IL GIOCO IN UNA PARTIZIONE IN CUI NON AVETE DATI IMPORTANTI. @endnode @node buoni @title " Siate buoni " Abbiate pietà... Questo programma è (ufficialmente) il mio 3° programma scritto in E il primo l'ho temporaneamente sospeso per realizzare DeeJay Player Samples 1.0, (un programma desaparecido... un virus sull'hard disc mi ha parzialmente distrutto il sorgente, quando sono riuscito a recuperare il file dall'hard disc non mi ero accorto che in realtà era abbastanza rovinato, e senza pensarci 2 volte ho sovrascritto questo file su quello (integro) che avevo come copia di sicurezza su un floppy... potete immaginare la sfilza di imprecazioni una volta accortomi dell'accaduto...) Sono ancora molto lontano dall'aver assimilato tutto quello che il linguaggio E mette a disposizione (e per uno come me che viene dal Basic tipo Amos, e' già un bel salto, soprattutto con un sistema operativo come AmigaOS), per cui sicuramente avrei potuto ottenere gli stessi risultati con un minor spreco di energie, di risorse e di tempo, però... cercate di essere comprensivi, se potete! Inoltre, in barba a tutti i testi sacri dell'informatica, sono un programmatore selvaggio, uno di quelli che prima scrive tutto il programma e poi si mette a disegnare i flow-chart di quello che ha scritto, perchè mi perdo nei meandri dei miei stessi sorgenti... di recente, sto cercando di attenermi alle buone vecchie regole della programmazione, e devo dire che i risultati cominciano a vedersi. Lunga vita a Wouter van Oortmerssen! @endnode @node Vari @title " Ringraziamenti vari " Vorrei dire grazie a... - Tutti i beta tester, e cioè: Vito Fortunato, Giuseppe Fortunato, Franco Zupo, Paolo Mazzone, Paolo Giannuzzi, Francesco Santoiemma, Anna Talenti e anche a chi non vuole essere ringraziato. Mi avete fatto impazzire ma avete contribuito in modo impagabile al miglioramento di questo gioco. Spero continuerete così (anche se mi farete venire gli incubi tipo Nightmare...) - Michael Zucchi, per le sue routine Playsamp e PicWindow. Sei grande!!! - Paolo Giannuzzi per il materiale fornitomi, le idee e i suggerimenti vari; - Vito e Giuseppe Fortunato per avermi fatto conoscere il gioco originale, per il linguaggio Amos e per la loro collezione di programmi e giochi a cui ho pienamente attinto; - Francesco De Napoli (mitico autore di Fraphix), per la sua disponibilità e perchè è l'unico santo abbastanza vicino a cui posso rivolgermi quando non so che pesci pigliare con l'AmigaE; - Franco Zupo e Paolo Mazzone per le avvincenti partite, al computer e non; - Francesco Santoiemma per le idee fornitemi; - Pamela Modugno per la scansione delle carte, le idee per la versione shareware, l'assistenza psichica, fisica, morale, ecc. ecc.; - Riccardo Giuliani per avermi dato l'opportunità di entrare nel mondo della programmazione dei computer; - Wouter van Oortmerssen, per l'ottimo linguaggio che ha creato e che finalmente ci permette di interagire al meglio con lo straordinario AmigaOS; - Jason Hulance, per la Beginner Guide del linguaggio E (anche se poteva essere più chiara in certi settori); - Amedeo Milella, per la traduzione in Italiano della Beginner Guide, finalmente qualcuno pensa a noi; - L'AGI di Bari, per l'entusiasmo che riesce a trasmettere ai membri di questo fantastico gruppo di utenti Amiga; - Tutti gli artisti che hanno allietato i miei padiglioni auricolari con la loro musica... se non ci fossero stati loro probabilmente sarei morto di noia e di disperazione, durante le moltissime ore di programmazione e beta-testing del gioco. Sarebbe un elenco interminabile di gruppi e solisti, per cui ne elenco i principali: Beatles (The Best!!!), Pink Floyd, Prince, Sheryl Crow, Madonna, Toto, Yes, James Brown, Aretha Franklin, Swing Out Sister, Prefab Sprout, Madre Deus, Simply Red, Wendy & Lisa, Sting, Police, Zucchero, Biagio Antonacci, Matia Bazar, Dirotta su Cuba, Irene Grandi, Pooh. Vi lancio una controproposta: sarei disposto a scambiare la versione pienamente funzionante del gioco con almeno 10 files midi dei suddetti artisti (ovviamente files che io non abbia già); - Tutti coloro che giocheranno a JeaWorldWar. Sono graditi i vostri suggerimenti (mi raccomando, pochi per volta... non sono Dave Haynie o Carl Sassenrath!!! Scrivete (o telefonatemi all'indirizzo che trovate in @{" Autore " link autore }. @endnode @node Modulo_Registrazione @title " Modulo Registrazione " Registrazione A JeaWorldWar Ho utilizzato la versione Demo di JeaWorldWar e ho deciso di diventare un Utente Registrato. La registrazione da diritto a 2 aggiornamenti. I miei dati sono: Cognome______________________________ Nome_________________________________ Indirizzo__________________________________________________________________ C.A.P.___________________ Città____________________________________________ Sigla Provincia_____________ Telefono______________________________________ Versione del programma in possesso_________________________________________ Ho trovato il programma su_________________________________________________ Specifiche tecniche (specificare il modello di Amiga in possesso, la versione del sistema operativo, il microprocessore, la memoria, la capacità dell'hard disk, l'eventuale hardware aggiuntivo): ___________________________________________________________________________ ___________________________________________________________________________ ___________________________________________________________________________ PROPOSTE/BUGS/ALTRO ___________________________________________________________________________ ___________________________________________________________________________ ___________________________________________________________________________ ___________________________________________________________________________ ___________________________________________________________________________ Data__________________________ Firma_______________________________________ @endnode @node autore @title " Autore " Questo è il mio indirizzo: Gianfranco L'Abbate Via Giulio Recupero 29/C 70044 Polignano A Mare (Ba) Italia Tel. 080/4241021 @endnode @node Regole @title " Regole di JeaWorldWar " @{" Descrizione del gioco " link Descrizione} @{" Numero dei giocatori " link Giocatori} @{" Fase preliminare " link Preliminare} @{" Prima fase: rinforzi " link Rinforzi} @{" Seconda fase: combattimenti " link Combattimenti} @{" Terza fase: spostamenti " link Spostamenti} @{" Eliminazione giocatore " link Eliminazione} @{" Vittoria " link Vittoria} @{" Consigli " link Consigli} @endnode @node descrizione @title " Descrizione del gioco " DESCRIZIONE DEGLI OGGETTI DI GIOCO Il gioco è composto da: - un planisfero, rappresentante il mondo, diviso in 6 continenti (Nord America, Sud America, Europa, Africa, Asia e Oceania) a loro volta suddivisi in 42 territori; - un mazzo di 42 carte, una per ogni territorio. Su ogni carta sono raffigurati un arma (un cannone, un fante o un cavaliere) ed il nome di uno dei 42 stati - un mazzo di 14 carte-obiettivi; - 2 carte jolly raffiguranti le 3 armi; - 6 dadi. @endnode @node giocatori @title " Numero dei giocatori " IN QUANTI SI GIOCA ? Si parte da un minimo di 3 giocatori per arrivare ad un massimo di 6. @endnode @node preliminare @title " Fase preliminare " FASE PRELIMINARE Ogni giocatore sceglie il colore delle sue armate. A seconda del numero di giocatori si ha un certo numero iniziale di armate da disporre sul planisfero: - se i giocatori sono 3, ogni giocatore avrà 35 armate iniziali - se i giocatori sono 4, ogni giocatore avrà 30 armate iniziali - se i giocatori sono 5, ogni giocatore avrà 25 armate iniziali - se i giocatori sono 6, ogni giocatore avrà 20 armate iniziali Si decide la sequenza dei giocatori (normalmente si usano i dadi, ma qui potete creare una sequenza casuale oppure crearne una che fa al caso vostro). Uno dei giocatori (normalmente sorteggiato con il metodo dei dadi) fa da mazziere e distribuisce una carta-obiettivo a testa. In questo caso è il computer ad occuparsi della distribuzione delle carte. Non potrete vedere subito qual'è il vostro obiettivo (questa è una delle pochissime differenze rispetto al gioco reale, ho voluto renderla tale sperando di rendere più interessante il gioco, ma volendo posso renderlo identico all'originale) da raggiungere per vincere. Una nota per chi non conosce bene il gioco: esistono 6 obiettivi che recitano "Devi distruggere LE ARMATE .... (in luogo dei puntini troverete il colore che dovete cercare di distruggere). Se sei tu stesso il proprietario delle armate .... o se il giocatore proprietario è eliminato da un altro giocatore, il tuo obiettivo diventa automaticamente DI CONQUISTARE 24 TERRITORI". Molta gente viene ingannata da questa definizione, che in realtà è abbastanza chiara. Innanzitutto dovete controllare se il colore delle armate da distruggere è stato scelto da qualche altro giocatore. Se la risposta è si, allora dovrete cercare di essere voi ad eliminare quel giocatore. Se viene eliminato da qualche altro giocatore non significa che voi avete vinto, anzi... il vostro obiettivo diventa automaticamente CONQUISTARE 24 TERRITORI! Se invece siete voi ad aver scelto il colore che dovete distruggere, allora il vostro obiettivo è (sin dall'inizio del gioco) conquistare 24 territori. Spero non ci siano più dubbi... Vengono distribuite le 42 carte territorio, una per ogni giocatore, fino a quando ogni giocatore possiede una carta, poi altro giro di distribuzione, ecc., fino ad esaurimento del mazzo di carte. Esempio: il giocatore con le armate rosse riceve le carta territorio Alaska, Siberia, Africa del Sud, Nuova Guinea, Argentina e Europa Settentrionale (in questa fase del gioco non hanno importaza le armi che queste carte rappresentano). Egli posiziona quindi un'armata sul planisfero, in corrispondenza del territorio Alaska, poi una sul territorio Siberia, una sul territorio Africa del Sud, e via dicendo. Nel nostro caso è il computer ad occuparsi di questa prima distribuzione di armate, posizionando una bandierina (del colore del giocatore) su ogni territorio ricevuto (nota: il numero dei territori iniziali in vostro possesso dipende dal numero dei giocatori e dalla sequenza degli stessi. Ovviamente 42 territori diviso 6 giocatori fanno esattamente 7 territori a testa, ma se il numero di giocatori è 4 o 5, capite bene che qualche giocatore avrà un territorio in più mentre qualcun'altro avrà un territorio in meno. Avere dei territori in più è positivo e negativo al tempo stesso, positivo perchè questo potrebbe influenzare (inizialmente) lo svolgimento del gioco, negativo perchè dovrete inevitabilmente suddividere le armate iniziali fra tutti gli stati, quindi chi ha più territori avrà anche meno armate su qualcuno di essi). A questo punto il planisfero sarà occupato da 42 bandierine con il numero 1 all'interno di esse (che sta appunto a significare che su quel territorio si trova una armata del colore della bandierina). I giocatori pongono 3 armate per volta sui territori che ritengono più opportuni, fino ad esaurimento del numero di armate iniziali. A questo punto le carte territorio vengono ritirate dal mazziere (il computer) che le mescola e inserisce nel mazzo le due carte raffiguranti i jolly. Il mazzo così composto viene posto sul tavolo da gioco. @endnode @node rinforzi @title " Prima fase: i rinforzi " PRIMA FASE: DISPOSIZIONE DELLE ARMATE DI RINFORZO @{" Rinforzi turno " link turno} @{" Rinforzi continenti " link continenti} @{" Rinforzi tris " link tris} @endnode @node turno @title " Rinforzi turno " Ogni giocatore, dopo il primo turno di gioco (qui forse c'è un'altra differenza rispetto al gioco originale) ha diritto a dei rinforzi. Il numero di rinforzi (armate) viene calcolato in base al numero di territori occupati dal medesimo giocatore sul planisfero, diviso 3. Esempio: il giocatore con le armate blu ha occupato 14 territori. 14/3=4 col resto di 2, il resto della divisione viene trascurato, per cui il giocatore avrà altre 4 armate da aggiungere a quelle già presenti sul planisfero. Se un giocatore possiede meno di 3 territori ha comunque diritto ad una armata di rinforzo. @endnode @node continenti @title " Rinforzi continenti " Se un giocatore possiede uno o più continenti, ha diritto (ad ogni suo turno di gioco, escluso il primo) ad un certo numero di armate supplementari, secondo la seguente tabella: Oceania - 2 armate supplementari Sud America - 2 armate supplementari Africa - 3 armate supplementari Europa - 5 armate supplementari Nord America - 5 armate supplementari Asia - 7 armate supplementari @endnode @node tris @title " Rinforzi tris " Ogni volta che un giocatore (a conclusione del suo turno di gioco) ha conquistato uno o più territori, ha diritto a pescare una carta dalla cima del mazzo delle carte territori (questa operazione viene svolta automaticamente dal computer). Quando il giocatore avrà almeno 3 carte, cercherà di formare una combinazione (tris) che gli permetterà di ottenere (al turno seguente) altre armate supplementari. Le combinazioni possibili sono: - 3 cannoni - 4 armate supplementari - 3 fanti - 6 armate supplementari - 3 cavalli - 8 armate supplementari - 1 cannone, 1 fante, 1 cavallo - 10 armate supplementari - 1 jolly e 2 carte diverse - 10 armate supplementari (*) - 1 jolly e 2 carte uguali - 12 armate supplementari ((*) Questa combinazione nel gioco reale non viene valutata. Ho deciso di includerla perchè, nel corso di svariate partite con giocatori umani ci siamo detti "se un tris con 1 cannone, 1 fante ed un cavallo è una combinazione valida, perchè il jolly non può assumere la funzione di cannone, fante o cavallo? Dopotutto su di essa sono rappresentate le 3 armi, quindi come ragionamento non dovrebbe essere errato...". Così, partita dopo partita è diventata una specie di regola non scritta, e per questo motivo l'ho inclusa in questo gioco. Ovviamente posso eliminarla (o renderla un opzione on/off) facilmente). Giocando un tris assumono di nuovo importanza i nomi dei territori stampati sulle carte. Per ogni territorio occupato dal giocatore che gioca il tris (e presente nella combinazione tris), il giocatore aumenta il valore del tris di 2 armate supplementari. Esempio: il giocatore Viola decide di giocare un tris di 3 fanti, che rappresentano i territori Africa del Nord, Egitto e Madagascar. Di questi 3 territori egli occupa l'Egitto ed il Madagascar, quindi: armate supplementari per tris di fanti 6+ armate supplementari per territorio Egitto 2+ armate supplementari per territorio Madagascar 2= ------------------------------------------------- armate supplementari 10 Chiaro il meccanismo? Importante: le combinazioni tris vanno giocate prima di attaccare altri giocatori (il computer inibirà la possibilità di giocare il tris, una volta che abbiate attaccato qualche giocatore) Le carte giocate nelle combinazioni vengono scartate e messe da parte. Una volta che il mazzo di carte territori si è esaurito, le carte giocate vengono rimescolate e costituiscono il nuovo mazzo a cui attingere in caso di conquista territori. @endnode @node combattimenti @title " Seconda fase: i combattimenti " SECONDA FASE: I COMBATTIMENTI Quando i rinforzi sono stati posizionati sul planisfero, il giocatore può decidere (in base alla dislocazione delle proprie e altrui armate) se attaccare o meno. LO SCOPO DELL'ATTACCO E' L'ELIMINAZIONE DELLE ARMATE NEMICHE DAI TERRITORI CONFINANTI PER CONSENTIRE ALLE PROPRIE ARMATE L'OCCUPAZIONE DI TERRITORI AVVERSARI. Il giocatore non è obbligato ad attaccare ad ogni turno di gioco. Deve però considerare che deve sempre lasciare almeno un'armata di presidio su ogni territorio occupato. Ciò significa che se l'attacco parte da un territorio su cui ci sono 3 armate, in realtà soltanto 2 di queste prenderanno parte all'attacco (il computer vi informerà dell'errore quando e se tenterete di usare un numero non disponibile di armate per un attacco). Ci sono 2 modi per attaccare un territorio avversario: A) Via terra: se il territorio da cui si sferra l'attacco è confinante con il territorio avversario. B) Via mare: seguendo le linee tratteggiate che uniscono (via mare) alcuni territori (esempio: dal Kamchatka si può attaccare l'Alaska e viceversa, dall'Africa del Nord si può attaccare il Brasile e viceversa, ecc.). I combattimenti si svolgono in questo modo: L'attaccante dovrebbe (in realtà non lo si fa quasi mai) comunicare ad alta voce il nome del territorio attaccato e quello da cui attacca, se omette questo annuncio, il giocatore proprietario dello stato attaccato è autorizzato a "soffiare" 3 armate dal territorio da cui è partito l'attacco (anche questa è una regola che non abbiamo mai utilizzato in pratica...). Ovviamente con il computer è impossibile non indicare il numero di armate con cui si attacca, nè quanto meno gli stati coinvolti nell'attacco. L'attaccante usa i dadi rossi e il difensore i dadi blu. Le armate con cui si attacca possono essere massimo 3 e minimo 1, stesso discorso per le armate con cui ci si difende. Nel gioco reale i due giocatori devono comunicare il numero di armate di attacchi e quello di difesa prima di lanciare i dadi (questa regola viene invece applicata, c'è sempre qualcuno che tenta di fare il furbo, tentando di difendersi con meno armate possibili se l'avversario ha realizzato dei punteggi alti...). Quando i due giocatori hanno lanciato i dadi, si confrontano i punteggi ottenuti, secondo questo criterio: il dado rosso con il punteggio più alto si confronta con il dado blu che ha il punteggio più alto. Se è più alto quello dell'attaccante, il difensore perde un'armata e viceversa. In caso di parità dei due dadi il difensore vince, mentre l'attaccante perde un'armata. Se attaccante e difensore hanno usato un solo dado, allora l'attacco termina qui e si traggono le conclusioni, altrimenti si confrontano altri 2 dadi, fino a quando questi saranno stati tutti confrontati. Esempi: Il giocatore Giallo attacca con 3 armate da Jacuzia a Cita; Il giocatore Verde (che occupa il territorio Cita) si difende con 2 armate; Il giocatore Giallo realizza i punteggi 5, 3, 2; Il giocatore Verde realizza i punteggi 6 e 2; Al confronto dei dadi si ottiene questo risultato: 5 contro 6 - vince il Verde e il Giallo toglie un'armata dal territorio Jacuzia; 3 contro 2 - vince il Giallo ed il Verde toglie un'armata dal territorio Cita Altro esempio Il giocatore Rosso attacca con 3 armate da Islanda a Scandinavia; Il giocatore Nero (che occupa il territorio Scandinavia) si difende con 3 armate; Il giocatore Rosso realizza i punteggi 6, 4, 3; Il giocatore Nero realizza i punteggi 5, 4, 2; Al confronto dei dadi si ottiene questo risultato: 6 contro 5 - vince il Rosso ed il Nero toglie un'armata dal territorio Scandinavia; 4 contro 4 - vince il Nero (a parità vince il difensore) ed il Rosso toglie un armata dal territorio Islanda; 3 contro 2 - vince il Rosso ed il Nero toglie un altra armata dal territorio Scandinavia; Se il giocatore difensore perde tutte le armate che occupano il territorio attaccato, allora questo viene occupato dal giocatore che ha attaccato. I PUNTI NON SI SOMMANO MAI, SI CONFRONTANO IN ORDINE DI GRANDEZZA. L'attaccante può continuare il combattimento e rinnovare la sfida all'avversario, per tutte le volte che vuole, sino alla distruzione delle armate avversarie situate sul territorio che gli interessa; oppure può decidere di sospendere l'attacco ed assistere al combattimento degli altri avversari sino al suo prossimo turno di gioco. Ovviamente il giocatore può sferrare tutti gli attacchi che vuole da tutti i territori in suo possesso, a patto che il numero di armate sugli stati da cui partono gli attacchi sia di almeno 2 armate (una va sempre lasciata a presidiare lo stato). QUANDO L'ATTACCANTE DISTRUGGE SU UN TERRITORIO ATTACCATO TUTTE LE ARMATE CHE DIFENDEVANO QUELLO STATO, ALLORA OCCUPA IL NUOVO TERRITORIO CON LE ARMATE CHE HA EFFETTIVAMENTE IMPIEGATO NELL'ULTIMO LANCIO DI DADI. In questo caso, può decidere di trasportare (sul territorio appena conquistato) un numero maggiore di quello impiegato nell'ultimo lancio di dadi. Ovviamente tali armate devono essere presenti sullo stato da cui l'attacco è partito. Questo movimento di armate in gergo lo chiamiamo "trascinamento" o "truppe al seguito" (il computer abilita i pulsanti relativi a questo movimento solo in caso di conquista di un territorio). Dallo stato appena conquistato inoltre possono essere immediatamente sferrati nuovi attacchi. Alla fine del proprio turno di gioco, se si è conquistato uno o più territori, l'attaccante prenderà una carta territorio dalla cima del mazzo (questa operazione viene svolta in modo automatico dal computer). Il turno di gioco di ogni giocatore si esaurisce quando: 1) il giocatore decide di sospendere i suoi attacchi ed eventualmente trarre vantaggio dalle mosse degli altri giocatori che possono determinare delle condizioni favorevoli anche per lui; 2) il giocatore rimane con una sola armata a presidio di ogni suo territorio. Non potendo fare altro è costretto a passare la mano agli altri giocatori. @endnode @node spostamenti @title " Terza fase: gli spostamenti " TERZA FASE: GLI SPOSTAMENTI Al proprio turno di gioco, ogni giocatore ha diritto (sia che abbia sferrato attacchi o meno) di spostare una parte o tutte le sue armate da un territorio ad un altro contiguo che gli appartiene. Può fare un solo spostamento ad ogni turno e deve sempre lasciare almeno un'armata sul territorio da cui sposta (il computer disabilita i tasti relativi allo spostamento subito dopo che questo è stato effettuato) @endnode @node eliminazione @title " Eliminazione giocatore " ELIMINAZIONE DI UN GIOCATORE Quando l'attaccante distrugge l'ultima armata dell'ultimo territorio di un avversario, si impadronisce anche delle sue carte. Il giocatore perdente viene quindi escluso dal gioco. Il giocatore vincente potrà utilizzare le carte conquistate al turno successivo per ottenere combinazioni tris e quindi ottenere armate supplementari. Questo drammatico evento (per il perdente) per ovvie ragioni logistiche, non può verificarsi prima della fine del quarto turno di gioco. @endnode @node vittoria @title " Vittoria " VITTORIA Vince chi riesce a raggiungere per primo l'obiettivo indicato dalla carta-obiettivo che ha ricevuto all'inizio del gioco. @endnode @node consigli @title " Consigli " CONSIGLI - E' bene seguire una propria strategia sin dall'inizio. Ovviamente (essendo un gioco basato su dadi e carte) una certa dose di fortuna è indispensabile, soprattutto nelle fasi iniziali del gioco. In seguito la fortuna è sempre indispensabile, ma in modo meno influente, per cui viene fuori l'abilità, la pazienza e la determinazione dei giocatori. JeaWorldWar è un gioco di attacco, ma anche di difesa, quindi non fate attacchi sconsiderati, se avete conquistato un territorio passate la mano agli altri giocatori e vedete quello che succede nel frattempo. Personalmente (dopo le 18 partite iniziali...) mi sono divertito un mondo a questo gioco, ho addirittura vinto un torneo locale e in un altro mi sono classificato 2° come punteggio, per cui credo che tali consigli vi potranno servire, poi ognuno interpreta a proprio modo questo gioco... il mondo è bello perchè vario, no? Gianfranco L'Abbate @endnode @node samples @title " Audio " Il programma usa 8 campionamenti per riprodurre gli effetti audio di armata distrutta, armata non centrata, movimento armate, max e min punteggio realizzabile ai dadi, conquistato continente, perso continente, giocato tris. Tali campionamenti sono contenuti nella directory samples, potete anche divertirvi a modificarli o sostituirli con degli altri che vi piacciano maggiormente, purchè lasciate intatti i loro nomi, infatti il programma li suona soltanto se hanno quei nomi. Un'altra accortezza da usare se decidete di cambiare i campionamenti è che almeno quelli relativi alle armate distrutte e alle armate non centrate siano relativamente brevi (diciamo sui 5000 bytes), altrimenti passarete più tempo ad ascoltare i campionamenti che non a giocare... vi assicuro che può essere un esperienza snervante! @endnode @node classifica @title " Punteggio dei giocatori " Al termine (quando un giocatore raggiunge l'obiettivo) apparirà una finestra in cui vedrete una classifica dei giocatori. Nel gioco reale di solito non si usa stilare una classifica, è importante solo il vincitore, ma potrebbe essere utile a chi ama le statistiche, a chi vuole realizzare un torneo, a chi si consola sapendo che era 2° e non 6°... ecc. ecc. I punteggi attribuiti in questa classifica vengono calcolati in modo piuttosto semplice: 500 punti al vincitore, per gli altri vengono sommate tutte le armate presenti sul planisfero, più i punti per l'eventuale possesso di continenti, secondo questo schema: 70 punti per il possesso dell'Asia 50 punti per il possesso del Nord America 50 punti per il possesso dell'Europa 30 punti per il possesso dell'Africa 20 punti per il possesso del Sud America 20 punti per il possesso dell'Oceania Come vedete si tratta dei punteggi relativi ai rinforzi cui da diritto ogni singolo continente moltiplicati per 10. Ovviamente una classifica così stilata non tiene conto degli obiettivi da raggiungere, ma della forza dei giocatori al termine della partita. Volendo potrei creare una classifica per obiettivi, ma non ho ancora trovato un metodo valido per i punteggi. Siete così fantasiosi da suggerirmene uno? @endnode @node domande @title " FAQ " Questo è un piccolo elenco delle domande che mi vengono puntalmente rivolte riguardo a JeaWorldWar: D) I giocatori computerizzati sono troppo facili da battere, è possibile migliorarli? R) Certo che è possibile, infatti spendo il 90% del tempo che dedico a questo programma a cercare di migliorare la strategia usata dai giocatori computerizzati. Ma dato che è un gioco così complesso, in cui ogni giocatore umano ha un approccio strategico molto diverso, è abbastanza elaborato riuscire a codificare delle strategie valide. Se poi confrontate le strategie adottate in JeaWorldWar con le 2 precedenti versioni del gioco di cui sono a conoscenza (TotalWar e Risk 5.50), troverete che gli avversari computerizzati di JeaWorldWar sono indubbiamente più validi, a detta di chi ha giocato con tutti e 3 i programmi. D) Che tipo di "intelligenza artificale" usano gli avversari computerizzati? R) Parlare di "Intelligenza artificiale" in questo programma mi sembra esagerato. Le procedure attuali non usano alcunchè di euristico (quel genere di algoritmi in cui i computer procedono per tentativi ed imparano dai propri errori), l'unica forma di intelligenza adottata (se così si può definire...) è una continua sequenza di decisioni di tipo IF THEN ELSE, ovvero di diramazioni (e quindi di diverse strategie), basate unicamente sulla mia esperienza di gioco. In poche parole ho cercato di analizzare me stesso (e altri giocatori umani) per capire perchè si decide di giocare in un determinato modo piuttosto che in un altro, e ho cercato di tradurre questi processi decisionali in algoritmi. E' stata (ed è) questa la vera impresa di questo gioco, analizzare l'uomo, carpirne i suoi processi e codificare delle procedure che simulassero in modo più o meno similare tali azioni. Da questo punto di vista c'è ancora moltissimo da fare, attualmente il computer si muove per stati adiacenti, non è in grado di seguire la via più breve (o quella più conveniente) per raggiungere un determinato obiettivo, ho già codificato questo algoritmo ma al momento non l'ho ancora implementato. Quindi... non crediate che il computer "pensi" come un umano, certo non è che attualmente sia propriamente semplice batterlo, ma si può migliorare parecchio. D) E' prevista una versione per PC di JeaWorldWar? R) Dato che sono un Amighista abbastanza sfegatato non credo proprio... anche perchè dovrei riconvertire il sorgente ad un altro linguaggio è non ho alcuna esperienza di programmazione su PC (a parte un piccolo programma scritto in QBasic per un mio amico), quindi, nisba, rien, nada, not, NO! W Amiga Forever. @endnode @node realizzato @title " Come è stato realizzato? " Una piccola panoramica del software utilizzato per la realizzazione di JeaWorldWar: Sorgente: scritto in E con CygnusEd (2.0 e 3.5) e Bed 1.0 Eseguibile: compilato con EC 3.2i, debugger EDBG Grafica: Personal Paint 7.1, 6.4, Deluxe Paint V. Le carte invece sono state scannerizzate sul PowerMac603 (... non volevo perdere troppo tempo nel disegnarle, perdonate questa mia piccola escursione fuori dal territorio Amiga!!!) di una mia amica e rielaborate con il suddetto software grafico. Icona: Personal Paint 7.1 e 6.4, PageStream2.2, IconDeluxe2.0 Effetti audio: Racimolati qua e la ed elaborati con Protracker 3.52 e Protracker 3.61 @endnode @node configurazione @title " Se vi interessa... la mia attuale configurazione " Attualmente il mio computer è così composto: Amiga 1200 in tower PC (tastiera Amiga 2000) HD E-Ide Maxtor 3.2 Gb Espansione Omega 1200 con coprocessore 68881, attualmente senza memoria CD-Rom E-Ide AOpen 12x Monitor Colori Philips CM8833-II Campionatore 8 bit Interfaccia Midi (costruita da un mio amico e pienamente funzionante) collegata con Expander Roland SoundCanvas SC55, Roland SoundBrush SB55, Yamaha TG33 e tastiera Yamaha SHS10... sapete, i miei hobby principali sono programmare e scrivere canzoni, quindi ci vuole un minimo di hardware che non siano i poveri (ma efficaci) 4 canali audio di Amiga!!! @endnode @node cambiamenti @title " Cambiamenti da versioni precedenti " Cambiamenti in Rev. 095 (24/02/99, BETA-TESTING) - Nuova disposizione dei gadget della finestra principale. - Aggiunto gadget che richiama la finestra di configurazione. - Aggiunto gadget e requester info. - E' ora possibile usare i gadget carte e obiettivo anche durante la disposizione dei rinforzi. - Rimosso bug su controllo obiettivo. - Rimosso bug su tasti in modo spostamento. Cambiamenti in Rev. 094 (21/02/99, BETA-TESTING) - Aggiunto opzione di Nuova partita (Reset) nel requester di salvataggio. - Eliminato gadget superflui (Tutto, +, -, Esegui) nella finestra principale del programma, adesso basta scegliere con i gadget sposta o trascina, ed i gadget sottostanti si adeguano al tipo di azione da fare. - Ridotto le dimesioni del sorgente grazie alla modularizzazione di 2 procedure. - Rimosso bug di errata visualizzazione del numero di armate presenti su uno stato. Credevo di averlo eliminato nella versione 084, ma in realtà c'era ancora ed era anche piuttosto evidente... succede! - Rimosso bug in salvataggio partite. - Rimosso bug su tempo eliminazione giocatore in partite precedentemente salvate. Cambiamenti in Rev. 093 (16/02/99, BETA-TESTING) - Eliminato il gadget di impostazione partita (superfluo). - Reso più modulare la procedura che gestisce i gadget dei giocatori umani. - Rimosso bug che causava un guru all'inizio della partita (solo se si possedeva l'Australia Orientale). - Rimosso bug su obiettivo in caso di eliminazione giocatore. - Rimosso bug uso Jolly in finestra carte. - Rimmosso bug su rinforzi in seconda partita. - Rimosso bug in chiusura file azioni.dat a fine partita. - Rimosso bug nella procedura difensiva del computer. - Rimosso bug sul gadget modo rinforzi. - Eliminati requester e procedure di debug relativi al bug Alaska-Alaska. Cambiamenti in Rev. 092 (10/02/99, BETA-TESTING) - Ora il programma usa uno schermo privato, senza causare quindi gli inestetismi dovuti all'alterazione della palette. - Migliorato il modulo bandierine, ora si chiama bandierine2, è più compatto. - Aggiunto 2 campionamenti, uno per la perdita di un continente di cui qualcuno era l'unico possessore ed un altro per quando si gioca il tris. - Modificato la creazione del file azioni.dat, con l'aggiunta di altri dati per il debugging, purtroppo questo aumenta le dimensioni del file suddetto. - Migliorato ulteriormente il programma lettore dei file azioni.dat: la nuova versione mostra l'evolversi della situazione armate e presidi su una finestra, permettendo così di avere un quadro globale della situazione in ogni momento. Cambiamenti in Rev. 091 (03/02/99, BETA-TESTING) - Il bug Alaska-Alaska dovrebbe essere stato rimosso... per sicurezza (e per scaramanzia...) non ho escluso dal programma il requester e le procedure di debug. - Rimosso bug in procedura che rimescola le carte già giocate. - Eliminata la finestra console monitor. - Aggiunto un campionamento per la conquista dei continenti. - Ho scritto un programmino che decodifica il file game.jww, poi ho creato una variante del programma che legge il file azioni.dat, che può ridirezionare l'output in un file anzichè nella shell, ottenendo una copia permanente che può essere letta a piacimento con un editor testi, con tutti i vantaggi che ciò comporta. Cambiamenti in Rev. 090 (02/02/99, BETA-TESTING) - Nel caso si verifichi il bug Alaska-Alaska, ho aggiunto un requester che informa dell'avvenuto errore, salva i file azioni.dat e game.jww e poi chiude il programma. Cambiamenti in Rev. 089 (01/02/99, BETA-TESTING) - Rimosso bug in obiettivo 18 con 2 per giocatori computerizzati - Rimosso bug in trascinamento giocatori computerizzati che causava loop continuo. - Rimosso bug in requester salvataggio partite. - Rimosso bug in creazione file azioni.dat. - Rimossi bugs in salvataggio partite. - Rimosso bug in caricamento partite. - Rimosso bug grafico nel modulo bandierine. - Rimosso bug nel modulo reset_all. - Rimosso bug in finestra carte (giocava il tris anche se annullato). Cambiamenti in Rev. 088 (30/01/99, BETA-TESTING) - Ora il numero di armate che possono presidiare uno stato è diventato praticamente irraggiungibile (valore a 32 bits). - E' ora possibile (per i giocatori umani) in caso di obiettivo distruzione avversari, proseguire a giocare dopo aver raggiunto l'obiettivo. Appena si passerà la mano agli altri giocatori, il computer segnalerà il raggiungimento dell'obiettivo. A tale proposito sono ovviamente cambiate le procedure di save e load, quindi non è possibile caricare file partita salvati con versioni precedenti alla revisione 88. - Aggiunto (su insistente richiesta di alcuni beta-testers) nella finestra configura partita una opzione che permette di avere 1 o più suoni per ogni attacco. - Aggiunto requester di sicurezza sul gadget Obiettivo. - Rimosso bug su abilitazione gadget in partite rigiocate. - Rimosso bug in visualizzazione distribuzione carte in partite rigiocate. - Rimosso bug in indicatore di sequenza in partite rigiocate. - Rimosso bug in creazione file azioni.dat. Cambiamenti in Rev. 087 (28/01/99, BETA-TESTING) - Aggiunto il Save e Load delle partite. Purtroppo queste operazioni non vengono realizzate con un requester Asl, a causa di uno strano Guru che si verificava all'uscita del programma (ma solo se si era effettuato il salvataggio dei dati. Sembra un problema di deallocazione del requester, quanto prima cercherò di risolverlo. - E' ora possibile uscire dal programma in ogni momento del gioco, senza dover aspettare il turno dei giocatori computerizzati. - Rimosso bug in abilitazione gadget. - Rimosso bug in uscita gioco da finestra configurazione. - Rimosso bug in carica partita da finestra configurazione. - Rimosso bug grafico in barre di potenza. - Aggiunto icona per lancio da WB. Cambiamenti in Rev. 086 (26/01/99, BETA-TESTING) - Aggiungo requester di sicurezza per evitare involontarie uscite dal gioco. - Rimosso bug che si creava quando (al termine di una partita) si decideva di rigiocare, rispondendo "si" al nuovo requester. I messaggi relativi alle operazioni dei giocatori computerizzati non coincidevano con i colori degli stessi. Cambiamenti in Rev. 085 (25/01/99, BETA-TESTING) - Aggiunto un requester che permette di rigiocare al termine della partita. - Aggiunto gadget di uscita dal gioco nella finestra di configurazione partita. Cambiamenti in Rev. 084 (24/01/99, BETA-TESTING) - Rimosso il bug di errata visualizzazione (a video) del numero reale di armate presenti su uno stato. Cambiamenti in Rev. 083 (24/01/99, BETA-TESTING) - Corretto bug nel trascinamento degli avversari computerizzati. - Corretto bug di visualizzazione delle barre nel diagramma di potenza dei giocatori. - Corretto bug sull'uso dei campionamenti. - Aggiunto ulteriori eventi che vengono registrati nel file azioni.dat, servono a stanare il bug di errata visualizzazione (a video) del numero reale di armate presenti su uno stato. Grazie a questi nuovi eventi questo bug dovrebbe avere le ore contate! - Modificato il lettore del file azioni.dat per rilevare i nuovi eventi. Cambiamenti in Rev. 082 (23/01/99, BETA-TESTING) - Aggiunto (nella finestra confiurazione partita) il gadget che abilita o meno la creazione del file azioni.dat. Serve a chi possiede una configurazione base (A500 senza HD), altrimenti la creazione del file su floppy rallenta il gioco. - Modificato l'uso dei campionamenti. Ora viene suonato un solo samples (a differenti volumi) durante gli attacchi, così dovrebbe essere meno noioso e più veloce. - Aggiunto ulteriori eventi registrati nel file azioni.dat, atti ad eliminare il bug di errata visualizzazione (a video) del numero reale di armate presenti su uno stato. - Migliorato il lettore del file azioni.dat. Cambiamenti in Rev. 081 (16/12/98, BETA-TESTING) - Creata procedura per la centratura dei testi all'interno dei box, è necessaria per via delle stringhe della versione Demo, quindi ho aggiunto ai moduli visualizza.m e visualizza2.m la nuova procedura. - Corretto bug che registrava erratamente gli obiettivi dei giocatori che dovevano distruggere se stessi, trasformandolo in 24 territori. Anche questo problema è stato evidenziato da un file azioni.dat, grazie ai beta tester. - Migliorato il lettore di file azioni.dat Cambiamenti in Rev. 080 (15/12/98, BETA-TESTING) - Nella strategia dei giocatori computerizzati ho eliminato delle cose che probabilmente rendevano più semplice la vita ai giocatori umani. La strategia attuale è identica a quella della versione Amos, la sola differenza sta nella correzione di diversi bugs di quest'ultima. - Ho corretto altri bugs nella creazione del file azioni.dat (credo di essere vicino alla versione finale...). - Modificato l'ex gadget Rinforzi, ora si chiama Modo, variato leggermente la grafica dei box del turno, del timer e dell'indicatore giocatori. - Migliorato il lettore del file azioni.dat. - Aggiunto la finestra di ritardo azioni per la versione Demo. - Convertito le stringhe del programma per la versione Demo. Cambiamenti in Rev. 079 (14/12/98, BETA-TESTING) - Altro file azioni.dat e altri bugs scoperti nella creazione di questo file. - Corretto bug nella finestra delle carte, possedendo 2 jolly il gadget "gioca tris" veniva disegnato sul riquadro dei messaggi. Cambiamenti in Rev. 078 (14/12/98, BETA-TESTING) - Grazie alla prima copia del file azioni.dat pervenutami ho risolto un bug piuttosto insidioso, derivato dall'uso "selvaggio" dei gadget (grazie ai miei beta tester, che fanno di tutto pur mettere in crisi programma e programmatore...) e dalla mancanza di qualche controllo sulle azioni dei giocatori: tale bug produceva sconsiderati aumenti nel numero delle armate presenti su certo stato (dovuto anche al limite massimo delle 255 armate) che ovviamente poi falsavano la partita. - I dadi assumono ora i colori dei giocatori coinvolti nell'attacco, mi è stata suggerita da uno dei beta tester e l'ho realizzata, pensando che renda meglio l'idea di cosa sta accadendo (per i pigri che non vogliono leggere i messaggi...) - Corretto un ulteriore bug nella creazione del file azioni.dat. - Ho scritto un programmino lettore dei file azioni.dat, che decodifica il file nelle sue azioni e mi permette un esame veloce del file stesso. - L'indicatore della sequenza giocatori, l'indicatore della distribuzione delle carte fanno e le procedure che visualizzano i dadi fanno ora parte del modulo visualizza.m. Cambiamenti in Rev. 077 (12/12/98, BETA-TESTING) - Ora nel file azioni.dat vengono riportate anche le azioni dei giocatori umani. Le vostre strategie, i vostri clic col mouse (fonte inesauribile di bugs impossibili da prevedere) sono registrati nel file... quante più copie mi farete pervenire di questi file, tanto più veloce sarà il miglioramento del gioco. Cambiamenti in Rev. 076 (12/12/98, BETA-TESTING) - Correzione dei bugs relativi alla creazione del file azioni.dat. Tali bugs non influivano sul gioco, ma registravano male (o non registravano affatto) degli eventi di gioco. - La procedura di reset del gioco è ora un modulo del programma. Cambiamenti in Rev. 075 (11/12/98, BETA-TESTING) - Ottimizzato l'uso del file azioni.dat, ora le sue dimensioni sono state ridotte di circa 20 volte, vengono registrati dei codici e non le stringhe con le intere frasi relative alle operazioni. - La procedura che testa le dimensioni del workbench e il numero di colori in uso è ora un modulo del programma. Cambiamenti in Rev. 074 (10/12/98, BETA-TESTING) - Ora il gioco genera il file azioni.dat, in cui vengono riportate le azioni dei giocatori computerizzati. Spero che questo mi aiuti a risolvere qualche bug. Cambiamenti in Rev. 073 (10/12/98, BETA-TESTING) - Riscontrato bug che non visualizza correttamente le armate sul planisfero (Es. su uno stato appare 1 armata, al momento in cui viene attaccato appare il reale numero di armate presenti su questo, non succede spesso e questo rende difficile la sua individuazione) - Eliminato bug di rimescolamento carte giocate. - Diminuito il delay che evita doppie pressioni involontarie del gadget ok. - Inserita la stringa $VER: all'interno del sorgente. - Le procedure che gestiscono la palette e il diagramma di potenza fanno ora parte dei moduli del programma. Cambiamenti in Rev. 072 (9/12/98, BETA-TESTING) - Ho aggiunto un diagramma di potenza dei giocatori. - Ho spostato e modificato i gadget di Rinforzi e Attesa. - Nella console JeaWorldWar monitor vengono mostrati i dati di ogni attacco per trovare la causa del bug alaska-alaska. Cambiamenti in Rev. 071 - Finalmente ho capito come passare intere matrici dal programma principale ai moduli, quindi questo mi permetterà di ottenere un programma sempre più modulare (bastava leggere i docs... perchè cerco sempre di fare l'autodidatta?). L'eseguibile è così diventato leggermente più compatto, grazie alla modularizzazione delle routine che si occupavano della visualizzazione delle bandierine sul planisfero. @endnode