How do Quests work in Dialog System?

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
mutagen13
Posts: 6
Joined: Mon Jul 07, 2025 3:18 am

How do Quests work in Dialog System?

Post by mutagen13 »

I'm interested in learning how Dialog System's quest features work. I've read the documentation and the video tutorial, but I'm still a bit unclear about the process for creating a multi-step quest and not sure what the "Group" feature does for quests. The examples seem to be just one-step quests.

For example, how would I create a single quest that goes like this:
  • Talk to NPC
  • Go to Location
  • Kill 5 Enemies
  • Return to NPC
Would that be 4 quests, in a Group? Or one quest with 4 Quest Entries?

If there are any examples of a more complicated quest like this?
User avatar
Tony Li
Posts: 23392
Joined: Thu Jul 18, 2013 1:27 pm

Re: How do Quests work in Dialog System?

Post by Tony Li »

Hi,

That would usually be one quest with four quest entries. As the player completes each step (quest entry), set the quest entry's state to success and set the next quest entry's state to active. Here's an example:

multistepquest.png
multistepquest.png (77.64 KiB) Viewed 22 times

Some notes:
  • Tip: Once you set the quest Name, don't change it. This is the unique identifier that many parts of the Dialogue System will use to reference the quest. To change the name that the player sees, set the Display Name.
  • The Group field is optional. It simply groups quests under headings in UIs.
  • Trackable means the quest can be toggled on and off in the quest tracker HUD.
  • In this example, I added "Talk to NPC" as an entry, assuming it's the first step to complete when the player has accepted the quest. If by "Talk to NPC" you mean talking to the NPC to be offered the quest, then the first quest entry would instead be "Go to Location". Note that I set the first quest entry's State to active. This means it will be visible in the quest log window & HUD as soon as the player accepts the quest (i.e., as soon as you set the quest's State to active).
  • In entry 3, I used a newline character (\n) to indicate a line break, followed by a [var=variable] tag. This tag shows the value of the DS variable "Killed", which you could define and increment to keep track of how many enemies the player has killed.
  • Regarding "Return to NPC", there are optional quest state values such as Grantable and Return To NPC. You can use these values or ignore them. I usually only use the quest state values Unassigned, Active, and Success. (And sometimes Failure, if the player can fail a quest.) But some devs like the extra states for their own organization purposes.
Post Reply