Forum rules - please read before posting.

Dialogue & Subtitles in one UI/Last Line staying on Screen

edited February 2023 in Technical Q&A

I've been trying to recreate this kind of Subtitle/Conversation UI, which let's the last line of the Subtitle stay on Screen, shows the options and updates the Lines accordingly.

I've been able to use this one from an older thread and i'm disabling with the stop dialogue function, so far so good.
https://www.adventurecreator.org/forum/discussion/9922/last-subtitle-remain-on-screen-during-dialogue-choices

But i'm aiming for exactly something like this:
https://streamable.com/e3ooa3

I've tried the suggestion to use it in one menu.

I get that the Subtitles Menu has to enabled in the GetSpeech Function and killed on the OnDisable void
I've tried hooking up in to these Events, but for the life of me couldn't figure it out correctly. Is there an easier way?

EventManager.OnStartSpeech += GetSpeech;
EventManager.OnStartConversation += OnStartConversation;

Maybe this could also be a consideration for future Updates, i don't know how hard that would be to get in, but this style of Conversation would be great to have.

Comments

  • You should be able to use the [hold] speech text token for this, inserted at the start of your speech text.

    When detected, AC will continue on from that point in the ActionList, while keeping the speech line alive until you use the Dialogue: Stop speech Action.

    For more details on available tokens, see the Manual's "Text tokens" chapter.

  • edited February 2023

    Yes, i had already taken that from the older thread, and that works.
    I'm having a problem with the menus/using it as one menu, because they get called in different instances:
    Subtitle: "when speech plays"
    Conversation: "During Conversation"

    I couldn't get the suggestion to set "both anchor points to min/max = 0.5, 0.5" from the old Thread working and even then, how would they be called and stay on the same time?

    I'm just looking for the easiest way to keep the last Subtitle Line on screen, when Conversation is active aswell.

  • Your "Appear type" values should be OK as they are - the [hold] tag will keep the speech alive (which will also keep the Subtitles menu on), allowing the Conversation to start.

    A tutorial on this can be found here. Or am I misunderstanding your intent?

  • edited March 2023

    Thanks, i got it mostly working.
    One problem though, if i'm at a Subtitle node of a conversation it vanishes immediately after playing, even with a [hold] tag.
    I also have the Speech -> Subtitles option "Display subtitles forever, until the user skips it?" enabled.

    What would be the best way to keep it there, but also ensure, that it gets deleted before the next Subtitle?

  • The [hold] tag causes the next Action to run immediately - so the effect you're getting is technically correct.

    You only need to use this tag before displaying Conversation options. The Dialogue: Stop speech Action can then be run as the first Action for each option's response, before any other speech lines.

    Outside of this scenario, the tag should not be necessary since Display subtitles forever until user skips it? will cause it to remain on-screen.

  • Ah thank you, that works great.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.