[GTA San] Model Unlocker
Enviado: 23 Jul 2019, 20:02
Este é um pequeno software que criei em algumas horas de estudo (utilizando partes do meu outro programa) pra desbloquear modelos dff para serem importados no zmodeler.
Como exatamente esse programa funciona? Você abre, ele abre uma caixa de seleção de arquivo, você abre o dff, ele abre outra caixa de seleção de arquivo, você salva o dff e pronto, pode importar no zmodeler.
Exemplo de modelo importado utilizando isso:
(Meu PC quase explodiu importando esses modelos de carros com 12MB kkkk)
Observações:
(1) Caso você faça isso e o modelo apareça com erros de geometria (como as faces invertidas) o bug não é desse software, pois ele não altera absolutamente nada dentro das sessões, ele lê o bloco de bytes que lidam com a geometria inteiro e reescreve ele inteiro, sem interpretar nenhum desses dados.
(2) Há um outro programa pra bloquear modelos, aparentemente mais recente e menos utilizado que esse, e que encripta alguns dados fazendo com que nem o RWAnalyze entenda o bloco. Esse software não funciona, ainda, para esse tipo de bloqueio. Lado bom: o programa foi escrito em C# sem ofuscador e, portanto, é completamente descompilável, logo da pra saber o que foi feito e tentar reverter (já dei uma lida por cima no código)
Download
Código Fonte
Caso alguém olhe o source antes de eu corrigir, finja que não viu um WindowsForm inútil que esqueci de deletar, obrigado kkk
Como exatamente esse programa funciona? Você abre, ele abre uma caixa de seleção de arquivo, você abre o dff, ele abre outra caixa de seleção de arquivo, você salva o dff e pronto, pode importar no zmodeler.
Explicações Quase TécnicasAbrir
Basicamente, ele remove essa sessão com ID 0 no cabeçalho do arquivo:
Remove essa sessão extension no final da sessão GeometryList:
Remove essa última sessão (marcada de vermelho) no fim do arquivo (ela apresenta dados inconsistentes no cabeçalho da sessão, dizendo que o tamanho da sessão ultrapassa o tamanho do arquivo):
Também remove a sessão (aparentemente desnecessária) de ID 0xFE1E.
Essa sequência de atos torna a estrutura aparentemente idêntica as que o zmodeler importa, porém, o arquivo ainda aparecia dizendo estar protegido. Por último, ele altera a versão RW do modelo todo para a versão 3.5 e isso faz com que o modelo seja importável no zmodeler.
Remove essa sessão extension no final da sessão GeometryList:
Remove essa última sessão (marcada de vermelho) no fim do arquivo (ela apresenta dados inconsistentes no cabeçalho da sessão, dizendo que o tamanho da sessão ultrapassa o tamanho do arquivo):
Também remove a sessão (aparentemente desnecessária) de ID 0xFE1E.
Essa sequência de atos torna a estrutura aparentemente idêntica as que o zmodeler importa, porém, o arquivo ainda aparecia dizendo estar protegido. Por último, ele altera a versão RW do modelo todo para a versão 3.5 e isso faz com que o modelo seja importável no zmodeler.
Exemplo de modelo importado utilizando isso:
(Meu PC quase explodiu importando esses modelos de carros com 12MB kkkk)
Observações:
(1) Caso você faça isso e o modelo apareça com erros de geometria (como as faces invertidas) o bug não é desse software, pois ele não altera absolutamente nada dentro das sessões, ele lê o bloco de bytes que lidam com a geometria inteiro e reescreve ele inteiro, sem interpretar nenhum desses dados.
(2) Há um outro programa pra bloquear modelos, aparentemente mais recente e menos utilizado que esse, e que encripta alguns dados fazendo com que nem o RWAnalyze entenda o bloco. Esse software não funciona, ainda, para esse tipo de bloqueio. Lado bom: o programa foi escrito em C# sem ofuscador e, portanto, é completamente descompilável, logo da pra saber o que foi feito e tentar reverter (já dei uma lida por cima no código)
Download
Código Fonte
Caso alguém olhe o source antes de eu corrigir, finja que não viu um WindowsForm inútil que esqueci de deletar, obrigado kkk