Table des matières

Traduire le jeu

Pixabay - CC0

Il s'agit uniquement de la description des procédures, si vous voulez découvrir le système complet, allez voir Système de localisation/traduction sur Ryzom Core.

La procédure pour traduire les différents éléments du jeu est assez simple mais demande un respect assez strict pour éviter les soucis.

Cela se passe généralement en deux passes : une pour générer la version de référence work dans translated puis une seconde pour générer les diff dans les différentes langues et inclure les nouveaux termes traduits.

De façon générale, il vaut mieux traduire petit à petit et éviter de conserver des fichiers en cours de travail dans diff. Cela peut éviter d'éventuels soucis de fonctionnement du pipeline de traduction.

Il manque l'utilisation des instructions _clean ainsi que de :

  • forget_phrase_diff
  • inject_clause
  • sort_trans_phrase
  • make_worksheet_diff <filename>
  • merge_worksheet_diff <filename>
  • crop_lines <filename> <nbLines>
  • extract_bot_names [-r]
  • extract_new_sheet_names [-r]

mais elles sont assez rares d'emploi.

Outils et configuration

Aller dans khanat-ressources/translation

Configurer translation_tools.cfg

Vérifier qu'on a bien translation-tools d'installé : il s'agit d'un fichier exécutable lié à la compilation des outils NeL. Le placer dans un répertoire d'où on peut l'appeler depuis n'importe quel endroit de l'ordinateur (par exemple un répertoire /scripts_persos à la racine de son répertoire personnel et indiqué au système comme comprenant des exécutables).

Procédure

Quand on a placé de nouveaux fichiers dans le répertoire work ou qu'on en a modifiés, on va utiliser différentes commandes des translations-tools selon les fichiers.

On ne modifie jamais manuellement aucun fichier en dehors du répertoire work ou diff et absolument jamais directement les fichiers générés dans translated. C'est le meilleur moyen pour bloquer le pipeline de traduction à l'avenir.

Les commandes indiquées se lancent toujours depuis le répertoire translation. C'est là également qu'on trouve le fichier languages.txt (qui contient les codes des langues à gérer) et le fichier translation_tools.cfg à adapter selon sa configuration.

Modification données client statiques dans wk.uxt

Il s'agit du fichier qui sert à l'affichage des chaînes statiques dans le client (éléments d'interface généralement).

Se placer dans le répertoire translation puis taper :

$ translation_tools make_string_diff

pour créer le diff de la version wk, aller dans le répertoire diff et corriger/compléter.

puis retourner dans le répertoire translation et taper

$ translation_tools merge_string_diff

Si tout va bien, le fichier dans diff est supprimé et son contenu agrégé dans le fichier dans translated.

On refait alors une nouvelle fois :

$ translation_tools make_string_diff

pour générer les diff des différentes langues indiquées au système. On les modifie tous puis on relance le merge :

$ translation_tools merge_string_diff

Modification des données dynamiques

Les autres fichiers concernent les données dynamiques pour le serveur.

Les phrases

On peut créer autant de fichier dans le sous-répertoire phrases pour s'y retrouver dans sa gestion personnelle. Il faut juste vérifier qu'elles sont bien référencées dans le fichier “phrase_wk.txt” pour être prises en compte. Si on a créé de nouveaux fichiers de phrase dans le sous-répertoire phrases, il faut les y indiquer. Il n'y aura qu'un gros fichier généré au final mais on peut en avoir autant qu'on veut à l'origine.

En dehors de cela, c'est la même procédure, en deux passes, enchaînant un make_diff puis un merge_diff à chaque fois.

$ translation_tools make_phrase_diff

puis après traduction :

$ translation_tools merge_phrase_diff

puis une seconde fois pour traduire vers les langues cible :

$ translation_tools make_phrase_diff

puis après traduction

$ translation_tools merge_phrase_diff

Pour les phrases, on doit générer un autre fichier, qu'on appelle les clauses (également en deux passes) :

$ translation_tools make_clause_diff

puis après traduction

$ translation_tools merge_clause_diff

Les fichiers ''words''

Enfin il demeure les termes qui ne sont pas des phrases mais des objets, des titres etc. . De façon générale, tout ce qui n'est pas dans /phrases mais qui finit par words il faut aussi taper :

Attention à l'édition de certains fichiers dynamiques, de type words, qui sont des fichiers de format .csv, bien que notés .txt, et dont les champs sont séparés par une tabulation.

$ translation_tools make_words_diff

puis

$ translation_tools merge_words_diff