O jogo usa dte/mte (dte/mte é um tipo de compressão)
EX:
0x01 = [TR], 0x02 = [BO], 0x03 = [GA], 0x04 = [ME], 0x05 = [DE], 0x06 = [MA], 0x07 = [IS]
Traduzam isso:
"A- -
0x01-I-
0x02- -
0x03-
0x04-R- -É- -
0x05-
0x06-
0x07"
Bom, se analisassem com mais calma o arquivo
DATA_USA.dat via editor hexadecimal, notariam um sequencia de 2 letras separadas por 0x00, está logo no começo no offset 0x2AFAh, por isso me parece que não analisaram direito, pois está bem visível.
A sequencia começa assim: (pontos são a representação do caractere 0x00, em outros jogos poderia ser um 0xFF, ou estaria tudo junto, isso varia muito.)
th.in.re.to.an.at.er.st.en.on.of.te.ed.ar.is.ng.me... "bom, não vou por tudo".
Analisando com mais cuidado, logo abaixam veriam;
Várias palavras incompletas: Symbo, ights, ighb, etc...
Outras completas como: body, zoo, good, old, from, Book, etc...
Como decifrar isso?
Fácil, basta usar a sequencia que está no offset 0x2AFA, como o exemplo que citei.
Vou explicar melhor: (Vou escolher uma sequencia que me ajudou a descobrir essa DTE, poderia ser qualque palavra, basta saber inglês e como seria se fossem completas)
Lembrando que o ponto final agora será representado por algum valor hexa desconhecido, tal valor é o que representa aquelas sequência de duas em duas letras.
Se quiserem me acompanhar, vá ao offset 0x26C53h
J.u.y.Febru.yM.Ú.AA²ø.May.JÅe.JuÍ.Augôt.Sep.m.r.Oc..r.No.m.r.De¼m.r.
Não é preciso ser muito gênio para saber que é a sequencia dos mês do ano em inglês, ou seja. cada valor estranho, vale por 2 letras que formarão a palvra correta.
January = É a primeira, e como completo? Siga a lógica.
J.u.y. = vendo via hexadecimal, descubro que o ponto tem o valor hexa de 0x05, e que caberia o trecho "an", então:
0x05 = "an"
Ficando assim:
Janu.y. = vendo via hexadecimal, descubro que o próximo ponto tem o valor hexa de 0x0E, e que caberia o trecho "ar", então:
0x05 = "an"
0x0E = "ar"
Ficando assim:
January. = completamos "January", o último ponto é o 0x00 e vem antes da próxima palavra, então esse ponto é o separador do textos.
=========================================================
Lembra da sequencia que mencionei no começo?
th.in.re.to.an.at.er.st.en.on.of.te.ed.ar.is.ng.me
Vamos destcaar o que já sabemos:
th = ?
in = ?
re = ?
to = ?
an = 0x05
at = ?
er = ?
st = ?
en = ?
on = ?
of = ?
te = ?
ed = ?
ar = 0x0E
is = ?
ng = ?
me = ?
E os outros? Usem a lógica.
Código: Selecionar todos
th = 0x01
in = 0x02
re = 0x03
to = 0x04
[b]an[/b] = 0x05
at = 0x06
er = 0x07
st = 0x08
en = 0x09
on = 0x0A
of = 0x0B
te = 0x0C
ed = 0x0D
[b]ar[/b] = 0x0E
is = 0x0F
ng = 0x10
me = 0x11 etc...