Ciao, mi chiamo Mark e sto creando un videogioco
intitolato "Mind Over Magnet",
un adorabile puzzle platformer
basato, l'avrete intuito, sui magneti.
Ricominciando lo sviluppo dopo la pausa natalizia,
ho notato un pulsante molto interessante
sulla mia dashboard-cosa per sviluppatori su Steam
che non posso mostrarvi per via degli accordi di riservatezza.
Era il pulsante per presentare il gioco
al prossimo Next Fest.
Si tratta della convention online di Valve
dove gli sviluppatori possono condividere le demo dei loro prossimi giochi.
E si è dimostrata un'ottima strategia di marketing:
guardate cos'è successo a Balatro
– coinvolgente titolo roguelike pokeristico –
nell'ultima edizione di febbraio.
Sapevo quindi di dover presentare Mind Over Magnet
al prossimo Next Fest di giugno.
Devo solo creare un trailer, preparare una demo
e correggere un aspetto molto irritante del mio gioco
che ormai mi tormenta da mesi.
Ora vi spiego.
(♪ ♪ ♪)
Il mio gioco è in pixel art, giusto?
Ma gli sprite sono decisamente grandi.
Confrontiamo Magnus con Mario o Madeline.
Significa che una schermata standard
misura 1280×720 pixel.
Quindi se usate un vecchio monitor a 720p…
grandioso, è pixel perfect.
Se giocate su un bel monitor a 1440p, come nel mio caso…
ottimo, è sufficiente raddoppiare i pixel.
E se giocate su un bellissimo televisore 4K
mi basta triplicare i pixel.
Ma nel caso dei 1080p,
la risoluzione più diffusa tra i monitor per PC
secondo le statistiche di Valve?
Beh, siamo nei guai perché è 1,5 volte
più grande dei 720p
e, beh, non…
non esiste il "mezzo pixel".
Esistono alcune soluzioni per aggirare il problema.
Una è lasciare che sia Unity ad occuparsene,
aggiungendo o eliminando dei pixel qua e là
facendo in modo che i "mezzi pixel"
si adattino ad una griglia di pixel interi.
Ma è una soluzione palesemente imperfetta
e può generare un aspetto grafico sciatto,
specialmente con gli angoli e le superfici curve.
Un'altra soluzione è l'uso dell'antialiasing
per smussare i bordi,
ma il tutto appare sfocato
e la pixel art perde il suo nitido aspetto retro.
La soluzione numero tre – o la "C", non mi ricordo –
è lasciare inalterati i pixel
aggiungendo un grande contorno alla schermata,
ma così tutto appare piccolo e distante.
Ho provato tutte queste soluzioni.
Ho inserito l'opzione per la modalità "Pixel Perfect"
che aggiungeva il bordo alla schermata.
Ho programmato un sistema
che implementava metodicamente l'antialiasing
solo se i pixel non potevano essere moltiplicati per un numero intero.
E a volte mi sono chiesto se i giocatori
avrebbero fatto caso a quei pixel deformi
e non fosse solo una mia fissazione.
Ma alla fine stavo solo cercando
il "meno peggio" dei compromessi,
facendo continuamente avanti e indietro tra questi ragionamenti
per cercare di capire quale di queste tre soluzioni
avrebbe potuto adattarsi meglio al mio gioco.
Ovviamente c'è… una quarta soluzione
ma non voglio nemmeno considerarla.
Certo, funzionerebbe, ma non voglio nemmeno nominarla.
D'accordo, lo dico: potrei…
sbarazzarmi della pixel art
e rimpiazzare l'intera grafica del gioco
con del nuovo materiale grafico in 4K, ma…
ma sarebbe una follia, vero?
E così ho rimpiazzato la pixel art del gioco
con del nuovo materiale grafico in 4K!
Ho triplicato le dimensioni di tutti gli sprite
per poi ricrearli tramite gli strumenti vettoriali di Photoshop
come la penna e le forme.
Ogni pulsante, ogni porta, ogni oggetto decorativo,
ogni magnete, ogni elemento dell'interfaccia.
Ma non ci ho messo così tanto come pensavo.
La mia pixel art era già abbastanza organizzata
e composta da forme semplici e colori di base.
Inoltre ho deciso di non sfruttare la nuova veste grafica
per aggiungere nuovi dettagli
perché volevo che gli elementi si vedessero senza problemi
anche su schermi piccoli come quello di Steam Deck.
E poi ho deciso di non rifare la grafica degli sfondi.
C'è ancora la vecchia pixel art
che viene sfocata da un filtro per la profondità di campo.
Ma non serve che si sappia, sarà il nostro piccolo segreto.
E dopo tutto questo lavoro sono davvero soddisfatto
del nuovo aspetto del gioco.
Magnus ha molto più fascino e personalità
e il gioco non sembra più l'ennesimo banale titolo indie in pixel art.
E poi il gioco funziona.
Potete vederlo su un TV 4K, un monitor a 1080p
o sul piccolo monitor di Steam Deck…
e funziona!
Funziona!
Ed è ironico che probabilmente io abbia speso più tempo
a cercare un buon compresso
che a ricreare gli asset grafici.
E da tutto questo ho appreso una lezione.
Due, in realtà: una è "pianificare in anticipo".
Ho creato gli sprite molto tempo prima
del sistema definitivo per le telecamere,
di fatto sperando che avrebbero funzionato bene insieme.
Non è stato così: in Unity c'è questo pulsante
per una telecamera pixel perfect,
ed evidentemente pensavo che attivandola
sarebbe andato tutto alla perfezione.
È stupido e ingenuo perché le cose non funzionano così
ma… ora lo so.
Ma l'altra lezione è che a volte può sembrare una buona idea
cercare un compromesso,
una scappatoia o un espediente.
Ma in realtà è la pigrizia a parlare
e a volte è meglio stringere i denti,
rimboccarsi le maniche e darsi da fare
per trovare una vera soluzione che funzioni a dovere.
In futuro eviterò di perdere tempo
andando subito al dunque per trovare la vera soluzione.
E così, dopo essermi risvegliato da quell'incubo,
era l'ora di fare il passo successivo:
creare un trailer.
È qualcosa che ho rimandato a lungo
semplicemente perché il gioco non era ancora pronto
e non c'era granché da mostrare nel trailer.
Certo, avevo finito il Mondo 1, ma se avessi mostrato solo quello
l'intera ambientazione del trailer sarebbe stata
quel sistema fognario di colore turchese
per due minuti di fila.
Non sarebbe stata una fedele rappresentazione del mio gioco.
Così ho deciso di ricorrere all'antica arte del…
"fai finta finché non lo crei".
"Creare" quasi letteralmente, in questo caso,
perché ci sono ancora tantissime cose incomplete
come questi livelli mai sottoposti a playtest
che come sfondo hanno ancora la cianografia
che uso durante lo sviluppo.
Ci sono sfondi incompleti
e meccaniche non ancora del tutto implementate.
Mettendo tutto insieme posso creare qualcosa
che non sarà con certezza nel gioco finale
ma che è abbastanza indicativo di come sarà il gioco.
Tra l'altro penso di aver esagerato con la qualità
perché dopo aver postato il trailer
molte persone nei commenti
si sono congratulate con me per aver finito il gioco.
Ovviamente le ringrazio moltissimo…
ma in realtà non è finito.
È tutto finto!
Usando i nuovi contenuti mi sono registrato
mentre giocavo a questi livelli.
Non c'era la musica ma ho attivato gli effetti sonori
così da averli nel trailer.
Inoltre, a rischio di parlare troppo di risoluzioni,
ho registrato tutto in 4K
anche se il trailer è solo in 1080p
così da ritagliare i segmenti più interessanti
senza dover ingrandire l'immagine riducendone la qualità.
Ho quindi importato il filmato in Adobe Premiere
e ritagliato gli spezzoni più interessanti:
animazioni interessanti, esempi di meccaniche,
fasi narrative e cose così.
Riguardo alla musica, ho finalmente trovato
chi comporrà le musiche per il gioco
così posso chiudere quell'enorme Modulo di Google!
Grazie a tutti quelli che si sono proposti.
Non è ancora prontə per lavorare al gioco
quindi per il trailer sono ricorso al mio servizio audio preferito:
Epidemic Sound.
La cosa bella di Epidemic Sound
– questo video non è sponsorizzato da Epidemic Sound
ma se andate nella descrizione e cliccate il mio link
riceverò un compenso da Epidemic Sound –
è che quando scaricate della musica non ottenete solo l'intero brano
ma anche le singole tracce
come la melodia, il basso e le percussioni.
Infatti ho potuto isolare le percussioni
e sincronizzare gli spezzoni con i beat della batteria, così:
(♪ percussioni ritmate ♪)
Per quanto riguarda l'arco narrativo del trailer,
si inizia con qualcosa di semplice
come l'uso dei raggi magnetici per sollevare i blocchi.
Poi rallento un po'
per introdurre il personaggio di Magnus.
Poi si vede cosa può fare Magnus come meccanica di gioco,
e dopo ancora c'è una rapida sequenza di elementi
che compariranno nella seconda metà del gioco
come altri magneti, altre meccaniche e altri mondi.
Alla fine c'è una bella call to action
per aggiungere il gioco alla Lista dei desideri di Steam.
Non è il miglior trailer di tutti i tempi,
l'ho montato in una sola giornata,
non ho nemmeno moltissimo materiale da utilizzare
e in definitiva non sono Derek Lieu,
quel ragazzo che crea quei meravigliosi trailer
per ogni sorta di gioco indie.
Ma per ora fa bene il suo lavoro
e dopo averlo postato su YouTube e altri social
ha spinto il gioco oltre le 30.000 Liste dei desideri,
e non è male dato che il Next Fest non è ancora iniziato.
E infine c'è la demo.
Non sono sicuro di quanti contenuti
voglio inserire nella demo.
Come per il trailer, se nella demo inserissi solo il Mondo 1,
non sarebbe molto indicativa del gameplay complessivo del gioco.
Quindi forse dovrebbe esserci anche il Mondo 2,
metà del Mondo 2 o qualcos'altro ancora.
Quindi devo iniziare a lavorarci.
Ma, comunque sia,
penso di dovermi rimboccare le maniche per finire il gioco.
Perché, tornando a Balatro,
potreste aver visto l'enorme hype che ha generato
durante il Next Fest di Steam
per poi uscire ufficialmente un paio di settimane dopo.
Lo stesso vale per Pepper Grinder:
uscirà circa un mese dopo la conclusione
del suo primo Next Fest di Steam.
E quindi se mostrerò il mio gioco al Next Fest di giugno,
probabilmente dovrei puntare a pubblicarlo
in luglio o agosto,
che non sono così lontani nel futuro.
È meglio che mi dia da fare.
Nelle ultime settimane
ho scoperto una discreta
– per non risultare troppo pomposo –
pipeline di produzione per portare a termine il gioco.
Si ispira moltissimo
all'approccio usato Valve nel caso di Portal,
di cui ho parlato nel video sulla filosofia di Valve per i playtest.
In sostanza funziona così.
Da martedì a giovedì
lavoro ai nuovi contenuti per il gioco.
Nuovi livelli, nuovi sfondi curati
o nuove cutscene: qualsiasi tipo di novità.
Il venerdì mi dedico alla risoluzione dei bug.
Scelgo qualcosa dalla sterminata lista di cose da fare su Trello
e cerco di trovare una soluzione a quel bug.
Mi dedico ad altri bug e poi, alla fine della giornata,
testo il lavoro svolto e lo esporto in una nuova build.
Quindi la invio a dei playtester
– di solito utenti casuali su Twitter –
che non sono mai più di tre.
Il lunedì controllo i messaggi privati su Twitter
alla ricerca di bei filmati di playtest.
Guardo l'intero video
annotando tutte le cose che voglio modificare,
come bug o ambientazioni che devono essere rifinite
o livelli troppo facili,
troppo difficili o troppo complicati,
o degli exploit che non avevo previsto
durante lo sviluppo di quella sezione.
Ci sono state altre versioni di questo processo
nel corso dello sviluppo,
ma ormai credo di averla perfezionata.
Ad esempio, in precedenza inviavo la build di turno a troppe persone
ritrovandomi con tantissimi filmati da guardare:
era davvero troppo.
E se qualcuno si imbatte
in un bug o un exploit
è davvero penoso e non particolarmente utile
veder emergere la stessa cosa
in altri nove video.
Inoltre distribuivo le build per i playtest durante la settimana
rimanendo quindi bloccato senza poter far nulla
nell'attesa dei filmati dei playtest.
Inviandole di venerdì le persone ci giocano durante il weekend
mentre mi prendo una pausa meritata e gioco a Balatro.
Grazie a questo processo, il gioco sta iniziando a prendere forma.
I nuovi contenuti nascono come grezze sperimentazioni
che vengono subito testate,
e la roba di vecchia data – quella dei primi livelli –
è stata vista da così tanti playtester
e ha ricevuto così tante regolazioni e correzioni
da essere ormai a regola d'arte.
E grazie a questo processo
credo sia fattibile terminare il gioco
poco dopo la sua presentazione al prossimo Next Fest.
Ma non posso farlo se resto qui
a raccontarvi quello che sto facendo:
è ora di rimettersi al lavoro almeno per un po'.
Ci sono playtest da fare,
video di playtest da guardare o nuovi contenuti da creare,
bug da correggere o partite a Balatro da giocare:
consultate il sopracitato programma
e in base al giorno saprete cosa sto facendo.
Come sempre, i patron di GMTK possono già giocare all'ultima build.
Se invece non state finanziando lo show – e non capisco perché –
potete aggiungere il gioco alla Lista dei desideri su Steam
per sapere quando uscirà la demo
in occasione del prossimo Next Fest.
Grazie mille per la visione, ci sentiamo presto.
(♪ ♪ ♪)