Guia prático para transformar Sub-Zero em Scorpion no Mortal Kombat 2
O Mortal Kombat 2 é um dos jogos mais modificados da história. A comunidade de ROM hacking existe desde os anos 90, e uma das modificações mais pedidas e estudadas é substituir Sub-Zero por Scorpion como personagem jogável. Vou explicar como isso funciona na prática, o que dá certo, o que não dá, e onde a maioria das pessoas trava. A premissa básica é simples: o código do jogo atribui a Sub-Zero um conjunto de sprites, paletas de cores, animações e um move set completo. Para transformar isso em Scorpion, você precisa alterar esses dados em um nível hexadecimal. A grande maioria dos tutoriais online pula essa parte técnica e só indica downloads prontos, o que é inútil quando algo dá errado ou quando você quer entender o que está acontecendo.
O que é mortal kombat 2 scorpion e por que é mais complicado do que parece
Não é apenas trocar as cores de azul para amarelo. O Scorpion original do primeiro Mortal Kombat tinha movimentação, ataques e sprites diferentes do Sub-Zero. No MK2, o Sub-Zero foi redesenhado e recebeu um esquema de movimentos próprio. Para transformar Sub-Zero em Scorpion com fidelidade, você precisa lidar com múltiplos níveis de mudança:
- Sprites e paletas de cores do personagem
- Animações de ataque, defesa e movimento
- Tabelas de move set (códigos de botões para cada golpe)
- Roman Numbers (os dados específicos do personagem no ROM)
O problema principal que encontrei na prática é que a maioria dos hacks de "Scorpion" na internet são apenas recolores superficiais do Sub-Zero. O personagem fica amarelo, mas continua tendo o mesmo move set, as mesmas animações e a mesma física de Sub-Zero. Isso é aceitável para alguns jogadores, mas quem procura a experiência real do Scorpion vai sentir a diferença imediatamente. Um edge case específico que quase me fez desistir de um projeto meu: ao tentar inserir sprites originais do primeiro MK, o jogo travava durante a seleção de personagens. O problema era que os sprites originais do Scorpion tinham dimensões diferentes e usavam uma tabela de paleta incompatível com a estrutura de memória do MK2. A solução foi ajustar manualmente cada sprite para respeitar a grade de 64x64 pixels que o MK2 espera, o que demandou cerca de três horas de trabalho em hex apenas para o sprite idle.
Como funciona a modificação na prática
Você precisa de um editor hexadecimal confiável, como Hex Workshop ou HxD, além de ferramentas específicas como MK2 Tools ou o projeto MKPatch, que já vêm com templates prontos para edição de personagens. A primeira coisa que você vai fazer é localizar a seção Roman Numbers do Sub-Zero no ROM. Ela começa no offset aproximado 0x40E00 no conjunto original da Nintendo SNES. Dentro dessa seção, cada linha corresponde a um parâmetro do personagem: velocidade de caminhada, velocidade de corrida, força dos golpes, altura dos saltos, e os dados das animações. Se você substituir esses valores diretamente pelos do Scorpion do primeiro jogo, vai perceber que muitos parâmetros simplesmente não se encaixam porque a engine do MK2 espera dados num formato diferente do que o primeiro jogo usava.
O trabalho real acontece na seção de sprites e paletas. Os sprites do Scorpion original estão no ROM do primeiro jogo. Você precisa extrair esses sprites, converter o formato de paleta (o MK1 usa paletas diferentes do MK2), e reposicioná-los nos offsets corretos do ROM do MK2. A ferramenta MK2 Sprites Converter ajuda nisso, mas exige que você defina manualmente o width e height de cada sprite para evitar erros de alinhamento. Depois dos sprites, vem a parte mais trabalhosa: o move set. O Scorpion do MK1 tem poucos movimentos comparado ao Sub-Zero do MK2. Você vai precisar decidir se quer um Scorpion simplificado, fiel ao primeiro jogo, ou um Scorpion expandido com movimentos adicionais adaptados da engine do MK2. A comunidade costuma usar combinações dos dois, mas isso exige ajustar manualmente os Roman Numbers correspondentes a cada golpe.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Pegadinhas comuns e onde os tutoriais falham
A primeira pegadinha é o checksum do ROM. Muitos editores modernos ignoram isso, mas consoles reais e emuladores com checks ativados vão rejeitar o ROM modificado. Use sempre uma cópia limpa e conhecida como base, como a versão v1.1 dos EUA, e atualize o checksum após cada modificação significativa. A segunda pegadinha é mais sutil: ao modificar sprites, você pode acidentalmente sobrescrever dados de outros personagens porque o ROM do MK2 empacota tudo em blobs contínuos. Antes de qualquer alteração, faça backup da seção que vai modificar. Meu backup manual é simples: copio os 50KB antes e depois do offset que estou mexendo para um arquivo separado.
Também notei que vários hacks publicadosonline quebram o jogo depois de dois minutos de partida. Isso geralmente acontece porque os frames de animação foram mal importados e o engine recebe um frame inválido, travando o loop de animação do personagem afetado. A correção é revisar frame a frame cada sprite importado e garantir que todos tenham o mesmo tamanho de frame data.
Alternativas se você não quer fazer do zero
Se o processo acima parecer complexo demais, existem projetos da comunidade que já fizeram esse trabalho. Os mais conhecidos são o Scorpion Mod do MK2 lançado em 1999 por Xyzzy e o projeto MK2 Scorpion Expansion de 2003. Essas versões não são perfeitas — o Scorpion Expansion deixa Sub-Zero como lutador separado, enquanto o mod original só troca Sub-Zero por Scorpion — mas são funcionalmente jogáveis. O problema dessas alternativas prontas é que elas geralmente são distribuídas em arquivos .ips ou .bps patch, e você precisa aplicar o patch em um ROM original. Nem todos os sites que hospedam esses patches atualizam os arquivos, então versões antigas podem conter bugs que já foram corrigidos em releases posteriores. Sempre verifique datas e relatos de bugs antes de aplicar.
Outra alternativa é usar emuladores com save states e a opção de trainer, como o ZSNES ou o Snes9x com plugins de cheat. Alguns trainers incluem códigos que desbloqueiam o Scorpion sem modificar o ROM em si. Isso é menos fiel, mas rápido e reversível, e funciona bem se seu objetivo for apenas testar ou jogar rapidamente.
Considerações finais sobre o que esperar
Fazer uma modificação decente de Scorpion no MK2 leva entre 4 e 8 horas se você estiver familiarizado com hex editing e com a estrutura do ROM. Para iniciantes, pode levar dois ou três fins de semana. Os resultados variam: algumas pessoas conseguem um Scorpion jogável com movimentos razoáveis, outras terminam com um personagem que quebra fases inteiras porque os valores de dano ficaram desbalanceados. A principal limitação dessa modificação é que o Scorpion nunca vai ter todos os movimentos do Sub-Zero ou do Kitana sem trabalho extra de engenharia reversa na engine. E mesmo que você consiga adicionar novos golpes, a física geral do jogo continua sendo a do Sub-Zero, então o Scorpion vai se sentir como alguém com skin amarela e alguns movimientos extras, não como o Scorpion completo que os jogadores esperavam.
Se você tem interesse genuíno em ROM hacking, comece com projetos menores antes de tentar o MK2. A curva de aprendizado é real, mas o processo de modificar um jogo desses tipo te dá uma compreensão profunda de como engines antigas funcionam por dentro. E quando finalmente ver seu Scorpion andando na tela de seleção pela primeira vez, vale a dor de cabeça.