lien externe lien externe lien externe lien externe lien externe lien externe lien externe lien externe lien externe lien externe

Wiwiland: Traducteur De Mod Automatique (ou Presque) - Wiwiland

Aller au contenu

Pour une meilleure lisibilité

Lecteurs, merci de :
- éviter le clientélisme, les moddeurs travaillent par passion.
- respecter les sujets/projets des autres et ne pas les faire dévier en HS.

Moddeurs, merci de :
- ne pas "bumper" ou "upper" les topics inutilement.
- ne faire qu'un seul sujet par projet.
- ne pas faire de promotion à outrance, ni dans les sujets des autres projets.

Pour débuter dans la création de mods, lisez le Image IPB wiwiki.

Quand votre mod est terminé, si vous souhaitez le voir sur wiwiland, suivez les indications ici.
  • (14 Pages)
  • +
  • 1
  • 2
  • 3
  • Dernière »
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Traducteur De Mod Automatique (ou Presque) ... où l'internationalisateur ultime

#1 L'utilisateur est hors-ligne   Sir Dragon 

  • Icône

Posté 23 mai 2006 - 19:55

J'ai l'impression, de part ce que j'ai pu lire ces dernières semaines sur le web, qu'un camembérisateur, voir même plus , pourrait être mis en place pour faciliter le travail des traducteurs. Alors je me suis attelé à la tâche. Pour le téléchargement, voir à la fin de ce post.


Pourquoi :
Parce qu"en essayant de traduire quelques mod US ces dernières semaines, je me suis aperçu que des choses étaient facilement oubliées (je raconte pas les mods qui rajoutent des trucs dans les cells deTamriel assez difficile à trouver tous). J'ai également lu les déboires de fans allemands qui n'aimait pas avoir un mix d'anglais et d'allemands dans leur jeu mais qui, brulant de vouloir avoir ces mods, les ont utilisés tels quel, sans vergogne.


Comment :
J'ai cru comprendre que dans les différentes localisations de TESIV, seul les noms des PNJ, objet, vêtements ... changent mais que les identificateurs restent les mêmes quelle que soit la localisation. Aussi je me disais qu'un camembérisateur devrait être possible grâce au travail fait sur l'analyse des fichiers ESP/ESM (UESP et une bibliothèque d'accès aux fichiers ESP/ESM disponible sur sourceforge notamment).

- construction d'une base de données (fichiers style CSV) automatiquement depuis le fichier Oblivion.esm.
- base de données complémentaires construite à la volée lors de la traduction de mod ajoutant de nouvelles références.
- look du camembérisateur fait par Gilles_k que je trouvais très efficace (indicateur V,"*",T,... facilitant la lecture des données traduites ou à traduire)

Comment faire sa base en incluant le PNOO
Voici comment procéder pour avoir une base incluant certaines de modifications apportées par le PNOO (les corrections sur les dialogues et les quêtes sont exclus du processus à ce jour) :
- si le répertoire "data" contient des fichiers, le renommer et créer un répertoire "data" vide : c'est capital car dans le cas contraire ce sera la dernière traduction trouvée, celle des fichiers contenu dans data, qui fera foi et c'est justement pas ce que nous souhaitons,
- ouvrir le plugin correctif.esp à l'aide de l'application,
- utiliser la fonction "Base de donées" -> "Tout tagger "T"" ("Tag all as "T"" en VO),
- lorsque l'outil à terminé son petit travail, utiliser la fonction "Base de donées" -> "Ajouter à votre BD",
- vérifier la création, sous le répertoire extra, des fichiers contenant les valeurs données par le PNOO,
- replacer/remplacer/recréer votre répertoire data original,
Lors du chargement d'un autre plugin, l'application explore d'abord le contenu du répertoire data puis celui de extra, vous aurez donc au final, si l'objet est en BD, la dernière traduction trouvée dans votre BD i.e. dans le répertoire extra.

