![Photo](http://forumkor.fr/uploads/profile/photo-thumb-5.jpg?_r=1558970341)
Traduction du jeu MSX de KOR : Natsu no Mirage
#22
Posté 06 mars 2024 - 12h34
D'accord. Donc, au final, avec un emulateur qui permet de sauvegarder sa progression et de la patience, on doit pouvoir réaliser des captures de de tous les écrans et textes du jeu et en faire une traduction et un remake en html
Hmmm... Tu nous prépare quelque chose ou ce sont des réflexions à voix haute ?
#23
Posté 06 mars 2024 - 14h27
Je ne sais pas pour Baltique, mais pour ma part, je dois dire que le challenge m'a un peu attisé alors j'ai commencé à regarder hier soir...
- J'ai cherché les différences versions disponibles du jeu. Abandonware a la version PC-88 et PC-98, et j'ai découvert hier que Cyb avait mis la version MSX sur son site.
- En testant les versions sur différents émulateurs, l'émulation MSX était celle qui m'a paru la plus qualitative, principalement du point de vue sonore (après pour les machines d'origine, je ne sais pas laquelle était la plus performante.
- Dans un autre fil de discussion évoqué hier, il était fait mention d'une version coréenne du jeu : il s'avère qu'il s'agit de la version MSX. J'ai réussi à la récupérer en regardant le code source d'une page qui proposait d'y jouer en ligne.
- J'ai ensuite utilisé un outil de comparaison de fichiers hexa pour voir où se situaient les différences entre les versions MSX japonaise et coréenne.
- Les deuxièmes disques sont identiques, toutes les différences sont dans le premier : c'est donc là que se situe le texte traduit du japonais et coréen. Mieux, les différences sont très localisées, par gros blocs qu'il serait peut-être possible de remplacer sans avoir besoin de décompiler le fichier. Le logiciel permet aussi de faire une extraction des différences sous format txt : donc si mes calculs sont bons, j'ai maintenant une extraction en format "hexa" des textes du jeu.
- Il y aussi le risque que le texte soit sous un format archivé/compressé cryptique, et pas "en clair", ce qui serait le cas sur un logiciel récent. Mais sur la page d'un développeur qui a tenté la traduction anglaise il y a presque 20 ans (toujours "work in progress"...), il disait qu'il était satisfait de ne pas avoir à décompresser le texte, donc je suis assez optimiste.
- Ma dernière interrogation (en date...) porte sur le fait que les blocs de textes japonais et coréens semblent être de taille identique alors qu'il n'y a pas vraiment de raison que ce soit le cas. A explorer...
Bref, "work in progress" (et ce sera peut-être le cas encore dans 20 ans )...
- Jingo aime ceci
#25
Posté 06 mars 2024 - 16h59
Une simple réflexion à voix haute. Je suis très pris par un gros projet autour de Lupin III pour l'instant.Hmmm... Tu nous prépare quelque chose ou ce sont des réflexions à voix haute ?
J'ai un petit projet concernant Cassette Tape No Dengon que j'espère pouvoir concrétiser d'ici le mois de juillet.
#26
Posté 06 mars 2024 - 17h23
FrozenOwl, heureux que mon fichier MSX que tu aies trouvé mon fichier MSX que j'héberge depuis plus de 20 ans sur mon site
Si tu peux en faire quelque chose, ce serait super
N'hésite pas si tu as des questions.
Si tu veux une page qui va te motiver et t'en mettre plein les mirettes pour t'y mettre, je te suggère d'aller sur cette section de mon site :
http://madoka.ayukaw...koref15kody.htm
- FrozenOwl aime ceci
#27
Posté 06 mars 2024 - 23h45
Oh oui, j'ai bien lu tout ce que Kody a écrit : c'est une mine d'or!
Au passage, tu peux peut-être compléter la page de téléchargement avec les version PC-88 et PC-98, tant qu'à faire. Elles sont ici :
https://www.myabando...u-no-mirage-7vz
#28
Posté 07 mars 2024 - 00h26
J'ai un peu avancé :
- J'ai voulu comprendre ce que contenait mon fichier contenant les zones qui différaient entre les version japonaises et coréennes.
- J'en ai extrait cette chaîne d'hexa "82 ED 82 C8 82 A2 82 C5 82 AB 81 5B 82 C4 82 AD 82 BE 82 B3 82 A2 82 CB 81 42 82 C7 82 A4 82 A9 8D A1 93 FA 88 EA 93 FA 81 41 82 A0 82 BD 82 B5 82 C6 83 66 81 5B 83 67 82 B5 82 C4 82 AD 82 BE".
Elle avait une bonne tête et je vais vous expliquer pourquoi.
Le codage le plus couramment utilisé sur les ordis japonais est le Shift-JIS (JIS pour "Japanese industrial standards") : c'est un peu l'équivalent de l'UTF-8 utilisé chez nous. Le SJIS est un standard plus compliqué que le UTF-8 et je ne l'ai pas encore complètement étudié : mais j'ai compris que la plupart des caractères dont les hiraganas, katakanas et kanjis étaient stockés sur deux octets (par exemple "82 ED"). Et l'encodage SJIS de la plupart des hiraganas commence par 82 : vous comprenez maintenant pourquoi cette chaîne m'a bien plu.
- En utilisant un convertisseur SJIS -> japonais comme celui-ci (http://freaka.freeho...com/charset.php), la chaîne SJIS ci-dessus s'écrit : "わないできーてくださいね。どうか今日一日、あたしとデートしてくだ"
Un petit coup de Deepl, et on obtient une traduction approximative (j'ai choisi l'anglais parce que la traduction est meilleure) : "Please don't be afraid to ask me out on a date. Please go on a date with me for the rest of the day."
Ce qui non seulement à du sens, mais ressemble bien à une réplique de KOR!
Conclusion : le texte japonais est bien en clair dans le code, et il est possible de le récupérer!
#32
Posté 08 mars 2024 - 01h00
- L'inconvénient de la méthode de comparaison est que dès que deux caractères dont les encodages sont identiques dans les versions japonaises et coréennes, ils sont ignorés. Il a donc fallu que je développe un petit programme en Python pour être un peu plus tolérant dans les comparaisons (garder les caractères s'ils sont au milieu d'un bloc qui est "manifestement" du texte même s'ils sont identiques entre les deux versions)
- J'obtiens un gros fichier en vrac au format Shift JIS qui contient les blocs de textes du jeu.
- A partir de là je convertis le fichier de Shift-JIS en UTF-8 pour que ce soit lisible par un européen, grâce à ceci (https://www.motobit....-conversion.asp)
Et voilà!
- le script du jeu en japonais totalement bordélique
- et une très mauvaise traduction en anglais sous Deepl, tout aussi bordélique.
Moi content!
Dans les jours qui viennent, je vais m'efforcer de ranger et nettoyer un peu tout ça pour que ce soit plus facilement utilisable.
#33
Posté 08 mars 2024 - 03h35
Wow ! Bravo FrozenOwl d'avoir reussi a extraire tout ca !
C'est juste la, sous nos yeux, mais c'est effectivement un vrai bordel !
C'est le début d'une grande histoire si tu arrives a en faire quelque chose !
On peut imaginer une utilisation de Renpy pour ressusciter le jeu.
- L'inconvénient de la méthode de comparaison est que dès que deux caractères dont les encodages sont identiques dans les versions japonaises et coréennes, ils sont ignorés. Il a donc fallu que je développe un petit programme en Python pour être un peu plus tolérant dans les comparaisons (garder les caractères s'ils sont au milieu d'un bloc qui est "manifestement" du texte même s'ils sont identiques entre les deux versions)
- J'obtiens un gros fichier en vrac au format Shift JIS qui contient les blocs de textes du jeu.
- A partir de là je convertis le fichier de Shift-JIS en UTF-8 pour que ce soit lisible par un européen, grâce à ceci (https://www.motobit....-conversion.asp)
Et voilà!
- le script du jeu en japonais totalement bordélique
- et une très mauvaise traduction en anglais sous Deepl, tout aussi bordélique.
Moi content!
Dans les jours qui viennent, je vais m'efforcer de ranger et nettoyer un peu tout ça pour que ce soit plus facilement utilisable.
#34
Posté 08 mars 2024 - 07h33
Tu as déjà tenté de modifier du texte ?
Il faudrait identifier les premières lignes du jeu et voir s'il y a moyen de les remplacer par des textes français afin de vérifier si le programme l'accepte.
A priori, comme ça a marché avec le coréen, il n'y a pas de raison.. Mais on ne sait jamais.
#38
Posté 08 mars 2024 - 09h29
Prudence dans les espoirs : Punch a bien raison!
Il y a 2-3 choses qui me font dire que la réinjection dans le code du jeu ne va pas être tout à fait facile :
- la première que j'ai déjà mentionnée est que les blocs de textes japonais et coréens sont exactement de la même taille, et c'est probablement très important qu'il en soit ainsi. Je ne connais pas trop l'écriture coréenne, mais j'ai cru comprendre qu'elle était aussi syllabique, un caractère étant une combinaison de lettres de l'alphabet coréen. Comme la grande majorité du script du jeu semble être écrit en kana, en termes de "volume de caractères" cela n'est peut-être pas un problème de passer du japonais au coréen. Mais le même mot en français sera autrement plus long! Or si on "dépasse", on risque de remplacer une instruction du code par un bout de mot en français et ça va tout faire planter.
On risque donc d'avoir besoin de faire une traduction sous contrainte en termes de nombre de caractères, comme un sub mais en pire. On peut probablement s'en sortir si les blocs de texte sont suffisamment longs : mais pour des phrases courtes, il va falloir jongler. Il est donc indispensable de savoir comment ça fonctionne avant de commencer un travail de traduction propre.
- La deuxième est qu'il y a une très grosse section du code, à la fin du fichier, qui diffère entre la version japonaise et la version coréenne, et qui ne correspond pas à du texte. Or je ne sais pas du tout ce que cela change ni pourquoi les coréens ont dû modifier cette partie du code. Je soupçonne que c'est parce que, de base, le logiciel ne sait pas nativement afficher des caractères en coréen : donc peut-être qu'il s'agit justement d'un décompresseur compliqué qui lit des hexa dans "les blocs de texte" de la version coréenne, les convertit en caractère coréens et les affiche à l'écran. Ce serait une bonne solution pour une version française si on a le souci du nombre de caractères... mais je ne sais pas du tout comment ça marche!
Alors, le point positif dans tout ça, c'est que la standard SJIS inclut les caractères latins, donc on devrait pouvoir en afficher à l'écran sans modifier le code : et c'est pour ça que je vais essayer de faire ce que propose Baltique. Mais ma prochaine étape, reste quand même de nettoyer et numéroter le script, de vérifier que j'ai bien extrait toutes les sections de texte du jeu : ce sera plus facile pour la suite.
Si on ne peut pas facilement réintégrer le script dans le jeu, j'ai quand même un plan B, un peu compliqué mais techniquement réaliste. Je pars de l'hypothèse qu'on va réussir à créer une table de correspondance entre les textes japonais du jeu et leur traduction en français. On pourrait ajouter un module de sous-titre à un émulateur MSX, qui lirait les caractères japonais à l'écran avec un module de reconnaissance de caractères (OCR), et qui irait chercher la traduction des phrases dans le fichier de correspondance pour l'afficher dans une fenêtre à part. C'est du boulot, mais pas infaisable...
#40
Posté 08 mars 2024 - 10h01
Ha ha ! La bourde ! C'est une maladresse digne de Kyosuke !
Sinon, pour revenir au sujet, j'ai inspecté vite le script japonais. Il est relativement court. Il doit faire l'équivalent en quantité de caractères de 2 à 3 épisodes de 20 minutes. Donc, c'est humainement possible de traduire ça.
C'est un projet que je peux soumettre à la team de traduction dans laquelle j'officie, si vous voulez. On a réussi à traduire l'intégralité de 50 épisodes de la 3ème série de Lupin à partir du japonais (et, on a sorti un travail que je considère comme étant de très grande qualité, même si je n'ai que très peu participé à ce projet). A côté, le texte de KOR ne devrait pas représenter un grand défi.
Par ailleurs, Frozen-Owl, si tu es capable de reproduire la chose sur d'autre jeux du même type, je pense qu'on serait potentiellement intéressé pour faire la même chose avec des jeux autour de Lupin. Ca ferait un projet de traduction bien plus léger que ce sur quoi on travaille actuellement et ça serait vraiment original.
A voir. Chaque chose en son temps. Il faut déjà voir comment on peut faire pour rendre le jeu KOR jouable en français.
5 utilisateur(s) li(sen)t ce sujet
0 membre(s), 2 invité(s), 0 utilisateur(s) anonyme(s)
-
Facebook (3)
- Loading Countdowns