quarta-feira, 20 de janeiro de 2010

Glitch, Glitchy, Glitcher, Glitching

Não, não... Não é o nome de uma nova banda de rock.

Glitch, glitchy, glitcher e glitching são quatro termos da área da informática (?) que, num sentido geral, referem-se à falhas (os famosos bugs) em software. Mas esses termos são usados quase que exclusivamente pelos usuários para se referir a tais falhas quando ocorrem em jogos. Jogos de computador, jogos de videogame, qualquer jogo eletrônico está sujeito a esconder um - ou, como na maioria das vezes, mais de um - glitch. Pelo que me consta, a palavra "glitch" vem do idioma iídiche, "glitsh", que vem do idioma alemão, "glitschig", e que significa alguma coisa como "escorregadio", ou melhor, "escorregão". Mas na prática, o que é um "glitch" afinal?

Glitch (ou glitches, no plural) aparecem nos jogos em muitas formas diferentes. Você sempre sabe quando encontrou um glitch assim que o percebe. Pode ser um simples artefato gráfico fora do lugar - ou deformado - na tela, uma música distorcida, um texto ininteligível, cores misturadas, pedaços de gráficos na tela faltando ou substituidos por outros pedaços estranhos, um funcionamento esquisito, misterioso, bizarro, ou no mínimo, anormal. Você sempre sabe quando vê ou escuta um glitch porque se percebe claramente que o que está vendo ou ouvindo não deveria ser visto nem ouvido. Aquilo não deveria existir. Não deveria estar lá. Mas então, por que diabos está lá??? Bom, nem eu sei hehehe... Bom, eu costumo dizer que existem 2 tipos de glitches: os glitches naturais e os glitches artificiais. Ihh, e agora, o que diferencia um do outro? É simples...

Os glitches naturais geralmente aparecem espontaneamente durante um determinado jogo como resultado dos erros cometidos por programadores relaxados, lesados, burros ou sacanas descuidados, que deixaram pra lá esqueceram de testar ou corrigir algum detalhe, ou simplesmente erros (bugs) que varreram pra debaixo do tapete passaram despercebidos. Então nesse caso, o glitch natural é um dos piores "dedos-duro" que existem, pois ele faz com que venha à tona o(s) erro(s) de programação do jogo, expondo tudo para o jogador, que fica com cara de paisagem sem saber o que está acontecendo não tem culpa nenhuma (coitado). Para exemplificar, imagine você jogando The Legend Of Zelda: Link's Awakening no Game Boy, da Nintendo. Daí você está andando e quando chega na borda da tela (para passar de uma tela para a outra) resolve olhar o mapa apertando SELECT. Quando você aperta SELECT denovo e volta pro jogo, olha que coisa... O Link foi parar na outra tela como de costume, mas na mesma posição que estava na tela anterior, que babaquice! que coisa não? Pois então, isso é um glitch natural. Aconteceu, e a culpa não foi sua... foi de algum babaca da Nintendo.

Já os glitches artificiais não aparecem espontaneamente. Este tipo de glitch acontece por sua causa, por causa de jogadores/usuários sacanas curiosos que querem ver o que acontece no jogo se fuçar no código ou se fizer "isso ou aquilo". Neste caso, é você - o jogador - quem resolve colocar erros no jogo, só pra dar uma de hacker/nerd trapacear. Eu, Fernando, por exemplo, sou um glitcher. E mais essa agora, o que é um glitcher?

Um glitcher é um sacana uma pessoa que faz de tudo pra trazer à tona um glitch, desde jogar de uma maneira extravagante/bizarra para tentar causá-lo, até usar um emulador para "abrir" o código do jogo e fuçar bastante enchendo-o de bugs editá-lo. Há os que fazem isso para trapacear no jogo (ganhar vida/energia infinita, dinheiro infinito, pular de fase, etc.), e há os que fazem isso só pra sacanear por pura curiosidade (como eu, por exemplo). A essa prática, eu e outras pessoas acostumadas aos glitches, chamamos de glitching - explorar os glitches de um jogo.

Geralmente, glitches não surgem assim "do nada". Claro, há alguns glitches que realmente surgem "do além", quando você menos espera, e estragam todo o seu jogo - estes são os piores. Glitches podem acabar com a sua paciência estragar o jogo inteiro. Podem travar o seu computador/videogame. Podem deletar completamente o seu jogo da memória (calma, é brincadeira, hehehe). Glitches quando surgem "do além" são um baita pé no saco! extremamente desagradáveis pra quem não está acostumado. Mas muitos glitches surgem apenas como conseqüência de alguma situação extrema, e por esse motivo, existem muitos glitches em muitos jogos por aí, escondidos, esperando para serem descobertos, trazendo à tona um, ou muitos, erros em cascata - um erro causando outro, e outro, e outro, e assim sucessivamente até travar tudo.

