THE MYSTERY OF THE SANTA MARIA
RSS
← Devlog
v0.41.0–v0.41.24 · testi · interfaccia · collaudo · revisione

Due parentesi di troppo

Il Modulo Comunicazioni durante una conversazione con Yusuf: a sinistra il suo primo piano, a destra il registro delle battute scambiate, in basso il pannello con le cinque risposte possibili

Ogni volta che entri in una stanza, la Santa Maria ti dice da dove puoi uscire. Prima dell’elenco mette un’intestazione, ed è la riga che il giocatore vede più di qualunque altra: c’è a ogni ingresso, in ogni stanza, dall’inizio alla fine della partita.

Quella riga aveva due parentesi quadre per lato invece di una.

Non stava in un ramo secondario della storia. Stava in verde, in cima allo spazio dove si legge tutto il resto, e chiunque abbia giocato l’ha avuta davanti qualche centinaio di volte.

Tre buchi diversi, e ognuno dei tre ha ragione

L’errore in sé si corregge in un minuto. Quello che ci ha tenuti fermi è un’altra cosa: nessuno degli strumenti che controllano il gioco poteva trovarlo, e non per distrazione. Per tre ragioni tecniche distinte, ciascuna delle quali, presa da sola, è la scelta giusta.

Il primo. Il programma che misura e controlla i testi salta di proposito le righe di sistema, cioè quelle che non sono parlato ma interfaccia. Se non lo facesse si riempirebbe di frammenti di codice, e in un’occasione precedente è successo davvero. Quindi quella riga, per il contatore, non esiste.

Il secondo. Le parentesi che si vedevano in più non erano scritte nel testo. Le aggiunge la parte del programma che disegna il pannello, ed è giusto che lo faccia: è così che tutte le altre righe di sistema prendono le loro. Il difetto è che questa se le portava già dietro da casa, e ne riceveva un secondo paio.

Il terzo. Il controllo automatico del codice era contento. Sono due stringhe di testo valide che, messe insieme, compongono una cosa sbagliata. Nessun compilatore ha un’opinione su questo.

Tre reti a maglie diverse, e l’errore passava per il buco di tutte e tre. Si vedeva soltanto guardando lo schermo.

Il riquadro che non poteva accendersi

Nella stessa settimana ne sono usciti altri due della stessa famiglia.

Il gioco ha un riquadro di cortesia per quando un’immagine non si carica: dice che il segnale non è disponibile, così al posto di una stanza vuota resta qualcosa che ha senso dentro la finzione. Quella riga era stata riscritta durante la revisione, discussa, approvata, contata come lavoro fatto.

Non poteva comparire. Una regola di impaginazione la teneva nascosta finché l’elemento dell’immagine era presente nella pagina, non finché l’immagine funzionava. E l’elemento c’è sempre, perché tutte e dieci le stanze hanno la loro illustrazione. Un file mancante non lo faceva sparire: lo lasciava lì, rotto, con il riquadro di cortesia spento sotto.

La prima verifica automatica era andata bene. Il riquadro risultava alto più di cinquecento pixel, quindi presente. Era vero e non voleva dire niente: in quel momento il ritratto del personaggio si era inserito fra i due elementi, la regola aveva smesso di applicarsi per una ragione accidentale, e il riquadro stava comunque coperto dal ritratto. Verde nella misura, invisibile sullo schermo.

Due etichette senza uno spazio in mezzo

Il terzo si vede nell’immagine qui sopra, ed è il motivo per cui l’abbiamo scelta.

Il pannello in basso, quello con le risposte possibili, ha un’intestazione come tutti gli altri pannelli: a sinistra il nome del pannello, a destra chi c’è dall’altro capo. Nell’immagine si legge DIALOG_CHOICES da una parte e YUSUF — CANALE CRIPTATO dall’altra, spinto al bordo destro.

Fino a ieri erano attaccate. Non ravvicinate: attaccate, senza nemmeno uno spazio, in ogni conversazione del gioco.

Il testo era giusto. Mancava la regola di impaginazione che tiene separate le due etichette, e mancava nel senso letterale della parola: non esisteva. Gli altri tre pannelli del gioco ne hanno ciascuno una propria, questo era rimasto senza, e la distanza fra le due etichette, misurata dentro il gioco in funzione, era di zero pixel esatti.

