Page 1 of 1

Problems for dialogue database setting

Posted: Sun Apr 28, 2024 6:19 am
by Syoka
I am making rpg game which may talk to npc and interact with objects.
There are some problems I don't know how to solve:

1. How to make the dialogue not show character name when the dialogue is a remainder or a narrative statement?
2. How to change the input so that when I press key Z in keyboard, the dialogue will continue (or end for last statement). I have set input as below, but it got no response when I pressed Z.
3. Now when i start a conversation, the dialogue will continue to next node after about 2 second. How to set the conversation continue only if I pressed the key Z?
4. When the dialogue is for player, it always shows selections for player, how to set no selection when there is only one option? I have tried not check the Always force response menu, but this will skip that player dialogue.
5. How to limit the line of dialogue to 2?
6. How to set random nodes for a conversation when talking to npc?
Thank you.

Re: Problems for dialogue database setting

Posted: Sun Apr 28, 2024 9:54 am
by Tony Li
Hi,
Syoka wrote: Sun Apr 28, 2024 6:19 am1. How to make the dialogue not show character name when the dialogue is a remainder or a narrative statement?
Use a different subtitle panel that doesn't have a Portrait Name field. Example steps:
  • Edit your dialogue UI. Duplicate the NPC Subtitle Panel. Rename the duplicate to "Narrator Subtitle Panel". Add it to the dialogue UI's Standard Dialogue UI component > Conversation UI Elements > Subtitle Panels list. Note its element number (e.g., 2). This is its panel number.
  • Create a "Narrator" actor in your dialogue database.
  • Create an empty GameObject as a child of your Dialogue Manager. Name it "Narrator". Add a Dialogue Actor component. Set Dialogue UI Settings > Subtitle Panel Number to the element number (e.g., panel 2).
  • Alternatively, use the [panel=#] markup tag in a dialogue entry node's Dialogue Text to show that node in the panel.
Syoka wrote: Sun Apr 28, 2024 6:19 am2. How to change the input so that when I press key Z in keyboard, the dialogue will continue (or end for last statement). I have set input as below, but it got no response when I pressed Z.
Inspect your dialogue UI's Continue Button(s). Add a UI Button Key Trigger component, and set the Key to Z.
Syoka wrote: Sun Apr 28, 2024 6:19 am3. Now when i start a conversation, the dialogue will continue to next node after about 2 second. How to set the conversation continue only if I pressed the key Z?
Inspect the Dialogue Manager GameObject. Set Display Settings > Subtitle Settings > Continue Button to Always.
Syoka wrote: Sun Apr 28, 2024 6:19 am4. When the dialogue is for player, it always shows selections for player, how to set no selection when there is only one option? I have tried not check the Always force response menu, but this will skip that player dialogue.
See: How To: Bypass Response Menu When Player Has One Choice
Syoka wrote: Sun Apr 28, 2024 6:19 am5. How to limit the line of dialogue to 2?
The Dialogue Text field has a character count. You can keep an eye on the character count and create a new node when the line gets too long.

6. How to set random nodes for a conversation when talking to npc?
In the preceding node, use the RandomizeNextEntry() Lua function in the Script field.

Re: Problems for dialogue database setting

Posted: Sun Apr 28, 2024 11:03 am
by Syoka
It seems most of them are dialogue UI issues. I kept using the default UI and didn't study dialogue UI much yet.
Sorry for asking trivial questions. Thank you for your reply.

Re: Problems for dialogue database setting

Posted: Sun Apr 28, 2024 11:18 am
by Tony Li
Always happy to help!