Aller au contenu


Mélanger Des Plugins


  • Veuillez vous connecter pour répondre
17 réponses à ce sujet

#1 Doc Toise

Doc Toise

Posté 04 octobre 2005 - 10:16

Bonjour tout le monde,

Je suis nouveau sur ce forum, merci d'abord à tous ceux qui y participent!

Je viens récemment d'achever une première version d'un programme permettant de mélanger sélectivement des plugins (et même aussi des masters). Concrètement, il permet par exemple d'ouvrir un plugin et d'y importer les données que l'on souhaite à partir d'autres plugins. Exemple: vous avez un plugin qui modifie tous les noms des NPCs du jeu sans toucher au reste, et Better Heads, qui modifie tous les visages/cheveux des NPCs. Mon programme permet alors d'importer par exemple les nouveaux noms introduit par le premier plugin dans Better Heads. Ainsi, il n'y a plus qu'à charger le plugin mélangé avec Morrowind pour avoir les effets combinés des deux plugins intiaux.

Le programme permet dans sa version actuelle de mélanger 40 types d'objets (sorts, NPCs, classes, factions, scripts, réglages généraux, sons,...), chacun avec sa propre liste de caractéristiques (un NPC possède un nom, un visage, un script,... et il est possible d'importer chaque valeur séparément). Certaines valeurs doivent cependant encore, pour le moment, être importées en groupes, comme les caractéristiques d'un personnage.