Il lotto che il contatore non sapeva leggere

Il motivo per cui eravamo in mezzo a queste cose è che gli ultimi due lotti della revisione toccano l’interfaccia: prima l’involucro che tiene insieme le schermate, poi i menu, gli overlay, l’inventario, la mappa, il diario, le impostazioni.

Su questi file il programma che misura i testi era cieco. Il piano di lavoro dichiarava novantaquattro frasi da rileggere. Contate con lo strumento corretto erano duecentodiciannove, e il perimetro passava da tredici file a diciotto, due dei quali sono nati dopo che il piano era stato scritto.

Sistemare il contatore ha portato una sorpresa nell’altra direzione. Legge molto più di quanto credessimo: prende il testo scritto direttamente dentro la pagina, quello dentro i disegni vettoriali, e le etichette di accessibilità che accompagnano i pulsanti. Il documento che apriva il lotto diceva il contrario, ed era sbagliato. Ce ne siamo accorti applicando una correzione qualunque e vedendo il conteggio muoversi da solo.

Dodici lotti

Il lotto dell’involucro ha cambiato due sole frasi in tutto, ed è giusto così: gran parte di quel testo è registro macchina, e la regola dice di non abbellirlo. Il lotto dell’interfaccia ne ha cambiate di più, in quattordici versioni, un file per versione.

Con questo la revisione dei testi è finita. Dodici lotti chiusi su dodici. Ne erano numerati tredici, ma uno è stato soppresso mesi fa, quando abbiamo scoperto che il file che avrebbe dovuto contenere non conteneva niente da rivedere.

È cominciata a fine maggio, sempre con lo stesso metodo: due file per volta, una tabella approvata riga per riga, e si applica alla lettera. Se una sostituzione non torna ci si ferma e si chiede, non si adatta.

Due apostrofi in tutto il gioco

Restava un’ultima cosa, tenuta apposta per la fine. Le correzioni puramente tipografiche, cioè apostrofi, virgolette, tre puntini e spazi doppi, erano state tolte dai criteri dei singoli lotti perché costavano attenzione senza mai trovare niente che valesse il prezzo. L’accordo era di farle tutte insieme alla fine, con un programma, in una passata sola.

La passata ha trovato due infrazioni vere in tutto il gioco. Tutte e due nello stesso file, e virgolette sbagliate zero.

Il primo tentativo però era sbagliato, e conviene dire perché. Cercando sui file interi, il programma segnalava oltre mille spazi messi male: erano quasi tutti pezzi di codice che alla ricerca somigliavano a punteggiatura. Rifatta sul solo testo che il giocatore legge, la lista è scesa a sei casi, tutti voluti. Sono i puntini che allineano le colonne nella schermata di avvio del terminale di bordo, e somigliano a puntini di sospensione senza esserlo.

I due apostrofi veri erano di una forma diversa da quella che usa il resto del gioco. La ragione è pratica: in quel punto del codice l’apostrofo giusto va scritto in modo un po’ scomodo, e la forma sbagliata funziona senza bisogno di accorgimenti. Compila, passa i controlli, e la vede solo chi la sta cercando. Negli altri file del gioco quell’accorgimento compare decine di volte. In quello lì, mai una.

Nel frattempo

In questa versione non c’è niente di nuovo da fare. C’è un’interfaccia che dice le stesse cose con la punteggiatura giusta, un riquadro d’emergenza che adesso può comparire, e una riga di intestazione senza una parentesi di troppo davanti a chi legge.

Quello che ci portiamo dietro è meno comodo. Di questi tre difetti, due li ha trovati un fotogramma mentre tutte le verifiche automatiche dicevano di sì. Gli strumenti restano, e in questi mesi hanno trovato cose che a mano non avremmo visto mai. È cambiato il momento in cui si smette di guardare: adesso, dopo che il programma ha detto che va bene, il gioco si apre lo stesso.

Il pacchetto di prova in mano ai tester è fermo alla versione del 30 luglio, e ci è rimasto per tutta la revisione. Adesso che è chiusa può ripartire. Quella copia smette di funzionare il 6 agosto, come dichiara la sua pagina d’avvio, quindi la prossima cosa che succede su questo progetto è una build nuova.