Articy Issues

Announcements, support questions, and discussion for the Dialogue System.
DLRyy
Posts: 20
Joined: Fri Aug 12, 2022 12:02 pm

Articy Issues

Post by DLRyy »

Hi, been tinkering around with Dialogue System, Adventure Creator and Articy. Now perhaps that chain might be a bit too long for me but I've been having an issue.

I can use it and it works out on it's own just connected with Adventure Creator, some tweaks here and there and it could be ready BUT, whenever I involve articy and databases outside of those two, it breaks, it won't play anything, won't even show up when you click on an NPC.

Other than that, what's the workflow when it comes to variables with articy included? How does it look like?
User avatar
Tony Li
Posts: 21973
Joined: Thu Jul 18, 2013 1:27 pm

Re: Articy Issues

Post by Tony Li »

Hi,

When you define a variable in articy, it will be in a variable group. For example, say you have a variable group named "Global" containing a variable named "worldTemperature". When you import your articy XML into the Dialogue System, the dialogue database will contain a variable named "Global.worldTemperature".

If you want to get or set that Dialogue System variable in an Adventure Creator actionlist, use the Third Party: Dialogue System Lua action. Sett the Lua Code field to something like:

Code: Select all

return Variable["Global.worldTemperature"]
and specify an AC variable in the Store Result field. When the action runs, it will store the variable value in AC variable.

When you import articy XML, remember to tick Overwrite. This will overwrite your database asset. Otherwise it will create a new database asset -- but your AC actions, Dialogue System Triggers, and Dialogue Manager GameObject will probable still be point to the old now obsolete database file.

If something doesn't work, check the Console window. The Dialogue System is pretty generous with error and warning messages. You can also temporarily set the Dialogue Manager GameObject's Other Settings > Debug Level to Info to log very detailed info.
DLRyy
Posts: 20
Joined: Fri Aug 12, 2022 12:02 pm

Re: Articy Issues

Post by DLRyy »

So I had a bridge from Ac to Dialogue system and Articy exports on one end but I was missing this Lua scripting thing, got it. I imagine this is the final component on this chain.
Great, this way, I just have to keep the variable names exactly the same in all 3 and it should work smoothly, right?
User avatar
Tony Li
Posts: 21973
Joined: Thu Jul 18, 2013 1:27 pm

Re: Articy Issues

Post by Tony Li »

Right. And keep in mind that articy/Dialogue System variables are different things from Adventure Creator variables. However, you can sort of pretend that they're the same variables by using the Adventure Creator Bridge's Sync checkboxes as long as the variable names are exactly the same.
DLRyy
Posts: 20
Joined: Fri Aug 12, 2022 12:02 pm

Re: Articy Issues

Post by DLRyy »

Tony Li wrote: Fri Aug 12, 2022 3:31 pm Right. And keep in mind that articy/Dialogue System variables are different things from Adventure Creator variables. However, you can sort of pretend that they're the same variables by using the Adventure Creator Bridge's Sync checkboxes as long as the variable names are exactly the same.

Mhm, so this then? Got it, thanks, I'll report back if I get it working on a test scene, sorry to bother.
This should work, again, as long as the names across the three but wait, Articy and Dialogue System would both add say, global. before the name right or am I misunderstanding something?
User avatar
Tony Li
Posts: 21973
Joined: Thu Jul 18, 2013 1:27 pm

Re: Articy Issues

Post by Tony Li »

Hi,

Articy: Variable group "Global" -> variable "worldTemperature"

Dialogue System (DS): Imported variable be will named "Global.worldTemperature"

Adventure Creator (AC): Create a global variable named "Global.worldTemperature"

When you start a conversation, the bridge script will copy the AC Global.worldTemperature's value to the DS Global.worldTemperature variable. Your articy/DS conversation may manipulate the DS Global.worldTemperature variable value.

When the conversation ends, the bridge script will copy the DS Global.worldTemperature's value to the AC global variable.

Also, sorry about the age of that video. It's still fairly accurate, but an updated video is in the works to bring it up to the latest versions of everything.
DLRyy
Posts: 20
Joined: Fri Aug 12, 2022 12:02 pm

Re: Articy Issues

Post by DLRyy »

No issues whatsoever from it being updated and I think I am getting a grasp of it now. Thanks! Well, actually, the LUA script you mentioned above should be the only scripting for every variable right?
User avatar
Tony Li
Posts: 21973
Joined: Thu Jul 18, 2013 1:27 pm

Re: Articy Issues

Post by Tony Li »

Yes, that's correct. Of course, you'll specify different names for different variables, but the syntax of that line will be the same.
DLRyy
Posts: 20
Joined: Fri Aug 12, 2022 12:02 pm

Re: Articy Issues

Post by DLRyy »

I've been working with DS and the whole pipeline I've got here but I wanted to ask two things, sorry if they're kinda simple.
First, it should be possible for DS to handle everything interaction-text related, say, clicking on hotspots and inventory/crafting comments. I thought about using either a Narrator NPC/Actor or single use actors based on the item or hotspot you click? Makes sense as a solution, I hope.
Is that the best way to approach this, how would inventory comments work though? Either clicking, mixing, etc.
Simply loading conversations in Cutscenes?

Other than that, everything works just fine right now, a bit apprehensive about anything saving related but hopefully it will be a breeze.
User avatar
Tony Li
Posts: 21973
Joined: Thu Jul 18, 2013 1:27 pm

Re: Articy Issues

Post by Tony Li »

Hi,

Yes, DS and articy can handle the interaction text. I strongly recommend grouping the text into flows in articy so they appear in submenus in dropdowns in Unity. Otherwise it will drive you crazy trying to go through an unorganized dropdown of hundreds of items.

I also recommend getting the save system working sooner rather than later, even if it's not saving everything yet. The save system is pretty simple once you get it set up, but it's always a good idea to get fundamental technical systems like this running before building out a lot of content.
Post Reply