All posts by Matt1990

Evolvere i Pokémon dentro le uova

Uno dei primi glitch scoperti (scoperto a meno di un mese di uscita del gioco) in Pokémon Spada e Scudo fu la possibilità di far evolvere i Pokémon all’interno delle uova. Con il medesimo metodo, è possibile pure insegnargli delle mosse.

Procedimento

Mettete un Pokémon della stessa specie dell’uovo prima di esso e usate una caramella rara o un MT compatibile e allo stesso tempo premete la freccia verso il basso. Se viene eseguito correttamente l’Uovo salirà di livello.

Il comportamento di alcune Poké-ball

I giochi di Seconda Generazione sono stati i primi a includere dei nuovi tipi di Poké-Ball con diverse peculiarità (aka le Apricorn balls), tuttavia, alcune di esse non funzionano nella maniera giusta. Le funzioni sono state prese dal Disassembly Project di Pokémon Cristallo.

Park ball

Utilizzo: È una ball utilizzata principalmente durante le gare Pigliamosche

Glitch: Durante una battaglia non inerente alla gara utilizzare questa ball darà una schermata glitchata. Per ottenere questa Ball fuori dalla gara Pigliamosche è necessario utilizzare un Codice oppure una corruzione

Luna Ball

Utilizzo: Ha un catch rate migliore sui Pokémon che si evolvono tramite la Pietraluna

Glitch: La Ball quando va a pescare la costante dell’oggetto in questione va a pescare la costante…. di Pokémon Rosso/Blu/Verde, che risulta essere l’Antiscottatura. Sostanzialmente la Luna Ball funziona meglio sui Pokémon che si evolvono con l’antiscottatura.

-; Moon Stone's constant from Pokémon Red is used.
-; No Pokémon evolve with Burn Heal,
-; so Moon Balls always have a catch rate of 1×.
  push bc
  ld a, BANK("Evolutions and Attacks")
  call GetFarByte
- cp MOON_STONE_RED ; BURN_HEAL
+ cp MOON_STONE
  pop bc
  ret nz

Love Ball

Utilizzo: Ha un catch rate migliore sui Pokémon del Sesso opposto

Glitch: Il catch rate migliore viene applicato ai Pokémon dello stesso sesso

 .wildmale

 	ld a, d
 	pop de
 	cp d
 	pop bc
-	ret nz ; for the intended effect, this should be "ret z"
+	ret z

Rapid Ball

Utilizzo: Ha un catch rate migliore sui Pokémon che fuggono dalla lotta o sono veloci

Glitch: La ball funziona solo su Tre Pokémon: Tangela, Magnemite e Grimer presenti nella prima categoria dei Pokémon che fuggono invece di checkare tre tabelle (Pokémon che fuggono col 10% di chance, col 50% o col 100%)

 .loop
 	ld a, BANK(FleeMons)
 	call GetFarByte

 	inc hl
 	cp -1
 	jr z, .next
 	cp c
-	jr nz, .next ; for the intended effect, this should be "jr nz, .loop"
+	jr nz, .loop
 	sla b
 	jr c, .max

Update 7/12/2019

Ultimamente sono stato abbastanza inattivo nel sito a causa del disastroso meraviglioso lancio degli ultimi titoli Pokémon: Spada e Scudo, che mi hanno fatto perdere lievemente la voglia di dedicarmi a qualunque cosa dedicata ai Pokémon. Ad ogni modo, ho sistemato diversi articoli (alcuni avevano le immagini offline e le ho ripristinate, inoltre altri avevano informazioni non tanto complete o imprecise e ho deciso di dargli una spolverata), ho inoltre aggiunto la sezione per l’ottava generazione grazie alle ultime scoperte fatte. Stay tuned!

Glitch del ricordamosse

Questo glitch venne scoperto da SciresM prima del rilascio del gioco e avviene quando un Pokémon può ricordare più di 67 mosse (numero facilmente raggiungibile da Mew o Gallade).

Requisiti

  • Un Mew al 100 a cui avete insegnato diverse TR
  • Un Gallade che conosce almeno 4 Egg moves

Quando andrete dal Ricordamosse e selezionerete uno di questi due Pokémon con i giusti criteri il gioco andrà in crash oppure nella lista delle mosse ricordabili ci potrebbe essere una glitch move che se tenterete di selezionare chiuderà anch’essa il gioco.

Anti pirateria

Come ben si sa, la buona vendita di un gioco al lancio è una delle parti più importanti del ciclo vitale di un videogioco, e anche per un brand come Pokémon, non è un’eccezione. Nonostante oggigiorno è più probabile capitare in un falso (specialmente per i giochi per GBA), alcuni dump malriusciti di una ROM o l’utilizzo di un emulatore poco accurato spesso possono far scattare le misure di antipirateria, in modo da infastidire il giocatore durante la sua esperienza di gioco, applicata quasi ed esclusivamente su alcuni titoli della serie.

