Couple of Miscellaneous Questions

Announcements, support questions, and discussion for the Dialogue System.
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

Here are what should/shouldn't be displayed in the name text:

NPC subtitle text: NPC's display name (or narrator with no name text, this works so far) in the single name Text element.. The display name may change after the NPC has been introduced.

Player response menu: No name text at all.

I don't plan on having the player speak any dialogue.
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

Hey Tony,

I figured it might be easier to just create a new dialogue database and move my existing stuff into it. There's not a lot to move as I'm still finishing off my story/dialogue framework so it's not a lot of trouble. I just did a quick test and the problem seems to have gone away. Sorry for the bother on this. I still couldn't figure out why my old database refuses to work but hopefully it won't come back.

Thanks!
User avatar
Tony Li
Posts: 22051
Joined: Thu Jul 18, 2013 1:27 pm

Re: Couple of Miscellaneous Questions

Post by Tony Li »

I was just about to set up a test scene, so thank you for the update. If you run into any issues with your new setup, just let me know.
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

Hey Tony,

Got a bit more trouble with the database migration.

My barks are no longer being put through. I chased the bark process down through the code and seems like all is running fine as there haven't been any messages in Debug mode, but the bark dialogue in the UI isn't being changed and the speech bubbles aren't being displayed.

Have you got any idea as to what else I could check?

Thanks
User avatar
Tony Li
Posts: 22051
Joined: Thu Jul 18, 2013 1:27 pm

Re: Couple of Miscellaneous Questions

Post by Tony Li »

Hi,

If you temporarily set the Dialogue Manager's Debug Level to Info and reproduce the issue, do you see lines in the Console indicating that the character is barking? It should log the text that the character is trying to bark.

If you don't see text in the Console, then it's either not triggering the bark, or the bark isn't finding a currently-valid node to bark.

If you do see text in the Console, then maybe the character isn't able to access its bark UI. Make sure the character has a bark UI in its hierarchy, or that it has a Dialogue Actor component that points to a bark UI.
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

False alarm- looks like the Test Bark conversation from the old database was still available to be selected in the new database when it doesn't exist.

Resetting the database in the bark manager resolved it.

Thanks!
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

Apologies for constantly running into these issues but I think I have a new problem now.

I added a new actor which takes the standard HasSpoken bool as in the actor template (I'm pretty sure I added just this one). In the conversation, I check if hasSpoken = true in Conditions, which returns the error below.

Code: Select all

Dialogue System: Lua code 'return Actor["CookingGuy"].HasSpoken == true' threw exception 'Lookup of field 'HasSpoken' in the table element failed because the table element itself isn't in the table.'
No variable I check seems to work - even the default ones like Description. I tried adding some more actors but none of them are working. My old actors and their variables are fine for some reason.

Nothing out of the ordinary in Debug/Info. I can clearly see the field in the Actor inspector and the new actor is correctly displayed in the actor list.
User avatar
Tony Li
Posts: 22051
Joined: Thu Jul 18, 2013 1:27 pm

Re: Couple of Miscellaneous Questions

Post by Tony Li »

Hi,

Is the actor name exactly "CookingGuy"? (e.g., exact capitalization, no space)

Is the correct database assigned to the Dialogue Manager's Initial Database field?

Add a Lua Console component to your Dialogue Manager. During play, press ~+L to open the Lua Console. Then enter:

Code: Select all

return Actor
This will list all of the actor names. Verify that "CookingGuy" is listed.
Mackerel_Sky
Posts: 111
Joined: Mon Apr 08, 2019 8:01 am

Re: Couple of Miscellaneous Questions

Post by Mackerel_Sky »

Hey Tony,

Turns out the source of (I think) all of these problems is me loading an old save which doesn't have all the changes I made in the new database. I've saved over it so should stop running into these annoying bugs again.

Thanks,
User avatar
Tony Li
Posts: 22051
Joined: Thu Jul 18, 2013 1:27 pm

Re: Couple of Miscellaneous Questions

Post by Tony Li »

Gotcha. If you tick the Dialogue Manager's Persistent Data Settings > Initialize New Variables, then when loading an old save it will initialize new actors, quests, variables, and conversation info that wasn't present when the game was saved.

If that isn't sufficient for your needs, you could include some kind of version info in your saved games. Before loading a saved game, you can check its version to see if it's new enough to be compatible with the current build of your game. If the save is too old, then ideally you'd do some special handling so the player can still load it. Otherwise you could at least tell the player that the save is too old, rather than loading it anyway and causing some kind of internal consistency issue. But, for the most part, the Initialize New Variables checkbox should take care of it.
Post Reply