Quest Alert not working
-
- Posts: 65
- Joined: Fri Feb 06, 2015 3:51 pm
Quest Alert not working
Hi,
I have a quest trigger on an object that activates on comversation end. While I'm able to get the quest to trigger, the Alert message explaining it does not appear. Why might that be?
I have a quest trigger on an object that activates on comversation end. While I'm able to get the quest to trigger, the Alert message explaining it does not appear. Why might that be?
Re: Quest Alert not working
Hi,
Is the alert panel not visible in your UI?
I tested the JRPG2 in the Quest Example scene, and the Quest Trigger shows alerts. Here's what I did:
1. Opened Dialogue System/Examples/Quest Example/Quest Example.
2. Inspected the Dialogue Manager GameObject, assigned the JRPG2 Dialogue UI prefab to the Dialogue UI field, and set Debug Level to Info.
3. Played the scene. Took Lieutenant West's quest (find the terminal), and then walked into the open doorway to trigger the Quest Trigger. The JRPG2 UI showed "Found the Terminal". The Console view contains the text "Dialogue System: Setting quest 'Find the Terminal' state to 'success'".
I temporarily set Debug Level to Info to get confirmation that the Quest Trigger was actually firing.
Then I moved the Quest Trigger to Lt. West, changed the trigger type to OnConversationEnd, and edited his conversation so the last line's Script field doesn't try to show its own alert message. Then, when I ended the conversation, the Quest Trigger immediately fired and showed the "Found the Terminal" alert message.
If this doesn't work in your scene, then try these steps:
1. After the Quest Trigger, pause the game and check the scene object Dialogue Manager/JRPG2 Dialogue UI(Clone)/GUI Root/Alert Panel/Alert:
- Does its GUILabel component contain your alert message text?
- Is the object active?
- Have you changed the position or size of its scaled rect, or changed the GUI style so it's not visible?
2. If that doesn't help, please post a screenshot of your Quest Trigger, or feel free to send me an example scene that demonstrates the issue.
Is the alert panel not visible in your UI?
I tested the JRPG2 in the Quest Example scene, and the Quest Trigger shows alerts. Here's what I did:
1. Opened Dialogue System/Examples/Quest Example/Quest Example.
2. Inspected the Dialogue Manager GameObject, assigned the JRPG2 Dialogue UI prefab to the Dialogue UI field, and set Debug Level to Info.
3. Played the scene. Took Lieutenant West's quest (find the terminal), and then walked into the open doorway to trigger the Quest Trigger. The JRPG2 UI showed "Found the Terminal". The Console view contains the text "Dialogue System: Setting quest 'Find the Terminal' state to 'success'".
I temporarily set Debug Level to Info to get confirmation that the Quest Trigger was actually firing.
Then I moved the Quest Trigger to Lt. West, changed the trigger type to OnConversationEnd, and edited his conversation so the last line's Script field doesn't try to show its own alert message. Then, when I ended the conversation, the Quest Trigger immediately fired and showed the "Found the Terminal" alert message.
If this doesn't work in your scene, then try these steps:
1. After the Quest Trigger, pause the game and check the scene object Dialogue Manager/JRPG2 Dialogue UI(Clone)/GUI Root/Alert Panel/Alert:
- Does its GUILabel component contain your alert message text?
- Is the object active?
- Have you changed the position or size of its scaled rect, or changed the GUI style so it's not visible?
2. If that doesn't help, please post a screenshot of your Quest Trigger, or feel free to send me an example scene that demonstrates the issue.
-
- Posts: 65
- Joined: Fri Feb 06, 2015 3:51 pm
Re: Quest Alert not working
Here is the Quest Trigger in question
- Attachments
-
- Screen Shot 2015-07-21 at 4.29.37 AM.png (70.44 KiB) Viewed 2294 times
-
- Posts: 65
- Joined: Fri Feb 06, 2015 3:51 pm
Re: Quest Alert not working
In addition, in another scene, I can't get this quest to fire at all. I'm also getting very strange errors. Here's some images.
http://imgur.com/a/kXqM9
http://imgur.com/a/kXqM9
Re: Quest Alert not working
Let's take one scene at a time. In the first scene, the problem is that the alert message doesn't show, right?
1. Does the Quest Trigger correctly set the "Leave Work" quest's state to Active? Here are some ways you can check this:
1. Does the Quest Trigger correctly set the "Leave Work" quest's state to Active? Here are some ways you can check this:
- In the Dialogue Editor window's Watch tab (available at runtime), add a watch for Quest["Leave_Work"].State
- Add a Lua Console to your scene, and run this command: return Quest["Leave_Work"].State
- Set up a quest log window and check the Active quests section
-
- Posts: 65
- Joined: Fri Feb 06, 2015 3:51 pm
Re: Quest Alert not working
1. Already did that. The quest is assigned and it shows up on my Quest Tracker. It's just the alert that isn't firing.
2. No, it actually shows the alert from the last quest for some reason, which means the alert from the previous quest seems to be blocking it or something.
2. No, it actually shows the alert from the last quest for some reason, which means the alert from the previous quest seems to be blocking it or something.
Re: Quest Alert not working
Is it possible that the previous quest trigger is also firing at the same time? If both quest triggers fire at the same time, you can't guarantee which alert message will take precedence.SuperSparkplug wrote:2. No, it actually shows the alert from the last quest for some reason, which means the alert from the previous quest seems to be blocking it or something.
Re: Quest Alert not working
Also, to clear up the "Failed to call function..." errors in your triggers that are set to OnSequenceStart and OnSequenceEnd, assign a GameObject to the Sequence Trigger's GameObject field. Unless you use the special keyword 'speaker' in the sequence, the only other reason you need to assign a GameObject is for the OnSequenceStart and OnSequenceEnd trigger dropdowns to work. I've removed this restriction in the next version of the Dialogue System.
-
- Posts: 65
- Joined: Fri Feb 06, 2015 3:51 pm
Re: Quest Alert not working
The Alert message in question was fired at the start of the quest, not upon completion of it. Before posting this topic, I did notice that I was completing one and assigning the other at the same time and changed it so that the first quest would be marked as completed upon OnTriggerEnter that started the cutscene. That didn't solve the problem either. The first quest is definitely being registered as a success though because it disappears from my Quest Tracker, which only shows active quests. The new quest also appears at the quest tracker when I assign it, but like I was saying the Alert seems to be ignored. Not sure why.Tony Li wrote:Is it possible that the previous quest trigger is also firing at the same time? If both quest triggers fire at the same time, you can't guarantee which alert message will take precedence.SuperSparkplug wrote:2. No, it actually shows the alert from the last quest for some reason, which means the alert from the previous quest seems to be blocking it or something.
Re: Quest Alert not working
Are any of these quests being updated during conversations, or at conversation start/end? By default, the Dialogue Manager doesn't allow alerts to appear during conversations (to prevent screen clutter). You can manually show a pending alert message by calling the sequencer command ShowAlerts() at any point during the conversation.
As an experiment, you could also inspect the Dialogue Manager's Alert Settings. Tick Allow Alerts During Conversations, and set Alert Check Frequency to 1 (i.e., every second). Then play the scene again. This might give you a more accurate idea of when alerts messages are being set.
If that doesn't help, would you please describe your intended order of events? For example, something like this:
1. Quest Trigger 1 (set to OnTriggerEnter) sets the Put On Pants quest to Active and shows the alert "Put on some pants."
2. Quest Trigger 2 (set to OnTriggerEnter) sets the Put On Pants quest to Success, and sends the message "OnUse" to Quest Trigger 3.
3. Quest Trigger 3 (set to OnUse) sets the Put On Shirt quest to Active and shows the alert "Put on a shirt."
If you can also provide screenshots for the triggers, that would be even better.
As an experiment, you could also inspect the Dialogue Manager's Alert Settings. Tick Allow Alerts During Conversations, and set Alert Check Frequency to 1 (i.e., every second). Then play the scene again. This might give you a more accurate idea of when alerts messages are being set.
If that doesn't help, would you please describe your intended order of events? For example, something like this:
1. Quest Trigger 1 (set to OnTriggerEnter) sets the Put On Pants quest to Active and shows the alert "Put on some pants."
2. Quest Trigger 2 (set to OnTriggerEnter) sets the Put On Pants quest to Success, and sends the message "OnUse" to Quest Trigger 3.
3. Quest Trigger 3 (set to OnUse) sets the Put On Shirt quest to Active and shows the alert "Put on a shirt."
If you can also provide screenshots for the triggers, that would be even better.