2025/01/02

Re4 MDT INFO

Nesse post venho trazer informações os arquivos MDT do re4, nesses arquivos estão todos os textos do jogo.

Todas as informações que vou trazer aqui vou usar também como referencia as informações do Zatarita:
https://github.com/Zatarita/re4-wiki/blob/main/Final/PC/mdt.md
https://residentevilmodding.boards.net/thread/15827/mdt-file-specification
https://github.com/Zatarita/re4-wiki/blob/main/Final/PC/fnt.md

Existem duas Versões/Tipos de MDT:

* MONO: o arquivo conta com um único idioma.
* MULTI: contem um conjunto de arquivos MONO, no caso são de 6/8 idiomas dentro desse arquivo.
(Para saber qual é qual, os arquivos multi sempre começam com 06000000 ou 00000006)

No arquivo MULTI a ordem dos idiomas é a seguinte:

0) Japanese
1) English
2) French
3) German
4) Italian
5) Spanish
6) Chinese (ID 6)
7) Chinese (ID 9)

Info Sobre as Versões do Jogo:
(informações somente para os idiomas Europeus,
desconsiderar Japanese e Chinese)

Nota: mesmo que a versão seja de um único idioma, o arquivo MULTI vai ter todos os idiomas,
mesmo não sendo utilizado, mas pode ser que tenho texto inválidos.
Nota2: então o idioma Japanese esta em todas as versões do jogo, mesmo que não de para seleciona-lo.
Nota3: o idioma Chinese só esta presente nas versões UHD/PS4/NS

GC: Big Endian, esse é o que tem a menor tabela de char, nota: a versão inglesa do jogo os outros idiomas presente no arquivo Multi contem textos inválidos. (char 0x80 até 0x13F)
WII/PS2/2007/PS3/X360 = contem a tabela de Char de mesmo tamanho (char 0x80 até 0x17F)
UHD/PS4/NS = contem a tabela de Char de mesmo tamanho (char 0x80 até 0x1FF)
Nota4: nem todos os char são usados pelo jogo, para usar todos os ids de char validos você deve editar o arquivo FNT.
Nota5: os idiomas Japanese e Chinese tem mais de uma tabela de char(glifos). Enquanto os idiomas europeu compartilham somente uma tabela de char(glifos).

Sobre os Caracteres de Controles:

Os ids a partir de 0x80 são os caracteres impressos na tela por exemplo 0 char 0x80 é o char de espaço.
Ja os Ids de 0x00 até 0x7F são caracteres de controles que tem funções especiais.
Nota: são somente usados os char até id 0x15, de 0x16 até 0x7F nunca são usados pelo jogo. e não deve ter funcionalidades (não use).

Tabela do que cada char de controle faz:

Value 0x00:
Zatarita Name: Start
Jaderlink Name: &Start;
Has Modifier: NO
Description: Toda string/entry começa com esse valor, na minha tool é omitido esse char.

Value 0x01:
Zatarita Name: End
Jaderlink Name: &End;
Has Modifier: NO
Description: Todas string/entry termina com esse valor, depois desse valor, todos o resto é ignorado, então pode ser considerado lixo.

Value 0x02:
Zatarita Name: Insert
Jaderlink Name: &Insert;
Has Modifier: YES
Modifier: Line Number
Description: Insira outra string/entry do MDT da Room. (Nota: não vi esse char de controle ser usado no jogo)

Value 0x03:
Zatarita Name: Newline
Jaderlink Name: 

Has Modifier: NO
Description: faz uma quebra de linha no texto.

Value 0x04:
Zatarita Name: Newpage
Jaderlink Name: &NewPage;
Has Modifier: NO
Description: faz uma quebra de pagina no texto, isto é, ele apaga o texto e sobrepõem.

Value 0x05:
Zatarita Name: Speed
Jaderlink Name: &Speed;
Has Modifier: YES
Modifier: Print Speed
Description: Velocidade em que os caracteres são impressos na tela, quanto maior o numero, mais demorado é para mostrar os caracteres na tela.

Value 0x06:
Zatarita Name: Color
Jaderlink Name: &Color;
Has Modifier: YES
Modifier: Color Index
Description: Altera a cor de todo o texto que vem depois deste ponto. As cores são determinadas por uma tabela de cores codificada. Cada versão tem cores ligeiramente diferentes disponíveis.

