Aller au contenu


[résolu] Forcegreeting Après 72h Sans Voir Le Pnj


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

#1 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 18 mars 2008 - 21:19

Bonsoir amis moddeurs et moddeuses !

Je me penche actuellement sur le système de chimie de GDI, et la meilleure solution que j'ai trouvé est l'utilisation des dialogues.

A chaque ustensile de chimie correspondra un PNJ "invisible" pour le joueur (autre cell par exemple). A chaque ingrédient correspondra un topic, qui sera affiché ou pas suivant la présence de cet ingrédient dans l'inventaire du PJ. Bref, un système très malléable, surtout si on envisage des plug-in avec des ingrédients supplémentaires ( pas de script à compléter ).

  Le problème viendra du forcegreeting

Lorsqu'on activera un ustensile, un forcegreeting appellera le pnj correspondant. Or j'ai cru comprendre ( dans le topic de Kalendaar ) que le pnj devait être enregistré dans la sauvegarde, et que le moteur de Morrow ne les conservait que 72 heures ingame. Donc si le joueur ne se sert pas de l'ustensile pendant plus de 72h, forcegreeting ne fonctionnera plus.

J'ai cherché une solution à ce problème en regardant le script de l'anneau de Sarah, mais il semble qu'il n'ai pas été corrigé.

Une solution serait de placer le pnj à proximité du joueur lorsque celui-ci active l'ustensile...mais un peu lourd.

Donc si quelqu'un a une petite astuce...je suis preneur :mrgreen:

Modifié par Von Zeeple, 09 avril 2008 - 16:14.

Le Steampunk, c'est bon, mangez en  !

#2 Orann

Orann

    Nérévarine de Pertevue


Posté 18 mars 2008 - 22:16

Je pense qu'il n'y a aucun problème à placer le pnj à côté du joueur... si le pnj est invisible  :mrgreen:
Tu créé une nouvelle race, tu affectes dans les body part (pour le groin par exemple, tu n'as pas à faire toutes les parties) uniquement les "editor markers" qui sont invisibles ingame, mais visible dans le TESCS et donc pouvant être au cas où manipulable. Avec des PlaceatPC, c'est facile de mettre les pnjs n'importe où, sans que le joueur ne voit grand chose (sauf l'ombre malheureusement...).
J'espère que ça peut t'aider.  :)
Palme d'honneur 2010 pour le mod Archipel de Pertevue

Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.

#3 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 18 mars 2008 - 22:42

Quand je disais "invisible", je voulais dire qu'il ne sera jamais dans la même cell que le joueur, mais cette idée de mesh invisible en bodypart est intéressante...Mais dans ce cas, autant placer un effet caméléon 100% sur le PNJ non?

Faire des Setdelete sur un pnj n'occasionnera pas de problème niveau sauvegarde ? ( si deux instances du même pnj est setdelete entre deux sauvegardes )

Je préfère demander car je ne suis pas tout à fait à l'aise avec la fonction setdelete.
Le Steampunk, c'est bon, mangez en  !

#4 elendell

elendell

    Mécano Dell'Arte


Posté 19 mars 2008 - 04:51

Hello,

Je ne suis pas sûr de bien comprendre et vais donc peut-être dire une bêtise mais, si dans cette phrase :

Citation

Or j'ai cru comprendre ( dans le topic de Kalendaar ) que le pnj devait être enregistré dans la sauvegarde, et que le moteur de Morrow ne les conservait que 72 heures ingame.
tu parles bien du bug des 72h pour les PNJ, il y a un moyen de le résoudre.

Je travaille justement dessus (entre autre) depuis deux jours. Si tu as un script global qui fait faire un "PositionCell" chaque jour au PNJ, il reste actif même après 72h. Et ce, même si il est dans une cellule éloignée.

Il y a quand même quelques conditions sur lesquelles je planche mais mon "mod" est pour Morrowind seul et ça réduit les possibilités.

Une condition est que le "Positioncell" doit se faire dans une autre cellule que celle où le PNJ est placé dans le Tescs. Mais ensuite, il n'y a plus besoin de changer et on garde les mêmes coordonnées chaque jour.

Il semble qu'il faille également, au moins pour mon utilisation particulière, que le PJ se trouve au moins une fois dans la même cellule pour que le contact s'établisse. J'aurais pu en faire un passant, mais j'ai préféré cacher mon PNJ sous une maison car le PJ était obligé de passer dans cette cellule extérieure. Et comme ça, dès que le PJ arrive dans la cell (qu'il arrive de n'importe quel côté), le PNJ est téléporté avec "PositionCell" sans risque que le joueur voit ça).

