Page 1 of 2

About the extra level look-ahead

Posted: Tue Dec 03, 2024 9:45 am
by _marc
Hi Tony,

Hope you're fine!

In a previous post (https://www.pixelcrushers.com/phpbb/vie ... 4&start=10), you mentioned:
I'm also looking into providing a checkbox to disable the extra level look-ahead on Conditions. The catch is that it won't work with some continue button modes that need to know what's ahead two levels. But if that's not an issue, then it makes for a clean solution since evaluation will happen exactly like it's written in articy.
I have some questions about that... To remind you of the context, I write my dialogues in articy, using the "Linear mode" of the Dialogue System, and importing all conditions and instructions as groups. It works quite well, but there is still this simple case that makes me mess up from time to time:
articy_script.png
articy_script.png (49.57 KiB) Viewed 4197 times
The instruction of the third node is executed between the 2 dialogue nodes, because of the extra level look-ahead thing.

My question is, would it be possible to easily disable this feature (making the look-ahead just after the OnConversationLine message of the 2nd dialogue node, by example)? What would be the consequences on the continue buttons, then?

My use of Continue buttons is limited to calling manually their function OnContinue(). The setting Continue Button in the Dialogue System Controller is set to "Never", and I don't use them in the UI.

Re: About the extra level look-ahead

Posted: Tue Dec 03, 2024 11:38 am
by Tony Li
Hi Marc,

The checkbox is on the Dialogue Manager in the Other Settings section. If you tick Reevaluate Links After Subtitle, you will no longer need to worry about the extra level look-ahead. I think that should take care of the instruction concern.

Re: About the extra level look-ahead

Posted: Tue Dec 03, 2024 12:19 pm
by _marc
Even with the Reevaluate option ticked, if I Iook at the Dialogue System debug info, it looks like the 3rd group node (and its instruction) is still evaluated before the 2nd dialogue node is spoken.

Re: About the extra level look-ahead

Posted: Tue Dec 03, 2024 11:47 pm
by Tony Li
I'll try to reproduce this and get back to you.

Re: About the extra level look-ahead

Posted: Mon Jan 13, 2025 3:41 am
by _marc
Hi Tony,

Any news about this? Does it also happen on your side...?

Have a good week!

Re: About the extra level look-ahead

Posted: Mon Jan 13, 2025 10:19 am
by Tony Li
Oh darn, I'm sorry I didn't reply here. I'll look up the state of this and get back to you.

Re: About the extra level look-ahead

Posted: Tue Jan 14, 2025 9:18 pm
by Tony Li
I've been trying to reproduce the issue, but I haven't reproduced it yet. This is my current setup:

In articy:
linear1.png
linear1.png (49.56 KiB) Viewed 3460 times

My import settings:
linear2.png
linear2.png (85.66 KiB) Viewed 3460 times

The resulting conversation in the dialogue database:
linear3.png
linear3.png (45.21 KiB) Viewed 3460 times

And the Dialogue Manager configuration:
linear4.png
linear4.png (88.4 KiB) Viewed 3460 times

When the conversation runs, it shows the subtitle "Drive explorer". Then it shows the subtitle "Hardware ready". Then it shows the alert message "THIS IS AN ALERT".

Is there something different in your configuration that would make the difference?

Re: About the extra level look-ahead

Posted: Wed Jan 15, 2025 3:57 am
by _marc
Hi Tony!

Thank you for the feedback. I agree that the Alert message is shown after the 2 dialogue lines by the UI, that is ok. But strangely the debug messages seem to confirm that the lua script is executed before the 2nd line is spoken and before its delay:
ScriptOrder1.png
ScriptOrder1.png (63.08 KiB) Viewed 3458 times
Is it the same for you?
On import, I also use the "Instructions as groups" (yours are regular entries), but the result is the same in both configurations.

Re: About the extra level look-ahead

Posted: Wed Jan 15, 2025 8:49 am
by Tony Li
The conversation will evaluate child group nodes' Conditions and run Scripts when doing the look-ahead. So this would make sense for group nodes. I'll check non-group nodes.

Re: About the extra level look-ahead

Posted: Wed Jan 15, 2025 2:41 pm
by _marc
I believe the alert is only shown at the end because alerts are not allowed during conversations... If I allow it, the alert is shown just before the 2nd dialogue line.
Do you have any idea about a way to avoid this kind of situation, without having to add extra regular nodes before all scripts?
Maybe the look-ahead thing should only take care of conditions, and execute scripts only if a path is selected? I would find it more logical if the script was executed after the delay specified in the previous node.