Le programme en est à sa première version, mais mon emploi du temps ne me permet pas de poursuivre avec d'autres versions pour le moment. J'ai pu incorporer toutes les fonctions qui me semblaient indispensables (copies de données, suppression en masse d'objets, recherche de conflits entre les plugins, écriture de scripts redistribuables). Certains détails restent à régler, comme les jeux de caractères de l'interface textuelle qui devraient être convertis (il y a donc des problèmes avec les caractères accentués). Le programme fonctionne en principe indépendamment de la langue des plugins édités, vu que le format ESP est le même pour toutes les versions (du moins c'est ce que j'ai constaté, reprenez-moi si je me trompe).

Pour le moment, et vu que j'ai appris comment fonctionnaient les plugins en codant le programme capable de les lire/enregistrer correctement, le programme n'est de loin pas, au niveau performances, sous son meilleur jour. Le code source (fourni avec, en C++) est trop redondant pour le moment, j'en suis conscient, l'exe énorme, la consommation mémoire également, tout comme le temps nécessaire pour ouvrir de gros plugins, comme morrowind.esm (ce n'est pas à proprement parler un plugin, mais seul un octet change par rapport à un esp de contenu identique). Pour info, sur mon modeste portable d'il y a trois ans, un plugin de 4 Mo met une dizaine de secondes pour être ouvert, alors que morrowind.esm prend bien 2 minutes (en fait, c'est surtout le chargement des objets CELL qui prend du temps). Mais ça reste quand même plus rapide que d'importer des données à la main, et surtout moins frustrant si on a commis une erreur et qu'on doit tout recommencer...

Voilà, comme je l'ai dit, je ne peux actuellement pas consacrer beaucoup de temps à poursuivre le développement. Si de petits bugs sont trouvés, je peux essayer de les corriger, mais il faudra se contenter des fonctionnalités actuelles pour le reste. Sinon, le code source est dans le zip, il fera peut-être sourire certain par son côté pas très pro, mais je préférais le fournir avec pour ceux qui s'y intéressent et souhaiteraient modifier le programme ou comprendre comment il travaille. J'ai également inclus un petit exemple pour montrer à quoi ressemble la syntaxe des scripts.

Voilà, n'hésitez pas à donner votre avis (bon ou mauvais), à me signaler des problèmes, des imprécisions dans la documentation, ou à suggérer des nouvelles fonctionnalités. N'hésitez pas non plus si vous essayez le programme et que vous avez des questions sur son fonctionnement. J'essaierai de vérifier régulièrement le thread et d'y répondre. Merci d'avance à tous ceux qui donneront leur avis!

Et voilà le lien pour télécharger le zip du programme (700 ko): TESFE
(Edit: Pour ceux qui préfèrent, voilà la version sans accents dans l'interface: TESFE (sans accents))
ainsi qu'un lien direct vers le (long) readme, pour ceux qui voudraient en savoir plus: Readme
Pour commencer, quelques tutoriels: Tutoriels

Modifié par Doc Toise, 07 octobre 2005 - 22:51.


#2 Rubicante

Rubicante

Posté 04 octobre 2005 - 10:59

Tout ça est trés intéressant, mais ce problème avec les caractéres accentués peut être gênant.

En tout cas, bienvenue sur le forum et merci de nous proposer ce programme que tu as conçu. :lol:
Ne cliquez pas ici ou ici ou vous le regretterez !

#3 Angora

Angora

    Danse avec les bugs


Posté 04 octobre 2005 - 11:05

Ça m'a l'air très intéressant tout ça !

Je me souviendrais de lui, même si je n'en ai pas besoin de suite...
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.

#4 Doc Toise

Doc Toise

Posté 04 octobre 2005 - 11:14

Voir le messageRubicante, le 04.10.2005 à 10:59, dit :

Tout ça est trés intéressant, mais ce problème avec les caractéres accentués peut être gênant.

Je pense que je n'ai pas été clair à ce sujet: ce problème n'affecte que l'interface du programme, mais pas la gestion des plugins. Les plugins avec lesquels on travaille peuvent contenir des accents, le programme les gère sans problème. En fait, vu que l'interface du programme est en ligne de commande (commandes MS-DOS), les codes caractères ne sont pas les mêmes et les caractères spéciaux (les lettres accentuées) sont changés. Par exemple, on lit "gÙnÙral" sous l'interface, mais qu'il faut comprendre "général". Ca reste quand même lisible, je pense. Le plus gros problème de la version actuelle, ce sont quand même ses performances. J'ai d'ailleurs hésité à mettre en ligne le programme à cause de ça, mais je me suis dit que ceux qui fermeraient les yeux sur ce problème pourraient peut-être trouver ce programme utile.

#5 Angel Eyes Sentenza

Angel Eyes Sentenza

    Cave Canem


Posté 04 octobre 2005 - 11:16

la lisibilitée y gagnerait donc beaucoup si tu remplacé les lettres accentuées par les meme lettres non accentuées..
Burro català : "Le caractère catalan semble comporter les vertus de l'âne : ténacité, détermination, ardeur à la tâche et fidélité. "

"J'aime à voir les choses tomber en place."

Kerro Panille

Bloc-notes


#6 Rubicante

Rubicante

Posté 04 octobre 2005 - 11:21

Ce serait la soluce la plus simple, à moins que tu tiennes à bien orthographier tout ça, ce qui se comprend aussi.
Ne cliquez pas ici ou ici ou vous le regretterez !

#7 Doc Toise

Doc Toise

Posté 04 octobre 2005 - 12:16

Voir le messageSentenza, le 04.10.2005 à 11:16, dit :

la lisibilitée y gagnerait donc beaucoup si tu remplacé les lettres accentuées par les meme lettres non accentuées..

Ouaip, c'est une excellente idée. Je fais ça, je mets en ligne et j'ajoute un lien vers la version sans accents dans mon premier post (je laisse quand même l'autre zip). Effectivement, je tenais à bien orthographier les textes, c'est plus vite fait de faire un rechercher/remplacer sur les accents pour les retirer (vu que toutes les chaînes sont regroupées dans un seul fichier source) que de les ajouter à un texte sans accents.
Merci.

#8 Angora

Angora

    Danse avec les bugs


Posté 04 octobre 2005 - 16:40

Du moment que les accents ne sont pas retirés des greffons...
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.

#9 Doc Toise

Doc Toise

Posté 04 octobre 2005 - 20:19

Voir le messageAngora, le 04.10.2005 à 16:40, dit :

Du moment que les accents ne sont pas retirés des greffons...
Effectivement, ce n'est pas le cas. C'est l'interface du programme qui comporte le problème des accents. Les greffons sont eux toujours traités en tant que fichiers de données binaires, octet par octet.

A part ça, quelqu'un a-t-il fait un essai?

#10 Emma Indoril

Emma Indoril

    Bateau ivre


Posté 05 octobre 2005 - 08:53

C'est le genre de programme qui m'interesse, je l'ai téléchargé et je vais faire des essais.
Je te tiens au courant.
:lol:
"Ce qui vient au monde pour ne rien troubler ne mérite ni égard ni patience."
René Char

"Ça ne veux plus rien dire non plus, mais cela a quand même plus de sens."

#11 Yr d'Uab

Yr d'Uab

Posté 05 octobre 2005 - 10:06

[HS]

Citation

Repeindre un chameau peut vous eviter un oeuf au plat.

Tu es sûr que çà va, Emma ?  :lol:

Sinon, j'aime mieux cet avatar que la rouquine manga précédente ...

[/HS]

A+
Yr
Je n'ai rien à voir avec votons.info, mais je le conseille à tous les électeurs potentiels.
---
"Se sent obligé de répondre par des mp en 4 points et 2 conclusions,
le tout engoncé dans un style académique des plus barbants."

#12 Emma Indoril

Emma Indoril

    Bateau ivre


Posté 06 octobre 2005 - 17:08

Bon, ben c'est pas gagné !
J'ai lu la notice, et je viens de me frotter au logiciel :
Je fait une certaine allergie à la ligne de commande, donc, ça n'a pas marché !

Désolé Doctoise, je ne pourrais pas tester convenablement ton outil  :blush: , la ligne de commande et moi on ne s'entend VRAIMENT pas !
Je ne comprend pas comment utiliser les commandes, s'il faut indiquer toute l'arborescence du fichier, du genre c:\Program files\bethseda \morrowind ...... toto.esp

Désolé, je laisse tomber !
L'outil m'a l'air d'etre trés puissant, et trés utile, mais avant de pouvoir etre utilisé correctement par le premier venu, il faudra peut etre lui ecrire un mode d'emploi plus clair. :green:
"Ce qui vient au monde pour ne rien troubler ne mérite ni égard ni patience."
René Char

"Ça ne veux plus rien dire non plus, mais cela a quand même plus de sens."

#13 Doc Toise

Doc Toise

Posté 06 octobre 2005 - 21:19

Désolé que ça te semble trop compliqué, mais c'est un programme qui requiert un certain investissement, c'est certain, et il n'est en aucun cas destiné à être utilisé par le premier venu, sauf pour l'exécution de scripts qui est entièrement automatisée, ou presque. Si tu n'as jamais touché au Construction Set, rien ne sert de poursuivre avec TESFE. Il faut en effet connaître le format des plugins (la documentation Excel que j'ai jointe au zip), connaître le contenu des plugins que l'on mélange, et maîtriser le programme.

Pour répondre à ta question, il faut spécifier le chemin complet du plugin si celui-ci ne se trouve pas dans le même répertoire que mon programme. Dans ton cas, si toto.esp se trouve dans "c:\jeux\bethesda softworks\morrowind\data files", alors il faut l'ouvrir avec
    openbase "c:\jeux\bethesda softworks\morrowind\data files\toto.esp"
Les guillemets sont nécessaires si le chemin complet comporte des espaces (ce qui est le cas ici).

Voilà, c'est tout, désolé que la doc ne te semble pas plus claire. J'ai jeté un oeil à ton profil. Je vais pondre un exemple à partir de deux plugins de ta liste, et je le mettrai online pour ceux qui veulent comprendre comment ça marche et voir ce que ça donne.

Merci quand même de t'être intéressée au programme!

Modifié par Doc Toise, 06 octobre 2005 - 21:20.


#14 Emma Indoril

Emma Indoril

    Bateau ivre


Posté 07 octobre 2005 - 09:16

C'est moi qui suis désolé... j'ai eu souvent besoin de ce genre d'outil pour "fusionner" deux esp, lorsque je travaillais avec Yr'duab sur la Thétis, ou avec Le fléau sur Coeurébene, j'aurais bien aimé avoir un outil me permettant de mélanger de façon simple le travail de l'un et de l'autre.
J'ai reussi à le faire avec TESAME, mais il a fallu, au préalable, modifier de maniere conséquente l'un des plugins :
Dans le cas de Coeurébene, les murailles etaient l'oeuvre de le Fleau.
Je m'en suis servis comme point de repere pour poser mes batiments, puis j'ai recupéré la derniere version de son travail, et je l'ai fusionné avec TESAME.
Evidemment, je me suis retrouvé avec tout les pnj et les batiments en double !
C'etait évident pour les PNJ, ca l'etait moins pour les batiments (a part les portes !) !

Il a donc fallu que je nettoie a la main mon plug, en otant tout ce qui éxistait dans le plug avec lequel je desirais fusionner, (les murailles, les pnj, bref, tout ce que le fléau avait construit !) avant de le fusionner avec TESAME !
Dans ce cas, c'etait facile. je n'ose pas imaginer la même chose avec des dialogues et des scripts !

Mais bon, je n'abandonne pas, je reprendrais cela, à téte réposé, et on verra bien !
(comble de l'ironie : j'ai passé toute la soirée de hier soir à bricoler sous DOS ! :) )
"Ce qui vient au monde pour ne rien troubler ne mérite ni égard ni patience."
René Char

"Ça ne veux plus rien dire non plus, mais cela a quand même plus de sens."

#15 Gwen Armor

Gwen Armor

Posté 07 octobre 2005 - 18:52

Bonjour Doc Toise, je viens d'essayer après avoir lu la documentation, les possibilités semblent énormes. Cependant, même si un langage en ligne de commandes ne me rebute pas, j'avoue que... malgré l'aide intégrée, je ne m'en suis pas sorti au bout de quelques heures. (Je pars du principe que je suis nul, cela me permet d'apprendre). Les temps de chargement ne posent pas de problème. Ce qui m'a posé un problème, c'est de ne pas avoir de stratégie d'utilisation, que dois-je faire et dans quel ordre. Sur l'objectif que je m'étais fixé : fusionner tout simplement 2 esp complets pour réduire ma liste, je n'y suis pas arrivé. En fait, cela m'a fait rêver d'un bouton sur lequel je pourrai appuyer pour fusionner quelques esp que je met dans toutes mes configs ! (Comme je voulais ce regroupement pour m'éviter des manipes, je viens de le faire sous tesc).
Ton boulot m'impressionne, respect. Mais il me faudrait la même connaissance que toi de la structure de ces fichiers pour m'en sortir, ou alors un bon tuto de démarrage pas à pas, ou alors une petite interface.
Bon courage pour la suite de ton ouvrage, si tu arrives à le perfectionner pour une utilisation facile, ce sera génial. @+ de voir la suite.
---------------------------------------------
L'essentiel est invisible aux yeux
---------------------------------------------

#16 Doc Toise

Doc Toise

Posté 07 octobre 2005 - 21:18

Citation

Il a donc fallu que je nettoie a la main mon plug, en otant tout ce qui éxistait dans le plug avec lequel je desirais fusionner, (les murailles, les pnj, bref, tout ce que le fléau avait construit !) avant de le fusionner avec TESAME !

Mais bon, je n'abandonne pas, je reprendrais cela, à téte réposé, et on verra bien !
(comble de l'ironie : j'ai passé toute la soirée de hier soir à bricoler sous DOS !)
Bien, je vois que tu n'es de loin pas un débutant en modding, tu devrais pouvoir t'en sortir avec TESFE si tu persévères. Pour t'aider, je suis en train de préparer des tutoriels basiques pour te familiariser avec l'interface. J'ai déjà terminé un tuto pour les plugins VO, je vais me mettre tout de suite à écrire un tuto avec des plugins VF (le problème, c'est que je ne possède que la VO, je suis donc limité pour concevoir des exemples VF). Je compliquerai ensuite si nécessaire avec d'autres tutoriels un peu plus poussés. Je pense arriver à finir ça ce soir, je mettrai à jour mon premier post avec les liens qui vont bien dès que ce sera prêt.
Et puisque tu sais bricoler sous DOS, l'interface de TESFE fonctionne de la même manière, je te fais confiance, tu devrais t'en tirer.

Citation

Bonjour Doc Toise, je viens d'essayer après avoir lu la documentation, les possibilités semblent énormes.
Salut Gwen Armor! Tout d'abord, merci de t'intéresser toi aussi à ce programme, c'est courageux. Il y a encore pas mal de limitations que j'aimerais lever, notamment au niveau des références placées dans les cells. Et si tu entrevois certaines fonctionnalités qui te semblent utile, je prends bonne note, et j'ajouterai ça quand je reprendrai sérieusement le développement.

Citation

Cependant, même si un langage en ligne de commandes ne me rebute pas, j'avoue que... malgré l'aide intégrée, je ne m'en suis pas sorti au bout de quelques heures. (Je pars du principe que je suis nul, cela me permet d'apprendre).
C'est normal, ma doc n'est pas vraiment claire on dirait, c'est un point que je devrai améliorer. Par contre, ne sois pas étonné si tu ne t'en sors pas immédiatement. Il n'est pas nécessaire de tout connaître par coeur (je parle de la doc sur le format ESP incluse dans le zip), mais ça peut aider de se faire soi-même de petits plugins contenant une petite modification ou deux chacun (un NPC avec un autre nom, un son ou un game setting modifié,...), certains modifiant les mêmes objets (pour s'amuser à lever les conflits) et d'essayer de les mélanger, plutôt que de commencer avec des plugins plus vastes. Comme dit plus haut, je vais mettre en ligne des tutoriels qui expliquent tout ça.


