Forum rules - please read before posting.

Conversation Menu Issue

I'm building a game with a general conversation screen that will handle all conversation dialogue and response text. Whenever the NPC dialogue activates, the conversation menu closes and reappears when returning to the conversation. Dialogue text appears, but how do I keep the convo screen from closing when NPC dialogue is running?

Comments

  • There's a couple of ways:

    1. If you don't override the options within the Dialogue: Start conversation Action, you can set the Conversation menu's Appear type to Manual and simpy turn the Conversation on and off as needed using Menu: Change state. You'll have to start the Conversation before turning on the Menu, mind.

    2. If the reaction dialogues don't block gameplay, a Conversation menu with an Appear type of During Conversation will remain on display. You can prevent gameplay from being blocked by setting the ActionList's When running field to Run In Background. You can prevent the Player from making other interactions / movement etc during this time using the Engine: Manage systems Action.

  • Thanks for the help. And sorry for the late reply. I took a leave for Christmas.

    So, if I set the when running type to run in the background. it will display the text on the screen? The default conversation system uses the subtitles menu to display dialogue. How can I switch the dialogue text to another menu so I can use that menu to position the text right on the screen?

  • Also, which action list are you referring to in the second method?

  • My mistake - the Conversation will hide once the option is clicked, regardless of the Actions involved.

    Method 1. is still valid, and you can make things much easier with a simple custom script. Try this:

    1. Set the Conversation's Appear type to Manual and uncheck Enabled on start?.
    2. Paste this code into a C# script named ManualConversation.cs and add it to a GameObject in the scene: http://pasteall.org/1443840/csharp
    3. Change the names of the menu / DialogList element in its Inspector if necessary
    4. Use a Dialogue: Start conversation as normal to show the options
    5. To hide the options, use the Menu: Changes state Action to turn off the Conversation menu
  • Thanks!
    Any game object in the scene for the script?

  • Thanks for the script, it works!
    One last question. The NPC dialogue uses the subtitles menu to display text when the NPC speaks. This is used by both the conversation system and outside for descriptions. Is there a way to use a different menu or a label within the conversation menu to display the NPC dialogue?

  • Any game object in the scene for the script?

    Yes, it can be anywhere. If you rely on Unity UI for the Menu, it's best to place on the UI's Canvas.

    Is there a way to use a different menu or a label within the conversation menu to display the NPC dialogue?

    A Menu with an Appear type of When Speech Plays can be configured to limit its display to specific characters / narration. You can create a new Menu for e.g. description or NPC dialogue.

  • Thanks!
    The text now displays using a separate label menu. Though the text doesn't seem to stay on screen for very long. Is this togglable? or is it integrated with the nature of dialogue?

  • You can use the [hold] text token in your speech to "move on" to the next Action but retain the speech on-screen until you force it off with Dialogue: Stop speech.

    For more, see the Manual's "Text tokens" chapter.

  • Thanks!

    I tried the [wait] token as it would mean I could stagger the dialogue more easily, but the game won't recognise my mouse clicks. I have skippable subtitles enabled in the settings manager.

    Also, I have been trying to structure the conversations so that the selected choice will disappear when the NPC dialogue plays. I have tried to use the dialogue toggle option, but it won't disappear. Even when a new option should appear, it doesn't.

  • I tried the [wait] token as it would mean I could stagger the dialogue more easily, but the game won't recognise my mouse clicks. I have skippable subtitles enabled in the settings manager.

    Have you set a non-zero Time before can skip (s) value? Try defining an input named "SkipSpeech" and invoking that - you can map it to "mouse 0" to have it react to LMB clicks.

    Also, I have been trying to structure the conversations so that the selected choice will disappear when the NPC dialogue plays. I have tried to use the dialogue toggle option, but it won't disappear. Even when a new option should appear, it doesn't.

    Does it work if you display your Conversation menu as normal, i.e. by using the "Demo_MenuManager" Menu Manager instead? What's your AC version number?

  • I downloaded AC in November of 2018. I believe it is still the most recent version.

    When I disable the manual script in the main camera object and set the menu to appear type back to during conversation. The dialogue list cycles options well. But the menu will still disappear like before.

  • The conversation menu, that is. The same problem from before occurs when the NPC dialogue pops up.

  • This is a bug, thanks for the report - I'll work on a fix.

  • Is it a bug with AC, or with the script you sent?

  • With AC - find a fix in v1.66.1.

  • Thanks!

    just tested it out and it works!
    If I knew there was going to be an update soon, I would have suggested hotspots in menus and highlightable text.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.