How to catch flawless and Shiny Pokémon in Emerald

PREPARAZIONE

Per agevolare il processo di RNG è opportuno avere almeno un dipinto esposto al Museo di Porto Alghepoli o all’Arena delle Virtù: per farlo dovrete vincere le Gare Pokémon. Troverete più informazioni in un paragrafo successivo.

Dirigetevi quindi al piano dell’esposizione e salvate qui il gioco, prestando attenzione a posizionare al primo posto della squadra una creatura con l’abilità richiesta per far apparire la Spread. La situazione classica è quella di utilizzare Sincronismo in modo da trovare più Frames con la Natura desiderata.

Nota: A volte, come mostrato nell’immagine sottostante, questo tipo di accorgimento è strettamente necessario.

Al fine di rendere cromatica una Spread particolare, scelta da voi, è consigliata la tecnica del Pandora’s Box.

RICERCA DELLE SPREADS

Aprite il PokéFinder e cliccate “Stationary” o “Wild” sotto la voce Gen 3 (questo dipende dal tipo di Pokémon che andrete a catturare). Configurate la Scheda Searcher come sotto:

Profile: Caricate i dettagli del profilo relativo al vostro salvataggio.
Method: Selezionate Method 1 per gli Stazionari e Method H1, H2 o H4 per i Selvatici.
Pkmn Info: Fornite i dettagli relativi al Pokémon desiderato, dal Percorso in cui si trova alla modalità di incontro.
Caratteristiche: Specificate la Natura, l’Abilità, le IVs e la Cromaticità, così da trovare Spreads con queste qualità.

Nota: Il campo relativo all’Encounter Slot sarà compilato in automatico dopo aver specificato il Pokémon che andrete a catturare; in alternativa potete reperire questo dato nelle tabelle.

Una volta compilata la finestra di dialogo cliccate su Search. Quando il PokéFinder avrà finito di cercare le possibili Spreads, sceglietene una e segnatevi il Seed su un foglio di testo.

Adesso inserite questo valore nel GBA Initial Seeds Finder e premete il tasto [Invio], dopodiché impostate 10 alla voce “Max Results”. Nel caso qui trattato dovrò inserire D63311D8.

Quando il programma avrà finito di cercare gli Initial Seeds compatibili, questi verranno trascritti in un file .txt reperibile nella stessa cartella in cui è contenuto l’eseguibile.

INITIAL SEED

In Pokémon Smeraldo la generazione dell’Initial Seed è basata su un errore di programmazione, infatti in seguito al primo riavvio del gioco esso sarà sempre fissato a 0. Questo implica che le Spreads competitive si trovano spesso a moltissimi Frames di distanza, legati a tempi di attesa esagerati.

È possibile aggirare questo problema sfruttando i dipinti relativi alle Gare Pokémon, cioè quelli esposti al primo piano del Museo di Porto Alghepoli o all’Arena delle Virtù. Osservandone uno, l’Initial Seed assumerà un valore uguale al numero dei Visual Frames trascorsi fino a quel momento (convertito in esadecimale ad ottenere un 16-Bit).

Scegliete quindi uno tra i dati ricavati al passaggio precedente e consideratelo in base decimale:

Nota: Fate attenzione a scegliere con cura l’Initial Seed, in quanto dovrete tenere conto degli avanzamenti che avvengono lungo il tragitto che separa Porto Alghepoli dalla località in cui si trova il Pokémon che volete catturare.

Aprite il VBA-RR e caricate gioco e salvataggio, dopodiché caricate anche il Lua Script di Smeraldo. Vi ricordo che il Lua Script vi permette di visualizzare l’Initial Seed e il Current Seed. Si carica in questa maniera:

VBA-RR » Tools » Lua Scripting » New Lua Script Window » Browse

Una volta fatto questo, caricate i dati di gioco e preparatevi ad esaminare uno dei dipinti raffigurante un Pokémon. Dovrete farlo quando la voce “Frame Counter” del VBA raggiungerà il valore in base decimale che avete ricavato prima, a cui dovrete sottrarre il ritardo tra l’interazione ed il cambio di Initial Seed vero e proprio.

La calibrazione è necessaria perché questa differenza non è fissa, di solito è all’incirca ~15 unità. Nel caso qui trattato vale 15, quindi ho visualizzato il dipinto al Visual Frame 14383.

