Batman Vengeance Modding (Oficial)
Enviado: 09 Fev 2020, 00:30

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!

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

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
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!