Citation

Ce qui m'a posé un problème, c'est de ne pas avoir de stratégie d'utilisation, que dois-je faire et dans quel ordre.
En principe, la stratégie est la suivante: commencer par regarder ce qui se trouve dans les plugins via un éditeur qui le fait bien, j'utilise pour ma part Mwedit, lire les documents qui accompagnent les plugins pour savoir précisément ce qu'ils font, et regarder comment cela est réalisé concrètement dans le plugin.
Ensuite, lancer TESFE, charger les plugins et utiliser la commande infos pour avoir un bref aperçu de ce qui se trouve à l'intérieur. Ensuite, déterminer s'il est nécessaire ou non d'ouvrir des plugins de référence sous TESFE (tu as lu la doc, j'espère que ça t'a permis de comprendre vaguement à quoi ça sert). Ceci afin ensuite de détecter les conflits éventuels entre les plugins, grâce à la commande cc. Puis, après analyse des conflits, décider ou non d'importer des données. Le schéma-type d'importation de données est une commande de copie (c ou cs), suivie d'une commande d'importation de nouveaux objets i. Finalement, enregistrer le plugin et tester.
Je t'ai juste donné les étapes sans expliquer chacune d'elle, puisque cela nécessitera certainement quelques tutoriels pour être compris (ou une lecture attentive du readme, aussi imparfait soit-il). Mais c'est le schéma de travail classique.

