Abrir Menu...
NETO (C) 2000-2017

Sonic the Hedgehog 2 & Knuckles
Manual de Programação


      Utilizando um editor de hexadecimal é possível modificar o jogo, editando-o byte a byte. Sabendo onde fica cada instrução e alterando-a corretamente você pode personalizar o jogo. Você pode desenhar outro personagem no lugar do Sonic mas isto não é fácil já que tem que se feito ponto a ponto. Alterar o nome das fases no menu de seleção e no titulo das fases. Mas para poder programar o jogo é necessário que ele esteja no formato binário, não é muito difícil converter o jogo para binário, você pode utilizar um programa de conversão ou o emulador Genecyst que tem a opção DUMP ROM, que faz a conversão.
      Apesar do Sonic 2 & Knuckles ser apenas o Sonic 2 acoplado ao Sonic & Knuckles, este jogo pode ser considerado uma nova versão de Sonic 2, pois o jogo Sonic & Knuckles após identificar o cartucho Sonic 2 acoplado ativa uma memória que fica no fim dos dois jogos, sendo que esta memória contem basicamente todas as instruções do jogo do Sonic 2 & Knuckles, utilizando o cartucho do Sonic 2 apenas para os gráficos e mapas das fases, veja que neste manual você verá que as informações que são alteradas na maioria dos caso se encontra acima do endereço 0x300000 e poucas coisa ficaram entre os endereços 0x200000 á 0x2FFFFF que é onde o jogo do Sonic 2 está na memória ao ser acoplado ao Sonic & Knuckles, tendo em mãos as informações acima e mais no decorrer do documento talvez você concorde que podemos dizer que o jogo Sonic 2 & Knuckles pode ser considerado um novo jogo do Sonic 2 com o Knuckles.
 

Selecione uma das opções abaixo para ir direto para a seção na página:

Menu de seleção
Musica das fases
Início do Knuckles nas fases
Alterando os Objetos
Eventos
Códigos Secretos do Jogo
Curiosidades


 

sobe


Menu de Seleção de Fases


      Observe a tabela abaixo com as fases e com seus respectivos ids, estes ids são importantes pois o jogo utiliza estes ids para se referenciar a determinada fase.
FASE ID
EMERALD HILL 00
METROPOLIS 04
METROPOLIS ACT 3 05
WING FORTRESS 06
HILL TOP 07
OIL OCEAN 0A
MYSTIC CAVE 0B
CASINO NIGHT 0C
CHEMICAL PLANT 0D
DEATH EGG 0E
AQUATIC RUIN 0F
SKY CHASE 10

      Note que alguns números são pulados como do 01, 03, 06 e 09.  Apesar de não existir um nome de fase para estes ID's na relação e nem no menu de seleção de fases. Se você colocar estes ID's que estão faltando poderá acessar níveis perdidos (Faça a experiência e veja os resultados). Observe a tabela com a localização padrão das fases e logo em seguida uma explicação.
 
FASE ENDEREÇO
EMERALD HILL ACT 1 307906 e 307907
ACT 2 307908 e 307909
CHEMICAL PLANT ACT 1 30790A e 30790B
ACT 2 30790C e 30790D
AQUATIC RUIN ACT 1 30790E e 30790F
ACT 2 307910 e 307911
CASINO NIGHT ACT 1 307912 e 307913
ACT 2 307914 e 307915
HILL TOP ACT 1 307916 e 307917
ACT 2 307918 e 307919
MYSTIC CAVE ACT 1 30791A e 30791B
ACT 2 30791C e 30791D
OIL OCEAN ACT 1 30791E e 30791F
ACT 2 307920 e 307921
METROPOLIS ACT 1 307922 e 307923
ACT 2 307924 e 307925
ACT 3 307926 e 307927
SKY CHASE 307928 e 307927
WING FORTRESS 30792A e 30792B
DEATH EGG 30792C e 30792D

      A tabela acima  indica onde estão localizados os bytes de configuração na tela de seleção de fases. O 1o. endereço da tabela indica o byte da zona e o 2o. endereço indica o byte de act. Exemplo no endereço 307916 você verá o byte 07 (Hill Top zone) e no endereço 307917 você verá o byte 00 (Act 1).
 

 

sobe


Música das Fases


      Você também pode escolher a música a ser tocada nas fases. O formato é de apenas um byte por fase e é muito simples. Para colocar outra música de sua preferência, toque os sons no "Sound Test", anote o número da música e coloque no byte que representa a fase escolhida. Veja na tabela abaixo a localização da seleção de músicas.
      Observação: Ao modificar a música das fases some 80 ao número do "Sound Test" e coloque no local desejado, a tabela abaixo tem alguns exemplos de como os midis estão no Rom e como aparecem no Sound Test.