Note importante concernant les scripts
Dans les plugins contenant des scripts contenant eux-mêmes des boites de dialogues (MessageBox), il se trouve que le contenu des ces boîtes se trouvent à 2 endroits différents, un facilement identifiable puisque c'est dans l'enrregistrmeent même du script, l'autre quelque part ailleurs (à une autre adresse) mais je ne connais pas la relation de cet ailleurs avec le script. Aussi, si vous modifiez le contenu de boîtes dans le traducteur, seul la phrase dans le script sera traduite. Il vous faut alors :
- ré-ouvrir le plugin dans le TESCS (de toute façon vous deviez le faire pour la dépendance au fichier ESM),
- répondre NON ou OUI à la question concernant le nombre d'items pas cohérents machin bidule si elle vous est posée, importe peu. La sauvegarde, que vous ne manquerait pas de faire avant de quitterle TESCS2, corrigera les données érronées.
- vérifier les scripts modifiés,
- sauvegarder impérativement dans le TESCS,
La procédure de sauvegarde du TESCS se chargera de mettre la 2ième occurence de la phrase (celle que je sais pas retrouver) en accord avec celle dans la boîte de dialogue du script.

Mettre à jour le mod avec votre version d'Oblivion
Cette opération est impérative pour mettre en cohérence la version du mod et celle de votre version d'Oblivion. En plus d'éviter des messages quelque peu ennuyeux, au chargement d'Oblivion, signalant que certains mods ne sont pas cohérents votre version d'Oblivion, cela permet de mettre à jour la date du mod (qui deviendra le dernier à ce charger) pour éviter de possible conflit. Si la date vous dérange, vous pourrez toujours changer l'ordre de chargement des mods via l'excellent Oblivion Mod Manager (OBMM).
- ouvrir le plugin dans le TESCS,
- répondre NON ou OUI à la question concernant le nombre d'items pas cohérents machin bidule si elle vous est posée, importe peu. La sauvegarde, que vous ne manquerait pas de faire avant de quitterle TESCS2, corrigera les données érronées.
- sauvegarder le mod dans le TESCS2.