Gen III

Pokémon Rosso Fuoco

Inizialmente circolava un rumor che i primi dump delle ROM di Pokémon Rosso Fuoco avessero un messaggio al porto di Aranciapoli: “Ad ogni modo: se ti piace questo gioco, compralo o muori”. Il messaggio ovviamente è stato aggiunto da un utente di terze parti in quanto Rosso Fuoco e Verde Foglia non possiedono misure anti-pirateria.

https://cdn.discordapp.com/attachments/281954166698672128/635316272392830976/74228904_1361636214017989_7069700882874499072_n.png

Gen IV

Pokémon HG/SS

Nel caso il gioco dovesse riconoscere di essere eseguito su una flashcard o su un emulatore poco accurato eseguirà un soft-lock all’inizio di una battaglia contro un allenatore facendo ruotare le Poké-ball del tuo party.

Gen V

Pokémon BW/BW2

Per quanto riguarda i titoli di quinta generazione, il gioco, senza che il giocatore possa accorgersene, controllerà lo stato degli infrarossi. Nel caso dovesse avere esito negativo farà sì che i Pokémon del giocatore non ricevano punti esperienza.

Gen VII

Pokémon Sole e Luna

Pokémon Sole e Luna hanno ricevuto un trattamento più drastico rispetto agli altri titoli, in quanto gli installabili del gioco sono stati leakati un mese prima della loro uscita. Ciò ha portato a un sacco di persone a giocare anticipatamente ai titoli di settima generazione, ma allo stesso tempo, ciò ha consentito a Nintendo di scoprire chi possiede una console hackata. Infatti, chiunque si fosse collegato online con Sole e Luna prima della sua release effettiva si è ritrovato la console bannata dall’online.

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.

Update 18/09/2019

Questo mese è stato un po’ più inattivo degli altri a causa di problemi personali, ma nonostante non abbia pubblicato tanti articoli ho comunque lavorato assieme a Chickasaurus su alcuni glitches delle versioni Coreane dei giochi di II Gen. Ringrazio inoltre tutti i visitatori per l’enorme aumento di visite che ha avuto il sito in quest’ultimo periodo, così come vorrei ringraziare tutti i visitatori non Italiani anche se penso sia meglio che visitiate Glitch City Laboratories se parlate in Inglese o PRAMA Initiative se parlate francese. (I also want to thank all the foreign visitors that visit this website, although you’ll be better if you visit Glitch City Laboratories if you speak English or PRAMA Initiative if you speak French)

Un modo per avvisare i visitatori dei nuovi articoli

Uno dei miei problemi principali riguardanti il sito è quello di far notare ai visitatori quali sono gli ultimi articoli pubblicati, senza farlo però in maniera invasiva (es. Newsletter). Una delle idee principali sarebbe quella di aprire una pagina Facebook su cui linkare ogni volta l’ultimo articolo uscito, così come il poter essere contattati in maniera più diretta lo staff del sito per eventuali bug, domande o dubbi. Inoltre la pagina FB può consentire ad alcuni articoli di essere notati di più.

Canale Youtube

Sto lavorando a un video per il canale Youtube che purtroppo richiede più tempo del dovuto. Spero di riuscire a finirlo entro la fine del mese in quanto vorrei includerlo in uno degli articoli che ho pubblicato.

ACE, Tweaking e Gen I-III JP Only-glitches

Per quanto riguarda questi tre sassolini che mi sto portando dietro da tutta l’estate sto lavorando agli articoli per l’ACE e quello aggiornato del Tweaking, ma purtroppo per alcuni di questi dovrò parlare di altre cose un po’ più importanti e fondamentali. Per i JP-Only glitches me ne mancano alcuni dei giochi di terza e prima generazione e ho finito.

Scambi internazionali (I e II Generazione)

Nonostante oggigiorno sia sicuro scambiare tra i giochi di lingue diverse, non è sempre stato così; infatti nei giochi di Prima e Seconda generazione scambiare o lottare con qualunque gioco JP usando una cartuccia di un’altra lingua avrebbe potuto persino cancellare il salvataggio, forzando entrambe le parti a reiniziare il gioco. Il tutto è causato principalmente dalle differenze dei banchi di memoria, l’utilizzo di protocolli diversi da entrambe le parti e la quasi totale assenza di caratteri JP dalle edizioni internazionali e viceversa per quelle JP. Questo glitch probabilmente era già conosciuto ai tempi ma la possibilità che una copia JP si incontrasse con un’altra era piuttosto bassa; tuttavia è stato fixato nelle release dei giochi VC non facendo riconoscere le release nipponiche dalle release internazionali.

Gen I