Value 0x07:
Zatarita Name: Option
Jaderlink Name: &Option;
Has Modifier: NO
Description: Uma opção para uma pergunta. (use as que já existe no jogo)

Value 0x08:
Zatarita Name: Pause
Jaderlink Name: &Pause;
Has Modifier: NO
Description: "Aguarde a entrada do jogador", isto é, pausa o texto, e espera o jogador confirmar para exibir o próximo texto. (se não tiver esse comando no final da frase, ele ser exibido e fechado autenticamente)

Value 0x09:
Zatarita Name: Sleep
Jaderlink Name: &Sleep;
Has Modifier: YES
Modifier: Sleep Duration
Description: Espera por um período específico antes de continuar.

Value 0x0A:
Zatarita Name: Quantity
Jaderlink Name: &Quantity;
Has Modifier: NO
Description: A quantidade do último item pego. Isso é persistente entre salvamentos e salas.

Value 0x0B:
Zatarita Name: Left Justify
Jaderlink Name: &LeftJustify;
Has Modifier: YES
Modifier: Justification Left
Description: Distância do lado esquerdo da tela onde a mensagem aparecerá.

Value 0x0C:
Zatarita Name: Top Justify
Jaderlink Name: &TopJustify;
Has Modifier: YES
Modifier: Justification Top
Description: Distância do topo da tela onde a mensagem aparecerá.

Value 0x0D:
Zatarita Name: Unknown
Jaderlink Name: &0xD;
Has Modifier: YES
Modifier: Unknown
Description: Atualmente não se sabe o que isso faz; no entanto, o código-fonte indica que ele faz algo e possivelmente recebe um modificador. (Nota: não vi esse char de controle ser usado no jogo)

Value 0x0E:
Zatarita Name: Return
Jaderlink Name: &Return;
Has Modifier: NO
Description: Retornar de uma inserção. Nota! Se isso for chamado em uma string que não foi inserida, ele bloqueará o jogo. Qualquer referência a uma entrada MDT separada requer que esse caractere retorne o controle de volta para a string principal.

Value 0x0F:
Zatarita Name: Core
Jaderlink Name: &Core;
Has Modifier: YES
Modifier: Line Number
Description: Insere uma string/entry de core_006.mdt

Value 0x10:
Zatarita Name: Last Pickup
Jaderlink Name: &LastPickup;
Has Modifier: NO
Description: O nome do último item pego. Isso persiste entre salvamentos e salas.

Value 0x11:
Zatarita Name: Item
Jaderlink Name: &Item;
Has Modifier: YES
Modifier: Line Number
Description: Insere uma string/entry de core_017.mdt (esse é o mdt que tem o nome dos itens)

Value 0x12:
Zatarita Name: Character
Jaderlink Name: &Character;
Has Modifier: YES
Modifier: Character Index
Description: Insere um nome de personagem. Isso é usado somente durante cutscenes de walkie talkie (chamada de radio) e só funciona sob certas circunstâncias. Os valores modifier validos são:
0: Leon
1: Hunnigan
2: Salazar
3: Saddler
Nota: esse nomes são codificados em um MDT.

Value 0x13:
Zatarita Name: ????
Jaderlink Name: &0x13;
Has Modifier: NO
Description: valor somente presente nos idiomas Japanese e Chinese, função desconhecida.

Value 0x14:
Zatarita Name: ????
Jaderlink Name: &0x14;
Has Modifier: NO
Description: somente usado no arquivo "font/trc.mdt" da versão de PS4/NS, não sei para que serve, mas foi utilizado no mesmo lugar que poderia ser colocado um &Pause;

Value 0x15:
Zatarita Name: ????
Jaderlink Name: &0x15;
Has Modifier: NO
Description: somente usado no arquivo "font/trc.mdt" da versão de PS4/NS, não sei para que serve, mas foi utilizado no mesmo lugar que poderia ser colocado um &Pause;

Avisos:
Os char que tem o campo "Modifier" significa que o proximo char é um valor de configuração para esse char.
Nota6: os caracteres de controles, são os mesmos para todos os idiomas e todas as versões do jogo.
Porem a tabela de caracteres visíveis são diferentes entre os idiomas.



Nenhum comentário:

Postar um comentário