Aller au contenu


Nettoyer Son Mod Sous Oblivion


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1 Nenfëa

Nenfëa

    Le poisson bavard de Kalendaar


Posté 15 juillet 2007 - 23:39

Nettoyer son mod Oblivionesque

Edit : Vous pourrez trouver un article complémentaire sur le wiwiki ainsi qu'un petit guide recensant les tests à effectuer en jeu sur ce sujet.


Ce petit tutorial est destiné à vous apprendre à faire la lessive dans vos mods. Contrairement à Morrowind, Oblivion ne semble pas ajouter dans votre dos des modifications non désirées. Mais l'erreur étant également humaine, il est tout de même possible d'arriver à un mod sale sous Oblivion. Par ailleurs, il est fréquent que vous fassiez une modification sans même vous apercevoir. Une vérification minimale s'impose donc ! ;)

Ce tutoriel vous sera utile :
  • Si vous voulez annuler une modification accidentelle que fait votre mod
  • Si vous avez utilisé la fonctionnalité "Recompile All" et que vous avez sauvegardé ensuite (votre mod gagne alors pas moins de 2 Mo et contient tous les scripts du jeu !)
  • Si vous voulez juste vérifier quels sont les objets qu'affecte votre mod
Ce tutoriel ne vous sera pas utile :
  • Si vous ne modez pas sous Oblivion
  • Si vous êtes victime d'une invasion de criquets migrateurs
C'est parti ! :)




~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



1. Je suis devant le mod, par où je commence ?

Le TESC est capable de fournir les tous premiers indices d'un mod sale. Commencez donc simplement par charger votre mod dans le TESC. S'il détecte de lui même des incohérences (impossible de trouver telle référence indiquée par tel script, le nombre de références indiquées et le nombre de références trouvées diffèrent, etc...), ça sera autant de moins à rechercher ensuite à la main.

Voilà quelques messages d'erreur que j'ai recensé et le moyen de les corriger :
Spoiler



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




2. Maintenant que j'ai commencé les premiers secours, qu'est-ce que je fais ?

Bien qu'utile, la liste des erreurs indiquées par le TESC reste limitée. Si vous avez par erreur mis un ravissant tutu rose à Jauffre alors qu'il était censé se trouver sur vos mannequins, le TESC n'y verra pas le moindre problème. Il faut donc maintenant remonter ses manches et s'attaquer au vrai nettoyage ! ;)

L'idée principale derrière cette partie est de retirer les modifications non désirées du contenu de l'esp. Pour ça, vous avez plusieurs outils à disposition (la liste ne se prétend pas exhaustive et est susceptible de grandir par la suite). Le plus connu est naturellement le TESC - à titre personnel, je n'utilise que celui là. Mais d'autres utilitaires externes sont également disponibles, et semblent "légèrement" plus intuitifs à utiliser !


Nettoyer le mod en passant directement pas le TESC

Le TESC fournit un outil de modification directe du contenu de votre esp. Pour y accéder, ouvrez la fenêtre de chargement de votre mod (menu File->Data...) : il s'agit du bouton Details (faites bien attention de sélectionner votre mod et pas le fichier Oblivion.esm avant de cliquer sur ce bouton : l'affichage du contenu d'Oblivion.esm prend une mémoire vive énorme ! ;)).
Vous aurez alors une fenêtre contenant toutes les modifications qu'apporte votre mod à Oblivion : objets effacés, nouveaux ou modifiés, dialogues, scripts, cellules, etc...

Image IPB :paladin: :D :?: :? :arrow: Image IPB


Cette fenêtre contient sept colonnes : "Type", "Deleted", "Ignored", "Editor ID", "Form ID", "Offset" et "Length". De tous ces onglets, seuls les quatre premiers nous intéressent vraiment, et vous pouvez carrément oublier Offset et Length qui n'ont aucun intérêt pour ce tutorial (pour les curieux, leur intérêt est tout de même détaillé en spoiler). Voilà à quoi elles correspondent :
  • Type : le type de l'objet. S'agit-il d'une référence, d'un activateur, d'un dialogue, etc...
  • Deleted : indique si l'objet est marqué comme effacé (on y reviendra dans trente secondes)
  • Ignored : indique si l'objet est marqué comme à ignorer (on y revient aussi juste en dessous)
  • Editor ID : comme son nom l'indique, il contient l'editor ID de l'objet (il s'agit de texte compréhensible par un être humain normalement constitué :huhu:, par exemple Gold001 pour une pièce d'or)
  • Form ID : de même, ce champ correspond à la Form ID de l'objet. Là, c'est un chiffre écrit en héxadécimal : n'essayez pas de deviner quel objet il indique en le lisant ! (pour reprendre l'or, sa Form ID est 0000000F)
Juste pour info, pour les champs "Offset" et "Length" :
Spoiler

Commencez par repérer les objets qui vous semblent anormalement modifiés par votre mod. Vous pouvez pour ça réorganiser la liste en cliquant sur la tête d'un champ (la liste sera réorganisée par ordre alphabétique du champ). Par exemple, si vous cliquez d'abord sur "Editor ID" puis sur "Type", vous aurez une liste d'objets classés par type, puis dans chaque type, le classement se fera par ordre d'editor ID. C'est un petit truc pratique que je vous recommande fortement pour ne vous concentrer que sur les objets qui vous intéressent.

