Skip to navigation
Logo Penaz's Area

cat /dev/random > penaz

2D Game Development: From Zero To Hero - 2 anni dopo


Sono passati quasi 2 anni dal primo rilascio di questo libro: lamentiamoci riguardo le speranze, esperienze e piani futuri.

Il 13 Maggio 2019 ho posato la prima pietra di un progetto che volevo veder crescere. Volevo creare il libro che avrei voluto avere quando ho iniziato ad imparare l'arte dello sviluppo di videogiochi. Questo progetto è "2D Game Development: From Zero To Hero", del quale ho parlato in un precedente post del 2019

Il piano era molto semplice: avviare il progetto con un linguaggio di markup che fosse semplice da imparare, usare e modificare, così che chiunque potesse contribuire con le proprie conoscenze.

L'obiettivo era quello di raccogliere la conoscenza di una comunità dedicata allo sviluppo di videogiochi, uniti da un unico obiettivo: creare una risorsa gratuita che potesse insegnare alle persone come creare giochi in 2D, senza insegnare uno strumento specifico, ma insegnando metodi, pianificazione di progetto e dando suggerimenti e trucchi.

Speranze disattese, errori e dubbi

Speravo di trovare qualche buona anima che si unisse alla mia impresa di creare questo libro, qualcuno al di fuori della mia cerchia di amici (i quali ringrazio profondamente per il loro aiuto e contributo).

Purtroppo, tale speranza è stata disattesa, costringendomi ad una ricerca in solitaria nel tentativo di riempire i buchi lasciati ed alle volte costringendomi a lasciare dei segnaposto.

Ho lasciato un post nel subreddit "gamedev", nella speranza di attirare un po' di interesse verso il progetto, ma senza successo. Il post ha ottenuto una trentina di "upvote" (un numero decente), ma non ha portato un grande interesse verso il progetto.

Probabilmente il peggior errore che ho fatto è stato la scelta della conservazione dei dati: essendo prevalentemente un libro tecnico, ho optato per l'uso di git come sistema di versionamento, con GitLab e GitHub come repository sul cloud. Questo significa che chi vuole contribuire deve conoscere un minimo di come funziona il sistema per poter apportare modifiche.

Il secondo errore più grande è stato il formato, Pandoc Markdown è un formato fantastico per scrivere documentazione, ci puoi scrivere interi libri ed è semplice da leggere e scrivere (la mia Tesi universitaria è stata scritta con tale linguaggio, e sto scrivendo anche questo post usando Markdown!). Il problema è che molte persone potrebbero non conoscerlo o volerlo imparare, inoltre ho avuto la necessità di mischiarci dentro del LaTeX, impedendomi di rilasciare una versione EPub.

Un modo migliore per pubblicare il libro sarebbe stato, probabilmente, usando una piattaforma wikimedia, come wikibooks: questo mi avrebbe comunque consentito di creare una versione PDF, dandomi forse più visibilità e rendendo le modifiche da parte di altri più semplici.

Tutto ciò ovviamente mi ha messo addosso un sacco di dubbi sulla validità del progetto nella sua interezza, fino al punto in cui ho pensato che questo fosse soltanto un "esercizio di inutilità".

Sorprese Piacevoli

Dopo un po', ho preso coraggio ed effettuato un fork del fantastico Repository "Free Programming Ebooks" di EbookFoundation ed aggiunto "2D Game Development: From Zero to Hero" come libro "in produzione".

Il libro è stato accettato e poco dopo ho trovato una nuova "issue" aperta nel repository di GitHub da parte di Eric Hellman , presidente della Ebook Foundation, con dei suggerimenti su come rendere migliore il libro e come navigare nel linguaggio legalese della licenza Creative Commons ed altri suggerimenti generalmente fantastici.

Prendo questo paragrafo per ringraziare dal profondo del mio cuore Eric Hellman per il suo aiuto e pazienza.

Poco dopo, sono venuto a conoscenza di un sito chiamato unglue.it , connesso alla Ebook Foundation, e "2D Game Development: From Zero to Hero" era il libro in primo piano per alcuni giorni. Ora il libro ha pa propria pagina dedicata su unglue.it , anche se non è aggiornata.

Un po' di tempo dopo tali accadimenti, ho deciso di pubblicare il libro su itch.io , ed è entrato a far parte della top 100 dei libri "nuovi e popolari" in relativamente poco tempo, ed ora è al 61mo posto nella categoria "libri popolari".

Il libro ha al momento 600 downloads su unglue, oltre 500 downloads su Itch (la versione C++ è la più scaricata) e 3 valutazioni. Purtroppo non mi è possibile tracciare i download diretti da GitLab e GitHub.

Parlando di GitHub, il progetto sta attorno alle 45 "stars" (che sono molte di più di qualunque altro mio progetto), con 3 fork (attualmente inattivi).

Piani Futuri

Lua! Questa è la prima cosa che mi viene in mente, vorrei veramente tradurre i listati di codice del libro in Lua, e creare un'ulteriore edizione con quello che è probabilmente (dopo C++) uno dei linguaggi più usati nello sviluppo di videogiochi.

Lua è usato come linguaggio di scripting nei videogiochi, oltre che linguaggio principale del motore LÖVE , di cui ho parlato molto tempo fa in un post dedicato: Love: Un framework per la creazione di videogiochi 2D . Perciò penso questo possa essere un'aggiunta molto apprezzata.

Un'altra edizione che potrebbe essere molto apprezzata è un'edizione dedicata al linguaggio C#, perchè è il linguaggio usato dal motore Unity.

I miei piani futuri includono portare il libro ad uno stato che ne consenta l'esportazione in formato EPub, se la comunità lo vuole (infatti creerò un sondaggio su Twitter al riguardo).

Prevedo inoltre di aprire ulteriori possibilità di interazione con la pagina di itch.io, attivando funzionalità simili a forum, invece di lasciare solo una sezione commenti.

Conclusioni

È stato un viaggio lungo e non ne vedo ancora la fine, spero vivamente che in futuro qualcuno si unisca a me in quest'impresa, in quanto ritengo che lo sviluppo di videogiochi sia un modo incredibile di esprimere la creatività di qualcuno e chiunque dovrebbe poter provare a sviluppare qualcosa.

Avere una risorsa gratuita per cominciare è qualcosa che, nella più modesta delle mie opinioni, è estremamente preziosa in un mondo pieno di risorse a pagamento che potrebbero essere al di fuori del nostro budget o potrebbero essere "la scelta sbagliata" per una certa persona.

Concludo questo post con i link all'ebook.

Link Alla pagina Itch.io del libro

Link al repository GitLab del libro

Link al repository GitHub del libro

Grazie a tutti per aver letto questo lungo post (leggete "lamentela") e ci si vede nel prossimo!

Penaz.