Page 1 of 1

Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Wed Sep 27, 2023 7:20 pm
by LostTrainDude
[Unity 2021.3.30f1 - DS v2.2.39]

Hi Tony!

We are using Articy (v2) for our game and we started working on putting voice over into the game and we're using the ActorName_ConversationID_EntryID entrytag format to try and keep consistency over the lots of edits we make to the Articy project.

Still, most times I import a new XML in DS, also overwriting the previous DialogueDatabase, then export the Voiceover Script as a CSV, I notice that ConversationIDs and\or EntryIDs are rarely consistent, resulting in "missing" voiceover while playing the game.

This happens also to dialogue lines and conversations I didn't even modify between different edits to the Articy project.

My guess is that this is much more related to how Articy exports the XML, rather than how DS imports it, but I'm wondering whether I am oblivious about a very easy solution to this issue or should I create my own solution to check and rename the AudioClips accordingly after each import.

I tried changing the entrytag format but I couldn't find one that would work as I intended (also, using the "Voice Over File" entrytag, my CSV ends up full of "invalid_entrytag"s).

I hope this makes sense!

Thank you as always, in the meantime!

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Wed Sep 27, 2023 7:40 pm
by Tony Li
Hi,

Articy (all versions) will not keep consistent dialogue entry IDs. Instead, set the Entrytag Format to VoiceOverFile, and use articy's Voice Over Plugin. This is what's used in games like Disco Elysium and pretty much every other game that uses articy and the Dialogue System.

Alternatively, if you can't do that for some reason, you can set Entrytag Format to Custom and use the "Articy Id" field. This field, like VoiceOverFile, is also guaranteed to be unique and stable, and you don't have to use the Voice Over Plugin. However, unlike VoiceOverFile, it's not very human-readable. If you use Articy Id, you'll need to assign a method to DialogueDatabase.getCustomEntrytagFormat(Conversation, DialogueEntry) that returns the DialogueEntry's "Articy Id" field.

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Thu Sep 28, 2023 11:01 am
by LostTrainDude
Thanks Tony!

I did look at the Voice Over Plugin but I believe it only works in Articy 3+. Also, for what it's worth, the Articy "legacy" help documentation does not include the word "plugin" anywhere, while the one for the current version does.

I have installed it, and my Steam version doesn't seem to recognize it (it's not included in the DLLs shown in the About\Info popup you can see hitting by F1). I couldn't find it in the software folders anywhere so I ran a search and found it under:
AppData\Roaming\Articy Software\Articy\3.x\Plugins\Local\Articy.VoiceOverHelper
So, yeah, I guess I will have to use the other solution 😬

EDIT: I tried also manually copying the plugin folder along the other DLLs in my Articy installation folder. Although the DLLs are now appearing in the About\Info window, I can't access any menu related to that plugin or to any plugins in general.

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Thu Sep 28, 2023 11:27 am
by Tony Li
I couldn't remember whether they introduced the Voice Over Plugin in v2 or v3.

In lieu of VoiceOverFile, you can set Entrytag Format to Custom and use "Articy Id" or "Technical Name". Technical Name might be more human-readable. You can also use this for localization, such as:

localizeWithArticyId.png
localizeWithArticyId.png (46.1 KiB) Viewed 1371 times

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Fri Sep 29, 2023 2:28 am
by LostTrainDude
Thank you, Tony!

It should be ok for us to stick with the non-human-readable Articy Id :)
Thanks also for the heads up about the localization aspect of it!

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Fri Sep 29, 2023 8:08 am
by Tony Li
Glad to help!

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Sat Oct 21, 2023 5:10 am
by LostTrainDude
Hi Tony!

Sorry for resurrecting my own post, but we encountered another issue.
We found out that the Dialogue Fragments that have pipes "|" in it all share the same Articy Id.

It makes sort of sense, but at the same time it's kind of a problem because we now have duplicate IDs in the VoiceOver script exported file.
Did you implement a solution already for this or do I have to split them manually back in Articy?

(Also, but this is just a curiosity at this point, do you know if Articy 3 VoiceOverPlugin would have prevented this?)

Thanks a lot!

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Sat Oct 21, 2023 8:46 am
by Tony Li
I'm not sure if the Articy 3 VoiceOverPlugin would have prevented this; I'll need to take a closer look. In the next update (and in a patch as soon as I can make and test it), I can add an option that adds "-1", "-2", etc., to the Articy Ids of fragments that are split by pipes. Would that work for your needs?

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Sat Oct 21, 2023 8:54 am
by LostTrainDude
I *think* that it would! But I suppose only trying it out will tell!

Still, thanks a lot!

Re: Keeping voice over lines entrytags consistent between Articy (v2) imports?

Posted: Mon Oct 30, 2023 9:20 pm
by Tony Li
Hi,

This patch will add "-1", "-2", etc., to the new entries created when splitting on pipes:

DS_ArticySplitPipesPatch_2023-10-30.unitypackage