Come già menzionato in precedenza, i risultati ottenuti sono alquanto instabili e i risultati portavano a un crash o a un desync di link

Scambi con i giochi JP

La versione JP riconosceva più di 5 Pokémon (4 di questi sono dei MissingNo.) in squadra mentre la release internazionale non ne riconosceva nessuno.

Andando a vedere le info dalla versione JP mostrava Pokémon non presenti o con statistiche eccessivamente alte

Lotte con i giochi JP

Le lotte invece portano a un lock da entrambe le parti, con tanto di Charizard’m in campo mandato dalla versione JP

Gen II

Scambi con i giochi JP

Gli scambi con i giochi JP mostrano generalmente tanti ????? e spesso portano a un crash da entrambe le versioni se si tenta di vedere le info dei Pokémon dell’altro giocatore.

Lotte con i giochi JP

Anche le lotte portano a un crash quasi istantaneo non appena il gioco manda in campo il Pokémon; tuttavia, in questo caso, da entrambe le parti si avrà un Generale Rocket che manderà in campo FF.

Lotte con i giochi KOR

Pokémon Oro, Argento e Cristallo qualche anno dopo la loro uscita hanno avuto delle release coreane. Queste release, fortunatamente, sono parzialmente compatibili con i giochi internazionali, quindi non hanno molti side-effects se non l’assenza dei caratteri da parte delle versioni non Coreane.

Linkando il gioco con la versione JP si avrà il medesimo risultato, come se si linkasse una versione internazionale con una versione nipponica.

Scambi con i giochi KOR

La situazione si complica nel caso si facessero degli scambi tra le versioni ENG e le versioni Coreane: infatti il gioco vi consentirà di eseguire lo scambio senza troppi problemi ma c’è una buona probabilità che i Pokémon scambiati diventino dei Bad clones oppure che il loro nome sia vuoto. Il gioco inoltre può andare incontro a dei desync e visualizzare dei bad clones da una parte, dei ?????

https://cdn.discordapp.com/attachments/584095042822602800/621494392926240788/unknown.png

In alcuni casi può corrompere pure le uova e cambiare il Pokémon contenuto al loro interno.

https://cdn.discordapp.com/attachments/584095042822602800/621498485757444096/unknown.png

Nel caso dovessero schiudersi si avrà un Pokémon al livello 0

https://cdn.discordapp.com/attachments/584095042822602800/621506791720878080/unknown.png

Nel peggiore dei casi si avrà un glitchmon.

Tutti i problemi di comunicazione tra le versioni Coreane e quelle Internazionali sono causati dal secondo byte di alcune sillabe Hangul in quanto nella versione Internazionale potrebbero essere interpretati come caratteri che vanno a intaccare la memoria. Tecnicamente è una cosa che si può evitare mettendo dei nickname e un OT specifico nella versione Coreana (ad esempio , hex 01 01 non è un problema, quindi puoi chiamare tutti 가가가가가)

Alcune eccezioni

Per quanto riguarda gli scambi con le versioni JP è possibile ottenere un Bad clone con qualche condizione; infatti entrambi i salvataggi dovranno essere nuovi e il gioco JP dovrà avere 6 Pokémon mentre il gioco con l’altra lingua dovrà averne solo uno. Nella schermata degli scambi dovrete selezionare l’ultimo Pokémon della lista del gioco JP e l’unico disponibile nell’altra versione. Il gioco non JP crasherà una volta finito lo scambio ma entrambe le parti avranno un Bad clone.

Pomeg glitch

Seppur in maniera diverso rispetto in Pokémon Smeraldo, il glitch della Baccagrana è fattibile in Pokémon Diamante, Perla e Platino.

Differenze da Pokémon Smeraldo

Rispetto alla controparte di terza generazione il glitch non ha molta utilità se non per mandare in campo DP BOX o corrompere gli incontri casuali. Inoltre nella IV Gen la baccagrana se si hanno più di 100 EVs negli HP il gioco ridurrà di 100 gli EVs al posto di 10, inoltre gli oggetti per recuperare gli HP non avranno effetto.

Mandare KO un Pokémon

Come già menzionato precedentemente, mandare KO un Pokémon senza avvelenarlo è piuttosto difficile nei giochi di IV Gen, ma non impossibile: usando quest’equazione:

HP restanti = (HP persi usando la Baccagrana) - (HP ottenuti usando la caramella rara subito dopo aver usato la baccagrana)

Sarà possibile mandare KO il Pokémon facendolo salire di livello con una caramella rara. Per esempio, qualunque Pokémon con gli HP base 100 (Jirachi, Mew, Azumarill, Kyogre, Groudon etc…) con 244 EVs negli HP e con 32 HP rimanenti, subito dopo aver usato la baccagrana e successivamente la caramella rara andrà KO.

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.