Yop
@gibe
Y'a un truc qui m'intrigue dans tes fichies : Encore une fois, dans le fichier xml de gameplay, les balises xml ne sont pas correctes (le 1.0 n'est pas entre guillemets). Du coup, quand je le charge en tant qu'xml, j'ai des erreurs et je ne peux pas le traiter tel quel. Est-ce que le fichier était comme cela à l'origine et Stalker n'a pas besoin de vrai xml, ou est-ce que tu l'as bricolé ? Pour ce fichier là, ça ne pose pas de problème, car je fais d'abord une recherche entre "<specific_character>" et "</specific_character>", et cest le résultat que j'analyse comme xml (ce qui me permet de récupérer l'id en interrogeant le papa du champ name par exemple). Mais pour les fichiers d'interface de la dernière fois, je chargeais tout le fichier (et je récupérais le nom du champ papa comme id).
En gros, si les fichiers sont des vrais xml toujours corrects, c plus "simple" et je récupère ce que je veux en le chargeant comme un xml, sion je dois faire des regex (expressions régulières), mais dans le cas d'un champ "text" (pour le truc générique), bah je ne pourrais pas récupérer la balise parent, et donc ce sera juste une suite de texte à traduire (ou non) avec un numéro d'ordre dans le fichier...
En espérant avoir été clair
Voilou
EDIT :
@Zeidra
Tu as répondu en même temps que moi

Alors pour le 1 : en l'état actuel, il faut que je regarde. En fait, quand on génère cette base regroupant plusieurs fichiers, je fais exprès de ne récupérer QUE texte original et texte traduit. Il faudrait que je vois le temps que ça prend pour générer une base temporaire avec toutes les informations. Attention cependant, des ID peuvent être communs dans plusieurs mods, sans avoir aucun rapport entre eux (si j'ai bien compris le truc, l'ID est composé d'un indice de mod et d'un ID. c'est à dire que les 2 premiers numéros de l'id corresponde à l'ordre du mod avec ses dépendances. Dans le jeu original, les ID commencent par 00, ceux des dlc par 01 / 02 / 03 selon qu'ils dépendent d'un ou plusieurs fichiers. Du coup, avec plusieurs bases mélangées, bah les ids peuvent être les mêmes pour 2 trucs complètement différents. Et si le moddeur a ajouté un dépendance, bah les 2 premiers numéros ne seront plus les mêmes et du coup la recherche échouera (sauf à enlever les 2 premiers numéros). Je tiens compte de cela quand on charge des sauvegardes ou des BDD (je teste d'abord GRUP+ID+EDID+CHAMP+Index+ORIGINAL, puis la meme chose avec le subID (les 6 derniers caractères), puis pleins d'autres combinaisons.
Une possibilité serait de faire une nouvelle base perso : Menu bases de données / Importation rapide / ajouter touts les fichiers qui intéressent / Créer une nouvelle base. Je me souviens plus des limites que j'ai mis en place, mais à l'origine, a Base de données principale ne pouvait avoir qu'une seule ligne avec le meme GRUP+ID+EDID+CHAMP+INDEX (tout simplement pour les construire, puisqu'on ne peut se baser sur le texte) alors que ce n'est pas le cas d'une Base Perso, car cette dernière est construite depuis des fichiers ou original et traduit sont déjà présents. Oui, c'est assez complexe, mais j'avais pas trop le choix si je voulais donner toutes les possibilités. C'est aussi pour cela que lorsque que j'ai intégré des pnos aux bases, les textes de ces derniers remplacent ceux du jeu original, au lieu de faire une nouvelle entrée.
Pour le 2 , bah c'est la même explication. Cependant, je peux je pense ajouter une option dans le menu et avoir "charger mod déjà traduit en se base sur l'ID" et "charger mod déjà traduit en se basant sur l'EDID".
CEPENDANT : Tu parles des scripts dont les ID ne sont pas les mêmes. Mais les ID des scripts sont simplement l'ordre dans lequel sont présentés les textes dans le script. Donc si l'auteur a ajouté une ligne de script, bah tout sera décalé. C'est logique, il n'y a pas vraiment moyen de savoir que tel texte anglais dans tel script correspond a tel texte français. C'est malheureusement impossible de régler ce point là. Quand on charge une sauvegarde, ce problème n'est pas présent, car on a le texte original et le texte traduit dans la sauvegarde, donc même si les id ne sont pas les mêmes, le prog retrouve ses petits. Et maintenant que j'écris ça, je me dis que ça va te foutre un boxon pas possible dans ton mod sur les scripts si on ne se base pas sur l'edid : Tous les premiers textes des scripts vont avoir la même traduction (et les deuxièmes, troisièmes, etc...) Je peux donc faire ce que j'ai dit plus haut, mais il faudra que j'exclue les scripts de ce truc là.
J'espère avoir été clair
Voilou
EDIT 2 : Par contre, tu sais que tu peux charger les sauvegardes de ton mod sur le patch ! Tu peux même charger plusieurs fichiers à la fois : menu traduction / charger traduction / sélectionner tous les fichiers de trad que tu veux en une fois.
Une autre idée : si tu as le mod traduit, et si c'est possible, récupérer le mod original à la même version, puis utiliser ces deux mods pour générer une nouvelle base de données (ou nouveau fichier de sauvegarde), toujours depuis la fenêtre d'import rapide ! Je m'étais fait ça à un moment pour Legacy of the Dragonborn : A l'époque, la version de la confrérie était uniquement sur le skyrim original, et une version pour sse venait de sortir. Du coup j'avais généré un fichier de sauvegarde avec version confrérie et version originale, et charger le tout sur la nouvelle version (y'avait bien sûr plein de trous, mais plusieurs milliers de lignes traduites correctement

)