Intervista a Mikael Tillander

Autore: Raffox - Pubblicato il 28-07-2009.
(© http://ready64.it - Versione Stampabile. Riproduzione Vietata.)

078_mikael_tillander Kng #1

Contrariamente a ciò che si può pensare, i bei videogames ideati da volenterosi appassionati ci sono ancora.
Mikael Tillander, sconosciuto programmatore autodidatta apparso all'improvviso nella scena, ha appena concluso la sua prima opera per il C64: Knight'n'Grail, in vendita sul sito della Psytronik.
Abbiamo provato il suo videogioco e, entusiasti del lavoro compiuto, ci siamo rivolti direttamente al programmatore per avere qualche notizia in più, anche riguardo i progetti in cantiere!


Ciao Mikael! Intanto vorremmo ringraziarti da subito per aver accettato l'intervista!
Perché non inizi a raccontarci qualcosa di te. Ad esempio potresti dirci quanti anni hai, che lavoro svolgi, i tuoi hobby
... il tuo animale preferito, quello che preferisci insomma.

Ciao a tutti, mi chiamo Mikael e vivo in Svezia, mi sto avvicinando ai 40 (anche se sono ancora lontani qualche anno). Sono sposato e ho un figlio di 2 anni.

Lavoro come svliluppatore di videogiochi per telefonia mobile, principalmente mi occupo di giochi del poker. La maggior parte del tempo la impiego programmando in svariati linguaggi (FPGA, Assembly e Java principalmente). Mi piacciono molto le gare col flipper e disegnare col computer (gergalmente 'pixeling', ndr). Riguardo mia moglie e mio figlio? Beh, trovo tempo anche per loro...

Come hai iniziato la tua esperienza col Commodore 64?

Tempo addietro, nell'84 penso. Mia madre mi fece una sorpresa regalandomi un Vic 20. Allora iniziai a muovere i primi passi nella programmazione, creando semplici avventure testuali, per giunta senza essere provvisto di un registratore per le cassette col quale salvare i miei lavori. Quindi ricordo che dopo aver trascorso un intero pomeriggio a digitare il codice ero costretto a copiare il listato su carta per non vederlo andare perduto e a riscriverlo tutto daccapo il giorno seguente! Ah, che giorni!

L'anno successivo mi comprai un Commodore 64 che usai per lo più per giocare e per imparare un po' di Assembly. Non realizzai programmi particolarmente interessanti, però ricordo di aver inviato un gioco abbastanza mediocre alla Hewson, la quale lo rifiutò educatamente. Pensa che il punteggio che ottenne fu 2/10! Ahah!

Come e quando hai iniziato ad interessarti alla programmazione di videogames?

Ciò che mi ha veramente stimolato fu l'uscita dell'arcade Gun Smoke della Capcom, nel 1985. Ricordo che spesi tutti i miei risparmi su quel gioco da bar, del quale diventai piuttosto esperto.
In seguito feci alcuni tentativi di ricreare lo stesso feeling sul C64, ma furono tutti dei fiaschi...
Così decisi di comprare direttamente il gioco da bar col quale mi diverto ancor oggi. Secondo me è il miglior gioco. Punto.

Come hai imparato a programmare?

Ho imparato l'Assembly studiandolo sulla Guida di Riferimento del Programmatore del C64 e avvalendomi di diversi listati pubblicati su alcune riviste. Poiché nel paese in cui vivevo non c'era la scena ho dovuto capire tutto praticamente da solo, fallendo miseramente!

Qual è la storia dietro Knight'n'Grail e cosa ti ha ispirato?

Ho iniziato lo scorso anno facendo un 'mockup' di un gioco che avevo in testa da un pó di tempo, inviandolo poi al sito dei Pixeljoint.com. La cosa mi stimolò non poco e quindi decisi di farne un gioco. Sapevo di voler ricreare una mappa come quella di Castelvania: Symphony of the Night e cominciai proprio da lì. Il resto è venuto da sé, aggiungendo all'ispirazione iniziale anche l'ideazione di elementi completamente nuovi.

Di quali tool ti sei avvalso per creare il tuo gioco? In particolare, per realizzare la grafica di cosa ti sei avvalso?

Ho usato KickAssembler per programmare il codice e intorno ad esso ho adattato l'insieme dei miei tool di sviluppo. Ho scelto KickAssembler principalmente per la sua semplicità, scoprendo solo in seguito che era anche molto potente per le cose che avevo bisogno di fare di volta in volta.

Per quel che riguarda la grafica ho utilizzato GraphicsGale e tramite un convertitore, che avevo appositamente scritto, ho trasformato da png a carattere tutti gli elementi che mi occorreva inserire in memoria. Una cosa insolita è che non ho utilizzato un editor a blocchi di alcun tipo, disegnando invece le schermate in formato png e lasciando poi il lavoro di conversione al programma che avevo scritto, che ne estraeva i blocchi e separava i caratteri adeguatamente. Ho scelto questa strada perché pensavo che così sarebbe stato più facile aggiungere nuovi elementi successivamente. In parte mi aiutò ma al contempo complicò altre fasi di sviluppo.

Interessante, hai utilizzato un metodo un inconsueto per creare le parti grafiche! Ma il risultato è indubbiamente di qualità superiore! E per quel che riguarda la musica?

Ho chiesto ad un collega di lavoro se poteva essere interessato a comporre qualche melodia per il gioco e ha accettato. In seguito, quando cioè mi ha consegnato un primo lavoro, ho scoperto che anch'egli faceva parte della scena e tutti i suoi brani mi sono piaciuti tantissimo. Ancora adesso, che il gioco è stato pubblicato, continua ad apportare migliorie e variazioni. Una persona quanto mai può essere dedicata?? Sebbene penso di essere riuscito a fermarlo, non mi stupirei se scoprissi che anche adesso mentre parliamo, sta ancora modificando i suoi brani...!

Che difficoltà hai incontrato durante lo sviluppo del gioco e qual è stato il bug più fastidioso e difficile da eliminare?

Da dove inizio?? La prima difficoltà in cui mi sono imbattuto è stata questa cosa chiamata Assembly, che non era così semplice come me lo ricordavo...
Ma una volta superate le difficoltà iniziali e raggiunta una maggior dimestichezza col linguaggio mi è successo di perdere la motivazione. Allora ho deciso di mettere insieme una demo del gioco per vedere le reazioni degli appassionati. I giudizi, tutti molto buoni, mi hanno aiutato a trovare la voglia di proseguire nel lavoro. In seguito ho incontrato un paio di problemi col design ma credo di aver superato anch'essi. Penso di dover ringraziare Hakon e Kenz se Knight'n'Grail è stato completato.

078_kng_original_mockup
Mockup di Knight'n'Grail... promettente, eh?

Ci sono stati tanti bug fastidiosi. Tutti, bene o male, sono individuabili nella demo. Ad esempio, problemi di colori durante lo scrolling e di visualizzazione cambiando schermate andando verso l'alto. Il più fastidioso però è stato quello durante i caricamenti e per eliminarlo mi ci è voluto molto tempo. E' cominciato quando ho inserito la possibilità di accumulare le monete. Apparentemente un flag settato in decimale andava in conflitto durante un interrupt, causando gli errori più strani.

Come erano organizzate le tue giornate durante lo sviluppo del gioco?

Ero in permesso di paternità dal lavoro per la maggior parte del tempo, per cui ho avuto diverso tempo libero mentre mio figlio dormiva, oppure verso sera quando mia moglie se ne occupava.

Avevo un foglio Excel sul quale avevo annotato tutti i punti che sviluppavo man mano. Era un duro lavoro ma mi divertivo da matti!!

Quanto tempo hai impiegato per portarlo a termine?

Ho iniziato nel dicembre del 2008 e ho finito nel giugno di quest'anno. Approssimativamente ho impiegato sette mesi, 3 ore al giorno circa.

078_kng_early_equip
Menu equipaggiamento, dalla preview di Knight'n'Grail

C'è nulla di KnG, ora che è in commercio, che desidereresti aver cambiato o migliorato?

A maggio ho veramente pensato di cancellare tutto e ricominciare dall'inizio. Avevo imparato tante cose nuove durante le fasi di sviluppo che tutto ciò che avevo precedentemente programmato era un pó obsoleto. Ciò dal punto di vista del programmatore, mentre dal punto di vista grafico non avrei molto da cambiare.

Ecco un elenco delle cose che adesso avrei voluto sviluppare diversamente:

- Ottimizzare la velocità di scrolling. Avete mai visto un cavaliere così lento prima d'ora?? Adesso ho le conoscenze adeguate per aumentare la velocità dello scrolling dello schermo senza però perdere cicli raster.
- Ottimizzare la routine di gestione dei dati relativi ai blocchi grafici e alle schermate. Viene sprecata troppa memoria. Ci sarebbe il modo di ridurre il codice, lasciando spazio prezioso per una mappa più vasta e altre cose importanti.
- Implementare un multiplexer degli sprite. In realtà non è un multiplexer vero e proprio quello utilizzato in KnG, piuttosto si tratta di una routine che divide l'area di gioco in zone. Per il mio prossimo progetto ho creato un vero multiplexer che permette di avere sprite più grandi e allo stesso tempo riduce il flickering (distrubi, ndr) sullo schermo.
- Realizzare una piccola routine di gestione della mappa di gioco. Infatti avrei potuto sviluppare un generatore di mappe invece di avere una schermata disegnata. Anche questa miglioria lascerebbe una buona quantità di memoria libera per altre cose.

Ci sono altri videogiochi che ti hanno influenzato nella scelta del design, nella creazione dei suoni e delle musiche, nella giocabilità o nel concept più in generale?

Nulla, a parte Castelvania: Symphony of the Night. Qualcuno potrebbe obiettare asserendo che Metroid mi abbia ispirato, ma la cosa è stata indiretta ed è dipesa più da Castelvania. Per quel che riguarda i suoni, all'inizio ero già abbastanza soddisfatto di essere riuscito a far riprodurre dei rumori al computer. Quindi penso di non poter dire di essere stato ispirato da altri videogiochi, no.

Puoi darci qualche notizia tecnica in più sul tuo gioco? (Ad esempio, ho notato che hai utilizzato una tecnica di split screen per visualizzare più colori sullo schermo, proprio come in Creatures).

KnG è stato programmato senza far ricorso a particolari trucchi tecnici. Eccetto il color split, che non è nulla di particolarmente speciale. Come dicevo prima, nemmeno il multiplexer è veramente un multiplexer.

Hai deciso di sviluppare Kng principalmente da solo. Perché questa scelta?

Non mi sarei mai aspettato di trovare altra gente interessata!

Inoltre si è trattato di un progetto così piccolo che avere altri collaboratori avrebbe solo complicato e allungato i tempi di sviluppo.

In cosa è consistito l'apporto nella grafica da parte di Hakon Repstad?

Hakon ha realizzato tutta l'area di gioco del livello "Archmage Pass" (che infatti prende il nome dal suo alias, appunto "Archmage"). Io ho disegnato i background ma tutti gli sprite dei nemici sono opera sua. Se li osservi bene puoi notare la differenza: sono disegnati e animati in modo sublime, a differenza di tutto il resto del gioco...

Anche tutte le immagini di fine gioco e i disegni della confezione sono stati realizzati da lui. Inoltre ha anche ritoccato un pochino la schermata introduttiva. Hakon è veramente una persona in grado di sfruttare al massimo le qualità grafiche del C64!

Come sei entrato in contatto con Psytronik?

 Kenz in verità mi ha contattato per primo dopo che ho rilasciato la preview a gennaio. Una persona meravigliosa!

Osservando il materiale sul tuo sito ho notato altri due lavori in corso (Geo Six e uno sparatutto a scorrimento verticale). Raccontaci di più in proposito (molto di più, se non ti dispiace!! Vogliamo immagini e mockup).

Geo Six l'ho avuto in testa sin dal 1992. Il progetto ha attraversato alcune modifiche grafiche nel corso del tempo, ma il concetto principale è rimasto invariato. Si potrebbe dire che KnG sia stato solo un test prima di iniziare il vero lavoro. Ogni giorno che passa si avvicina sempre di più l'inizio effettivo del lavoro. Ma penso sia ancora un po' presto e oltretutto non mi è rimasto molto tempo libero ora che ho ripreso a lavorare. Se mia moglie volesse un fratellino per nostro figlio, forse riuscirei a trovare di nuovo il tempo...

078_geo6_mockup6
Mockup di Geo Six

Il videogioco a scorrimento verticale è solo un mockup, è passato diverso tempo da quando ho avuto ancora ispirazione in proposito. E' probabile che finirò per abbandonare il progetto a meno che non mi venga in mente qualche nuova idea tale da risvegliare l'entusiasmo in me.

Nel menu principale del sito è presente anche il link ad un progetto segreto... ma quello rimane appunto ancora segreto.

Comunque, finendo KnG in un certo modo, si può rintracciare qualche indizio su cosa consista quel progetto. Ma non sto dicendo nulla del genere. Potrei anche dire che sarà il mio prossimo progetto e che è già iniziato, ma in realtà non sto  dicendo neanche questo...!

Quali sono i tuoi videogiochi preferiti per C64? Sei interessato anche ad altri computer dell'epoca del Commodore 64?

Mi piace tutto ciò che ha realizzato Andrew Braybrook: IO è un capolavoro. Di tanto in tanto mi piace anche giocare ad Armalyte, ma è di Agent USA che non riesco proprio a fare a meno. Ecco, questo è un gioco che merita l'attenzione di tutti.

Mi piacerebbe fare un gioco basato su tutti i primi arcade della Capcom. Inoltre mi piacerebbe provare a sviluppare qualcosa anche per l'Amstrad CPC. Ma credo che il desiderio provenga solo dalla palette di colori più satura, in contrasto con quella più tenue del C64. Certe volte penso di aver odiato la palette dei colori del C64, ma il più delle volte l'adoro. E' un sentimento contrastante, questo legato al mondo del retrò.

In ogni caso, non saprei dire se mi piacerebbero altri computer 'vintage', non avendoci mai programmato.

Sei attualmente in contatto con altri scener legati al C64? E della scena, più in generale, cosa ne pensi?

Hakon e Hans sono entrambi nella scena, perciò direi di sì, sono in contatto con qualcuno di essi.
A parte loro, ho avuto sporadici contatti con qualcun altro e devo dire che sono tutti molto gentili e simpatici.

E' solo grazie alla scena che il C64 è ancora in vita. Che sia superata o no, la scena esiste ancora al fine di preservare il computer e tutto ciò che è legato ad esso. Si vede che amo tantissimo la scena, hehe!

Che reazione avresti se scoprissi che il tuo gioco è stato crackato e rilasciato nella scena subito dopo essere uscito in commercio?

Ti riferisci ad un KnG ++200% con livelli extra, animazioni più veloci, più nemici e oggetti da scoprire? Non vedo l'ora!! Ma mi sembra di notare che in qualche modo anche la scena è soggetta a delle regole, e aspetta finchè la cosa non disturbi le vendite. La scena rispetta la Psytronik!

Mikael, ti ringraziamo per il tempo che ci hai dedicato! Vuoi aggiungere qualcosa?

Ti ringrazio per avermi fatto così tante domande interessanti! Se qualcuno non fosse soddisfatto di KnG, lo invito a mettersi in contatto con me e cercherò di risolvere il problema.

Saluti a tutti!


Riferimenti
Sito dell'editore: Psytronik
Sito dell'autore: Wide Pixel Games