Hi Nathan,
Good timing for these questions! I'm working on Quest Machine updates this week. So if any of my answers below prompt additional feature requests, let me know.
nathanj wrote: ↑Wed Mar 06, 2019 7:16 pm1. I do have one small question/request. How hard would it be to add a response button option to the Dialogue Content fields that are displayed through the DS UI? At the moment the user needs to press escape to get out of the conversation.
What kind of conversation? One of the automatically-generated "list" conversations, or a conversation that you've written by hand in the Dialogue System's Dialogue Editor window?
nathanj wrote: ↑Wed Mar 06, 2019 7:16 pm2. could you tell me where the setting is that routes the Dialogue Content through the DS UI? Or, does it just happen automatically if you are using the DS integration?
If the Quest Machine GameObject has a
Dialogue System Quest Dialogue UI component, and if its
Generate Conversation For Quest Lists checkbox is ticked, it will automatically generate and show "list" conversations when the quest giver has more than one quest to talk about. This conversation will also show
Cancel Quest List Text as a response button to exit without choosing a quest.
When showing the dialogue content for a quest, Quest Machine will only play a Dialogue System conversation if the dialogue content contains a
Dialogue System Conversation Quest Content. (Inspect the integration demo's quests for examples.)
nathanj wrote: ↑Wed Mar 06, 2019 7:16 pm3. I'm trying to make my dialogue as generic as possible so different conversations can be assigned to multiple quest givers. Is there any way to implement something like:
Code: Select all
GiveQuest({QuestGiver}, "WarrigalGreens")
rather than assigning a specific questID?
When Quest Machine starts a Dialogue System conversation for a quest, it sets the conversation's QuestID field to the quest's ID. Say your conversation is ID 3. Also assume that the quest giver's actor name in your dialogue database is the same as its quest giver ID. Then you could do this:
Code: Select all
GiveQuest(Variable["Conversant"], Conversation[3].QuestID)
nathanj wrote: ↑Wed Mar 06, 2019 7:16 pm4. Just reading through the documentation again and I noticed this message at the head of the Lua Commands
The Dialogue System Quest Machine Bridge adds the Lua functions below. If your game has only one player/quester, you can use the simpler Quests On Default Player functions. If your game has multiple questers, use the Quests on Any Quester functions.
In the case of uSurvival, only the local player has a quest journal, so you can use the simpler form.
Outside of uSurvival, multiple questers could mean multiplayer, or it could mean NPC questers as in the
AI Questers tutorial.