Debug Mode – Act 2: Sonic the Hedgehog e seus segredos

por Lucas Rodrigues em 26 de Fevereiro de 2018

Agora que já conhecemos o que é Debug Mode (também conhecido como Debug Menu), podemos explorar melhor um pouco do funcionamento de alguns dos nossos jogos favoritos. Não há como iniciar esse processo de uma forma melhor do que apresentando os segredos de Sonic the Hedgehog para Mega Drive.

Desvendando as fases

Sonic é um dos melhores amigos para os desenvolvedores, pois graças a uma provável falha do time de desenvolvimento, que mais tarde veio a se tornar uma característica marcante da série, é possível utilizar alguns comandos e chegar facilmente a qualquer canto de seus mapas. Nesta breve análise, utilizaremos o primeiro jogo do ouriço, lançado em 1991.

Coloque um cartucho de Sonic the Hedgehog em seu console e ligue-o. Na tela de apresentação, digite em seu controle os seguintes comandos comandos:

CIMA BAIXO ESQUERDA DIREITA

Se escutar aquele som de um anel sendo coletado durante o jogo, segure o botão A e aperte START. Você estará no menu de seleção de fases do jogo. Aqui é possível perceber que a sequência das fases não é a mesma apresentada no jogo.

Isso acontece porque a lista é formada de acordo com a ordem que as fases estão em endereços de memória do cartucho. Salientando a importância dos testes durante o desenvolvimento dos jogos, essa mudança aconteceu quando foi detectado que a curva de dificuldade crescia excessivamente para um novo jogador entre as fases Green Hill e Labyrinth, sendo necessário deixar essa para depois e não frustrar os jovens aventureiros de primeira viagem.

Se utilizarmos um código de Pro Action Replay, é possível verificar como as fases se comportam no cartucho:

FFFE10:????

Nos 4 últimos dígitos do código, basta substituir os dois primeiros pontos de interrogação pelo código da fase e os dois últimos pelo código do ato (00, 01 ou 02 para os atos 1, 2 e 3 respectivamente – acostume-se, pois programadores contam a partir do número ZERO). Ou seja, para ir à fase Spring Yard Zone Act 1, o código é FFFE10:0400. Para ir à Green Hill Zone Act 3, utilize o código FFFE10:0002.

Curiosamente, utilizando o código de Scrap Brain Zone Act 3 (FFFE10:0502), você será jogado à Final Zone. Isso acontece porque a “fase da água roxa”, no código do jogo, é considerada como um quarto ato da Labyrinth Zone. Logo, para acessá-la, utilize o código (FFFE10:0103).

Também é possível conferir o Sound Test do jogo neste momento. Escute suas músicas favoritas e procure por alguns sons que não foram utilizados na versão final do jogo.

Debugging

Para conferir o “truque das mil faces”, como é conhecido pela maioria dos brasileiros, faça a seguinte sequência na tela inicial:

CIMA C BAIXO C ESQUERDA C DIREITA C

Novamente, caso o som de um anel sendo coletado for ouvido, basta segurar o botão A e apertar START.

De cara é possível notar algumas diferenças na tela do jogo: os marcadores de score (pontuação) e time (tempo) parecem estar com mal-funcionamento. O que acontece é que agora eles mostram a posição do personagem e da câmera em um endereço hexadecimal e algo que provavelmente seja a quantidade de sprites na tela. Explorando um pouco os comandos desse modo, é possível perceber o seguinte:

  • Ao apertar o botão B, Sonic transforma-se em algum dos objetos da fase, além de ignorar colisões, gravidade e qualquer outra regra do jogo;
  • Para mudar de forma, basta apertar o botão A.
  • Apertando C, você libera um dos objetos selecionados no mundo (alguns deles respeitarão a gravidade, outros não). Apertando B novamente você volta a ser Sonic.

Também é possível conferir truques de desenvolvimento com o jogo pausado:

  • Botão A – reseta o jogo;
  • Botão B – enquanto apertado, faz com que o jogo siga normalmente, mas com a taxa de fps reduzida pela metade;
  • Botão C – avança 1 frame.

Além de tudo isso, Sonic também ganha invencibilidade, morrendo apenas caso seja esmagado ou afogado.

Observação: é possível utilizar os dois códigos citados ao mesmo tempo. Basta fazer as duas sequências na tela de título, segurar o botão A e apertar START, entrando no menu de fases. Selecione a fase segurando o botão A novamente e o Debug Mode será ativado.

Testando

Após descobrir esse código, com certeza você já fez várias coisas como soltar dezenas de caranguejos em um mesmo ponto em Green Hill Zone, colocar fogo por toda a tela em Marble Zone e cercar Sonic de molas em Spring Yard Zone para vê-lo ricocheteando loucamente. Que tal agora fazermos algo que seria trabalho para um verdadeiro tester?

Em Scrap Brain Zone Act 2 há um teletransportador que leva Sonic para cima, caso ele tenha 50 ou mais anéis, ou para baixo, caso tenha menos. O teletransporte é ativado quando Sonic se encontra na posição 08940190.

Para entendermos melhor como isso é em código, temos o seguinte em português estruturado:

     se (posicao == 08940190){

          se (aneis >= 50) {teletransporte = cima}

          senao {teletransporte = baixo}

     }

Como um bom tester, qual o procedimento a seguir com a finalidade de verificar se o objeto estudado se comporta da maneira proposta pelos desenvolvedores, preservando o cronograma de desenvolvimento do jogo?

A – jogar todas as fases duas vezes chegando ao ponto desejado (penúltima fase), pois sou jogador raiz, não gosto de códigos e não os utilizarei!

B – utilizar o Debug Mode e a seleção de fases para chegar ao ponto rapidamente.

Quem respondeu a letra B, acertou, veiarada. Não desperdice o tempo e dinheiro da empresa pensando que você será um jogador pior por utilizar códigos durante os testes. Eles são extremamente úteis.

Dever de casa

Como sugestão para testar a utilização dos recursos de debugging de Sonic the Hedgehog, faça o teste proposto. Veja se consegue encontrar o transportador em Scrap Brain Zone Act 2 e verificar se ele realmente leva o personagem a dois destinos diferentes.

Além disso, sabia que Labyrinth Zone Act 1 possui uma plataforma secreta? Será que você consegue encontrá-la? Ela aparece mais ou menos no ponto 09C000EC do mapa. Boa sorte!


Leia mais sobre: , , ,