Problèmes de dialogues entre 2 quêtes

Le langage des scripts.
Répondre
Avatar du membre
sulfolobus
Moddeur aspirant
Moddeur aspirant
Messages : 87

Problèmes de dialogues entre 2 quêtes

Message par sulfolobus »

bonjour :)
J'ai le problème suivant :
Je veux qu'un dialogue se déclenche à un certain moment d'une quête1, mais que ce dialogue soit dans une autre quête2. j'ai mis ces conditions là du coup :
_getstage "quête1" ==20
-getstage "quete2"<10
Mais quand je passe au stade 20 de la quete1, non seulement le dialogue n'apparait pas mais les autres dialogues de la quete2 (qui avaient pour condition getstage "quete2" <10) disparaissent.
Ma méthode est-elle la bonne ?
Merci d'avance :calin:
Avatar du membre
_Red
Confrère
Messages : 56

Re: Problèmes de dialogues

Message par _Red »

Salut,
Je sais absolument pas comment faire des dialogues mais si ça peut aider je pense qu'il faut que tu attaches ta quête à une variable globale par exemple première phase de la quête ta variable et égale à 1 ensuite ton joueur parles à une personne par exemple; un script est placer sur cette personne qui dit que la variable globale prend +1 la variable globale est donc de 2 et quand la variable globale est égale à 2 sa déclenche ce que tu veux faire avec ta quête ainsi de suite. Si tu veux une 3éme personne et donc une 3éme phase tu fais prendre encore +1 a ta variable etc
Avatar du membre
sulfolobus
Moddeur aspirant
Moddeur aspirant
Messages : 87

Re: Problèmes de dialogues

Message par sulfolobus »

Ok merci :) il fallait bien que je commence à m’intéresser aux scripts un jour ou l'autre...
Avatar du membre
ced909
Confrère
Messages : 151

Re: Problèmes de dialogues

Message par ced909 »

Bonjour,

Heu, le sujet n'a absolument rien à voir avec les scripts...
On parle de Dialogue, de conditions de Dialogue là, pas de scripts ;)

Sinon oublie les variables globales, dans ton exemple, il n'y en a pas besoin, créer une variable globale pour les Dialogues c'est de trop et inutil.
Dans la majorité des cas les conditions de Dial GetStage se suffisent.

Sinon, j'utilise des Dialogues dans un de mes mods, alors je pourrais te conseiller. On va procéder par étapes :
- tes "Quête 1" & "Quête 2" disposent de Stage créés ? (10 - 20 - 30 ...)
- tes conditions de quêtes sont au minimum : "GetisID = IDduPerso" + "GetStage" ... ?
- comment tu passes au Stage 20 de ta quête ? par fragment Papyrus ou par code console in-game ?
- Comment démarrent tes quêtes ?
Pour info le "Start Game Enabled", censé démarrer la quête lorsque le jeu démarre est à moitié buggué, et ne lance pas la quête si elle contient des Dialogues. Il faut dans ce cas décocher cette case, et démarrer la quête par un SM Event Node
Ou si tu laisses cette case cochée : pour la forcer à démarrer in-game : F5 / F9

In-Game, il y a plusieurs façons de vérifier l'état d'une quête : (admettons que l'ID de ta quête 1 est "AA_Quest")
Getquestrunning AA_Quest ça te retourne 1 si elle est bien démarrée et 0 dans le cas contraire
GetStage AA_Quest te retourne le stage actuel de la quête
SQV AA_Quest ça te donne tout en 1 :
ça te retoune l'état de démarrage de la quête, le stage actuel, les References Alias si elle en contient, ainsi que les variables Property et locales du script attaché si elle en possède un.
Avatar du membre
sulfolobus
Moddeur aspirant
Moddeur aspirant
Messages : 87

Re: Problèmes de dialogues

Message par sulfolobus »

ced909 a écrit :Heu, le sujet n'a absolument rien à voir avec les scripts...
On parle de Dialogue, de conditions de Dialogue là, pas de scripts ;)
Ok, ben maintenant je le sais ^^


Je vais essayer de donner le max de précisions :
Ma quête 1 commence par un dialogue avec un PNJ. A la fin de ce dialogue, le PJ put accepter la quête ce qui passe le satge de cette quête à 20 avec un script :

Code : Tout sélectionner

GetOwningQuest().SetObjectiveDisplayed(20)
GetOwningQuest().SetStage(20)
Parallèlement, je veux qu'un autre PNJ propose un dialogue spécifique avant que la quete 1 soit au stage 20 et un autre pendant le stage 20. Ces dialogues sont dans la quête 2.
J'ai donc mis comme conditions au dialogue de la quête 2:
GetIsId bien sur aux deux dialogues, et pour chacun :
_dialogue 1 : Getstage "quête1" <20
_dialogue 2 : getStage "quête1" ==20

Pour le dialogue 1 ça fonctionne. mais dès que le stage de la quête 1 passe à 20, tous les dialogues de la quête 2 disparaissent.

Et bien sur merci de m'aider ! :biere:
Avatar du membre
ced909
Confrère
Messages : 151

Re: Problèmes de dialogues

Message par ced909 »

Logiquement avec ce que tu as dit, lorsque quete 1 passe à 20 :
_dialogue 1 (de quête 2) disparait car Getstage "quête1" <20 (logique)
_dialogue 2 (de quête 2) Condition Getstage "quête1"== 20 n'apparait que si c'est un autre sujet
Par contre _dialogue 2 n'apparaitra pas si il fait suite à _dialogue 1 par un "Link Topic" puisque _dialogue 1 ne remplit plus ses conditions.
Il y a peut-être une erreur dans tes conditions, d'après moi.
Avatar du membre
sulfolobus
Moddeur aspirant
Moddeur aspirant
Messages : 87

Re: Problèmes de dialogues

Message par sulfolobus »

C'est bien un autre sujet et il n'est pas linker. quand tu dis autre sujet tu veux dire branch ?
Avatar du membre
ced909
Confrère
Messages : 151

Re: Problèmes de dialogues

Message par ced909 »

Oui "Branches" et non "Topics"
Avatar du membre
sulfolobus
Moddeur aspirant
Moddeur aspirant
Messages : 87

Re: Problèmes de dialogues

Message par sulfolobus »

C'est ce que j'ai fait... Je vais tout reprendre voire si je me suis pas emmêlé à un endroit.

Edit : bon ton astuce de faire F5/F9 a fonctionné merci ! :calin:
Du coup pourrais-tu m'en dire un peu plus sur le SM event node s'il te plait ?

Edit2 : bon je dois être maudis, maintenant le dialogue 1 de la quête 2 s'est dédoublé... mais seulement dans le jeu, dans le CK il n'y est qu'une fois.
Répondre

Retourner vers « Entraide sur les scripts »