Página 1 de 1

Batman Vengeance Modding (Oficial)

Enviado: 09 Fev 2020, 00:30
por Meth0d
Imagem
Modding - Tópico Oficial



Oi, seja bem vindo ao tópico oficial sobre o modding do jogo Batman Vengeance!
Dentre as muitas dúvidas que devem estar pairando sobre a sua cabeça, você deve estar se perguntando: que jogo é esse ? como assim tópico oficial ? Vamos com calma.

Sim, este é um tópico oficial. Depois de aproximadamente 18 anos que o jogo foi lançado, esta é a primeira vez que há um esforço considerável em iniciar o modding deste jogo. Você pode tentar procurar mods, grupos, sites pela internet mas não vai encontrar.
Usarei este tópico para relatar todos os meus avanços na engenharia reversa dos arquivos e também projetos de ferramentas.

1. Por que ?
Desde bem pequeno eu sempre gostei do Batman, praticamente todas as minhas festas de aniversário eram com o tema do desenho de 1992, Batman: The Animated Series e sem dúvida é um dos meus desenhos favoritos (ao lado de Dragon Ball Z).
Eu lembro que no ano de 2003 eu costumava visitar uma loja de jogos chamada Magic Games. Toda vez que eu entrava lá, sentia que estava no paraíso, as prateleiras lotadas de jogos, aqueles boxes (caixinha de papelão + CD Room + Manual), era tudo muito bom.

Certo dia lá estava eu dando uma olhada na seção de jogos de computador, quando me deparo com um jogo chamado Batman Vengeance. Foi amor á primeira vista, não só por ser um jogo do Batman, mas principalmente por ser um jogo baseado no Animated Series.
Como toda criança eufórica e mimada pedi ao meu pai que comprasse o jogo e quando tive ele em mãos mal podia esperar para chegar em casa e instalar no meu computador.

Foram muitas horas de diversão, algumas frustrações por não saber o que fazer em algumas missões (dado que não tinha versão em português do jogo)... enfim, só lembranças boas.

Sei que ele não é o melhor/maior/mais famoso jogo do mundo, mas acho que está na hora desse jogo também ter seu próprio modding!

Imagem
Fotos reais da falecida loja Magic Games - infelizmente não resistiu aos avanços da Steam no Brasil ao longo dos anos.

Imagem
Caixinha do jogo (foto retirada do Ebay)

2. Cronograma (Entenda E.R como Engenharia Reversa)
* E.R dos Arquivos .FAT/.000 - 100% - (graças ao Watto pude começar a entender como estava estruturado os arquivos principais do jogo)
* Unpacking dos Arquivos .FAT/.000 - 100%
* Repacking dos Arquivos .FAT/.000 - 100%
* E.R do formato .BIN (Definições) - 0%
* E.R do formato .ETF (Textos) - 0%
* E.R do formato .TSD (Texturas) - 0%
* E.R do formato .SND (Áudios) - 0%
* E.R do formato .PEB (Partículas) - 0%
* E.R do formato .A3I (Animações) - 0%
* E.R de Modelos 3D - 0%
* E.R do formato .BPF (Desconheço a finalidade) - 0%
* E.R do formato .OMB (Desconheço a finalidade) - 0%
* E.R do formato .DLR (Desconheço a finalidade) - 0%


3. Progresso - Engenharia Reversa dos Arquivos BIN
Não há uma uniformidade entre os arquivos .BIN, cada um parece ter seu próprio "formato".
A lista abaixo está incompleta, outros arquivos principais contém mais arquivos .BIN, estarei atualizando depois.
SpoilerAbrir
3ddata.bin
agomaxparam.bin
aisdk_brain.bin
aisdk_initstructure.bin
animationset.bin
arc.bin
arclist.bin
batcapmeccards.bin
batcapmesh.bin
boundingsphere.bin
boundingvolume.bin
c3dworlddlg.bin
camera.bin
camerameccards.bin
cbasedlg.bin
cinaction.bin
cinactor.bin
cincamera.bin
cineinfo.bin
cinematic.bin
cinevent.bin
cinlink.bin
cinlinktable.bin
cinmessage.bin
cinrotation.bin
cinskip.bin
cintarget.bin
cinturnaction.bin
cinvlink.bin
cinwaypoint.bin
cinwtime.bin
cmenu.bin
cmenuactionset.bin
cmenuitem.bin
cmenumessage.bin
collideset.bin
collisionmesh.bin
collisionset.bin
colmaterial.bin
cprogressdlg.bin
csoundagent.bin
ctextdlg.bin
deformationset.bin
dialogfile.bin
dialoginstance.bin
dynam.bin
engineobject.bin
enginestructure.bin
events.bin
family.bin
flatblendingtype.bin
fog.bin
gamematerial.bin
gamematerialtable.bin
geoobj.bin
graph.bin
graphnode.bin
graphnodelist.bin
ikpivotlist.bin
instantactormanager.bin
internalcineinfo.bin
levelgamematerialtable.bin
levellipsynctable.bin
leveltablesstructure.bin
light.bin
lightmaptsdtable.bin
lighttypelist.bin
lipssync.bin
menusdescription.bin
micro.bin
mlssession.bin
mssound.bin
msway.bin
musiclipssync.bin
noscriptrefsuperobjects.bin
objectmeccards.bin
objecttable.bin
objecttablelist.bin
objecttypes.bin
particleemitter.bin
particlesystemchar.bin
po.bin
pointarray.bin
position.bin
sct_lightlist.bin
sct_soundagentlist.bin
sct_soundeventelement.bin
sct_soundeventelementlist.bin
sectinfo.bin
sectors.bin
skinfile.bin
skintool.bin
standardgame.bin
statelist.bin
states.bin
strings.bin
superobjectlists.bin
superobjects.bin
visualmaterial.bin
visualset.bin
waygraphobjectidtable.bin
waypoint.bin
waypointobjectidtable.bin
zdxindexlist.bin
zdxlist.bin
zdxzonesetencapsulation.bin

