Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
jm0072
Posts: 3
Joined: Fri Dec 22, 2017 7:25 am

Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by jm0072 »

Hello everyone!
A test database and test conversations that became active in a project. Now I would like to change the conversation name to reflect the scene. After changing the Conversation Title, the project complied with error

Dialogue System: Conversation 'Test' not found in database.
UnityEngine.Debug:LogWarning(Object)
PixelCrushers.DialogueSystem.ConversationModel:.ctor(DialogueDatabase, String, Transform, Transform, Boolean, IsDialogueEntryValidDelegate, Int32, Boolean, Boolean)
PixelCrushers.DialogueSystem.DialogueSystemController:StartConversation(String, Transform, Transform, Int32)
PixelCrushers.DialogueSystem.DialogueSystemController:StartConversation(String, Transform, Transform)
PixelCrushers.DialogueSystem.DialogueManager:StartConversation(String, Transform, Transform)
PixelCrushers.DialogueSystem.ConversationStarter:StartConversation(Transform)
PixelCrushers.DialogueSystem.ConversationStarter:TryStartConversation(Transform, Transform)
PixelCrushers.DialogueSystem.ConversationStarter:TryStartConversation(Transform)
PixelCrushers.DialogueSystem.<StartConversationAfterOneFrame>c__Iterator1B:Mo

help!!

thank you.
patxiku
Posts: 14
Joined: Tue Nov 07, 2017 6:46 am

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by patxiku »

Maybe since conversation is part of the database and the database itself is an assets stored as a file you can't change it's components on runtime without changing the original asset.
You should create a copy of the database on runtime and change it instead of changing the original asset file itself.
User avatar
Tony Li
Posts: 22061
Joined: Thu Jul 18, 2013 1:27 pm

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by Tony Li »

Hi,

Conversation Triggers refer to conversations by title. If you change a conversation's title in your dialogue database, you'll need to select the new title in the Conversation Trigger's dropdown.
jm0072
Posts: 3
Joined: Fri Dec 22, 2017 7:25 am

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by jm0072 »

Hi Tony,

I changed the conversation title and the dropdown to match the conversation title (see image)
Image

c# code is:
DialogueManager.StartConversation("LearnScene", OldMan.transform, OldMan.transform, 1);

The conversation Trigger's dropdown you are referring to, is that the same dropdown I have the green arrow pointing to in the image?

I'm still getting the same error 'conversation not found in database'.

Thanks for your help!
User avatar
Tony Li
Posts: 22061
Joined: Thu Jul 18, 2013 1:27 pm

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by Tony Li »

Hi,

Since I didn't know how you were starting the conversation, I was referring to the Conversation Trigger component, which is the most common way to start a conversation:

Image

However, I suspect Conversation Trigger would have the same issue. I'm guessing that your Dialogue Manager's Initial Database is not pointing to the database asset that has the "LearnScene" conversation. (You can load additional databases manually with DialogueManager.AddDatabase, or by adding an Extra Databases component.)

One way to check is to temporarily set the Dialogue Manager's Debug Level to Info. This will log much of what's going on under the hood. Look for lines like the ones below, which show the Titles of the conversations that are being loaded:

Code: Select all

Dialogue System: Lua(Conversation[1] = { Status = "", Title = "Private Hart", ...
Dialogue System: Lua(Conversation[2] = { Status = "", Title = "Sergeant Graves Barks",...
Dialogue System: Lua(Conversation[4] = { Status = "", Title = "Dead Guard",...
Dialogue System: Lua(Conversation[5] = { Status = "", Title = "Terminal",...
If that doesn't help, please feel free to send an example project to tony (at) pixelcrushers.com. I'll be happy to take a look.
jm0072
Posts: 3
Joined: Fri Dec 22, 2017 7:25 am

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by jm0072 »

Hi Tony,
You are correct. I am using Conversation Trigger and the Conversation was still pointing to the old conversation name. It is all working now!!
Thank you for your relentless support for this product.
Have a happy holiday!

jm
User avatar
Tony Li
Posts: 22061
Joined: Thu Jul 18, 2013 1:27 pm

Re: Changing Conversation Title resulting in Dialogue System: Conversation not found in database.

Post by Tony Li »

Glad to help! Have a happy holiday!
Post Reply