Téléchargement :
Mise à jour du 19/05/2007
La version 0.0.8 de l'outil peut se télécharger à l'adresse suivante : http://sir.dragon.free.fr/downloads/
La base extraite en VF (sans la contribution d'Olorin) est disponible à la même adresse.

Installation
Consulter le fichier INSTALL.txt inclus dans l'archive. Pour faire court, le contenu complet de l'archive doit être décompressé au même endroit. Préférez toujours la dernière version, qui doit être celle avec le moins de bogues (du moins je l'éspére). Les plugins sur lesquels vous souhaitez travailler peuvent être n'importe où sur le votre disque. Les répertoires data et extra, contenus dans le répertoire d'extraction, ne contiennent que les bases de données éventuelles. L'archive data***.7z ne contient que la base de données (en général la dernière) obtenue avec le fichier Oblivion.esm. Ce fichier est à décompresser dans le répertoire data de l'outil et SURTOUT PAS celui de votre répertoire d'installation d'Oblivion.esm non pas parce qu'il existe un risque de problème mais il ne vous servirez à rien sinon à polluer votre répertoire de plugins.

Rapporter une anomalie
Si vous constatez des anomalies, lors de la traduction de mod, merci de donner le nom du mod et éventuellement le site sur lequel vous l'avez récupéré afin que je puisse voir si cette anomalie est reproductible, due à une limitation de l'application ou fruit d'une mauvaise manipulation (si, si, ça arrive) et si je peux apporter, en cas d'anomalie avérée, une correction ou un contournement.

Il m'a été signalé une anomalie lors de la génération d'une base de données avec la dernière version patchée d'Oblivion. Garder une ancienne base en secours le temps que je trouve une solution à ce bogue.

Ce message a été modifié par Sir Dragon - 28 juin 2007 - 20:49.



  • (14 Pages)
  • +
  • 1
  • 2
  • 3
  • Dernière »
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Autres réponses dans ce sujet

#2 L'utilisateur est hors-ligne   ShadowBlood 

  • Icône

Posté 25 mai 2006 - 06:08

Lo

Si je me souviens bien, sous morrowin il y a vais un prog qui montrais les modifications (topique et autre texte) ou on pouvait modifier sans passer par le tesc.

Sa pourrais être une autre solution.

#3 L'utilisateur est hors-ligne   Rubicante 

  • Icône

Posté 25 mai 2006 - 09:42

Si tu parviens à en créer un, la communauté t'en sera reconnaissante Sir Dragon. Peut-être pas au point de t'élever une statue quand même. :green:

En tout cas, merci d'y travailler.
Ne cliquez pas ici ou ici ou vous le regretterez !

#4 L'utilisateur est hors-ligne   Sir Dragon 

  • Icône

Posté 27 mai 2006 - 20:13

J'ai finalement réussi à générer une DLL avec VC++6 (0 erreurs de compil) mais en l'intégrant dans le projet qui lui est en techno .NET visual C++ 2005 express, c'est malheureusement la cata alors que d'après Crosoft c'est tout simple ! Une floquée d'erreurs à la compilation, donc impossible de générer un truc qui tient la route. A moins que je n'ai mal configuré tout cela. Le côté pratique chez Crosoft c'est qu'il n'y a qu'un bouton à cliquer, le côté négatif c'est ... tout le reste : on n'a la main sur rien :(

Passons sur les larmes que je verse après 3 jours de labeur qui n'ont aboutit à rien, je vais mettre ma frustation de côté et lancer un appel à l'aide :

Si tu connais visual C++ 6 et 2005, si tu les erreurs de Crosoft te font rire, si la programmation windows n'a plus de secrets pour toi, tu m'intéresses. Je suis preneur de toutes bonnes volontés qui pourrait m'aider à sortir des méandres des erreurs de compil de Crosoft, s.v.p..

Si vous vous reconnaissez dans ce portrait, me contacter par MP.
Merci.

Le projet de la DLL dispo ici, je l'ai faite, seul, à partir de VC++ 6 prêté par un collégue, d'après le code VC++6 que j'ai récupéré . Ces fonctionnalités couvrent l'accès aux fichiers ESP/ESM, l'édition de données, l'écriture de fichiers ... bref tout ce qu"il faut pour éditer, modifier, sauvegarder un ESP, le reste étant affaire d'adaptation.
Je peux fournir le code du projet VC++ 2005 Express si besoin. L'auteur de cette librairie d'accès m'a dans un premier temps déconseillé d'en faire une DLL et de l'inclure tel quel au projet, ce qu'il à fait pour ses tests, mais il semble que Crosoft s'évertue à rendre incompatible le C++ v6 avec le C++ v2005.

Ce message a été modifié par Sir Dragon - 27 mai 2006 - 21:53.


#5 L'utilisateur est hors-ligne   Duncan Imrryran 

  • Truite hors-sujet
  • Icône

Posté 27 mai 2006 - 22:12

Ok

Effectivement la compatibilité entre différentes versions de VC++ est pas tip top. Pour le code ça va à peu près (bien que VC++2005 n'ai pas les mêmes goûts en matière de directives de précompilation que ces prédécesseurs), mais pour les fichiers de projet autour... (tout ce qui n'est pas .h et .cpp en fait, et encore...).

Déjà, à part si tu es un utilisateur expérimenté de VC++, il faut mieux tout faire avec la même version. Bon je suppose que tu t'en es rendu compte par toi-même. :green:
Vu que la dll est faite pour VC++6 il faut mieux rester dessus, même si c'est pas toujours aussi évident pour faire une belle interface graphique. Eventuellement VC++2003 pourrait te causer moins d'ennuis pour importer du VC++6 (j'avias eu quelques erreurs, avec les en-têtes principalement, mais rien de trop grave) mais tu n'auras pas tout le support .NET de VC++2005.

Ce que je peux te conseiller, si tu ne veux pas trop te prendre la tête, c'est déjà d'intégrer directement les fichiers du code source de la dll qui t'intéressent dans ton code, plutôt que de t'en servir comme d'une dll à part. A vue de nez ils sont en C++ standard (d'ailleurs ils compilent sous gcc) et une fois débarassés des fichiers spécifiques à VC++ tu pourras les mettre où tu veux.

Sinon il existe d'autres IDE pour C++ permettant de créer des interface graphiques aisément (c'est ce qui t'intéresse dans VC++2005 non ?) comme C++Builder de Borland, qui sont plus facile à manipuler que VC++, et font moins de choses par derrière. ;)

D'ici une semaine je devrais avoir VC++2005 sous la main et je pourrai t'aider plus précisément, pour l'instant je ne peux que te donner des conseils.

#6 L'utilisateur est hors-ligne   Sir Dragon 

  • Icône

Posté 25 juin 2006 - 11:01

Un peu de nouvelles de où j'en suis (ne croyez pas que je me tourne les pouces !)

Après quelques tests, je me suis aperçu qu'il me faudrait 2 exe. L'un pour fabriquer la base à partir du fichier Oblivion.esm et un autre pour visualiser et modifier les traductions.
L'interface générale du 2ième exe est à peu près terminée. Je peux ouvrir et récupérer les données d'un ESP, les traiter pour trouver les traductions déjà connues.
Je suis assez lent car je fais mes premières armes avec le développement sous Windows et le C#.

Un petit screen de ce à quoi sa ressemble pour le moment :
ici

Pas folichon et pas très visuel, notamment pour les indicateurs en première colonne. Les menus sont encore en anglais mais je ne m'occuperais que de l'internationalisation que lorsqu'un minimum vitale de fonctions seront opérationnelles et satisfaisantes.

#7 L'utilisateur est hors-ligne   Angora 

  • Danse avec les bugs
  • Icône

Posté 25 juin 2006 - 11:38

Une chose : il faudra que ton programme puisse générer sa liste de nom à partir de plusieurs fichiers (esm + esp). En effet, la traduction officielle est si désastreuse que ZeroWing, à côté, c'est de la rigolade. Donc il faudra faire la base de donnée depuis Oblivion.esm + correctif.esp...
Le saviez-vous ?

En français, il n'y a jamais, jamais, JAMAIS, J-A-M-A-I-S, de cédille à un 'c' devant un 'e', un 'i' ou un 'y'. Jamais. Sans aucune exception. Pas la moindre. Zéro. Cédille devant e, i ou y = faute. Un point, c'est tout, c'est comme ça, ça a toujours été comme ça, et ça le sera toujours.

#8 L'utilisateur est hors-ligne   cyberax 

  • Icône

Posté 25 juin 2006 - 14:42

Mouai c'est pas pour d'écouragé, mais bon j'suis pas convaincu par les traductions automatiques elles ne sont pas vraiment fiable non plus, comment reconnaitre avec les fautes d'orthographe ? pour des simples mot ok, mais pour les dialogues sa va etre du n'importe quoi. Je vérai mieux un logiciel pour facilité la traduction qui évite les redondances de traduction par exemple. On en traduit un et si il y en a d'autre exactement les memes ca les traduits instatanément, et ca les enlèves du recensement de tous ce qu'il y a à traduire. Enfin un logiciel ou on garde une certaine maitrise de la traduction.

Mais bon en meme temps je ne suis pas très portée sur la traduction de mod, à voir ce que les habitués en penserons :o)

#9 L'utilisateur est hors-ligne   Padmé 

  • Icône

Posté 25 juin 2006 - 16:49

waa ça m'a l'air bien sympa.

en meme temps ça facilite les traductions, je suposes qu'on peut éditer les noms dans la colone de droite, surtout pout les nouveaux objets.

Ce message a été modifié par Padmé - 25 juin 2006 - 16:50.


#10 L'utilisateur est hors-ligne   Angora 

  • Danse avec les bugs
  • Icône

Posté 25 juin 2006 - 20:10

Voir le messagecyberax, le 25.06.2006 à 15:27, dit :

Mouai c'est pas pour d'écouragé, mais bon j'suis pas convaincu par les traductions automatiques


Le truc avec les "camenbérisateurs", c'est que ça retraduit ce qui a déjà été traduit, c'est tout.

Mettons un mod anglais qui modifie l'épée longue en fer. Pour diminuer son poids, par exemple. Le mod va contenir toutes les informations sur l'épée longue en fer, y compris l'icône, le type d'arme, les dégâts, etc. Et le nom: "iron longsword".

Maintenant, on veux s'en servir pour la VF. Ce que l'on veut, c'est le poids diminué, pas le nom remis en anglais. Donc le camembérisateur va trouver dans le mod un objet intitulé "iron longsword" et il va se souvenir que "iron longsword" est traduit par "épée longue en fer", et voilà.

Maintenant, ce mod ajoute aussi un nouvel objet, qui s'appelle "ztrombogoteran". Le traducteur automatique n'ayant jamais vu un nom pareil ne sait pas comment ça doit se traduire. Donc il laisse cette responsabilité à l'humain.
Le saviez-vous ?

En français, il n'y a jamais, jamais, JAMAIS, J-A-M-A-I-S, de cédille à un 'c' devant un 'e', un 'i' ou un 'y'. Jamais. Sans aucune exception. Pas la moindre. Zéro. Cédille devant e, i ou y = faute. Un point, c'est tout, c'est comme ça, ça a toujours été comme ça, et ça le sera toujours.

#11 L'utilisateur est hors-ligne   Sir Dragon 

  • Icône

Posté 26 juin 2006 - 18:24

En effet, c'est exactement ça. Le terme automatique est un peu fort, l'automatisme étant relativement réduit. Ce n'est pas un traducteur du style de ceux qui se trouvent sur la toile et dans lequel on colle un texte qui nous ressort direct dans une traduction souvent approximée.

Le traducteur ne prends de décision que sur ce qu'il connait, c'est à dire ce que l'utilisateur à préalablement sauvé en base de données. Si aucun item ne correspond, le traducteur le signale via l'indicateur sur la 1ière colonne. La troisième colonne étant éditable, le soin est laissé à l'utilisateur de mettre la traduction qu'il souhaite.

Une option que je compte ajouter est la possibilité d'enregistrer un mod complet dans la base, dans un seul fichier, ainsi lorsqu'une nouvelle version d'un mod sortira, il suffira de recharger le fichier particulier et ne resteront plus qu'à traduire les nouveaux items. L'avantage du fichier supplémentaire et que les traductions ne viendront pas alourdir la base.

#12 L'utilisateur est hors-ligne   Seiken 

  • Icône

Posté 26 juin 2006 - 22:38

Je te souhaite bonne chance pour ce travail assez titanesque, surtout avec cette possibilité de sauvegarde de données, ça va être super pour les update de mods.
Membre du MJLA.
Membre de la Team Morrowind Stargate & Oblivion Stargate - Le Cercle des Anciens
Floodeur vétéré :P

#13 L'utilisateur est hors-ligne   Sir Dragon 

  • Icône

Posté 09 juillet 2006 - 09:51

Bon, voilà une version qui tourne. Elle n'est pas tout à fait fonctionnelle dans le sens où ni les scripts ni les dialogues ne sont encore accessibles. J'ai malheureusement encore quelques soucis de code à régler.
Néanmoins, les fonctions classiques (Ouvrir, Sauver pour l'essentiel) semblent fonctionner sur ce que j'ai testé.
Alors vous trouverez ici le fichier TES4ModTranslator-0.1.a.7z à installer n'importe où sur votre PC. Pour les configuration un peu à la traine, vous pouvez récupérer également le fichier data-base.7z que vous devez extraire sous le répertoire data, à l'endroit où vous avez extrait l'outil. Attention ce data n'a rien à voir avec le data de Oblivion.
Un fichier LISEZMOI, non encore finalisé, est disponible dans l'archive. Si des points ne sont pas clairs, n'hésitez pas à me faire des retours pour améliorer tout ça. Cet outil est destiné à devenir votre outil, alors toute remarque constructive est la bienvenue.

Noter que les fichiers de la base (format CSV) sont modifiables à partir de tout bon tableur. Je n'ai pas pu, selon le souhait d'Angora, faire que la base hérite d'un autre ESP (le PNOO pour ne pas le nommer) et est donc entachée d'erreur (de bêtes oublis de traductions ou de mauvaises traductions comme un cheval bai qui devient alezan !). Si des gens connaissent le C#, et se sentent suffissament balaise en informatique pour bidouiller tout ça, je peux leur fournir l'archive de la solution.

Ce message a été modifié par Sir Dragon - 09 juillet 2006 - 09:57.


#14 L'utilisateur est hors-ligne   Salizar d'Ombrelune 

  • Quincaillerie Royale
  • Icône

Posté 09 juillet 2006 - 23:12

Juste pour savoir, la base est recrée par le logiciel à son démarrage sur un nouveau PC ? Ou elle est fournie avec (Comme le camembérisateur, me semble-t-il ) ?
Au pire, peut-être faudrait il faire une copie de Oblivion.esp, faire fusionner cette copie avec le PNOO (On peut faire ça avec un Esm et un esp ?) puis faire une base de donnée à partir de là.
Je suis une tanche en informatique, donc je ne sais pas si c'est réalisable :P

  • (14 Pages)
  • +
  • 1
  • 2
  • 3
  • Dernière »
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)