Quest Machine/ Dialogue Changing quest nodes

Announcements, support questions, and discussion for Quest Machine.
Post Reply
DeidreReay
Posts: 91
Joined: Wed Jan 22, 2020 1:20 pm

Quest Machine/ Dialogue Changing quest nodes

Post by DeidreReay »

have QM and DS integrated (as well as invector and the help you have provided before) running into issues making things actually work together.
1.) Using Dialogue to Progress quests through nodes (That are made through Quest Machine)

A.) Have tried literally everything having Script (Lua) happen to move quest forward and nothing.
EXAMPLES
SetQuesterQuestNodeState("stableBoyShorted", "Speak to Stable Boy", "Active", "Player")
SetQuestNodeState("stableBoyShorted", "Speak to Stable Boy", "Active")

B.)At same point checking the status of a node (set in conditions to not let things happen in Dialogue)
GetQuesterQuestNodeState("stableBoyShorted", "Speak to the Huntsman", "Player") == "Active"
GetQuestNodeState("stableBoyShorted", "Speak to the Huntsman") == "Active"

They just do not do anything. The only thing that seems to work was changing things to true (But changing things to active would just not happen at all.)

C.) I watch through in runtime and things like I said just do progress through the Quest Machine Nodes.

D.)Sorry if this is answered or gone into detail somewhere else, but I cant find anything.
We are trying to use this, in the quest machine fashion integrated because quest will have both QM messages sent and want dialogue options as well. Are we doing something wrong?

P.S. Simple quests work that are just get this item, check for item (invector) ID etc.
DeidreReay
Posts: 91
Joined: Wed Jan 22, 2020 1:20 pm

Re: Quest Machine/ Dialogue Changing quest nodes

Post by DeidreReay »

Update

1.) Keep trying and found some success.
Previous example.
GetQuestNodeState("stableBoyShorted", "Speak to the Huntsman") == "Active"

What worked
GetQuestNodeState("stableBoyShorted", "speakToTheHuntsman") == "active"

Question
A.) active , true, success, inactive. Do all of these need to be lower case?
B.) Do my quest ID and Node ID's need to start with lower case?

2.)I am having now to turn each Node to TRUE, and then the next Node to active. Is this how it should work?

A.) I tried filling in the actions on the actual quest for when set to true, but those do not seem to work?
User avatar
Tony Li
Posts: 20731
Joined: Thu Jul 18, 2013 1:27 pm

Re: Quest Machine/ Dialogue Changing quest nodes

Post by Tony Li »

> A.) active , true, success, inactive. Do all of these need to be lower case?

Yes. However, the Dialogue System defines constants named unassigned, active, success, etc. So you can do this:

GetQuestNodeState("stableBoyShorted", "speakToTheHuntsman") == active

and not have to deal with strings at all for quest states.


> B.) Do my quest ID and Node ID's need to start with lower case?

They must match exactly what you've entered in your quest. For example, in the Demo's Harvest Carrots quest, the quest ID is "harvestCarrots" with that exact capitalization.


> 2.)I am having now to turn each Node to TRUE, and then the next Node to active. Is this how it should work?

Yes, that's how quest nodes are designed to work. When a quest node becomes true, it activates any nodes that it links to.


> A.) I tried filling in the actions on the actual quest for when set to true, but those do not seem to work?

Sorry, I don't follow. Are you setting the Actions list of a quest node's True state, or the Actions list of the main quest info's Success state?
DeidreReay
Posts: 91
Joined: Wed Jan 22, 2020 1:20 pm

Re: Quest Machine/ Dialogue Changing quest nodes

Post by DeidreReay »

Think for the most part things are working now as intended. Will do a lot more quest work this weekend and if we run into issues can reach back out, but so far so good.
Post Reply