Fase
 
Música no
Rom
Música no
Sound Test
Endereço
 
EMERALD HILL 82 02 30397C
ID 01 82 02 30397D
WOOD ZONE 85 05 30397E
ID 03 84 04 30397F
METROPOLIS 85 05 303980
METROPOLIS 3 85 05 303981
WIN FORTRESS 8F 0F 303982
HILL TOP 86 06 303983
HIDDEN PALACE 90 10 303984
ID 09 8D 0D 303985
OIL OCEAN 84 04 303986
MYSTIC CAVE 8B 0B 303987
CASINO NIGHT 89 09 303988
CHEMICAL PLANT 8E 0E 303989
DEATH EGG 8A 0A 30398A
AQUATIC RUIN 87 07 30398B
SKY CHASE 8D 0D 30398C


 

sobe


Alterando os Objetos


      Você também pode alterar objetos nas fases como badnicks, vidas, obstáculos, etc... A configuração dos objetos nas fases utiliza 6 bytes longos, sendo no formato XX-XX-YY-YY-OO-VV. Explicando melhor os X's indicam a posição horizontal na tela, os Y's indicam a posição vertical na tela, os O's indicam os objetos a serem colocados e os V's indicam as variações possíveis de cada objeto. Para obter a localização exata do local onde você quer por os objetos, faça o código do debug mode e anote a primeira linha de coordenadas no local do SCORE, Estas serão as coordenadas que você deverá digitar para poder colocar o objeto no local desejado. Veja a localização onde o game busca os objetos das fases. Os níveis terminam o mapeamento antes dos bytes FF-FF-00-00-00-00. A partir destes bytes começa próximo nível.
 
FASE ENDEREÇO
EMERALD HILL ACT 1  DF3FE
ACT 2  DF7B2
METROPOLIS ZONE ACT 1  DFBD2
ACT 2  E005E
ACT 3  E05A4
WING FORTRESS  E0C10
HILL TOP ACT 1  E1018
ACT 2  E1396
HIDDEN PALACE 2E8C80
OIL OCEAN ACT 1  E1A4A
ACT 2  E1F18
MYSTIC CAVE ACT 1  E23DA
ACT 2  E26F2
CASINO NIGHT ACT 1 33F06E
ACT 2 33F74C
CHEMICAL PLANT ACT 1  E2A88
ACT 2  E2EFC
DEATH EGG 2EB230
AQUATIC RUIN ACT 1  E34D8
ACT 2  E398E
SKY CHASE 2EBBDE


 

sobe


Início do Knuckles nas Fases


      Nesta parte você pode definir em que ponto da tela o Knuckles começa. Para poder selecionar um local diferente do original. Utilize o modo debug. Vá para o local de onde você deseja iniciar e anote as coordenadas (primeira linha no local do Score), Tendo em mãos as coordenadas coloque-as no local da fase escolhida conforme no endereço da tabela abaixo.
 
FASE LOCALIZAÇÃO COORDENADAS
Emerald Hill 1 30A488 00-60-02-8F
Emerald Hill 2 30A48C 00-60-02-AF
01-00 30A490 00-60-02-8F
01-01 30A494 00-60-02-AF
Wood 1 30A498 00-60-01-AC
Wood 2 30A49C 00-60-01-AC
03-00 30A4A0 00-60-02-8F
03-01 30A4A4 00-60-02-AF
Metropolis 1 30A4A8 00-60-02-8C
Metropolis 2 30A4AC 00-60-05-EC
Metropolis 3 30A4B0 00-60-02-0C
05-01 30A4B4 00-60-02-AF
Wing Fortress 1 30A4B8 00-60-04-CC
Wing Fortress 2 30A4BC 01-E0-04-CC
Hill Top 1 30A4C0 00-60-03-EF
Hill Top 2 30A4C4 00-60-06-AF
Hidden Palace 1 30A4C8 02-30-01-AC
Hidden Palace 2 30A4CC 02-30-01-AC
09-00 30A4D0 00-60-02-8F
09-01 30A4D4 00-60-02-AF
Oil Ocean 1 30A4D8 00-60-06-AC
Oil Ocean 2 30A4DC 00-60-05-6C
Mystic Cave 1 30A4E0 00-60-06-AC
Mystic Cave 2 30A4E4 00-60-05-AC
Casino Night 1 30A4E8 00-60-02-AC
Casino Night 2 30A4EC 00-60-05-8C
Chemical Plant 30A4F0 00-60-01-EC
Chemical Plant 2 30A4F4 00-60-01-2C
Death Egg 1 30A4F8 00-60-01-2D
Death Egg 2 30A4FC 00-60-01-2D
Aquatic Ruin 1 30A500 00-60-03-7E
Aquatic Ruin 2 30A504 00-60-03-7E
Sky Chase 1 30A508 01-20-00-70
Sky Chase 2 30A50C 01-40-00-70


 

