A propos de la traduction de mods.
#1
Posté 16 février 2010 - 03:45
J'ai commencé par deux mods ajoutant des talents (Evoker et Ranger Revisited), tlk modifiés assez vite, je vérifie en jeu : "ouais, tout fonctionne, c'est pas si compliqué en fait..."
Dans la foulée j'ai modifié d'autres tlk sans vérifier en jeu, je me suis un peu enflammé et je me suis mis à tradire The Winter Forge. J'ai traduit la moitié du tlk (dans un fichier excel) et je me suis dit que j'allais voir ce que ça donnait en jeu, tlk importé dans le erf, erf mis là où il faut et là, rien...
Aucun changement, tout en anglais et d'autres petits mods que j'avais modifiés pareil.
Bon, après quelques essais par-ci par-là et des recherches, apparement, modifier les tlk d'un dazip ne fonctionne que pour les builder to player packages...
Bref, là je voudrais juste savoir si ça vaut le cout de trifouiller les fichiers des dadbdata que j'ai sous la main qui même pour les petits mods me semblent complexes ou alors j'arrête de perdre mon temps... ?
#2
Posté 17 février 2010 - 02:58
Ensuite, il arrive encore, disons dans 50% des cas que les fichiers .tlk soient mal utilisés par les modders. Je pense notamment aux mods qui ajoutent des items ou des dialogues.
Cela vient du fait que les textes sont incorporés directement dans les fichiers .uti et .dlg.
La première chose à faire est de demander au moddeur d'exporter correctement les resources de façon a permettre la tradution des noms et descriptions.
Ensuite, si tu veux faire les choses tout seul, il va te falloir editer manuellement les fichier .uti, .dlg etc...
#3
Posté 17 février 2010 - 03:45
C'est ce que je me disais mais je n'ai pas trouvé de logiciel pratique pour déjà trouver les textes et ensuite modifier.
Sinon pour le _fr-fr.tlk je me disais juste que vu que le mod, enfin le dazip utilise un _en-us.tlk. changer le nom n'apporterait rien. Pour les tlk icorporés dans les fichiers erf tout du mois peut-être que tu parles du fichier tlk "général" du jeu lui-même qu'il faut modifier ou d'un tlk à mettre dans l'override.
"mods qui ajoutent des items ou des dialogues"
Ce sont ceux là qui m'ont posé problème justement...
Je vais encore essayer quelques trucs, merci pour ta réponse en tout cas même si là je n'ai vraiment pas envie de me lancer dans la maitrise de l'éditeur, je pensais que ça serait nécessaire que pour la création et pas pour la modification mineur de mods déjà existants... c'était plus simple avec les Elder Scrolls
#4
Posté 17 février 2010 - 05:00
Ensuite tu mettre ce fichier _fr-fr.tlk au même endroit que son copain anglais. C'est le jeu ensuite qui se charge d'utiliser le bon en fonction de la langue de ton jeu.
Ensuite, pour editer des items ou dialogue, c'est à la fois très simple et pas très simple. Il faut éditer manuellement le fichier .uti. Pas besoin du toolset pour ça, il faut l'ouvrir avec un editeur hexadécimal par exemple.
Une fois que c'est fait, cherche le nom de la resource dans le fichier. Exemple :
J'ouvre le fichier bdn300im_prison_clothes.uti (c'est un item du jeu). Le nom de la resource est bdn300im_prison_clothes.
Dans le fichier je vois ça :
000005a0h: 17 62 64 6E 33 30 30 69 6D 5F 70 72 69 73 6F 6E ; .bdn300im_prison
000005b0h: 5F 63 6C 6F 74 68 65 73 08 00 00 00 91 63 03 00 ; _clothes....‘c..
000005c0h: 00 00 00 00 08 00 00 00 92 63 03 00 00 00 00 00 ; ........’c......
000005d0h: 00 17 00 00 00 62 64 6E 33 30 30 69 6D 5F 70 72 ; .....bdn300im_pr
000005e0h: 69 73 6F 6E 5F 63 6C 6F 74 68 65 73 10 00 00 00 ; ison_clothes....
000005f0h: 69 63 6F 5F 63 6C 6F 74 68 69 6E 67 2E 64 64 73 ; ico_clothing.dds
Regarde maintenant la séquence qui suit le premier nom : 08 00 00 00 91 63 03 00 00 00 00 00
Tu va retrouver des séquences similaire dans tout les .uti au même endroit.
08 00 00 00 est une taile et importe peu, ça ne sera pas toujours 08 mais peut importe.
91 63 03 00 est le string ID mais tu doit déjà connaitre si tu as déjà traduit des fichiers .tlk
00 00 00 00 sont 4 octets que l'on pourrait traduire par "Disable Talk Table".
Quand le toolset exporte un .uti, ces 4 derniers octest sont 01 00 00 00. Donc la traduction du texte via les talk table est désactivée. Il suffit de changer le 01 en 00 et de sauvegarder le .uti.
Et voila c'est fait, maintenant le texte va venir des talk table.
C'est la même chose pour tout les texte des .uti et des .dlg, il faut trouver séquence qui contient le string ID et changer le 01 qui suit en 00.
#5
Posté 17 février 2010 - 08:43
Si tu veux voir par curiosité : http://s2.noelshack...._sans_titre.jpg
J'ai modifié le 01 sélectionné sur l'image, et le seul résultat c'est qu'il était impossible de lancer le dialogue (clic droit et rien ne se passe). Après, je ne sais pas si c'est le logiciel ou le créteur du mod mais tu vois la sequence est interrompue de 00 entre chaque "caractère" alors je ne sais pas si ça change quelque chose dans la lecture des données...
En plus de ça je n'ai pas réussi à retrouver l'ID et donc être certain de modifier la valeur qu'il fallait, j'ai essayé plusiuers trucs dans le fichier dlg et puis dans les tlk en me disant que le problème pouvait venir de là mais sans rsultats.
Si l'envie te prend et si t'as du temps libre peut-être que t'as des idées ce que je fais mal mais sinon c'est pas grave, c'était juste pour tenter un truc.
Dans tous les cas, merci encore pour le coup de main.
#6
Posté 17 février 2010 - 08:48
Voila, sur l'autre fichier j'avais modifié plusieurs valeurs en plus.
#7
Posté 17 février 2010 - 11:46
_globo_ wrote...
Dans la foulée j'ai modifié d'autres tlk sans vérifier en jeu, je me suis un peu enflammé et je me suis mis à tradire The Winter Forge. J'ai traduit la moitié du tlk (dans un fichier excel) et je me suis dit que j'allais voir ce que ça donnait en jeu, tlk importé dans le erf, erf mis là où il faut et là, rien...
Huhu.
Comme le dit anakin5, mieux vaut glisser un mot à l'auteur avant de se lancer dans un boulot d'envergure, de toutes façons. Surtout quand les sources dadbdata ne sont pas disponibles, car devoir bosser sur les fichiers pré-machés / processed qui se trouvent dans les packages end-player n'est pas idéal. Amusant pour l'essai, voire instructif, mais sans aucun doute pénible à la fin.
Et puis dans l'cas de TWF, cela permet de voir que l'moddeuse a elle-même un français correct.
Bref, je dois moi-même faire des tests pour voir comment marchent les traductions sous DA. Dans mon cas c'est uniquement car je n'ai jamais rien moddé avant cela, et que donc je n'ai qu'une compréhension très vague de la question (donc incapable d'aider à traduire avant de comprendre moi-même) mais je pense que pas mal d'auteurs de mods sont vaguement dans une situation similaire. Surtout pour les premiers projets, où l'on découvre le toolset et où - fatalement - les maladresses du début restent parfois durablement ancrées.
En ce qui me concerne donc, je ferai des tests pour voir cette affaire de ces deux flags (Name|Description)RequiresReTranslation. S'il s'avère qu'effectivement le toolset ne les gère pas bien, et exporte tout avec des flags coupant court aux appels vers des talktables localisées, j'arrangerai simplement cela en altérant les ressources après leur exportation. Et si cela ne marche toujours pas, je trafiquerais un utilitaire pour aider à la traduction, voilà tout. Ceci étant dit, il serait quand même gros que le toolset merdouille à ce sujet...
De toutes façons, rendre TWF facile a traduire est l'un de mes objectifs pour la prochaine release, tandis que les traductions elles-mêmes sont au programme pour celle d'après. (avec des volontaires sous le coude près à aider pour leur propre langue natale, c'qui est chouette ^^)
Modifié par Phaenan, 17 février 2010 - 11:53 .
#8
Posté 18 février 2010 - 12:39
Pour ce qui est de ton problème _globo_, il s'agit des .dlg et je n'ai pas encore fait de tests dessus. Je donnerais des news quand je trouverais comment ça marche pour les .dlg. Je suis quasiment sur que c'est pareil mais le flag est peut être pas au même endroit.
#9
Posté 18 février 2010 - 01:30
hum... il me dit quelque chose ce pseudo et l'avatar... ah oui en effet... tu te débrouilles bien en français... j'ai de plus en plus l'impression de me retrouver dans un carré VIP de moddeurs dis-donc...
Sinon, moi je ne voulais pas me lancer dans un gros projet, c'étais juste comme ça, pour moi, ça m'embétait de voir des trucs en anglais dans mon jeu, ça nuit à l''immersion je trouve. Alors j'ai fait quelque recherches, j'ai vu sur nexus deux logiciels pour éditer les tlk et je me suis dit que s'il n'y avait rien d'autre c'est que c'était tout ce dont on aurait besoin pour traduire.
TWF c'était sur un coup de tête après deux éssais sur des "petits" mods réussis, si j'avais su qu'il faudrait trifouiller avec le toolset je ne me serais pas lancé là-dedans... dans tous les cas, content de voir que la traduction est en projet .
anakin5
Ok merci, je n'ai pas encore eu le temps de tester avec les uti, je vais le faire, maintennant c'est juste pour le principe, histoire de ne pas rester sur un échec
#10
Posté 18 février 2010 - 11:02
anakin5 wrote...
Pour ce qui est de ton problème _globo_, il s'agit des .dlg et je n'ai pas encore fait de tests dessus. Je donnerais des news quand je trouverais comment ça marche pour les .dlg. Je suis quasiment sur que c'est pareil mais le flag est peut être pas au même endroit.
Sans avoir mené une enquête poussée (ayant juste jeté un oeil hier) le flag des dialogues devrait se retrouver sur chaque ligne s'il correspondait aux cases "requires re-translations" mais la propriété sautant quand on la coche sans avoir de traduction pour la ligne (la case se décoche seule à la sauvegarde / exportation) j'ai pas eu l'occasion d'aller fouiller ou comparer les fichiers finaux.
#11
Posté 18 février 2010 - 09:27
Pour les dialogues, je viens de regarder et il n'y qu'une seule différence qui se trouve juste après le string ID :
Exporté du toolset :
000010e0h: D0 5B 04 00 E4 02 00 00 50 02 00 00 60 02 00 00 ; Ð[..ä...P...`...
000010f0h: 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF ; ............ÿÿÿÿ
00001100h: FF FF FF FF FF FF FF FF 00 00 00 00 FF FF FF FF ; ÿÿÿÿÿÿÿÿ....ÿÿÿÿ
00001110h: FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 ; ÿÿÿÿÿÿÿÿÿÿÿÿ....
00001120h: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ; ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
00001130h: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ; ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
00001140h: FF 00 00 00 FF 00 FF FF ; ÿ...ÿ.ÿÿ
Original :
000010e0h: D0 5B 04 00 00 00 00 00 50 02 00 00 60 02 00 00 ; Ð[......P...`...
000010f0h: 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF ; ............ÿÿÿÿ
00001100h: FF FF FF FF FF FF FF FF 00 00 00 00 FF FF FF FF ; ÿÿÿÿÿÿÿÿ....ÿÿÿÿ
00001110h: FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 ; ÿÿÿÿÿÿÿÿÿÿÿÿ....
00001120h: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ; ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
00001130h: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ; ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
00001140h: FF 00 00 00 FF 00 FF FF ; ÿ...ÿ.ÿÿ
Donc il faudrait tester de mettre 00 00 00 00 à chaque phrase dans le fichier .dlg. J'insiste sur le fait que pour les .dlg, il faut faire la modif pour chaque phrase dans le fichier. Pour les items, c'est pareil, il faut faire une fois la modif pour le nom et une autre fois pour la description.
#12
Posté 18 février 2010 - 11:15
Sinon, je me demandais si c'est le même principe pour les noms des créatures, je dis ça parce que dans un fichier tlk je peux traduire le nom d'une créature mais je ne sais pas quel fichier éditer , l'utc peut-être?
Et aussi les diverses phrases qui peuvent apparaitre au dessus des personnages en jeu hors dialogues. Par exemple dans The Winter Forge on peut avoir des messages nous indiquant qu'on a bien réussi un enchantement ou qu'un parchemin qu'on vient d'acquérir à été retranscrit dans le codex. Et bien ces messages là ne se trouvent pas dans les tlk je crois, ils sont gérés différement, par des fichiers particuliers?
Enfin bon, encore une fois, merci pour votre aide.
#13
Posté 19 février 2010 - 12:10

La propriété était chez moi sur FALSE initialement, donc j'ai cru que cela solverait le soucis mais non. J'ai essayé les différentes combinaisons de flags sur une resources items, j'ai même tenté de créer rapidement une entrée pour cette strref dans une talktable localisée en me disant l'absence de talktable étrangère annulait peut-être le flag automatiquement durant l'exportation. Mais rien n'y fait, on se retrouve toujours avec la même séquence dans la resource UTI exportée. D'ailleurs, les deux flags requiresReTranslation des items ne sont pas préservés lors des checkin.
Cela mérite franchement d'aller le signaler sur les forums anglophones - où les devs suivent les échanges - car s'il n'y a pas d'astuce et si cela merdouille vraiment, c'est quand même une fichue écharde dans le pied des gens.
Modifié par Phaenan, 19 février 2010 - 12:47 .
#14
Posté 19 février 2010 - 12:22
_globo_ wrote...
Et aussi les diverses phrases qui peuvent apparaitre au dessus des personnages en jeu hors dialogues. Par exemple dans The Winter Forge on peut avoir des messages nous indiquant qu'on a bien réussi un enchantement ou qu'un parchemin qu'on vient d'acquérir à été retranscrit dans le codex. Et bien ces messages là ne se trouvent pas dans les tlk je crois, ils sont gérés différement, par des fichiers particuliers?
Cela dépend de comment le script a été écrit.
Si la personne l'a écrit sans se soucier de la traduction, ce qui était vaguement mon cas jusqu'à ce que je me dise qu'il faudrait réellement que je m'y prépare, alors il y a de fortes chances que ces messages soient codés en dur dans les scripts. Genre :
if(Phae_isdev()) Phae_print("Failed rune ID "+ (etc)
Morceau de code rescapé (car truc de dev donc pas important) où la tirade à afficher se trouver directement définie, et non pas tirée depuis la talktable du coin via une strref.
Bref, cela dépend des habitudes de l'auteur du mod. Et malheureusement, j'pense qu'il est beaucoup plus fréquent d'avoir des chaines définies dans les scripts pour ce genre d'affichages, que des chaines tirées des talktable. Parce que c'est plus intuitif quand on pond le code, et que donc c'est une mauvaise habitude qui doit être assez courrante...
Modifié par Phaenan, 19 février 2010 - 12:22 .
#15
Posté 20 février 2010 - 02:29
Pour l'instant ça marche, dite moi si il y a un probleme. Il suffit de sélectionner tout les fichiers et de les drag & drop sur l'éxécutable. Faite une copie avant.
http://social.biowar...ct_file_id=2955
EDIT : Je viens de corriger le lien, il manquait une dll dans le .zip
Modifié par anakin5, 20 février 2010 - 05:28 .
#16
Posté 20 février 2010 - 04:36
#17
Posté 20 février 2010 - 05:29
Je crois que la boucle est bouclée maintenant.
#18
Posté 05 avril 2010 - 07:59
Je fais partie de la confrérie des traducteurs et nous n'avons pour le moment pas trouver le moyen de traduire les mods de dragon age. Je voudrai savoir si l'un de vous sait comment s'y prendre et si oui s'il pourrait faire un tuto pour nous aider?
cordialement, goshymay





Retour en haut