Citation

En fait, cela m'a fait rêver d'un bouton sur lequel je pourrai appuyer pour fusionner quelques esp que je met dans toutes mes configs ! (Comme je voulais ce regroupement pour m'éviter des manipes, je viens de le faire sous tesc).
Désolé, pas de bouton pour le moment... mais tu peux écrire des scripts pour automatiser ce que tu fais souvent. Au lieu de cliquer sur un bouton, il suffit d'appeler ton script au moyen de la commande script (je te renvoie au readme). Mais il faut savoir écrire des scripts. Pour cela, rien de mieux que de se familiariser avec TESFE au moyen d'exemples simples créés au moyen du Construction Set.

Ou alors tu peux fusionner les plugins que tu utilises dans toutes tes configs pour former ton plugin avec tout ce que tu aimes et utilises tout le temps, que tu enregistres alors sur ton disque dur. Ensuite, à chaque fois que tu veux créer un nouveau plugin à partir de cette base, eh bien c'est elle que tu ouvres en premier, et tu y importes les données que tu souhaites ajouter à partir d'autres plugins. C'est d'ailleurs cette dernière solution que je préfère.

Citation

Ton boulot m'impressionne, respect. Mais il me faudrait la même connaissance que toi de la structure de ces fichiers pour m'en sortir, ou alors un bon tuto de démarrage pas à pas, ou alors une petite interface.
Bon courage pour la suite de ton ouvrage, si tu arrives à le perfectionner pour une utilisation facile, ce sera génial. @+ de voir la suite.
Merci pour tes encouragements. La connaissance de la structure des fichiers est un énorme avantage, c'est sûr, mais il n'est pas obligatoire d'en connaître toutes les subtilités (d'ailleurs, je suis très loin d'en avoir percé tous les secrets). Malheureusement, le programme ne sera jamais vraiment facile à utiliser, puisqu'il est avant tout destiné à ceux qui ont déjà utilisé le Construction Set. Et, pour ce qui est de l'interface graphique, je suis un peu perplexe, je ne vois pas comment m'en sortir tout en faisant une interface agréable (des boutons radio par dizaines? Des listes déroulantes? Des cases à cocher?). Et, surtout, j'attends d'avoir toutes les options finalisées pour écrire éventuellement une interface graphique qui va bien.
De toute manière, le développement est gelé pour le moment, vu que je n'ai pas vraiment le temps de m'y consacrer suffisamment.

Voilà, encore merci à tous ceux qui persévèrent, je suis conscient que ça ne doit pas être facile. Je m'en vais de ce pas écrire le tutoriel VF et je mettrai à jour mon premier post dès que ce sera prêt.

#17 Behelit

Behelit

Posté 20 octobre 2005 - 12:35

grrrrrrrrrr fichier zip endommager :'(

#18 Doc Toise

Doc Toise

Posté 21 octobre 2005 - 11:11

Voir le messageBehelit, le 20.10.2005 à 12:35, dit :

grrrrrrrrrr fichier zip endommager :'(
Oups, vraiment désolé, les fichiers zip que tu as téléchargés sont en fait des rar avec une extension incorrecte. J'ai corrigé les liens de mon premier post, les fichiers .zip que l'on peut télécharger sont maintenant bien des fichiers zip, et non plus des rar travestis.
Merci et encore désolé pour cette erreur!




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

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