Category Archives: Smeraldo

Arbitrary Code Execution

Questo exploit è consigliabile eseguirlo su hardware dedicato o su un emulatore accurato come BGB, SameBoy o mGBA.

L’esecuzione di codice arbitraria o ACE si riferisce a un metodo che consente di eseguire un codice personalizzato, scritto generalmente con i Pokémon o gli strumenti nel box, in squadra o nel PC sfruttando un bootstrap (ad esempio 8F o il Coin case). Nonostante non lo consideri un glitch in quanto siamo noi a far scorrere un codice personalizzato, è comunque un metodo utilizzato in alcune speedrun (in particolare quelle di Pokémon Cristallo).

Spiegazione

Il gioco è diviso in due sezioni: RAM (Random Access Memory) e ROM (Read Only Memory). Il nostro obbiettivo è quello di prendere una regione di memoria con i giusti permessi di scrittura e scriverci sopra un puntatore. Per scrivere il puntatore è necessario manipolare delle cose durante il gioco (poichè si tratta di glitching e non di modding o di sviluppo in generale), tuttavia il custom code viene scritto usando cose manipolabili in-game e si suddivide in due parti essenzialmente, la prima è la scrittura del custom code operando sulle regioni libere della RAM e la seconda consiste nel piazzare nel posto giusto (un indirizzo specifico al quale l’esecuzione salta in un certo evento) un salto nostro che punta all’indirizzo scritto prima dove parte il codice custom. Una volta avviato il codice custom scritto in opcode è fatta. Gli opcode possono anche essere chiamati shellcode.

Prima Generazione

In prima generazione per eseguire del codice personalizzato si utilizza 8F. Finora è uno degli ACE più forti mai creati nei giochi Pokémon, è possibile fare letteralmente qualunque cosa, dal rendere reale la leggenda di Mew sotto il camion al creare un virus che clona il proprio salvataggio non appena linka con un altro gioco. È inoltre possibile portare l’ACE su altri giochi.

Seconda generazione

In seconda generazione si usa il salvadanaio oppure un Pokémon con un nome infinito, ottenuto generalmente ottenendo un Bad clone, nel caso di Pokémon Cristallo.

Terza generazione

In terza generazione ci sono due modi per far scorrere il nostro codice personalizzato e funziona solo su Smeraldo: usando uno dei decamarks (precisamente 0x097D ottenuto tramite questo glitch usando un Pokémon con 125 EVs negli HP e 9 in Attacco) oppure usando una glitch move. Gli effetti non riescono sempre al primo colpo e spesso richiedono diversi tentativi.

Black curtains

Il Black curtains glitch (chiamato anche Black Curtains of Rustboro o semplicemente Black Curtains) è un glitch presente in Pokémon Smeraldo che va a corrompere i tile delle finestre della Scuola per Allenatori di Ferruggipoli. Si manifesta quando gli slot 4, 5 e 6 del Box 8 sono occupati da un Pokémon. Nella versione Giapponese gli slot che causano questo bug sono gli slot 26, 27 e 28 del Box 7. Il glitch non si verifica in Pokémon Rubino e Zaffiro.

Quando si occupa lo slot 4 corrompe un pezzo della parte superiore del tile.

Quando si occupa lo slot 5 invece si corrompe buona parte della finestra.

Occupando lo slot 6 invece si corrompe la parte di sotto.

Occupando tutti e tre gli slot invece si può avere una corruzione completa.

Battle Pike poison knockout glitch

Scoperto da greentyphlosion questo glitch si attiva mandando KO due su tre Pokémon (il secondo Pokémon esausto deve andare KO con l’avvelenamento)

Procedimento

  • Il primo Pokémon dev’essere esausto
  • Vedi lo status del terzo Pokémon
  • Manda KO il secondo Pokémon a causa dell’avvelenamento
  • Entra in una lotta in doppio

Nonostante abbiate un Pokémon in vita nella lotta in doppio verrà mandato in campo una copia del Pokémon ancora in vita. Glitcherà pure il menù del party

Sdoppiare i Pokémon

Questo glitch vi consente di sdoppiare i Pokémon su Pokémon Smeraldo. Non ha nessun requisito particolare se non l’accesso al Parco Lotta

Procedimento

Dirigetevi alla Torre Lotta e depositate i Pokémon che volete clonare in un box e salvate il gioco. Ora ritirateli e andate a parlare con l’ultima commessa a destra (quella per la lotta multipla)

Iscrivete i due Pokémon e per qualche secondo il gioco si bloccherà per qualche secondo e la commessa vi chiederà di salvare il gioco. Non fate nulla e riavviate.

Una volta riavviato troverete i Pokémon che avete depositato nel box e squadra. Facendo il metodo inverso invece cancellerete i Pokémon anzichè clonarli, fate attenzione.

Il gioco quando si locka in realtà sta salvando il party, chiedendovi successivamente di salvare il gioco in maniera ufficiale (tra cui anche i box)

Ottenere qualunque Pokémon