Ricordatevi di eseguire un SaveState una volta che avrete ottenuto l’Initial Seed desiderato. Nell’esempio proposto corrisponde a 383E.

TID-SEED & BATTLE VIDEOS

Un’altra situazione in cui l’Initial Seed non corrisponde a 0 è quando si inizia una nuova partita: in questo caso assumerà il valore del vostro Trainer ID (convertito in esadecimale). È un caso con pochi risvolti pratici perché una volta sconfitta la Lega Pokémon sarete costretti a riavviare il gioco, resettando così l’Initial Seed.

La tecnica del Battle Video invece è più versatile, e consiste nel visualizzare una sfida registrata nel proprio Pass Lotta. Infatti, collegando due console per una sfida, si avrà che il Current Seed nel salvataggio del Giocatore 1 verrà trasferito anche al Giocatore 2. Registrando la lotta e guardando il filmato si tornerà a quel preciso valore del PRNG; potete monitorare questo processo facendo riferimento alla voce “Battle Video Seed” del Lua Script.

I due metodi descritti possono essere combinati avviando una sfida tra un salvataggio con un Trainer ID studiato appositamente e quello in cui avete completato la modalità Storia. Quella dei dipinti (detta anche “paintings”) rimane comunque la tecnica preferibile per la sua semplicità e rapidità.

RNG

A questo punto configurate la Scheda Generator del programma, così da poter osservare la situazione in modo più completo sotto il punto di vista dei possibili Target Frames. La procedura è molto simile a quella della Scheda Searcher.

Specificate il vostro Profilo e le caratteristiche del Pokémon in primo luogo, poi passate all’impostazione del Method, delle Pkmn Info e del Lead. Altro dato importante da inserire è l’Initial Seed, che sarà mostrato a schermo dal Lua Script.

Dopo aver premuto su Generate vi saranno elencati tutti i Frames che soddisfano le vostre richieste; dovrete semplicemente raggiungere uno di questi valori.

Nota: Ricordatevi di attivare l’opzione “Use Delay” e di impostare il valore corretto per tenere conto del ritardo nella generazione del Pokémon desiderato. In questo caso l’obiettivo è Mew; da un test effettuato in precedenza su VBA-RR v23.5 svn438 ho notato che dall’input sull’ultima frase alla generazione della creatura trascorrono 108 Frames.

Ora avanzate fino ad arrivare sull’ultima frase di interazione col Pokémon e mettete in Pausa il gioco premendo Ctrl + P, poi effettuate un secondo SaveState. Non vi resta che avanzare il Frame fino a quello indicato dal PokéFinder, monitorando i progressi tramite il Lua Script. Utilizzate l’avanzamento manuale quando sarete vicini al Target: con l’emulatore in Pausa premete i tasti Ctrl + N per avanzare il Frame di 1.

Dopo essere arrivati al valore segnato dal programma, togliete la Pausa e in contemporanea cliccate A per interagire col Pokémon Stazionario, usare Profumino o l’Amo da pesca. Per farlo vi basterà premere Ctrl + Z + P (di default il tasto A è settato sulla lettera Z della tastiera).

Nel caso qui trattato dovrò premere A sull’ultimo dialogo al Frame 141462.

PROBLEMATICHE

Nel caso in cui il Pokémon risultante fosse stato generato tramite un Method diverso da quello previsto, ricaricate il primo SaveState fatto. L’apparizione di metodi alternativi, seppur rara, è dovuta all’attivazione del VBlank durante il processo di generazione dei Pokémon. Si ricorda che le Video Functions sono influenzabili attraverso alcune azioni eseguibili nel gioco, troverete più informazioni in questa guida.

Per rimediare potete provare ad aprire la Scheda Allenatore oppure il Pokédex per visualizzare le schede informative di alcuni Pokémon, sperando così di modificare l’andamento delle funzioni video (Video Functions). Procedete poi normalmente con le tecniche di RNG.

Per i Pokémon selvatici di norma sarà il Method H2 a fare la sua comparsa più di frequente, e nonostante i preziosi accorgimenti adottabili lo “Shifting” al Method H1/H4 rimane casuale e non manipolabile.

RISULTATO

Non vi resta che catturare il Pokémon, che avrà le caratteristiche desiderate.