Ciao Giordano e innanzitutto complimenti per il tuo gioco per Android Round2. Tenendo conto che l'interesse per lo sviluppo di applicazioni mobile è alto – soprattutto tra i giovani – ci farebbe piacere farti qualche domanda a riguardo per potere dare qualche informazione utile a chi volesse seguire le tue orme. Ma partiamo dall'inizio. Chi è Giordano Berselli (aka OneLastTry Studios)? E cosa eventualmente c'è prima di Round2?
Ciao e grazie a te intanto, sono uno studente di Informatica al terzo anno, che ha sempre avuto la passione per il gaming, e che ha da poco iniziato a lavorare in tal senso.
Prima di Round² ho sviluppato assieme a Gian Luca Arcetti una piccola utility per Android (Lumen – Led Torch) , una torcia che implementa diverse funzionalità, per prendere confidenza con il software development kit per Android, e un gioco di poker orientato al multigiocatore via rete locale, con ogni giocatore che vede sul proprio device Android le proprie carte, fiches e possibili azioni mentre sullo schermo del pc è presentato il tavolo con le carte e la situazione di ogni giocatore.
Questo progetto non è ancora stato rilasciato, in quanto, seppur pienamente funzionante, è ancora in fase di ottimizzazione. Inoltre pensiamo di scrivere un'applicazione per tablet che gestisca il tavolo e la partita al posto del PC.
Passando invece al gioco, perché Round2? Intendo: perché hai scelto di sviluppare un gioco di questo genere (e non altro), da dove hai preso ispirazione e come e in che tempi è nata l'idea completa di questo bel progetto?
Prima di pensare a round² ho valutato diverse opzioni, tra cui un endless run e un platform. Tuttavia questi generi hanno bisogno di una forte componente grafica che non sarei stato in grado di creare.
È nata quindi l'esigenza di creare un gioco con una grafica minimale e semplice ma comunque d'effetto. Ho iniziato a giocare a diversi giochi che presentassero queste caratteristiche, come Super Hexagon, Thomas Was Alone e Gyro.
L'idea iniziale era quella di presentare un solo cerchio e non 2, e poterne modificare la velocità attraverso uno slide laterale, l'idea era quella di “simulare” un giradischi. Dopo diverse considerazioni ho però capito che la strada giusta da seguire era quella di utilizzare 2 cerchi, per rendere il gameplay meno monotono.
L'idea è nata in un mese circa, poi è andata perfezionandosi durante lo sviluppo stesso.
Come mai hai scelto Corona per lo sviluppo del gioco? Ci puoi dire qualcosa sul linguaggio e sugli strumenti ad esso collegati – e ci puoi dire (a posteriori) pregi e difetti di questa scelta?
Ho scelto Corona per svariati motivi: sono alle prime armi in questo settore e Corona offre un'ottima documentazione, e inoltre ho iniziato a sviluppare Round² durante il corso di Linguaggi Dinamici. Dal momento che Corona utilizza come linguaggio di programmazione proprio Lua, un linguaggio dinamico, mi è sembrata un'ottima opportunità per migliorare le mie conoscenze in questo campo.
La combinazione di Lua e delle API di Corona SDK dà vita a un linguaggio molto semplice da utilizzare, adatto anche a neofiti della programmazione.
Inoltre Corona SDK permette lo sviluppo unificato su Android e iOS, questo mi permetterà di portare Round² su iOS senza crearmi ulteriori problemi.
Ovviamente la semplicità si paga, utilizzare un linguaggio ad alto livello di questo tipo non consente l'ottimizzazione che si potrebbe ottenere con altri linguaggi come C/C++ e questo penso sia il principale svantaggio.
Inoltre se Corona SDK non mette a disposizione una funzionalità che riteniamo necessaria potrebbe non risultare possibile implementarla, quindi bisogna tenere conto di quello che si intende fare e controllare se la piattaforma mette a disposizione tutto il necessario.
Altra nota negativa è che Corona SDK non è totalmente gratuito, né open source, e offre una versione limitata (quella da me utilizzata) in via totalmente gratuita consentendo anche la pubblicazione di applicazioni e giochi fatti con essa. Nel momento in cui però questa non ci bastasse più e avessimo bisogno delle funzionalità messe a disposizione delle altre versioni dovremmo pagare cifre non indifferenti.
In generale comunque mi sono trovato molto bene, quindi penso che col senno di poi rifarei questa scelta, anche se probabilmente utilizzerò altro nei miei progetti futuri per ampliare le mie conoscenze.
Un gioco per essere completo ha bisogno (oltre che di una bella idea) anche di grafica, musica, effetti sonori e di una gui adeguata – tutte cose presenti e ben equilibrate in Round2. Ci puoi raccontare come hai realizzato (o recuperato) questi elementi – e quanta parte del tempo di sviluppo è stata dedicata a questi aspetti?
Tutte gli elementi grafici presenti in Round², font esclusi, sono stati creati da me utilizzando principalmente GIMP, sia per quanto riguarda gli elementi di gioco (cerchi e quadretti) sia i vari tasti e menu.
Ho una discreta esperienza nell'utilizzo di applicativi di questo genere, realizzare i vari elementi è stato un lavoro lungo più che difficile.
Direi di aver impiegato una quindicina di ore per creare gli elementi grafici e un'altra decina per provare diverse gui e capire quale fosse la più adatta.
Per quanto riguarda la musica invece devo ringraziare Giammarco Agazzotti che sta ancora producendo la colonna sonora del gioco (al momento le canzoni sono solo 3, ma nel prossimo futuro aumenteranno). Sono molto contento del lavoro che sta svolgendo, penso che la sua musica si adatti molto bene al gioco e spero di poter collaborare con lui anche in futuro, eventualmente in veste di programmatore oltre che di compositore, essendo lui laureando in Ingegneria Informatica.
Perché tra le piattaforme possibili hai deciso di scegliere Android? Ci puoi dire qualcosa sui vantaggi (e sugli eventuali svantaggi) di questa scelta?
Per il momento ho scelto Android in quanto non dispongo di Mac OSX e in generale di dispositivi Apple, ma sicuramente il gioco arriverà però anche su iOS entro la fine dell'anno.
Come già detto Corona SDK dovrebbe agevolarmi parecchio questo porting.
Il gioco è (almeno a parole) ancora in beta – ci puoi dire qualcosa sui cambi che hai fatto o che stai facendo e sulle idee che intendi ancora implementare prima che tu voglia considerare la tua app completa?
Prima di considerarsi completo il gioco dovrà disporre di più canzoni e del supporto ad achievement e leaderboard online, elementi che inizierò a implementare non appena conseguita la laurea.
Inoltre sto valutando modifiche ad alcuni punti del gameplay: probabilmente verrà modificata la condizione di sconfitta del giocatore. Ora si verifica a contatto con qualsiasi punto dell'ostacolo e vorrei modificarla al solo contatto con la parte inferiore.
Sto anche valutando la modifica e l'inserimento di alcuni set di colori.
La beta quindi si riferisce principalmente all'assenza di leaderboard/achievement online e alle poche canzoni ora presenti.
Post mortem, quali sono stati gli step del tuo lavoro che sono risultati più significativi per il raggiungimento dei tuoi obiettivi? Cosa rifaresti uguale e cosa invece (se dovessi ripartire ora) faresti in un modo diverso?
Sicuramente la parte più complessa è stata la gestione della creazione/eliminazione dei blocchi e il loro movimento lungo un arco circolare, essendo questi aspetti il fulcro del gioco.
Tuttavia non ho avuto grossi impuntamenti nemmeno in questa fase, lo sviluppo del gioco è stato piuttosto fluido e trovo difficoltoso parlare di step. Ho seguito il filo logico dei punti da implementare, partendo dal core del gioco ho ampliato il tutto fino ad avere il prodotto finito.
Hai consigli da dare a chi volesse fare un percorso come il tuo (ovvero non provare solamente a realizzare qualcosa – ma davvero partire da una idea per arrivare ad un prodotto completo che non sfiguri sullo store) ?
Anzitutto consiglio di stare con i piedi per terra, se si è alla prima esperienza è meglio pensare a una idea concretamente realizzabile piuttosto che qualcosa di magari più bello ma di difficile realizzazione.
Le conoscenze acquisite oltre alla soddisfazione personale saranno poi il trampolino di lancio per progetti futuri.
Inoltre consiglio a tutti di cercare un “collega”, nonostante Round² sia sviluppato solo da me ho quasi sempre lavorato in coppia con Gian Luca Arcetti (per progetti universitari, Lumen, PokerWifi) e in due si lavora molto meglio di quanto non si riesca a fare da soli.
Se non si è capaci di lavorare in parallelo va benissimo anche lavorare “spalla a spalla”, il rischio di rimanere fermi davanti a bug e problemi verrà così ridotto parecchio.
Hai qualche commento o aneddoto riguardo la pubblicazione del gioco o un qualunque aspetto esterno allo sviluppo (quindi testing, marketing o altro)?
Sì, nessuno mi dice mai il proprio record 🙂
La prima volta che chiedo a qualcuno il suo record mi sento sempre rispondere “Pochissimo” senza mai capire quanto valga quel pochissimo. Devo sempre insistere per sapere i risultati ottenuti da chi ha provato il gioco, spiegando che mi servono soltanto per fini statistici.
Che prospettive hai per Round2 – chiaramente tesi a parte? E che progetti futuri pensi di volere portare avanti in questo settore?
Finita la fase di beta e una volta pubblicato il gioco anche su App Store rilascerò due diverse versioni, una gratuita con pubblicità (come è ora la beta) e una versione a pagamento ad-free.
Aldila dell'aspetto economico spero che chi giochi a Round² si diverta e capisca perché il nome dello Studio è OneLastTry 🙂
Al momento sono indeciso se seguire il Master di I livello in Game Development o il corso di Laurea Specialistica in Visual Computing. Nel primo caso ovviamente avrò la possibilità di portare a compimento numerosi progetti in questo campo.
Aldilà del percorso che sceglierò spero di riuscire a creare, insieme a Giammarco Agazzotti e Gian Luca Arcetti, un piccolo studio composto da 5-10 persone e realizzare un gioco decisamente più complesso di Round².
Abbiamo qualche idea per una avventura 2d, spero che arrivare a fine anno questa idea si trasformi in un progetto concreto.
Grazie per il tempo che ci hai dedicato e in bocca al lupo per i tuoi studi e per i tuoi progetti. Ah, se vuoi questo è il momento giusto per ringraziamenti o saluti
Grazie a te per l'opportunità e crepi il lupo!
Colgo l'occasione per ringraziare la mia fidanzata e i miei amici che sono riusciti a sopportare l'invasione di versioni di prova da testare alla quale li ho sottoposti negli ultimi 2 mesi.
Capisco che non sia stato facile!