Questo glitch richiede un po’ di fortuna ma in compenso consente di ottenere qualunque Pokémon (anche i glitchmons), qualunque strumento e qualunque mossa tramite una corruzione del Pomeg glitch. Tuttavia, in questo articolo, mi dedicherò esclusivamente all’ottenimento di qualunque Pokémon, tralasciando il resto. Il suo comportamento è stato scoperto da Luckytyphlosion nel 2014. Io mi sono occupato di reinterpretare il glitch e di scrivere questo articolo in Italiano.

Requisiti

  • Un Pokémon per utilizzare il Pomeg glitch
  • Ralts (per ottenere il Plusle via scambio da un NPC di Ferruggipoli)
  • Volbeat (per ottenere il Seedot via scambio da un NPC di Forestopoli) oppure un Bagon (per ottenere Horsea da un NPC a Orocea ). Nonostante entrambi siano utilizzabili per il glitch, è consigliabile utilizzare Seedot poichè da più chance di riuscita
  • Un party pieno di Pokémon esausti salvo il Pokémon a cui darete la Baccagrana (Pomeg berry)

Preparazione

Prima di iniziare, è bene svuotare i primi due box del PC poichè verranno usati per questo exploit. Prendete il Plusle e fategli dimenticare tutte le mosse a parte ruggito . Dategli un simbolo per identificarlo. Questo sarà il vostro corruptor initiator. Ora prendete Seedot e seguendo quest’equazione 256*(Atk EVs) + HP Evs potrete scegliere il Pokémon da avere dandogli le giuste EVs. L’output dell’equazione vi darà il Pokémon secondo il suo numero decimale, se avete dei dubbi potrete consultare questa tabella. Per farvi degli esempi, per avere Mew basterà 151 EVs negli HP e 0 in ATK (Poichè 252*0+151 fa 151, il numero decimale di Mew), mentre per avere Latias (numero decimale 407) bisognerebbe dare 151 punti EV negli HP e 1 in ATK (252*1+151 = 407). Una volta che i vostri Pokémon saranno pronti, clonateli e mettete i cloni nei box in questo modo:

Adesso mettete il Pokémon su cui userete la Pomeg Berry nell’ultimo slot e mandate KO tutti i Pokémon salvo quello a cui darete la Pomeg Berry e salvate il gioco. Una volta fatto ciò, iniziate un altro incontro selvatico e fuggite. Andate nel PC più vicino e depositate il primo Pokémon esausto. Adesso, usate prima la Pomeg Berry e poi una pozione per portare KO anche l’ultimo Pokémon. Se avete eseguito correttamente i passaggi, dovreste mandare in campo lo slot vuoto.

Successivamente dovrete selezionare Pokémon, scegliere il primo Pokémon valido e vedete le sue info. Adesso tornate indietro alla selezione del party e premete la freccia sù. Più terrete premuto su più cose corromperete. Gli effetti possono variare, ma in genere si corrompe la pensione, tutto il primo box e fino allo slot 24 del secondo. Non appena avrete finito questo passaggio tornate al menù delle azioni e fate fuga. Il gioco vi farà fare black out e vi porterà all’ultimo centro medico visitato. Controllando i primi due box noterete che buona parte dei Seedot o dei Plusle sono diventate delle uova peste:

Se tutte le uova presenti sono delle Uova Peste, Riavviate e ripetete la procedura. Se invece vi capita un Uovo normale mettetelo in squadra e iniziate una lotta per vedere se è uscito il Pokémon desiderato. Può capitare che al suo interno vi sia lo stesso Pokémon che c’era in quello slot (in questo caso Seedot o Plusle) oppure Il corrispondente decimale per le EVs di Seedot o della mossa di Plusle, quest’ultimo, dato che possiede solo ruggito, dovrebbe generare un Vileplume.

Se il Pokémon al suo interno è lo stesso del box riavviate e ripetete la procedura. Non è un exploit che riesce sempre al primo tentativo.

Dopo diversi tentativi, a exploit riuscito, dovreste avere il Pokémon definito dai decimali della mossa di Plusle o dalle EVs di Seedot:

In questo caso schiudete il Pokémon e depositatelo alla pensione in modo che, salendo di livello, si dimentichi le glitch moves. Tenete presente che per avere un Mew e un Deoxys obbedienti da questo metodo dovreste seguire ulteriori passaggi, tuttavia non verranno trattati in questa guida per non renderla troppo lunga. Questo glitch funziona anche in Pokémon FR/LG trasferendo il Pokémon glitchato con la Pomeg nei rispettivi giochi.

Pomeg glitch

Il Pomeg Glitch è un exploit presente in Pokémon Smeraldo (ma anche in Diamante, Perla e Platino, con una procedura diversa) che consente la manipolazione della RAM di gioco. Consente inoltre altri “glitch minori” quale la possibilità di combattere con un Uovo o con lo slot vuoto

Requisiti

  • Un Pokémon al 100 con almeno 10 EVs in HP
  • Una baccagrana
  • Diverse impostazioni nel party/Box del PC per altri exploit

Preparazione

Portare a 1 HP il Pokémon da exploitare, generalmente è bene avvelenarlo fino a portarlo a 1 HP .

A questo punto, usate la Pomeg berry

Il Pokémon affetto adesso avrà ?35 HP

Se si utilizza una pozione sul Pokémon annullerà l’effetto e lo manderà KO, senza riportarvi all’ultimo Pokémon Center visitato.