Yop
Les esm et les esp, c'est pareil. Il n'y a qu'un flag qui change, dans l'entete du fichier (à ma connaissance).
bref, je viens de regarder le fichier au niveau hexadecimal... et ben le fichier est pourri. en tout cas mal compilé. L'erreur a lieu sur un champ vmad (donc qui touche aux script) du grup FLOR.
Pour rappel les fichiers esp/esm sont construit de la manière suivante (en gros) :
Une entete (le grup TES4)
Ensuite plusieurs GRUP.
Chaque grup commence par GRUP puis 4 octet pour la taille du grup. Logiquement, en réupérant ce nombre, et en avanaçant dans le fichier de ce nombre, on arrive sur un nouveau GRUP.
Dans chaque grup, il y a des "Records", suivi de la taille du record, sur 4 octet encore. Même logique que pour les grups (y'a des histoires d'entete et de taille d'entete prises en compte ou non mais bref).
Enfin, chaque records contient des champs (EDID, FULL, VMAD...) suivi de la taille sur 2 octets. toujours la même logique( il n'y a qu'une exception, c'est le champ XXXX, mais c'est traité par le programme... Il sert à avoir une nouvelle taille sur 4 octet, pour un champ très très long). (Pour info, pour morrowind, tout était codé sur 4 octest au niveau des tailles).
Bref, tout ça pour dire que le fichier, au niveau de sa structure est correcte, mais le chmap VMAD incriminé lui ne l'est pas : Uk se termine en plein milieu du nom d'une variable (et même la structure du vamd lui-même est foireuse.)
Pour la traduction, ça ne posera pas de problème, car j'analyse les champs VMAD uniquement pour récupérer la liste des scripts (histoire que si le mod analysé se trouve déjà dans le vrai data de fallout 4 ou de skyrim, le prog ne s'amuse pas à analyse TOUS les scripts qu'il y a dedans. Dans le cas des bsa par contre, il le fait). Même si tu as décoché la case analyser les vmad, l'analyse se fera quand même, mais n'ajoutera pas de ligne dans la table à traduire (toujours pour cette liste de script). Bref, dans le cas d'une erreur comme ça, le prog se contente de sauter le champ (et lors de la traduction, il le réécrit à l'identique). Si l'erreur avait été sur le record complet, là c'est plus embêtant, parce que dans ce cas, le record complet est sauté (et réécrit à l'identique), donc on peut louper une trad sur un champ FULL.
Bref, l'erreur est à priori bien spécifique à ce mod, et soit l'auteur a fait n'importe quoi à ce niveau, soit il y a un bug dans FO4Edit concernant ces champs (Pour m'être bien amusé avec, je sais que la structure interne des champs VMAD n'est pas la même que pour Skyrim. Heureusement, ça y ressemble, et on retrouve ces petits. J'analyse sans erreur fallout4.esm, par contre, reste à voir ce que ça va donner sur les futurs mods officiels. J'ai peut-être loupé un cas de figure pas présent dans l'esm de base.)
Réponse courte : Le fichier est est pourri, ça n'empèche pas la traduction, je ne sais pas ce qu'il se passe en jeu par contre, mais si problème, cela ne viendra pas de la trad).
Je n'ai regardé que la première erreur et elle est sur l'objet à l'edid "workshop_FloraSiltBean01" (nom en jeu : "Silt Bean").
Pour les plus curieux d'entre vous, ci dessous le record en hexadecimal. Suffit de copier le texte, d'ouvrir notepad++, de coller, de sélectionner tout et de faire "complement, converter, hex->Ascii". Ensuite ouvrir le truc avec un editeur hexadecimal (ou le plugin qui va bien dans Notepad++).
► Afficher le texte
454449441900776F726B73686F705F466C6F726153696C744265616E303100564D414459000600020001001400776F726B73686F706F626A6563747363726970740004000E00576F726B73686F70506172656E7401010000FFFF8E05020014004675726E69747572654D61726B65724E6F6465730C01010000000A0046614F424E440C00D3FFCDFFF6FF2C00200046005054524E04003108000246554C4C0A0053696C74204265616E004D4F444C22004C616E6473636170655C506C616E74735C426F73746F6E4265616E30312E6E6966004D4F4454440004000000030000000000000001000000010000001DF41562646473008A103AF0C4981301646473008A103AF0DA71C6E1646473008A103AF06DAF933E6267736DD28D2CDE44455354080064000000010000004453544414000000000400000000000000000000000000000000444D444C27004C616E6473636170655C506C616E74735C466C6F7261436172726F74303148756C6B2E6E696600444D445444000400000003000000000000000100000001000000E0901730646473008A103AF039FC1153646473008A103AF02715C4B3646473008A103AF07CEE78086267736DD28D2CDE4453544600004B53495A0400020000004B574441080092050200F5560A00505250531000310300000000003F8C9A12000000803F504E414D0400CC4C33004154545808004861727665737400464E414D02000000504649470400ABE21B00534E414D04004C2C220050465043040064646464
Voilou !