Page 1 of 1

3rd Party Arcweave - Dialogue entry localization

Posted: Thu Jan 25, 2024 8:23 am
by VironGameDev
Hi. I use the Dialogue System for some time already and I want to move the conversations to Arcweave to work with multiple people on the dialogues. I have a question regarding the localization.

I have a "de" field in the dialogue entry in Unity for the german translation. Until now I set it in Unity which works as expected.
Unity.png
Unity.png (23.86 KiB) Viewed 1297 times
Now I was hoping to set a property in Arcweave with the same identifier and it will be imported for the entry. Sadly this does not work.
Arcweave.png
Arcweave.png (250.53 KiB) Viewed 1297 times
Any idea how to I can transfer a property I set in Arcweave to Unity to do the localization with the Dialogue System? Or any workaround how to get fields I set in Arcweave into the Dialogue Entry?

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Thu Jan 25, 2024 10:36 am
by Tony Li
Hi,

I'll add support for custom fields in dialogue entry elements in the next update.

Alternatively, you can use the Dialogue System's localization. This might be more manageable since you can separate the languages into CSV files that you can send to translators. Use the Guid field to associate lines in the CSV file with elements in your Arcweave project:

localizeArcweave.png
localizeArcweave.png (47.12 KiB) Viewed 1283 times

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Thu Jan 25, 2024 11:18 am
by Tony Li
This patch (which will be in DS version 2.2.43) adds an "Import Dialogue Attributes" checkbox to the Arcweave Import window. You can also specify a database template XML file, which allows you to specify that the "de" field's type is Localization. Create the "de" field in the Dialogue Editor's Templates section > Dialogue Entry Template, set its type to Localization, and save the template as an XML file.

DS_ArcweavePatch_2024-01-25.unitypackage

However, you may still want to consider the other workflow I suggested in my reply above.

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Fri Jan 26, 2024 2:38 am
by VironGameDev
Update: Works like a charm, thanks again!

Hi Tony. Thanks a lot! I will check out your suggested workflow and the patch.

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Fri Jan 26, 2024 7:54 am
by Tony Li
Glad to help!

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Mon Jan 29, 2024 3:07 pm
by VironGameDev
Not sure if it belongs here, but I try to also import the "Conditions" field the same way (declaring it as a string attribute in Arcweave, see picture) to import it into the Dialogue Database.
Arcweave_Condition.png
Arcweave_Condition.png (54.5 KiB) Viewed 1038 times
Sadly it will not show up in Unity. Did I forget something or did I do something wrong? Or is there another way to bring these conditions from Arcweave to Unity? (I assume a workaround could be build by using a lot of variables in Arcweave and check them in Unity, but it feels not right with the great quest system of the Dialogue System).

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Mon Jan 29, 2024 3:53 pm
by Tony Li
Hi,

The Dialogue System's importer strives to work as natively with Arcweave as possible. To set up conditions in Arcweave, use Branches.

You can also conditionally include text using conditional Arcscript statements.

If you use pure Arcscript in conditions and branches, Arcweave won't complain. You can also use Dialogue System-specific functions such as CurrentQuestState(). In these cases, Arcweave will warn you that it's not valid Arcscript, but it will import fine into the Dialogue System.

Arcweave doesn't have a concept of quests, but you can set up quests in Arcweave as described here.

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Tue Jan 30, 2024 5:47 am
by VironGameDev
Thank you again, I managed to implement it! I'm quite impressed how this ties together nicely, it helps me a lot! Thank you for taking the time to read and respond.

I have one more thing I try to implement, maybe you have an idea.

I want to have an actor multiple portraits to show different reaction. I know how to do this just working in Unity, but in Arcweave I can just set one cover image. My assumption is that I need multiple actors in Arcweave with the individual covers and set them depending on what image I want to show in the dialogue entry. Am I correct? If, any idea how to do this with the "Player" actor which should be unique?

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Tue Jan 30, 2024 10:13 am
by Tony Li
I'll ask the Arcweave team if they can add an option for multiple cover images.

In the meantime, what would you think of adding custom fields to the actor component with the names "Portrait 1", "Portrait 2", etc., containing the filenames of the alternate portrait images, like this:

crusader.png
crusader.png (210.29 KiB) Viewed 959 times

The importer can then look for the corresponding files in the Unity project and add them to the actor.

Re: 3rd Party Arcweave - Dialogue entry localization

Posted: Tue Jan 30, 2024 2:39 pm
by VironGameDev
This is an excellent idea, I really like it.

Thank you for putting in the effort and your support!