Une fois que vous avez vu que l'objet "PoissonRouge" n'a rien à faire dans votre mod, il faut l'en supprimer. Pour celà, rien de plus simple : sélectionnez le dans la liste et appuyez sur la touche "Supprimer" de votre clavier. Vous allez voir la lettre "I" apparaître dans le champ "Ignored" : ça signifie que votre objet est considéré comme ignoré. Pour annuler, il vous suffit de réappuyer sur la touche "Supprimer" (le I disparaîtra).
Image IPB : Quand un objet est marqué comme ignoré, il n'est pas retiré du mod immédiatement. Il ne sera tout simplement pas sauvegardé la prochaine fois que vous enregistrerez votre mod - ce qui veut dire qu'il faut que vous sauvegardiez votre mod pour que la modification prenne effet. ;)

Il est facile de confondre le champ "Ignored" du champ "Deleted", mais tous deux sont totalement différents. Le champ "Deleted" a pour effet de supprimer un objet du monde d'Oblivion (par exemple, j'efface Jauffre dans le TESC), tandis que le champ "Ignored" retire une modification de votre mod. Vous n'avez aucune possibilité de marquer un objet comme "Deleted" ou non depuis la fenêtre montrant les objets de votre mod, cette valeur n'est là qu'à titre informatif.



Je pense que tout le monde tombera d'accord pour dire que ce menu n'est pas le plus intuitif qui ait été inventé. Certains préfèreront donc peut-être passer par des utilitaires externes pour nettoyer leur mod. Là, n'ayant aucune expérience sous ces utilitaires, je me contente de traduire le contenu de la page du Wiki ElderScrolls qui est dédiée au nettoyage, les informations sont donc fournies telles quelles ! ;)
Spoiler



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




3. Quelques conseils généraux sur le nettoyage des mods

Quand dois-je nettoyer mon mod ?

Idéalement, le développement d'un mod doit se faire de la sorte :
  • Réflexion sur le mod (écriture du scénario, de plans pour les bâtiments, réflexion sur la manière de le scripter, etc...)
  • Modage durant des mois, la tête profondément plongée dans le cambouis TESCien
  • Test personnel final du mod
  • Redistribution du mod aux joueurs
Evidemment, ce ne sera jamais aussi net (on fait généralement des petits tests au fur et à mesure du modage), mais dans les grandes lignes, c'est à peu près ça. Je laisse la parole à Kafou pour savoir quand lancer son nettoyage de printemps :

Voir le messageKafou, le 31.05.2005 à 17:30, dit :

Première question :
Mieux vaut tester après le nettoyage :)
La raison en est assez simple : si par malheur vous veniez à effacer un élément essentiel à votre mod, vous vous en apercevrez pendant vos tests et pourrez corriger le tir. Si vous le faites après les tests, vous ne le verrez pas et redistribuerez un mod buggué aux joueurs.

Il va également sans dire qu'il est bon de le nettoyer immédiatement après que vous ayez fait une erreur, quand vous vous en apercevez.


J'ai un doute sur un objet. Dois-je le nettoyer ?

Dans le doute, pas question de faire du nettoyage sauvage : notez la référence de l'objet et allez vérifier dans votre mod s'il y a lieu de l'en effacer ou non. Ca devrait résoudre la plupart des ambiguités.

Dans le cas où vous ne parvenez vraiment pas à le savoir, laissez l'objet tel quel. Dans la mesure où votre mod modifie plus d'objets avec une juste raison que par erreur (enfin, on peut l'espérer ! :D), il est plus probable qu'il s'agisse d'une modification désirée.
Celà dit, cette politique n'est à appliquer que dans le pire des cas, car vous augmenterez les risques d'incompatibilité avec d'autres mods si cette modification n'avait pas lieu d'être.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




4. En conclusion

Le nettoyage du mod est une étape importante du modding, qui permet à la fois d'éviter des incompatibilités ou des bugs dans le mod, et d'alléger l'archive que vous proposerez en téléchargement pour les joueurs.

Je ne vois rien à ajouter pour le moment, si ce n'est vous n'avez désormais plus d'excuses pour ne pas envoyer des mods propres comme un sou neuf. Et que ça brille ! :)



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




Sources :

Ce tutorial est en bonne partie basé sur le guide de nettoyage du Wiki ElderScrolls. Bon nombre d'images proviennent d'ailleurs de cette page.
Dans la philosophie, il s'inspire également du légendaire KafouWash dédié à Morrowind. :)

N'hésitez pas à jeter un oeil à ces références en cas de besoin ! ;)




Révisions :
1. Ajout du message d'erreur provoqué par des références en doublon (21/07/2007)

Modifié par Elenwel, 02 mai 2011 - 20:51.

Nenfëa

- Les yeux, Bouh, vise les yeux!
- Pouiiiiiic!!!

Le monde de Gilbertus devenu réalité : Kalendaar!
Il était une fois un site vachement bien avec plein de nistoires dessus... ah, vous la connaissez déjà ?!

Wiwi d'or 2006 du plus serviable ! Tadaaaaaaaa !




0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)