O que há de Novo?
  • Anunciando os planos GOLD no Fórum Outer Space
    Visitante, agora você pode ajudar o Fórum Outer Space e receber alguns recursos exclusivos, incluindo navegação sem anúncios e dois temas exclusivos. Veja os detalhes aqui.

Engenharia reversa



ReBirFh

Habitué da casa
Mensagens
188
Reações
257
Pontos
74
Quero começar a fazer isso em pequenos jogos como atari 2600 ou snes

Qual linguagem devo usar ?

Alguém já conseguiu fazer isso ?
Você tem experiência com programação?

Acho que todos esses consoles antigos são feitos em assembler com a linguagem dos respectivos processadores.

Aqui http://www.romhacking.net/, você vai encontrar todas as ferramentas e tutoriais que precisa. Recomendo o NES e o Mega pra começar.

Obs. Só tenho uma vaga ideia do que estou pq já tive a ideia de fazer uns pequenos hacks há mais de uma década.
 

DanMorishima

Supra-sumo
Mensagens
986
Reações
1.001
Pontos
168
Você tem experiência com programação?

Acho que todos esses consoles antigos são feitos em assembler com a linguagem dos respectivos processadores.

Aqui http://www.romhacking.net/, você vai encontrar todas as ferramentas e tutoriais que precisa. Recomendo o NES e o Mega pra começar.

Obs. Só tenho uma vaga ideia do que estou pq já tive a ideia de fazer uns pequenos hacks há mais de uma década.
Você me deu uma ótima idéia , irei postar meu progresso no meu blog
Vamos ver se esses documentos são válidos mesmo ou é pura enrolação
 

ReBirFh

Habitué da casa
Mensagens
188
Reações
257
Pontos
74
Você me deu uma ótima idéia , irei postar meu progresso no meu blog
Vamos ver se esses documentos são válidos mesmo ou é pura enrolação
Rapaz, válido é mas não vai ser um tutorial passo a passo. Cada jogo é um jogo, a forma como um foi programado não quer dizer que vai ser igual a outro jogo, mesmo que muito parecido. E é uma linguagem de baixo nível, então é de compreensão bem complicada, você vai ter que aprender a linguagem daquele processador específico. Por isso perguntei se você tinha experiência com programação.
 

goro.br

Veterano
Mensagens
1.044
Reações
246
Pontos
129
Recomendo começar no NES, existem ferramentas muito boas sobre o desenvolvimento de jogos para a plataforma. Se tiver o conhecimento suficiente em assembly será possível fazer a engenharia reversa para todos eles basta levar a sério estudar a arquitetura.
 


DanMorishima

Supra-sumo
Mensagens
986
Reações
1.001
Pontos
168
Rapaz, válido é mas não vai ser um tutorial passo a passo. Cada jogo é um jogo, a forma como um foi programado não quer dizer que vai ser igual a outro jogo, mesmo que muito parecido. E é uma linguagem de baixo nível, então é de compreensão bem complicada, você vai ter que aprender a linguagem daquele processador específico. Por isso perguntei se você tinha experiência com programação.
Não tenho experiência , mas vou explorar tudo que falarem nos tutoriais
Pode relaxar que vou ir bem afundo
 

spyblack

Supra-sumo
Mensagens
1.011
Reações
801
Pontos
194
Sou romhacker (aposentado kkkkk) e comecei nessa vida a muito tempo atrás, quase 20 anos...
Acredite, mesmo no final dos anos 90 já existia comunidade bem ativa em engenharia reversa para tradução e modding de jogos.

Recomendo entrar na comunidade brasileira, o romhacking.net.br, mesmo que a maioria lá seja meio chato, tem bastante gente que pode lhe ajudar se você não for um estorvo ou pedinte.

Enfim, recomendo NES para começar. Aprenda a usar um debugger, estude bases numéricas principalmente hexadecimal, e por favor, tente coisas bem simples logo de cara, como mudar uma frase simples ou um tile, depois pense em sprites e mecânicas.
 

Cristiano Sword

Bam-bam-bam
Mensagens
1.164
Reações
4.564
Pontos
303
Quero começar a fazer isso em pequenos jogos como atari 2600 ou snes

Qual linguagem devo usar ?

Alguém já conseguiu fazer isso ?
Você quer programar do zero ou fazer hacking? como disse o amigo acima entra no romhacking, de quiser avançar em hacking vai ter que aprender a programar.
Mas se for criar jogos do zero vai ter que programar no minimo num nivel intermediario pra sair algo decente.
No atari2600, vc programa em assembly 6502, mas tem uma IDE completa com scprit em BASIC, vc pode procurar por BATARIBASIC.
No Snes, o buraco é mais embaixo.. a programação principal é eh asm 6502 modificado pra 16bits pra suportar o 5A22(cpu do snes), mas ultimamente tem uma lib em C muito boa, a PVsnesLib, que está progredindo incrivelmente. Mas pra usar ela vc tem que ter um nivel intermediario de C mesmo, até pq tem que fazer as diretivas direto na sua maquina e nao tem IDE, vc que vai ter que escolher uma a parte.
Sugiro começar no hacking e ir aprendendo C, vc pode ir direto no BASIC de atari2600 tbm, são comandos simples. O atari é um videogame bem simples de entender.
Ainda mais em comparação com a bagunça que é a arquitetura do snes.
 

dan.b.s

Larva
Mensagens
5
Reações
0
Pontos
3
Quero começar a fazer isso em pequenos jogos como atari 2600 ou snes

Qual linguagem devo usar ?

Alguém já conseguiu fazer isso ?
Como dito acima realmente Snes você terá que programar em Assembly ou partir para a biblioteca C disponível no github. No site Archive.org tem os detalhes técnicos do console de um antigo manual de desenvolvedor oficial da Nintendo, só procurar por "SNES manual development" ou algo semelhante que encontra. Vale a pena.

Se bem que hoje temos sites que explicam melhor isso. No mais, vejo mais tutoriais com relação a programação para Nintendinho, que é bem mais simples o aprendizado do que o Snes.
 

Zariel

Habitué da casa
Mensagens
39
Reações
119
Pontos
53
A muito tempo atrás, brinquei com ROMHack no inicio dos anos 2000, mas nunca levei muito a sério...porém é um tema que curto muito para aprender sobre o funcionamento de games clássicos. Tem 2 canais do Youtube que possuem vídeos bons relacionados a Romhacking e engenharia reversa no geral que pode te ajudar

GameDev Boss - Playlist de RomHacking


GameDev Boss - Playlist de Atari Hacking


Jogos & Programação - Programando para o Mega Drive (Genesis programming)


Jogos & Programação - Atari2600 (Tem até a famosa palestra do chesterbr sobre programação no Atari 2600)



E também, tem esse tópico do @Macbee aqui no fórum que pode te ajudar bastante
https://forum.outerspace.com.br/index.php?threads/facilitadores-p-criação-de-homebrews.376552/


Edit:

No link abaixo, você também pode baixar Código Fonte de Jogos do Atari 2600 que ja fizeram engenharia reversa em Assembly (Recomendo muito estudar o .asm de River Raid, um excelente clássico criado pela primeira programadora de jogos do mundo, Carol Shaw)

http://www.bjars.com/disassemblies.html


Falow!!!
 
Ultima Edição:

Metal64

Habitué da casa
Mensagens
162
Reações
348
Pontos
83
Porque o titulo é engenharia reversa se o topico é sobre desenvolvimento de jogos?
 
Topo Fundo