Um dos jogos mais glitchy (cheio de glitches) que eu já vi, é justamente o que eu citei acima, o The Legend Of Zelda: Link's Awakening do Game Boy, da Nintendo. Ô joguinho velho pra dedéu das antigas, de 1993. Só pra você ter uma idéia, esse jogo é cheio de glitches em cascata, e tem mais de 40 deles listados num antigo site americano, que inclusive explica o passo-a-passo para causá-los. À propósito, o site é o seguinte: http://davidwonn.kontek.net/gameboy.html.

Dê uma olhada no vídeo que peguei no YouTube mostrando os efeitos do glitch do jogo Legend Of Zelda: Link's Awakening, da Nintendo, para o Game Boy.



Esse outro vídeo do YouTube mostra mais glitches, desta vez em outro jogo da mesma série - Legend Of Zelda: Oracle of Ages, da Nintendo, para o Game Boy Color.




Pessoal, glitch não é só "coisa de nerd".
Leiam agora sobre o glitch mais famoso e mais causado do mundo inteiro: o "MissingNo.":


MissingNo. (em japonês: けつばん, Ketsuban?), ou MissingNO (Missing Number, ou Número Ausente), é uma espécie de Pokémon encontrada nos jogos Pokémon Red e Blue. Os Pokémon MissingNo. são usados por tratadores de exceções pela criadora do jogo Game Freak; eles aparecem quando o jogo tenta acessar dados sobre uma espécie de Pokémon inexistente. Devido à programação de três eventos dentro do jogo, os jogadores podem encontrar o MissingNo. através de um glitch. A espécie foi documentada pela primeira vez pela Nintendo no exemplar de maio de 1999 da revista Nintendo Power.

Encontrar um MissingNo. resulta em erros gráficos e na replicação em massa do sexto item do menu de itens do jogador; esse último efeito fez com que revistas de estratégia e de jogos passassem a cobrir os procedimentos para realizar o glitch. A IGN citou a aparição de MissingNo em Pokémon Red e Blue como um dos mais famosos glitches de videogame. Os fãs da série tentaram racionalizar MissingNo. como um elemento canônico, o que gerou discussão em estudos sociológicos quanto ao impacto dos videogames sobre a sociedade.

Clique aqui para conhecer mais sobre o MissingNo.: http://en.wikipedia.org/wiki/MissingNo.

Bom, agora que você já sabe mais ou menos o que são os glitches na teoria, veja nas fotos abaixo como geralmente são os glitches na prática. Estes screenshots eu tirei do jogo The Legend Of Zelda: Link's Awakening DX do Game Boy Color, da Nintendo. Os glitches fui eu mesmo que causei hehehe... Clique nas fotos para aumentar e ver os detalhes:



Estes lugares da foto acima não existem no jogo original. Na verdade, existem, mas os elementos do cenário são tão diferentes que um jogador do original não reconheceria estes cenários, que eu só consegui trazer à tona usando as minhas técnicas de glitching.



Quem já jogou este jogo original se surpreenderia de ver esta foto aí encima, com certeza. Quem diria, encontrar um esconderijo de um Moblin e ainda poder conversar com ele, dentro de uma dungeon! Hehehe, só através de glitching mesmo.



Mais uma surpresa... como trazer a jangada pra esse canto do mapa?! E mais surpreendente ainda: como flutuar com uma jangada, sobre terra firme??? Glitch como esse só daqui a trocentos anos hehehehe...



Viu a foto acima? Você jamais subirá nesta parte da caverna sem se aproveitar de um glitch.


Na foto acima, essa sim, é a verdadeira cara de um glitch do mal! Se você ainda não tinha entendido o que exatamente era um glitch, com certeza agora você entendeu.



Ficou curioso pra saber como eu causei essa "glitcharada" toda? Hehehe...
Aí vai o que você precisa: um arquivo com a imagem ROM desse jogo, um emulador de Game Boy Color (o Visual Boy Advance, lógico), um pouco de inteligência pra saber o que é um dump de memória e poder fuçar no código do jogo, e simplesmente dois endereços de memória: FF98h e FF99h.

FF98h = coordenada X do Link no cenário
FF99h = coordenada Y do Link no cenário

"Qué mais? Vai fuçá no código, fío!"
- Frase do velhinho na caverna do primeiro Zelda.