Forum rules - please read before posting.

Displaying text messages on screen

I would like to be able to show a text message on screen. For example to tell a player who tries to take an object that he isn't strong enough. I know there's an action list comment, but that displays the text in the console and I want it to show in the player's window. Can this be done?

Comments

  • edited December 2016
    I was in the same boat a few months ago. Have you tried using the dialogue actions? I'm pretty sure if you don't specify the speaker you'll just get a general message, like narration. It will use your regular subtitles menu though. I guess if you want a more alert-ish menu (like the type that just flashes at the top of the screen for a bit), you could try to make several menus set to display dialogue, but keep all but one locked, that way you could do the menu switcheroo before calling the dialogue action. Else you could do a custom action. I wanted a bit more so I ended up writing my own custom action just for alerts text and prompt menus, but they depend too heavily on other features for that specific project of mine(in backlog now...) so I can't really post it (just wouldn't even work stand alone)... anyway, they point is, if you feel like it you could make a custom action for it too, though that depends on what you want to achieve.
  • Thanks for the info Alverik. I'm a bit surprised that there isn't a built in message option in AC as it's pretty standard in adventure games to give information to the player through on screen messages. I've looked at Dialogue System in the Asset Store but it's a bit expensive so I guess I'll just keep trying
  • Not sure what you want Mike, but to give info to the player, you would just use a dialog just like how you make people speak, except don't specify a speaker. It's built into AC, you don't need anything else from the asset store.

    Am I misunderstanding what you mean?
  • Thanks hightreason that seems to fit the bill. As an example, when a player clicks on a hotspot of a chest, I want to be able to show a message 'The chest is locked'. Your suggestion should do that. Thank you
  • Also, keep in mind that you can make text being "said" can be shown in a different way, then the dialog text of your characters!
    Quite a handy feature, though I don't remember the specifics anymore.
  • Indeed: as the Dialogue: Play speech Action UI states, playing a speech line without an associated character will cause it to be considered a narration line.

    For control over how narration is displayed differently to character subtitles, you can create a new Subtitles Menu that has an Appear type set to When Speech Plays, and For speakers of type to Narration Only.  You can then style this menu to your liking.  Bear in mind you will also have to limit your other Subtitles Menu to only show speech for characters, so that narration text doesn't appear in both.
  • Thank you all for your help. I'm using Dialogue:Play Speech which gives the message I want. I'm going to try Chris's other suggestions to change the menu style

  • Hi, I am working for a alike funcionality, a notification menu.
    This is the objective:
    When the player finish to talk with a especific character. A notification appear with the info of a new mision. This notofication desappear automaticaly in “x” time, and you can move the player while is showed.  
    My problem:
    This menu appear with speech play and narration. I don,t know how controll the time the notification is displayed. The accion is Dialogue, Play Speech with "play in background" check. The notification appear and dissapear to soon. Where can i set a specific time, 4 seconds for example.
  • Speech is not the only way to show text on-screen - you can also make use of variable tokens and parameters - see Sections 10.4 and 5.13 of the Manual respectively.

    Go to your Variables Manager and create a new Global String variable - this will store your notification text.  Note the Variable token property beneath it - it'll take the form of [Var:X], where X is the variable's ID number.  This token can be inserted into a label element's text box, and will be replaced with the variable's value.

    Create a new Menu to display your notifications in, and set it's Appear type to Manual.  Give it a Label element, and insert this token into the Label's text field.  You can even use regular text around it, e.g.:

    "New notification: [var:X]"

    A dedicated tutorial on displaying tokens in Menus can be found here.

    Next, you'll want an ActionList that sets this Variable's value (Variable: Set), turns on the Menu (Menu: Change state), waits for 4 seconds (Engine: Wait) and turns off the Menu again (another Menu: Change state).

    Then set this ActionList's When running field to Run In Background, so that the wait does not interrupt gameplay.

    You can then see about integrating parameters into it, so that you can recycle this ActionList whenever you want to show a notification - and simply change the variable's value each time.  This tutorial explains how they work.

    Essentially, you'll want to create a new String parameter and use it to override the value in your Variable: Set Action.  You can then set this parameter value (and hence the global variable value) each time you run this ActionList using the ActionList: Run Action.
  • I understand that the way you
    propose is a better option. I tried your way and all work fine.

    I describe my process to complete some
    steps that gave me some diffilculties. I am a game artist without
    knowledge of code and some
    “technical words”. Even with this problems AC and the forum make it
    so easy.

    In the variable manager

    • The variable type: String
    • Initial value is not displayed if all
      work fine.

    In the manager menu, in the menu
    created, in text element

    • label type: Global Variable.
    • Global Variable: “the name of the
      variable created”

    Then i show the menu with (Variable:
    Set), turns on the Menu (Menu: Change state),(Engine: Wait) and turns
    off the Menu again (another Menu: Change state). Just the way you
    subjects.

    At this point, appear some
    difficulties. All the actions are in the same actions list, i have
    some Dialoge: Playspeech. If i check “Select run in background”
    the result is that my player can move when the speech of the
    characters are showed.

    So i created two ActionList. One with
    the variable and menu, and “Select run in background”. And other
    without "Select Run in Background" and the dialogue. The
    last accion is (AccionList: Run) to the first ActionList.

    Maybe this is obvious but sure is
    useful to a other beginner like me. Thanks

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.