Multiple Actors Set To IsPlayer Issue

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
EmryTech
Posts: 6
Joined: Fri Nov 15, 2019 8:47 am

Multiple Actors Set To IsPlayer Issue

Post 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 968 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 968 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 966 times
When running in game it still seems to show the full path.
DialogueForUnityIssue4.PNG
DialogueForUnityIssue4.PNG (59.29 KiB) Viewed 966 times
User avatar
Tony Li
Posts: 22049
Joined: Thu Jul 18, 2013 1:27 pm

Re: Multiple Actors Set To IsPlayer Issue

Post 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.
EmryTech
Posts: 6
Joined: Fri Nov 15, 2019 8:47 am

Re: Multiple Actors Set To IsPlayer Issue

Post 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 962 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 961 times
This is the the Honourable man? response settings.
DialogueForUnityIssue7.PNG
DialogueForUnityIssue7.PNG (7.77 KiB) Viewed 962 times
User avatar
Tony Li
Posts: 22049
Joined: Thu Jul 18, 2013 1:27 pm

Re: Multiple Actors Set To IsPlayer Issue

Post 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.
EmryTech
Posts: 6
Joined: Fri Nov 15, 2019 8:47 am

Re: Multiple Actors Set To IsPlayer Issue

Post 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?
User avatar
Tony Li
Posts: 22049
Joined: Thu Jul 18, 2013 1:27 pm

Re: Multiple Actors Set To IsPlayer Issue

Post 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.
EmryTech
Posts: 6
Joined: Fri Nov 15, 2019 8:47 am

Re: Multiple Actors Set To IsPlayer Issue

Post by EmryTech »

Seems to work perfectly. Thank you so much for your time and effort.
User avatar
Tony Li
Posts: 22049
Joined: Thu Jul 18, 2013 1:27 pm

Re: Multiple Actors Set To IsPlayer Issue

Post 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.
Post Reply