[WSC] Digimon Anode/Cathode Veedramon Version - PT-BR [em pausa]

Iniciado por viizinho, Abril 14, 2022, 21:57:26 PM

tópico anterior - próximo tópico

0 Membros e 1 Visitante estão vendo este tópico.

viizinho

DIGIMON ANODE/CATHODE TAMER VEEDRAMON VERSION


SINOPSE

No final do ano 1999, algo estranho aconteceu no Mundo Digital. um Chimeramon e um Mugendramon tiveram de se fundir após serem derrotados por Taichi, originando Millenniumon. Este diabólico Digimon aprisionou as Crianças Escolhidas e deu origem a um desvio temporal que ressuscitou os Digimons malévolos que eles haviam derrotaram. Agumon, com o DigiVice de Taichi, parte em busca da ajuda de uma criança.

No dia de ano novo, Ryo Akiyama, um garoto que não tem um parceiro Digimon ou DigiVice próprio, é transportado para o Mundo Digital ao aceitar o pedido de Agumon. Guiado por Gennai, Ryo e Agumon devem voltar vencer os Digimons do mal e derrotar Millenniumon.

INFORMAÇÕES

Gêneros: RPG eletrônico
Plataforma: WonderSwan Color
Desenvolvedora: Bandai
Lançamento: 18 de setembro de 2001

TRADUÇÃO

Dialógos - 25%
Ataques  - 0%
Menus    - 0%

FERRAMENTAS

WindHex, TableManager e MonkeyMoore

NOTAS

As traduções já começaram a serem feitas, toda a sequencia de dialógos iniciais já esta traduzida, iniciarei os dialógos com NPC's logo em breve e voltarei aos dialógos da história principal.

Notei também um leve glitch visual em algumas poucas falas, elas não impedem a compreensão nem a fidelidade, mas tentarei cuidar delas posteriormente.

Porém ainda não foram iniciadas as edições gráficas, comecei a traduzir jogos recentemente e ainda não domino o Tile Molester, então ainda não temos acentuação ou menus traduzidos.

De resto o projeto caminha bem, focarei na tradução dos dialógos enquanto tento aprender mais sobre Tile Molester e sobre como achar os menus que preciso alterar.

Boa tarde pessoal, venho por meio desta anunciar de vez que irei dar um tempo desta tradução, fiquei alguns meses tentando resolver alguns problemas internos do projeto, e acho que preciso de mais alguma experiência com isso pra fazer um bom trabalho nessa plataforma que só foi traduzida uma vez para português, diversos problemas desde crashs no jogo, gambiarras que fiz que provavelmente me fariam ter de reiniciar o projeto de toda forma, e principalmente minha completa inabilidade de achar e modificar as imagens do menu.

Espero que entendam minha decisão, aguardem mais notícias minhas em outros projetos, um abraço!

Dinoco


João13

✺ Traduções ✺
⌛: 2
✅: 4
✔️: 10

✮ Veja aqui

𖤐 Servidor do Discord 𖤐


kuroi

Boa sorte no projeto, meu caro!
E a propósito, você descobriu a lógica dos ponteiros desse jogo? Se você souber, dá pra te ajudar em algumas coisas no seu projeto...

Até mais!!
君の夢が叶うのは誰かの影じゃないぜ。
風の強い日を選んで走ってきた。

viizinho

Citação de: kuroi online Abril 19, 2022, 15:04:14 PM
Boa sorte no projeto, meu caro!
E a propósito, você descobriu a lógica dos ponteiros desse jogo? Se você souber, dá pra te ajudar em algumas coisas no seu projeto...

Até mais!!

Boa tarde, ainda não descobri a lógica, comecei a fazer traduções a pouco tempo, mas vou dar uma pesquisada sobre o assunto e farei meu melhor pra achar

Anime_World

Citação de: viizinho online Abril 19, 2022, 15:18:10 PM
Citação de: kuroi online Abril 19, 2022, 15:04:14 PM
Boa sorte no projeto, meu caro!
E a propósito, você descobriu a lógica dos ponteiros desse jogo? Se você souber, dá pra te ajudar em algumas coisas no seu projeto...

Até mais!!

Boa tarde, ainda não descobri a lógica, comecei a fazer traduções a pouco tempo, mas vou dar uma pesquisada sobre o assunto e farei meu melhor pra achar

Os ponteiros são semelhantes aos de NES e Game Boy
http://daifukkat.su/docs/wsman/

O console trabalha com bancos de 65535 bytes cada...
nonononono

kuroi

Eai cara! Blz?
Então... Eu fiz algumas pesquisas por aí e peguei uma certa lógica dos ponteiros desse jogo aí pra te ajudar na edição dos textos. Segue o esquema e as explicações:

O início de cada endereço (Offset) de textos comuns do Digimon de Wondrswan começa sempre com um Byte de controle de valor 0x27 (letra G maiúscula da tabela de caracteres do jogo), ou seja, cada texto do jogo começa sempre com o valor 0x27 e isso indica que todo texto que comece com esse Byte possui sempre um Ponteiro equivalente pra ele, exemplo:

No endereço 003B0154 há um Byte de controle 0x27 que indica o início da primeira frase exibida no jogo, que é:

