Opsive TPC + Dialogue System + Quest Machine Player control issue

Announcements, support questions, and discussion for the Dialogue System.
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by CruttMutt »

Hello!

I'm having an issue with regaining player control after interacting with a quest giver. This only happens specifically when closing the QM UI after a DS conversation that was triggered by a Quest Giver-Offer.
I am wanting to utilise both DS and QM UI's. I have followed all the videos easy enough but it's trying to make it work with the Opsive TPC.

In my example:
The conversation is being started via QM Offer -> DS starts the quest automatically at the end of the conversation -> Remaining interactions all through QM.

QM and DS all work perfectly normal independently if I have "Dialogue System Quest Dialogue UI" disabled on the "Quest Machine" prefab but I can't start with the conversation with QM, as expected.

I hope that makes sense... I have posted a video to show where the error happens. Nothing comes in in the console.

:::NOTE:::: In the video, I have put a "Dialogue System Interactable Target" (with Trigger set to: None) on the guest giver as well, or else the cursor does not appear in the DS conversation. I discovered the "Enable Cursor While Active" but not sure where would be best to put it in the "Dialogue System" Prefab. I tried it on "Dialogue Panel", which worked to get the cursor back so I could delete the "Dialogue System Interactable Target" component from the quest giver but still the same problem once it gets to the QM UI.


Thanks very much,

Shane.

Video Link:


PS: Sorry if this should have been a Quest Machine thread.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by Tony Li »

Hi Shane,

Does your player's Ultimate Character Locomotion component have Converse and Greet Quest Giver abilities? These abilities should take care of freezing and unfreezing player controls.

Does your player's Unity Input component's States list have Conversing and GreetingQuestGiver states? These states should take care of the cursor.
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by CruttMutt »

Thanks for the response!

Somehow I lost the Cursor converse state but that's fixed now. Thanks for the reminder. I have all the correct abilities. It still will not regain control after the QM UI though.

It's still only while they are trying to integrate do I have the issue. QM and DS work fine and regain control so long as the "Dialogue System Quest Dialogue" component on QM are off, so the problem is only when I am trying to use them both but independently they're working perfectly.

On further testing, I tried removing the conversation from the quest offer but keeping the "Dialogue System Quest Dialogue" component on and it still does not regain control. So could there be a conflict in the states somewhere? Considering they work fine by themselves.

The issue I can see is: the "Greet Quest Giver" ability stays active and does not turn itself off again once the QM UI window is closed, but only while "Dialogue System Quest Dialogue" component on QM is active.

::EDIT::
* I started a new project, imported only the latest versions of Opsive TPC, DS and QM. Tested the QM/Opsive demo with a TPC. Worked fine.
* Added the DS integrations to the scene with the integration components on QM and DS prefabs. Same issue as my project. (I did not add or alter the quest/quest giver at all).
So it can be replicated in the QM/Opsive demo. I know Opsive had done a more recent update. I had to change a couple of small things in my project when I updated. Not sure if that could have something to do with it.

Cheers!

PS: I will add another video showing what I have mentioned and you have mentioned too.

VIdeo (My Project):

Video (Demo):
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by Tony Li »

Thanks for the details. I'll check this out and reply back today.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by Tony Li »

Hi,

Since you're using Dialogue System conversations, remove the GreetQuestGiver ability and add a Converse ability.

In UnityInput, remove the GreetingQuestGiver state and add a Conversing state.

Here's an example scene:

Test_UCC_QM_DS_2020-08-29.unitypackage
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by CruttMutt »

Hello Tony,

Yes thank you... But that doesn't help me with what I'm asking sorry. I don't want to use the DS to give all the quests like your demos. Only in certain automated situations, like a cutscene triggers a quest for the main story ect ect.

Thanks for the scene but I already can do that, it's not the issue. The root of the problem is in the "Quest Machine Quest Dialogue UI" as shown in the videos and particularly in the one included at the bottom of this post.

Okay. This is the important bit:
I want to be able to use QM to assign quests as normal, with the QM UI, but just allow it to trigger a conversation at the beginning when needed for main story cutscenes using QM "Offer". That's it. Like my above examples. The video shows exactly how it needs to work with the error being in the "Greet Quest Giver" remaining active. If I remove this ability as suggested I can not use the QM UI. This is a big problem. I do not want to have a DS conversation for every small quest and potential procedural quest, that would be very messy and impractical gameplay. Also the QM UI is designed for giving quests, quick compact and works perfectly for minor quests.

The flow is as follows:
Talk to NPC -> Trigger DS conversation cutscene (automatically triggers quest at end of DS) -> All quests from this quest giver onwards is then done normally through QM (including the "Active" dialogue text, I want this in QM, not DS, as it's quick and easy reference text about the quest).


This should be able to be done. You surely shouldn't have to choose one primarily (DS or QM). I've spent a good 3 days on this issue now and can be replicated in the demo. There has to be a bug or something that needs to be added.

Unless you're suggesting that you can not use both the DS (Converse) and the QM (Greet Quest Giver) abilities on the same Opsive Character? Because that will be a big integration issue. You should be able to both greet quest givers and start conversations depending on what the NPC is offering. Some will trigger dialogue conversations with no quests, some will simply offer a quick quest (like a bounty hunter board), some will trigger a cutscene that automatically starts a quest, some require items so I need the QM UI to display the icons.. ect ect...

Cheers!

:: FURTHER TEST NOTES:: The problem is in the "Quest Machine Quest Dialogue UI" component as mentioned. If I remove the Converse ability and all DS system conversations from the quest giver, I keep it a normal straight up QM quest (normally works fine). So long as this "Quest Machine Quest Dialogue UI" component is active, I will not be able to regain control of the player. So the core of the issue, to me, seems to be here. I will include a video of this. So it seems that all the other issues are just a circumstantial result of whatever bug is going wrong right here.

VIDEO:
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by Tony Li »

Oh, I see what you want to do now. Here's a patch:

QM_DS_UCC_Patch_2020-08-29.unitypackage

It contains 2 files.
One file will be in the updated UCC Quest Machine integration package that I haven't sent to Opsive yet because I'm still working on UIS integration.
The other file will be in QM 1.2.10's updated Dialogue System Support package.
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by CruttMutt »

Yes!! I knew you would pull it off once I could finally explain it.

Thank you! I'll try these asap.
CruttMutt
Posts: 41
Joined: Wed May 06, 2020 9:44 am

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by CruttMutt »

Works perfectly!! Thank you so much Tony.
User avatar
Tony Li
Posts: 22054
Joined: Thu Jul 18, 2013 1:27 pm

Re: Opsive TPC + Dialogue System + Quest Machine Player control issue

Post by Tony Li »

Happy to help! Sorry I wasn't catching on earlier. Glad I finally understood and could help.
Post Reply