Pokémon Scarlatto e Violetto insieme a God of War Ragnarok sono i titoli del momento. Usciti venerdì scorso, i due nuovi giochi per Nintendo Switch stanno riscuotendo un notevole successo nei negozi online. Tanto da essere fissi nella top 10 dei bestseller su Amazon.
D’altro canto, Scarlatto e Violetto stanno facendo molto discutere sul web, per via dei problemi tecnici dei due giochi. Al di là di alcune carenze nelle texture e nelle animazioni, gli utenti stanno registrando gravi bug e glitch nella loro esperienza di gioco (un articolo di Kotaku ne ha raccolti diversi)
Sì è cercato di capire quale fosse la causa di questi gravi problemi, emersi soprattutto con le recensioni e con il lancio del gioco il 18 novembre. I dataminer sono riusciti ad analizzare i due titoli e la causa principale dei bug sarebbe proprio il codice di Scarlatto e Violetto scritto male.
Il “memory leak” di Scarlatto e Violetto
La parola chiave per comprendere cosa sta dietro i problemi del nuovo titolo Pokémon è “memory leak“: un situazione in cui avviene un consumo anomalo della memoria, causato da dati che non vengono deallocati correttamente. In sostanza: informazioni che rimangono sulla memoria RAM e si accumulano senza che vengano “spostate” altrove. Ciò si traduce nel sistema che viene rallentato.
L’origine di questo problema sta nel codice di Scarlatto e Violetto, in particolare nel sistema di “spawning” dei Pokémon. Come viene spiegato da un utente su Twitter, i nuovi titoli condividono lo stesso sistema di “spawn” per i Pokémon di Leggende Arceus. Ma presenta una sostanziale differenza.
Per spiegarla in maniera breve: in entrambi i titoli, quando il giocatore arriva in una zona, il sistema legge il codice per fare apparire i Pokémon specifici di quell’area. E qui inizia la differenza tra i due titoli. Infatti, in Leggende Arceus sono stati previsti degli “spazi” nel codice (i “tables encounters), dove il sistema va a trovare le giuste informazioni per far comparire un determinato Pokémon nella determinata zona.
Ma in Scarlatto e Violetto questi “tables” non esistono nel codice. Il sistema deve quindi controllare tutti i punti di “spawn” dell’intero gioco ogni volta che il giocatore si sposta in un determinato percorso. Il sistema infatti deve leggere le informazioni dei singoli Pokémon, non essendo stati previsti dei “tables” specifici.
A questo si aggiungono due elementi: il numero di punti di “spawn”, che nel gioco sono 7200 per l’intera mappa esplorabile e 3600 solo per la zona centrale, al momento vuota (ma il sistema la controlla lo stesso). Il secondo elemento è la mappa stessa: in Leggende Arceus abbiamo una open map. Ergo, il gioco è suddiviso in zone. Scarlatto e Violetto invece, in quanto primi titoli open world, la mappa è un unico spazio 3D.
Potete immaginare il peso sulla Nintendo Switch di questo continuo check. Console che, ricordiamolo ha 4 GB di RAM che di per sé sono abbastanza per un videogioco ottimizzato bene. Ma diventano un limite se il titolo non ha un codice scritto bene, come in questo caso. E questo è il motivo principale per cui non sono emersi questi bug e glitch da coloro che hanno provato la ROM leakkata in anteprima con gli emulatori PC.
Da qui i problemi di “memory leak”. L’inutile consumo della memoria RAM della Switch che rallenta l’intero sistema e si creano i bug, glitch e problemi nei caricamenti dei modelli 3D. Non c’è una vera e propria soluzione a questo problema. Al momento, l’unica maniera per risolvere questo “memory leak” è la chiusura e riapertura del gioco, che libera momentaneamente lo spazio allocato sulla RAM.
Vedremo come si comporteranno Game Freak e The Company Company di fronte ai problemi di Scarlatto e Violetto. Difficile aspettarsi una patch che risolva in toto il “memory leak”, trattandosi del codice del gioco stesso.
LEGGI ANCHE: Pokémon Scarlatto e Violetto, le recensioni sono tiepide: “comparto tecnico debole”