Menu

Mostrar postagens

Esta seção permite que você visualize todas as postagens feitas por este membro. Observe que você só pode ver postagens feitas em áreas às quais tem acesso atualmente.

Menu Mostrar postagens

Mensagens - Neto Rpg

#1
A parte boa é que a tool não está errada, mas sim há um arquivo corrompido no container e se ela não consegue extrair ele, então ela não extrai nada.

Escrevi uma tool para extrair os arquivos: https://github.com/NetoRpg/Divinity-Original-Sin-.PAK-Extractor/releases/tag/untagged-2204ca1a923e82edb21c

O arquivo corrompido é o "Localization/Amlatspanish/amlatspanish.xml", quando usar minha tool pra extrair ela criará ele preenchido com bytes 0x00. Acredito que você possa substituir ele por um XML de outra língua que vai funcionar normalmente.

Pra recriar o arquivo a tool oficial vai funcionar normalmente. Como não tenho PS4 não tenho como testar, então aguardo seu feedback.
#2
Boolean Match
Binary Pattern Search


Introdução



Há uns dois anos atrás eu estava procurando os textos de um jogo, porém não conseguia achar de forma alguma utilizando as ferramentas disponíveis para busca relativa.
Depois de muito quebrar a cabeça desenvolvi um algoritmo (bastante simples até) para efetuar buscas de textos por um padrão de repetição de caracteres, ele se mostrou efetivo e eu consegui finalmente encontrar os famigerados textos.
Estava mexendo em uns arquivos antigos aqui e encontrei o projeto, então resolvi dar uma otimizada no código e publicar ela. Ainda há muito o que melhorar, então sintam-se a vontade para contribuir.

O princípio da busca relativa é buscar pela distância entre os caracteres, por exemplo: Entre A e B a distância é 1, entre A e E a distância é 4 e assim por diante. Portanto mesmo que a tabela de caracteres comece em um valor diferente da ASCII a distância entre as letras do alfabeto é a mesma. Ou não.

O meu algoritmo funciona com base na repetição de caracteres em um texto ignorando completamente o que os caracteres podem ser. Ao procurar a palavra "JOGO" também seriam encontradas as palavras "FOGO", "LOGO", "BEGE", "PEDE", "LATA". Na verdade, pra encontrar qualquer uma destas palavras bastaria procurar "1232" ou "+-*-", lembrando que é case sensitive, então letras maiúsculas e minúsculas são consideradas diferentes. Por este motivo o algoritmo funciona melhor com palavras com muitas letras repetidas, ou até mesmo frases inteiras. Palavras com um padrão muito fraco podem gerar muitos resultados falsos, o que não é uma coisa boa. Você não vai querer pesquisar "New Game" em uma ISO de 8GB, na verdade nem em uma de 100MB, acredite (de verdade, não tente fazer isso).

Por que eu não encontrei os textos que eu procurava utilizando as buscas relativas?
No meu caso além da tabela ser de 16 bits, o que não seria um problema, o valor dos caracteres avança de dois em dois, então A = 2, B = 4, C = 6, etc. Norte americanos traduzindo jogos japoneses, vai entender.

Enfim, já digitei muito. Espero ter ficado claro o funcionamento da ferramenta, qualquer dúvida é só perguntar.


Pré-Requisitos




Como utilizar?



Basta possuir o arquivo no qual você deseja pesquisar e o texto.
Lembre-se: prefira utilizar frases para a busca, assim você conseguirá resultados mais precisos e o tempo de busca será menor.



Imagens



[spoiler]
[/spoiler]



Download


#3
Fala galerinha do romhack, eu sou Neto Rpg.
Sou novo por aqui e desejo traduzir clássicos como Desert Bus do Sega CD e e E.T. do Atari!

Alguém tem os links das tools necessárias? :cuteeyes:
Ou um bom editor hexadecimal pra recomendar?

Fico no aguardo e até mais!