Global game jam 2014

bad_hunter

Metroid Hunter
Mi spiace aprire solo ora questo topic ad evento finito ma purtroppo l'idea mi è venuta solo ora, questo week end in tutto il mondo si è tenuta la global game jam evento in cui sviluppatori di giochi di tutto il mondo si riuniscono in svariate jam sparse per il mondo con in comune il tema per fare un gioco,

Ho partecipato alla game jam romana tenutasi alla facoltà di ingegneria di Roma 3, essendo la mia prima vera jam (in realtà ne ho fatta un'altra ma eravamo pochissimi e un solo team) mi sono unito ad un team composto di tre ragazzi e due ragazzi (tre programmatori e due grafici) tutti alle primissime armi e quasi tutti alla prima jam (l'unica "esperta" è stata anche quella che ha fatto meno di tutti), e siamo riusciti a fare solo metà gioco, che però è stato un grandissimo risultato visto la nubbagine del team.

Quest'anno il tema era "We don't see things as they are, we see them as we are.", un tema quindi apertissimo e ricco di interpretazioni difatto durante il brainstorming è uscito fuori veramente di tutto, a prevalere però è stato un mio concept (del *****) in cui un uomo con una voglia matta di rimorchiare entra in un bar, si ubriaca a bestia e tenta di rimorchiare le ragazze del locale solo che più è ubriaco e più l'alcool gli fa brutti scherzi facendogli apparire ragazze mostruse come belle.

Purtroppo abbiamo fatto solo il minigioco degli shot in cui il personaggio accumula ubriachezza, ci manca totalmente la parte del rimorchio dove avevamo pensato di mettere dei dialoghi stile battaglia degli insulti di monkey island, ci siamo però promessi di completare il gioco che in caso posterò anche qui per chi fosse curioso di vederlo, ovviamente sono disponibilissimo a rispondere ad eventuali domande tecniche sul codice (della grafica non saprei dirvi nulla).

Ci sarebbero poi una marea di cose ed anedotti da raccontare sulla jam, ma è veramente troppa roba, quindi magari col tempo scriverò qualcosa; spero in serata di postarvi l'attuale versione del gioco.
 

federossoblu

Ant of the Sky
-Linguaggio di programmazione/Engine/SDK usato
-Architettura software scelta
-Quali sono i problemi che hai trovato in qualità di niubbo nel corso dello sviluppo del gioco
-Come vi siete divisi il lavoro (tra programmatori principalmente, anche se sarei curioso anche riguardo i grafici)
-Qual è stato il vostro workflow? Diciamo, il passaggio dall'idea al prototipo fino al prodotto finale