Explication de ce que j'ai fait (juste pour préciser) :

J'ai besoin que le PJ fasse une action à chaque chargement de partie. Donc, il me fallait un détecteur de chargement. Avec Morrowind seul, le MSfD ne donne qu'une possibilité, mais impossible à utiliser dans mon cas.

J'utilise donc un NPC sur qui je fais un "ForceSneak" et un script qui détecte s'il n'est plus en "ForceSneak". Ce qui est le cas en rechargeant.
Mais c'était aussi le cas au bout de 72h sans recharger ! En faisant un "PositionCell" par jour, je n'ai plus cette limite de temps et il reste ainsi tant que je ne quitte pas la partie. Par contre, je ne sais pas encore pourquoi mais ça ne fonctionnait pas dans une cell prévue à cet effet. Mais je vais sûrement en trouver la cause car en l'envoyant dans "todd", ça fonctionne très bien.

Je n'ai malheureusement pas testé si la possibilité de "ForceGreeting" reste active au rechargement mais il y a des chances que oui.

Je regarderai ça dès que j'aurai dormi (j'ai sauté une nuit complète pour y arriver  :mrgreen: ).

EDIT : Je viens de vérifier et ça fonctionne parfaitement. "Forcegreeting" est accessible pour le NPC, que ce soit après une semaine en jeu ou au chargement d'une sauvegarde. Nouvelle attente d'une semaine, nouvelle sauvegarde, nouveau chargement, téléportation du PJ dans un autre lieu, essai : ça fonctionne toujours.  ;)

PS: Très intéressante ton idée d'utiliser des PNJ avec "ForceGreeting" pour ce que tu vas en faire. Je note car cela peut servir pour plein de choses.

#5 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 19 mars 2008 - 23:18

Citation

PS: Très intéressante ton idée d'utiliser des PNJ avec "ForceGreeting" pour ce que tu vas en faire. Je note car cela peut servir pour plein de choses.

Merci, en effet cela pourrait être utile pour un mod d'artisanat ( ou de fabrication de clés :? )

Modifié par Von Zeeple, 19 mars 2008 - 23:19.

Le Steampunk, c'est bon, mangez en  !

#6 sucresalesucre

sucresalesucre

    En fait y'a des accents cachés


Posté 20 mars 2008 - 09:42

Une variante serait de faire in compagnon-génie. Je m'explique : une créature (un peu comme Morte dans Planetcape Torment) qui suit le joueur partout, et lui dit des reflexions à intervalles réguliers.

La créature serait invisible la plupart du temps, sauf à intervalle réguliers où elle apparait tel le génie moyen pour faire sa petite reflexion et repartir (au revoir le bug des 72h). Ensuite, comme avec la lampe (de génie, ça suit, je vois !), un objet qu'on utilise pour déclencher l'apparition de la créature lorsqu'on veut l'utiliser pour créer (donc là, ton système de dialogues). Et après elle redisparait.

Soit tu peux créer un compagnon qui suit tout le temps le joueur mais qui apparait et reapparait à intervalles réguliers ( toutes les 24h, par exemple, génie de minuit !). Soit pour éviter que le compagnon soit semé, il faut avoir recours à un script global qui vérifie la position du joueur, la probabilité d'apparition, et qui la déclenche.

Dans le principe ça doit être jouable, la solution du script global étant la plus sûre...

Modifié par sucresalesucre, 20 mars 2008 - 09:46.

Le chat CROIT appartenir à une race supérieure évoluée. Mais ce n'est qu'un rebut pervers avec des yeux belzebuth et des griffes.


------

Moddeur de Blye Citadelle du Chaos pour Morrowind et Vault panic pour Fallout3


#7 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 09 avril 2008 - 16:13

Sucresalesucre, c'est une idée de gameplay très intéressante, malheureusement incompatible avec le backgroud cartésianiste et technologiste de la chimie. Cependant, cela peut être très utile pour une quête alambiquée nécessitant que le joueur ai un point de vue extérieur...ou pour simuler une malédiction et des apparitions de fantômes !

Merci beaucoup Elendell, le script marche parfaitement  :shocked: , même en ayant dormis une centaine d'heures d'affilé !

Modifié par Von Zeeple, 09 avril 2008 - 16:14.

Le Steampunk, c'est bon, mangez en  !




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

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