Super Mario Bros. 3 é um dos jogos mais vendidos de todos os tempos, e com razão. Foi uma enorme melhoria em relação a Super Mario Bros., com novos power-ups, mais fases, casas de Toads, novas mecânicas e muito mais.
Sub-Páginas#
Restos de Debug dos Desenvolvedores#
Existem algumas rotinas de debug restantes no jogo, mas nenhuma pode ser acessada sem dispositivos de trapaça ou hacking.
Level Select e Debug Menu/Mode#
Nas versões japonesas, americanas e europeias, o código de Game Genie KKKZSPIU ativa um Level Select e um Debug Mode.
Na tela de título:
- Pressione Cima ou Baixo para selecionar um mundo para começar.
- Pressione A para aumentar o número de vidas em 5 (um tile mudará cada vez que você pressionar o botão).
- A + B + Baixo no Controle 2 leva você à câmara da Princesa no final do jogo.
- A + B + Direita leva você diretamente à cortina final.
Quando você inicia uma fase, sua caixa de itens terá um de cada item mais uma flauta adicional, e os slots restantes serão preenchidos com P-Wings. Durante o jogo:
- Pressione Select no Controle 1 para alternar entre todas as formas de Mario.
- A / B + Select dá um Sapato de Goomba para Mario (em algumas fases, ele pode parecer bugado, mas funcionará normalmente).
Além disso, você terá tempo infinito – o contador continuará diminuindo, mas Mario não morrerá quando ele acabar.
O menu mostrado na imagem foi encontrado em outro lugar da ROM e inserido na tela de título por hacking; ele não aparece ao usar apenas o código de Game Genie. Aplique este patch IPS em uma ROM de Super Mario Bros. 3 para vê-lo por si mesmo.
Originalmente, parece que esse menu teria sido acessível a partir da seleção “1 PLAYER” / “2 PLAYER” caso o jogador 2 estivesse segurando A + B. Também é possível que ele tivesse outro propósito, mas o menu acima seria o candidato mais provável.
Veja a fonte da desassemblagem do banco PRG #24, procure por “Title_Do1P2PMenu:”. Curiosamente, a verificação do botão ainda está presente, mas a ação que ele deveria executar foi substituída por uma série de instruções NOP (no operation), provavelmente feitas pouco antes do lançamento.
(Source: menu encontrado por BMF54123; código criado por David Wonn; desassemblagem por Southbird)
Restos de Debug Desconectados#
Mesmo que você ative o modo de debug acima, ainda existem algumas rotinas deixadas na ROM que permanecem inacessíveis. Essas rotinas não parecem respeitar a flag de debug mencionada anteriormente, então ou a verificação simplesmente se perdeu com o tempo, ou essas rotinas foram hardcoded para funcionar sempre. A segunda hipótese faria sentido para explicar por que elas estão desconectadas do código-fonte.
- Modo de Movimentação Livre - Não se sabe como isso seria acessado, mas permitiria usar o D-Pad para se mover livremente pelo nível (veja a fonte da desassemblagem do banco PRG #0, procure por "$C3EA").
- Invencibilidade Alternável - Pressionar Select alternaria entre ficar completamente invulnerável ou não (veja a fonte da desassemblagem do banco PRG #0, procure por "$C91B"; esse comportamento poderia ser facilmente restaurado redirecionando a instrução JMP ou movendo o label Objects_HandleScrollAndUpdate, já que esse método cairia diretamente no código normal do jogo).
(Source: Southbird)
Recurso de Respawn de 2P Inutilizado#
Em uma partida 2P Vs., existe código de jogo não utilizado que faz um jogador reaparecer após morrer. Ele renasce piscando e invencível até que o jogador o mova. Esse comportamento pode ser restaurado usando o código de Game Genie ATUZPKOZ... que, como efeito colateral, também quebra a lógica de saída após pontos suficientes terem sido obtidos.
(Source: Southbird)
Objetos Inutilizados#
(Additional information: Southbird)
Objeto 00#
ID do Banco: ??
ID do Objeto: 00
Possui código que faz com que ele se mova (até uma certa velocidade) com base na entrada do jogador quando o jogador está “tocando” nele. Qual poderia ter sido sua finalidade não está claro. Pode ter sido apenas usado para testar colisão.
Objeto 02#
ID do Banco: ??
ID do Objeto:02
Este é destruído pela sua rotina de inicialização se o jogador não estiver sobre dois tiles iguais; caso contrário, ele começa em uma altura vertical correspondente ao jogador +32 (aproximadamente na altura dos pés do jogador) e se move para cima em uma velocidade variável por meio de uma lógica peculiar.
Objeto 04#
ID do Banco: 00
ID do Objeto: 04
Nota: Este não é o aspecto real do objeto no jogo. A imagem é apenas para referência.
Um objeto muito estranho. Os tiles que realmente compõem esse objeto não estão mais na ROM, mas ele deveria usar os tiles B0-BF. Ele se vira em direção ao jogador ao ser inicializado. Se Mario/Luigi colidir com esse objeto, ele ficará preso a ele como um Micro-Goomba e nunca mais sairá, mas não atrapalha seu movimento. Ele pode ser destruído com um casco de Koopa ou um martelo.
Objeto 05#
ID do Banco: 00
ID do Objeto: 05
Nota: este não é o aspecto real do objeto no jogo. A imagem é apenas para referência.
Outro sprite estranho. Os tiles que realmente compõem esse objeto não estão mais na ROM, mas ele deveria usar os tiles A0-A7. Esse objeto anda como um inimigo normal. Em um certo ponto do seu ciclo de caminhada, ele salta até a posição Y de Mario/Luigi e então cai de volta.
Curiosamente, ao encostar nele, Mario/Luigi é arremessado na direção oposta. A única forma de sofrer dano com esse objeto é deixá-lo cair sobre você. Ele pode ser destruído com um casco de Koopa ou um martelo.
Objeto 0A#
ID do Banco: 00
ID do Objeto: 0A
Nota: este é o melhor encaixe para os gráficos deste objeto, mas pode não estar correto; os gráficos exibidos aqui são os do objeto Bolt Lift.
Um simples objeto estático que pode ser "empurrado" por Mario/Luigi. Sua detecção de colisão parece não estar completa, já que ele pode ser empurrado para dentro de paredes.
Objeto 1C#
ID do Banco: ??
ID do Objeto: 1C
Provavelmente o objeto mais intrigante, ele faz algo ser lançado em direção ao jogador, para o céu, deixando um cogumelo deslizando no local onde surgiu. Isso pode ter sido semelhante aos arbustos de Super Mario World, onde ao passar por eles um cogumelo aparece, embora a funcionalidade esteja longe de estar completa o suficiente para ser usada dessa forma.
Objetos de Carta#
ID do Banco: 00
ID do Objeto: 21 (Cogumelo), 22 (Flor de Fogo), 23 (Estrela)
Versões estáticas das cartas encontradas ao final de cada fase! Coletá-las adiciona a carta correspondente ao inventário, mas não há nada no código deste objeto para lidar com quando a carta coletada é a terceira.
Chegando ao final da fase com três da mesma carta não vai ativar o bônus de 1-Up. Você ainda tem que pegar a terceira carta apropriada do final da fase.
Curiosamente, este objeto chama uma sub-rotina denominada "Object_MoveAndReboundOffWall" (que seria uma ótima função para praticamente todas as unidades terrestres do jogo, mas apenas este objeto realmente a utiliza), mesmo que o objeto nunca se mova.
Cheep-Cheep Dourado#
ID do Banco: 00
ID do Objeto: 88 (Single), D2 (Trio)
Esta variante de Cheep-Cheep só aparece na sétima fase não utilizada. Nessa fase, eles sempre surgem em grupos de três (embora o excesso de sprites frequentemente impeça ao menos um de aparecer), mas existe uma versão de inimigo único no código.
Ele nada pela tela em um padrão ondulado estranho e é consideravelmente mais rápido do que as variações vermelha ou verde padrão.
Para-Beetle Verde#
ID do Objeto: N/A
Só pode ser gerado pelo objeto Enxame de Para-Beetles (veja abaixo). Ele voa mais rápido que o Para-Beetle vermelho, mas fora isso não há diferença entre os dois.
Objeto Quicante#
ID do Banco: ??
ID do Objeto: B3
Um objeto peculiar que basicamente se comporta de forma semelhante a um Ovo de Spiny, mas com gráficos corrompidos. Ele também pode ser “quicado” por um bloco de pulo para mudar de direção. Finalidade desconhecida; talvez fosse uma bola de espinhos rolante ou algo do tipo?
Enxame de Para-Beetles#
ID do Banco: 00
ID do Objeto: B7
Um objeto de controle que gera Para-Beetles verdes e vermelhos nos lados esquerdo e direito da tela. Ele é usado na nona e décima fases não utilizadas.
Paletas Inutilizadas de Fases#
Alguns tipos de fases possuem paletas inutilizadas. Não muitas, no entanto.
Fortaleza#
A paleta de Fortaleza #2 é uma versão verde do esquema de cores padrão das fortalezas.
Gigante#
A paleta de fase gigante #2 usa tons de cinza com água azul.
Planície#
Paleta de planície #1, com um céu em tom rosado.
|
Paleta 2 (Usada) |
Paleta 6 (Não utilizada) |
|---|---|
|
|
|
A paleta #6 é quase idêntica à paleta #2 usada. A única diferença é que os retângulos azuis são azul-esverdeados.
Objetos Ocultos#
Existem algumas fases com objetos ou cenários escondidos atrás de outros objetos, possivelmente resquícios de designs de fases mais antigas.
|
Tile Oculto |
In-Game |
|---|---|
|
|
|
Um único bloco de tijolos está escondido atrás da cachoeira no Mundo 4-1.
|
Tile Oculto |
In-Game |
|---|---|
|
|
|
Uma nuvem aparece atrás da primeira colina em World 5-2
Curiosidades#
Toad Suit#
Por algum motivo, o item Hammer Suit que sai de blocos ? grandes parece ser, na verdade... um Toad Suit? Os outros itens armazenados ao lado dele, o Frog e Tanooki Suits, correspondem corretamente aos seus sprites no inventário, então o motivo dessa diferença é um completo mistério. No entanto, isso foi corrigido nos remakes de SNES e GBA.
Moedas de Jelectro#
Ao acertar um P-Switch em uma fase com Jelectros, eles se transformam em moedas prateadas. No entanto, o efeito é puramente visual, e Mario/Luigi ainda será ferido se tentar coletar uma. Essa peculiaridade foi corrigida nos remakes de SNES e GBA.