4. Criação de Ferramentas
* Unpacker/Repacker - 100%
* Editor de Textos - 0%
* Editor de Texturas - 0%
* Editor de Definições BIN - 0%

... (outras ferramentas - breve).....

5. Considerações
Atenção, esse é o início de tudo, não espere que depois de amanhã já esteja tudo pronto, não, vai levar bastante tempo. É praticamente um trabalho de uma pessoa só e provavelmente vou precisar de pessoas experientes quando chegar na parte das animações e modelos 3D.
A cada novo avanço estarei atualizando este tópico.

Obrigado pela leitura!

Re: Batman Vengeance Modding (Oficial)

Enviado: 16 Fev 2020, 23:42
por Meth0d
À moderação: Quero reservar essa mensagem de tópico para publicar meus avanços e publicar imagens.

ModDiary - 16/02/2020
Comecei a trabalhar nos arquivos BIN, em especial o visualmaterial.bin, ele carrega todas as definições dos materiais dos objetos 3D do jogo.
No exemplo acima eu "zerei" as definições, então é como se o jogo não tivesse material algum definido. A partir de agora vou documentar cada material e testar variações nos objetos e ver o que acontece.
É basicamente uma cutscene do jogo, mas não sei raios por que eles definiram como sendo um level...
Não há nada o que fazer, basta apertar o botão direito do mouse para o Batman ler uma mensagem e em seguida o level acaba... a título de curiosidade, só para esse "level" o arquivo de material possui 95 definições.

Pelo que vi até agora, não existe um "arquivo central" para todos os levels, por exemplo, um arquivo animations.bin que carregasse todas as animações e fosse usado por qualquer level... não, cada level carrega as suas próprias animações, texturas, objetos 3d... funcionando de modo independente dos outros.

Essa é uma das engines "mais certinhas" que eu já vi na minha vida, literalmente todo aspecto do jogo, por mais simples que seja tem o seu próprio arquivo de definições BIN. Não é a toa que a lista desses arquivos é imensa.

Imagens
https://i.imgur.com/C6EY4Ln.png
https://i.imgur.com/xWph4Jr.png
 

Re: Batman Vengeance Modding (Oficial)

Enviado: 20 Abr 2021, 20:15
por BTASGuy
Hello there Meth0d! How are you? I recently found out about your work, and I'm very glad I did. I've been trying to find tools all over the internet to mod this game for a little over a year now, but to no avail. I went from emulator sites, to dark and shady old websites full of cracked software, but nothing that could help me. I gave up on the search for certain time not to long ago, but the other day I made quick search just in case anyone had given this game a little attention, and you could imagine my face when I saw your video.
I take it that there's a lot of work to do yet, and this will take some time because of the massive reverse engineering you have to make, but I can't help but ask you: How is the development going? Do you have an estimated release date?
Anyways, I just wanted to offer you my help in case you needed this to be reposted somewhere else so you can get some help with the project. Don't give up on it!! As you, I am a big fan of Batman: The Animated Series and the DCAU that Bruce Timm, Paul Dini, Alan Burnett and Eric Radomski created. I even did some skins for this game for the Gamecube version, using Dolphin Emulator, which I can show you if you'd like. Keep on it man!! You have a fan supporting you here. Take care and I wish to hear some good news about the project in the near future.

Greetings from a fellow Argentinian guy, from Buenos Aires.