Ho scoperto solo con il tuo post che c'era qualcosa anche alla facoltà di Ingegneria di Genova :( Mica l'hanno pubblicizzata questa cosa, però, in facoltà :(
 

bad_hunter

Metroid Hunter
-Linguaggio di programmazione/Engine/SDK usato
-Architettura software scelta
-Quali sono i problemi che hai trovato in qualità di niubbo nel corso dello sviluppo del gioco
-Come vi siete divisi il lavoro (tra programmatori principalmente, anche se sarei curioso anche riguardo i grafici)
-Qual è stato il vostro workflow? Diciamo, il passaggio dall'idea al prototipo fino al prodotto finale

Ho scoperto solo con il tuo post che c'era qualcosa anche alla facoltà di Ingegneria di Genova :( Mica l'hanno pubblicizzata questa cosa, però, in facoltà :(

Provo a rispondere un po' a tutte le domande con un'unica risposta.

Come ho scritto prima eravamo 3 programmatori di cui c'ero io che ho cominciato a programmare (ed intendo "hello world") due anni fa alle scuole serali ed ora sto al primo di informatica e gli altri due (un ragazzo ed una ragazza che però lei già conoscevo) che stanno al terzo anno di ingegneria informatica; può sembrare strano ma quello più skillato ero io (sia nel fare giochi che nel programmare) quindi ho imposto io la tecnologia da usare visto che loro non ne conoscevano una e abbiamo utilizzato l'ambiente di sviluppo di processing che è una specie di fork di java (ma anche no!) che però può essere esportato e caricato in altri ambienti tipo eclipse.

Una volta scelto l'ambiente abbiamo provato a dividerci il lavoro facendo ognuno di noi una classe diversa, questa cosa non ha funzionato perchè i pezzi di codice non combaciavano quasi mai quindi ci è partito via molto tempo, alla fine la ragazza non ha combinato nulla ed ha passato il tempo in giro per gli altri team mentre io e l'altro ragazzo ci siamo messi a programmare diversi aspetti del gioco per poi unirli insieme il sabato sera, purtroppo lui nonostante l'impegno (mi ha impressionato da questo punto di vista) ha fatto qualche errorino che per essere riparato ci ha portato via moltissimo tempo ed energie, ad esempio abbiamo perso non so quante ore su una riga di codice che non faceva più funzionare gli input, fortunatamente però alla jam c'era quello che mi ha fatto conoscere Processing che definirlo "guru" è riduttivo durante tutta la jam ci ha dato moltissimi consigli (anche lui ha usato processing per fare un gioco in 3D sul peyote).

Il workflow non c'è praticamente mai stato, essendo 48 ore un lasso di tempo veramente ristretto specialmente se non usi roba bella pronta tipo engine grafici come unity, ci si butta a lavorare senza pensare troppo sul cosa fare, l'unica cosa che avevamo deciso era di fare le animazioni solo se avanzava tempo e tantissimi altri aspetti come il minigioco del rimorchiare non sono stati inseriti proprio per mancanza di tempo, alla fine abbiamo puntato tutto a presentare qualcosa di presentabile visto che nonostante la competizione è inesistente (team che si aiutano fra loro, gente che si presta ad altri team, zero premi ecc) ci scocciava rimanere a mani vuote, alla fine avevamo fra le mani un minigiochino che ovviamente non era paragonabile a quello degli altri team, però per dire uno dei team che gareggiava era quello dei Santa ragione che a Settembre hanno pubblicato un gioco su steam, in altre parole eravamo una squadra di dilettanti in mezzo ad un girone di champions league!

Altro elemento fondamentale della jam....la red bull, c'erano centinaia di lattine di red bull per tutti; domenica sera stavamo tutti con la tachicardia però moltissimi bug dei giochi non sarebbero stati risolti se non c'era la red bull!
 

federossoblu

Ant of the Sky
Provo a rispondere un po' a tutte le domande con un'unica risposta.

Come ho scritto prima eravamo 3 programmatori di cui c'ero io che ho cominciato a programmare (ed intendo "hello world") due anni fa alle scuole serali ed ora sto al primo di informatica e gli altri due (un ragazzo ed una ragazza che però lei già conoscevo) che stanno al terzo anno di ingegneria informatica; può sembrare strano ma quello più skillato ero io (sia nel fare giochi che nel programmare) quindi ho imposto io la tecnologia da usare visto che loro non ne conoscevano una e abbiamo utilizzato l'ambiente di sviluppo di processing che è una specie di fork di java (ma anche no!) che però può essere esportato e caricato in altri ambienti tipo eclipse.

Una volta scelto l'ambiente abbiamo provato a dividerci il lavoro facendo ognuno di noi una classe diversa, questa cosa non ha funzionato perchè i pezzi di codice non combaciavano quasi mai quindi ci è partito via molto tempo, alla fine la ragazza non ha combinato nulla ed ha passato il tempo in giro per gli altri team mentre io e l'altro ragazzo ci siamo messi a programmare diversi aspetti del gioco per poi unirli insieme il sabato sera, purtroppo lui nonostante l'impegno (mi ha impressionato da questo punto di vista) ha fatto qualche errorino che per essere riparato ci ha portato via moltissimo tempo ed energie, ad esempio abbiamo perso non so quante ore su una riga di codice che non faceva più funzionare gli input, fortunatamente però alla jam c'era quello che mi ha fatto conoscere Processing che definirlo "guru" è riduttivo durante tutta la jam ci ha dato moltissimi consigli (anche lui ha usato processing per fare un gioco in 3D sul peyote).

Il workflow non c'è praticamente mai stato, essendo 48 ore un lasso di tempo veramente ristretto specialmente se non usi roba bella pronta tipo engine grafici come unity, ci si butta a lavorare senza pensare troppo sul cosa fare, l'unica cosa che avevamo deciso era di fare le animazioni solo se avanzava tempo e tantissimi altri aspetti come il minigioco del rimorchiare non sono stati inseriti proprio per mancanza di tempo, alla fine abbiamo puntato tutto a presentare qualcosa di presentabile visto che nonostante la competizione è inesistente (team che si aiutano fra loro, gente che si presta ad altri team, zero premi ecc) ci scocciava rimanere a mani vuote, alla fine avevamo fra le mani un minigiochino che ovviamente non era paragonabile a quello degli altri team, però per dire uno dei team che gareggiava era quello dei Santa ragione che a Settembre hanno pubblicato un gioco su steam, in altre parole eravamo una squadra di dilettanti in mezzo ad un girone di champions league!

Altro elemento fondamentale della jam....la red bull, c'erano centinaia di lattine di red bull per tutti; domenica sera stavamo tutti con la tachicardia però moltissimi bug dei giochi non sarebbero stati risolti se non c'era la red bull!

Grazie della risposta :)

Chissà perchè non trovo sorprendente il fatto che i ragazzi di Ingegneria Informatica fossero meno skillati in fatto di programmazione: se il programma è anche minimamente simile a quello che facciamo qua a Genova, di programmazione se ne vede pochissima e giusto le basi! Forse in alcuni corsi si insegna C# o Java, ma generalmente si fa C e C++. Però mi sembra abbastanza giusto, d'altronde, se ti piace la programmazione e vuoi cimentarti in cose un po' più serie dei "programmini calcolatrici" delle esercitazioni devi farlo per conto tuo.

Finita questa piccola digressione, devo dire che questa cosa del Gamejam mi affascina un po', soprattutto per il fatto che devi riuscire a creare un gioco da zero in pochissimo tempo, ma anche per l'opportunità di imparare nuove cose in materia di game-developing. Temo tuttavia che non mi ci troverei troppo bene: solitamente preferisco prendermi il tempo giusto per concentrarmi e fare una scaletta organizzata con i compagni con le cose da fare.

A proposito: penso ti possa interessare questo sub-reddit: gamedev - game development, programming, math, art, collaboration. Spesso ci sono thread che aiutano molto per quanto riguarda lo sviluppo, come anche vengono linkate guide e interessanti ebook gratuiti.
 

bad_hunter

Metroid Hunter
Scusa il ritardo se posto solo ora una versione del gioco ma ho voluto prima sistemare alcune cose.

https://drive.google.com/file/d/0B6g8AxxiZYWmYmlDQ3Z4Y1JuY1k/edit?usp=sharing

Dentro ci sono sia i sorgenti, gli assets che delle versioni eseguibili per ogni os!

Questo invece è lo screen della schermata iniziale:

1505393_10152191174484049_787530514_n.jpg

Purtroppo come dicevo funge solo il minigioco degli shot in cui bisogna cliccare quello che c'è scritto e non il colore della scritta (salvo non coincidano).

Mi sono appena tornati un paio di consigli per principianti:

Solitamente si comincia da un concept che serve a dare un ambientazione ed uno scopo al gioco e fa iniziare programmatori e grafici a lavorare, molto spesso vengono scelti concept incentrati sulla trama e dove bisogna fare molti dialoghi e questi due elementi sono molto snobbati solitamente perchè tutti pensano di poterli fare ed anche in poco tempo.
In realtà non c'è nulla di più falso visto che qualsiasi tipo di trama (seria o demenziale) richiede moltissimo tempo per esser pensata e scritta, nel nostro caso avevamo i dialoghi che oltre che dovevamo decidere come implementarli (se farne un albero o buttarli tutti dentro un array) toccava anche scriverli, ecco a fine jam non abbiamo scritto nemmeno o pensato una riga!
 
Top