"As dusk falls on the
last day of the year."

Ou no jogo:



E no Editor Hexadecimal:



Analisando a imagem da frase no jogo, dá pra identificar que uma caixa de texto completa possui as seguintes regras:

- 22 caracteres no máximo por linha
- 2 linhas por caixa

Com essas informações em mãos, subentende-se que as próximas frases do bloco de textos que começa em 003B0154 têm que se seguir logo após os Bytes de controle 0xFF00FF (Também conhecidos como Endstring) que ficam no fim da frase inicial, fazendo com que a nova frase comece novamente com o Byte de controle 0x27 e assim sucessivamente, conforme o exemplo abaixo:



Para que seja viável a tradução da frase "As dusk falls on the last day of the year." por "Após o cair da noite do último dia do ano," e logo após ela ainda permitir o começo da nova frase de tamanho também variável, utilizamos o recurso dos "Ponteiros".

Os Ponteiros nada mais são do que endereços de memória que "apontam" um Offset da ROM onde um determinado texto ou conteúdo deve começar, ou seja, se pudermos "editar" o valor de um Ponteiro, poderemos também controlar onde na memória ROM um novo texto deve começar.
Normalmente os Ponteiros costumam ficar alocados em blocos parecidos com os blocos de texto da ROM em endereços acima ou abaixo dos mesmos. E no caso do Digimon de Wonderswan, o bloco dos Ponteiros fica exatamente abaixo do bloco de textos, como é possível ver na imagem abaixo:



Repare que na imagem acima o bloco completo de textos da primeira frase do jogo possui 5 frases, que como já foi explicado, começam com o Byte 0x27, ou seja, logo abaixo do fim do bloco devem haver 5 Ponteiros que "apontam" pra essas frases.
Como o padrão de tamanho de Ponteiros do Wonderswan é de 4 Bytes (ou 32 bits), chegamos a esses valores Hexadecimais em sequência:

040015B0 -> Para a frase 1 que começa em 003B0154
020018B0 -> Para a frase 2 que começa em 003B0182
060018B0 -> Para a frase 3 que começa em 003B0186
0E001AB0 -> Para a frase 4 que começa em 003B01AE
06001DB0 -> Para a frase 5 que começa em 003B01D6

O próximo Byte é um novo Byte de controle 0x27, que indicará uma nova frase, portanto não faz parte dos Ponteiros.

Ótimo, agora já temos todos os endereços do bloco de textos do início do jogo e os seus respectivos Ponteiros, agora temos que entender como  funciona a lógica deles e como editá-los, para que possamos mudar o apontamento dos textos.

Até onde eu consegui observar, os Ponteiros são formados da seguinte maneira (exemplo da primeira frase):



1-)O primeiro Byte do Ponteiro é formado pelo oitavo nibble do Offset do texto seguido de um zero à esquerda;
2-)O segundo Byte do Ponteiro, até onde eu observei, é sempre 00;
3-)O terceiro Byte do Ponteiro é formado pelo sexto e sétimo nibble do Offset do texto;
4-)O quarto e último Byte do Ponteiro é formado pelo quarto e quinto nibble do Offset do texto;

Agora, experimente trocar o valor 040015B0 por 050015B0, salve o arquivo e rode o jogo no emulador. O resultado será esse:



Ou seja, o ponteiro que antes apontava para a frase "As dusk falls on the last day of the year." agora aponta para: "s dusk falls on the last day of the year.", pois agora o Offset de início da frase é: 003B0155, ao invés de 003B0154. Isso prova que o ponteiro da frase em questão foi encontrado e que, utilizando essa mesma lógica de Ponteiros, você poderá apontar para qualquer lugar vazio da ROM simplesmente editando o valor do Ponteiro.

Então concluindo: Se você precisar de mais espaço em uma determinada frase que estiver traduzindo, você pode editar o ponteiro dela para apontá-la para um lugar vazio da ROM.

Espero ter ajudado!
Até mais!!
君の夢が叶うのは誰かの影じゃないぜ。
風の強い日を選んで走ってきた。

badnest

Se já ta na mão os ponteiros, a lógica e a localização do texto, é muito mais fácil usar o cartographer pra extrair os textos, editar a vontade no seu editor de texto favorito e reinserir com o atlas que recalcula os ponteiros automaticamente. Editar o texto no editor hexadecimal e editar os ponteiros na mão é muito chato e demora MUITO mais.

Assim que compreender tudo o que o kuroi falou, monta o setup que eu falei que a tradução voa.

kuroi

Eu fiz uma Tool pra esse jogo pra ele que Dumpa, Insere e recalcula ponteiros.
Agora já está na mão dele e, até onde sei, a tradução tá andando...
君の夢が叶うのは誰かの影じゃないぜ。
風の強い日を選んで走ってきた。

badnest

Citação de: kuroi online Julho 20, 2022, 20:32:29 PM
Eu fiz uma Tool pra esse jogo pra ele que Dumpa, Insere e recalcula ponteiros.
Agora já está na mão dele e, até onde sei, a tradução tá andando...

Boa, aí sim!! Boa sorte viziin! desculpa kuroi se fui arrogante!