Page 1 of 1

Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 9:01 am
by EmryTech
I'm pretty new to this so I may just be doing this incorrectly or not following best practices, but I have a setup where the player can choose responses for multiple people in the party. In this example case, I have two Actors with "isPlayer" checked off named "Mule" and "Lita"...

I set up a conversation (that "Mule" isn't even in) like so...
DialogueForUnityIssue1.PNG
DialogueForUnityIssue1.PNG (22.69 KiB) Viewed 1049 times
When I run, the Dialogue Manager seems to just pick the top "IsPlayer" to display as the speaker.
DialogueForUnityIssue2.PNG
DialogueForUnityIssue2.PNG (106.82 KiB) Viewed 1049 times
I've also noticed a further issue where it doesn't seem to be respecting the "Use Display Name" check box.
DialogueForUnityIssue3.PNG
DialogueForUnityIssue3.PNG (7.94 KiB) Viewed 1047 times
When running in game it still seems to show the full path.
DialogueForUnityIssue4.PNG
DialogueForUnityIssue4.PNG (59.29 KiB) Viewed 1047 times

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 10:38 am
by Tony Li
Hi,

Thanks for using the Dialogue System!
EmryTech wrote: Fri Nov 15, 2019 9:01 amWhen I run, the Dialogue Manager seems to just pick the top "IsPlayer" to display as the speaker.
It's using the actor assigned to "Suli is an honorable man," which in this case is the conversation's conversant. Since you're using articy:draft, the conversation's conversant is the second character that you've assigned to the dialogue. For example, in the screenshot below the conversation's conversant is Private Hart:

Image
(More info)

Side note: This can change at runtime [see here], but we can skip that discussion unless it becomes relevant.

To address this:

1. Assign the character who should be speaking "Suli is an honorable man" as the dialogue's second entity, OR
2. Assign the speaker to that dialogue fragment.
EmryTech wrote: Fri Nov 15, 2019 9:01 amI've also noticed a further issue where it doesn't seem to be respecting the "Use Display Name" check box.
What version of the Dialogue System are you using? (Check with menu item Tools > Pixel Crushers > Dialogue System > Welcome Window.) Version 2.0.9 fixed a bug with Display Names.

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 11:03 am
by EmryTech
I am using Version 2.2.2.

I don't have anyone assigned in articy like you say...
DialogueForUnityIssue5.PNG
DialogueForUnityIssue5.PNG (36.85 KiB) Viewed 1043 times
Looking closer in the UI in Unity, it all appears correct.

This is the Suli is an honourable man settings...
DialogueForUnityIssue6.PNG
DialogueForUnityIssue6.PNG (12.65 KiB) Viewed 1042 times
This is the the Honourable man? response settings.
DialogueForUnityIssue7.PNG
DialogueForUnityIssue7.PNG (7.77 KiB) Viewed 1043 times

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 11:15 am
by Tony Li
Hi,

I'll check the Display Name issue. If it's a bug, I'll post a patch.

If you inspect the conversation's properties in the Dialogue Editor by clicking on blank canvas space, which characters are assigned as the Actor and Conversant? If they don't look correct, please assign the correct actor and conversant entities to the dialogue in articy:draft.

Also temporarily set the Dialogue Manager's Other Settings > Debug Level to Info. Then play and start the conversation. In the Console window, look for a line like this:

Dialogue System: Starting conversation "The Price of Freedom Trial" with actor=XXX and conversant=YYY

Do XXX and YYY match who you expect? If not, please see GameObject Character Assignments.

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 11:27 am
by EmryTech
Okay, I think I see the confusion. Yes, Mule was set there as the actor...but I figured it would pull from whomever the actor is set in the Dialogue Entry not the Conversation. My issue is my game is first person party-based and I was looking to have multiple members of the party have voices in a single conversation....as in..

Player A asks question -> NPC 1 responds -> Player B asks follow up question ... etc. in a single conversation. Can you think of a way this can currently be done?

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 1:42 pm
by Tony Li
Here's a little patch that enables this:

DS_MultiPlayerMenuPatch_2019-11-15.unitypackage

After importing the patch, you can also import this example scene:

MultiPlayerConversationExample_2019-11-15.unitypackage

The patch adds this checkbox to the Standard Dialogue UI component: "Use First Response For Menu Portrait". When ticked (as in the example), instead of showing the player actor assigned to the conversation as a whole, it checks the first response in the current response menu and uses that player actor's portrait info. (The changes in this patch will also be in the next full release.)

I also configured all of the actors to use Display Names, which appears to work correctly. Perhaps you can compare it to your actors to see if there's any difference in the setup.

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 1:59 pm
by EmryTech
Seems to work perfectly. Thank you so much for your time and effort.

Re: Multiple Actors Set To IsPlayer Issue

Posted: Fri Nov 15, 2019 2:42 pm
by Tony Li
Glad to help, and thanks for the feedback. I'm sure you're not the only one who will take advantage of that new checkbox.