sobe


Eventos


      Nos jogos do Sonic, o Logo da Sega, A tela de titulo, as fases, os Especiais Estágios etc.. são eventos diferentes e são chamados com diferentes codificações e você pode aciona-los simplesmente colocando os seus valores no local adequado, os números que você verá na tabela abaixo pertencem a codificação do jogo e estes números não pulam de 4 em 4 por acaso, Se você for até o endereço 0x3000A0 você verá vários números 6000xxxxx note que o próximo 6000xxxx tem uma distancia de 4 bytes do endereço 0x3000A0, o próximo 6000xxxx tem 8 bytes do endereço 0x3000A0 e assim por diante. Antes que você me pergunte: o que isto tem de importante ? - eu respondo: sabendo se o local de inicialização exato dos eventos você pode reprograma-los sem afetar o funcionamento do jogo. Veja na tabela abaixo os eventos e seus respectivos endereços de inicialização.
 
EVENTO ID: INÍCIO
Sega Logo 00 0x303310
Tela de apresentação 04 0x3034E8
Modo demonstração 08 0x3039A0
Jogo Normal 0C 0x3039A0
Special Stage 10 0x304A0A
Continue 14 0x3072A6
Seleção de Fases 18 / 1C / 24 0x3076C2
Seqüência do Final 20 0x308008


 

sobe


Códigos Secretos do Jogo


Menu de Seleção de Fases


      Nesta parte você conhecerá os códigos do jogo e como alterá-los, o código de acesso ao menu de seleção de fases é: cima, cima, cima, baixo, baixo, baixo, esquerda, direita, esquerda, direita. No rom este código esta armazenado no formato das teclas do jogo e você pode alterar simplesmente colocando o valor da tecla correspondente. O código esta armazenado do endereço 0x3038E2 á 0x3038ED e você verá os seguintes bytes: 01, 01, 01, 02, 02, 02, 04, 08, 04, 08, 00 e FF onde: 01 = cima, 02 = baixo, 04 = esquerda, 08 = direita, 00 e FF indicam fim do código, você pode modificar o código de acesso ao menu de seleção de fases porém o jogo só aceita codificação para as teclas direcionais, você deverá colocar os bytes 00 e FF no final para indicar que o código terminou.
 

Modo Depuração e Todas as Esmeraldas com Super Knuckles


      Os código a seguir são feitos após o ter sido acessado o menu de seleção de fases e são inseridos no Sound Test tocando as respectivas músicas. Estes são mais fáceis de alterar pois estão armazenados no Rom do mesmo modo que são digitados no Sound Test. A única diferença em relação ao código de acesso ao menu de seleção de fases é que você tem que digitar FF ao invés de 00-FF para indicar o termino do código. Veja na tabela abaixo os códigos e suas respectivas localizações.
 
Evento Código Localização
Modo Depuração 01-09-09-04-01-00-01-08 0x307C7A á 0x307C81
Todas as Esmeraldas (Super Knuckles) 01-06-07-07-07-02-01-06 0x307C83 á 0x307C8A


 

sobe


Curiosidades


      Você verá os códigos do Sonic 2 sózinho, mas sem nehuma utilidade neste jogo, agora o curioso é que se estes códigos fossem utilizados o jogo não travaria na música Oil Ocean ao ser feito o código (01-01-02-04), pois se você observar no endereço 0x307C4C você verá os bytes 10-3C-00-BF e não 10-3C-00-3F como ocorre no jogo do Sonic 2 e que ocasiona o travamento na música Oil Ocean, eu estou comentando isto porque a Sega não corrigiu este problema nem no Sonic Jam apesar de não travar na musica OIL OCEAN o Sonic Jam não toca o Som do continue que deveria ser tocado ao fazer o código 01-01-02-04. Muitos outros problemas que ocorrem no cartucho do Sonic 2 não ocorrem nesta versão, um exemplo simples é o problema do modo depuração que quando você morre e tenta colocar um objeto na tela o jogo não coloca o objeto na tela enquanto você não sair do modo de edição e retornar, evitando-se assim que o jogo congele.