Aggiornamento: il crash dell'albero è stato corretto nell'aggiornamento di gennaio, e il crash di Watt è stato corretto nell'aggiornamento di febbraio.
Recentemente Paper Mario è arrivato su Nintendo Switch Online per gli abbonati al pacchetto aggiuntivo. Sfortunatamente, nonostante il prezzo extra, la nuova soluzione di Nintendo per giocare ai grandi classici del Nintendo 64 non è esente da imperfezioni. Il software, che usa un nuovo emulatore sviluppato da NERD (Nintendo European Research & Development), contiene diversi difetti di emulazione, nessuno dei quali è sfuggito all'attenta analisi dei fan. Ma il problema di Paper Mario è molto più grave di qualche effetto grafico fuori posto: il gioco può crashare facilmente, e il crash comporta la perdita dei dati di salvataggio. Capiamo perché succede e come possiamo evitarlo.
I crash
I crash noti finora sono due:
1) Il gioco crasha se colpite questo albero nel villaggio Shivar. Per un motivo attualmente sconosciuto, il crash si verifica solo per alcuni giocatori.
2) Il gioco crasha se avete Watt come compagna e fate game over. Questo crash si verifica solo nella versione occidentale.
Il secondo bug ha scatenato una certa confusione: qualcuno credeva che la causa fosse il boss General Guy, ma in realtà quest'ultimo è innocente. La verità è che fare game over con Watt risulta sempre in un crash nella versione occidentale, a prescindere dal nemico; General Guy è soltanto il primo boss che si incontra dopo aver ottenuto Watt.
Perché si perdono i dati di salvataggio?
Dire che i crash cancellano i dati di salvataggio non è del tutto accurato: in pratica Nintendo Switch Online "conserva" i dati soltanto se il software si chiude correttamente. Se il software crasha a causa di un errore, i dati di salvataggio non vengono conservati affatto. In altre parole, è come se il salvataggio non fosse mai esistito. Nel caso di crash come questi, quindi, non tornerete all'ultima volta che avete salvato, bensì all'ultima volta che avete salvato e chiuso.
Esempio: giocate fino al capitolo 2, colpite il blocco salvataggio, salvate e chiudete il software. Il giorno dopo giocate fino al capitolo 3, colpite il blocco salvataggio, salvate e mettete il software in modalità riposo. Il giorno dopo giocate fino al capitolo 4 e crashate. Tornerete al capitolo 2, perché è stata l'ultima volta che avete salvato e chiuso.
Questo vale per tutti i giochi di Nintendo Switch Online, non solo per Paper Mario. L'unica differenza è che in Paper Mario si può crashare facilmente, quindi più persone se ne stanno accorgendo, mentre negli altri giochi crashare è più difficile (per esempio, degli speedrunner hanno fatto crashare The Legend of Zelda: Ocarina of Time).
Una spiegazione tecnica dei crash
Nelle ultime tre settimane i giocatori hanno indagato sul perché di questi crash, e sono giunti a una conclusione parziale.
Per quanto riguarda il primo bug, come spiegano MrCheeze e Rainchus su Twitter, ogni volta che si colpisce un albero il gioco carica una lista dei modelli da scuotere. Questo albero in particolare, tuttavia, contiene un errore: la lista dichiara la presenza di due modelli da scuotere, quando in realtà il modello è soltanto uno. Il gioco quindi va a cercare il secondo modello in un banco di memoria che non dovrebbe esistere, e trova un valore che non dovrebbe trovare. Questo bug esiste anche nella versione originale per Nintendo 64 e nella versione Virtual Console per Wii, dove però è innocuo, visto che per coincidenza il "valore che non dovrebbe trovare" risulta comunque un valore accettabile (00). Probabilmente è per questo che nel 2000 Intelligent Systems non ha notato il bug, oppure lo ha notato ma non ha ritenuto necessario correggerlo. Per qualche motivo, invece, su Nintendo Switch Online viene pescato un valore inaccettabile, il gioco non sa come interpretarlo e crasha.
Il secondo bug ce lo spiega JCog su YouTube ed è piuttosto assurdo. Per una ragione ignota, gli sviluppatori di Nintendo Switch Online hanno patchato il gioco per aggiungere del lag in determinate scene, tra cui quella del game over. Sì, avete capito bene: hanno scritto un codice Lua appositamente per rallentare alcune parti del gioco. Se il boss Lava Piranha vi è sembrato lento, la spiegazione è proprio questa. Il motivo, ripeto, è del tutto sconosciuto.
Ebbene, questo codice crea problemi con l'animazione delle scintille di Watt. Gli sviluppatori di Nintendo Switch Online dunque hanno scritto un secondo codice per correggere il bug causato dal primo, lo hanno applicato alla versione giapponese e... effettivamente funziona: lo schermo diventa nero per un attimo, ma non crasha. In qualche modo, però, gli sviluppatori hanno rotto questo fix nella versione occidentale. Ricapitolando, hanno rotto il gioco, poi lo hanno corretto nella versione giapponese, e poi lo hanno rotto di nuovo nella versione occidentale. Sarebbe una divertente commedia degli errori se solo non comportasse la perdita dei dati di salvataggio. Niente di tutto questo ovviamente succede né nella versione originale, né nella Virtual Console. Se può interessarvi una spiegazione più dettagliata (e possibilmente più accurata della mia breve sintesi) consiglio la visione dell'eccellente video di JCog.
Come si evita il problema?
Cosa potete fare per proteggere i vostri dati di salvataggio?
Per iniziare, dovete sapere che i crash possono farvi perdere i salvataggi "legittimi" effettuati nel gioco, ma non i punti di sospensione. I punti di sospensione sono sicuri al 100%.
E se invece voleste usare i blocchi di salvataggio? Per quanto riguarda il bug di Watt, se perdete una battaglia potete chiudere il software (premete il pulsante Home e poi il pulsante X) prima che finisca l'animazione del game over: in questo modo il software si chiuderà correttamente prima di arrivare al crash, e il vostro ultimo salvataggio verrà conservato.
Per quanto riguarda il bug dell'albero... non colpitelo e basta.
Si possono recuperare i dati di salvataggio perduti?
No, purtroppo. Come spiegato sopra, il problema è che i dati non vengono conservati in primo luogo, quindi non è possibile recuperare qualcosa che non è mai stato salvato. Se siete stati vittime del bug, tutto ciò che potete fare è riprendere dal salvataggio o dal punto di sospensione più recente.
Questo è tutto per oggi. Vi informeremo se ci saranno ulteriori scoperte e quando (se) il bug verrà corretto.
Aggiornamento 25/02/2022: da oggi entrambi i crash sono stati corretti. Il lag, purtroppo, è ancora presente. Correte a giocare senza timore di crashare!
Quindi se ho capito bene, per esempio se salvo a Shivar, poi chiudo e riapro l'app di N64 e poi apro il gioco ed effettuo questo crash mi fa ripartire dal salvataggio fatto dopo che ho riavviato l'app (quindi per esempio quello di Shivar)? Altrimenti se metto la app in standby e poi effettuo il crash o mi cancella definitivamente il salvataggio o mi fa ripartire da un salvataggio più vecchio (per esempio nella Shy Giy's Toy Box). Spero di essermi spiegato bene e spero di aver capito bene
Esatto. Nel tuo esempio, se dopo aver salvato nel Toy Box avevi chiuso, tornerai nel Toy Box. Se non avevi mai chiuso, tornerai all'inizio del gioco.
Ho capito grazie mille Magi!
Ma in che senso versione occidentale, cioè la versione americana o quella europea?
Aaah ho notato solo ora il commento. Ho detto "occidentale" in generale perché dovrebbe valere sia per la versione nordamericana che per l'europea, cioè tutte tranne quella giapponese. Correggetemi pure se mi sbaglio.