Announcement

Collapse
No announcement yet.

Blueprint Dialogue System

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by Cinebeast View Post
    Hmm... I'm afraid I'll need a little more direction.

    I implemented BPI_Usable on one of my actors and set the CustomNotificationLocation like so:

    [ATTACH=CONFIG]144328[/ATTACH]

    (I have an arrow several units in front of the actor proper where I want the notification to appear.)

    But this had no effect. I'm probably missing something obvious.
    For example, this is how I figure out where to draw my arrow in my hud class (it doesn't need to be in the hud class - in fact, I don't like it much in there)

    Click image for larger version

Name:	CustomNotification.JPG
Views:	1
Size:	98.3 KB
ID:	1129275

    Comment


      Originally posted by renalard View Post
      I managed to fix this by changing the BPC's Set Input Type function to use 'Set Input Mode Game and UI' for 'Mouse and Keyboard' as well. Movement input is disabled anyway, so there should be no interference. Just in case anybody runs into this problem...
      I did, and this fixed it! Thank you!
      I'm an artist! Check out my work at https://cinebst.wixsite.com/cinebeastart and hit me up!

      You can e-mail me at cinebst@gmail.com.

      Comment


        Any idea if this asset could be linked with Spine animations for portraits? The system would need to spawn a Spine sprite and then play it's animation via scripting commands as seen in your video.

        Spine runtimes provide Blueprint support - here's more information on the topic including the available Blueprints for animation control: http://esotericsoftware.com/spine-ue4
        The spine-ue4 runtime wraps the spine-c structs and functions and exposes them in idiomatic C++ as well as Unreal Engine Blueprints. Additionally, the spine-ue4 runtime imports files exported from the Spine Editor and stores them in custom Unreal Engine asset types."

        Comment


          Originally posted by Bloodwork View Post
          Any idea if this asset could be linked with Spine animations for portraits? The system would need to spawn a Spine sprite and then play it's animation via scripting commands as seen in your video.

          Spine runtimes provide Blueprint support - here's more information on the topic including the available Blueprints for animation control: http://esotericsoftware.com/spine-ue4
          Hi there,

          I've never used spine before, but the portrait is a standard UMG Image widget by default if that helps. If it isn't compatible with Unreal Motion Graphics, and this is definitely a bit of a hack but, you could do something like have a blank cut-out where the portrait would be, and manage the spine animation from dialogue script functions or some other external system.

          Comment


            Thank you for the quick reply. I highly doubt Spine is compatible with UMG since it does bone based 2D animation with meshes, it works similarly to how 3D animation is done so controlling it via script in dialogue sounds like the best possible solution right now. I just bought your asset so I'll dig in and try to figure it out.

            Comment


              Originally posted by Bloodwork View Post
              Thank you for the quick reply. I highly doubt Spine is compatible with UMG since it does bone based 2D animation with meshes, it works similarly to how 3D animation is done so controlling it via script in dialogue sounds like the best possible solution right now. I just bought your asset so I'll dig in and try to figure it out.
              Fingers crossed that it works out better than expected then! Thanks for checking out the asset

              Comment


                Hey, so I was looking around at different dialogue systems, both free and paid, and the main thing I'm looking for is a system that's flexible enough to do what I want to do below:

                - Dialogue mechanics similar to Firewatch where you can bring up a menu at any time when dialogue is available, but also bring up the menu to select available options for people to converse with amongst anyone in range of your character
                - A text box similar to a multiplayer chat box that displays an existing log of previous dialogue lines, possibly including portrait icons.

                Is that viable with the system you've made? I mean, probably, but I want to be certain about that.

                Comment


                  Originally posted by Candescence View Post
                  Hey, so I was looking around at different dialogue systems, both free and paid, and the main thing I'm looking for is a system that's flexible enough to do what I want to do below:

                  - Dialogue mechanics similar to Firewatch where you can bring up a menu at any time when dialogue is available, but also bring up the menu to select available options for people to converse with amongst anyone in range of your character
                  - A text box similar to a multiplayer chat box that displays an existing log of previous dialogue lines, possibly including portrait icons.

                  Is that viable with the system you've made? I mean, probably, but I want to be certain about that.
                  Hi there Candescence,

                  For the Firewatch dialogue, do you mean that full-screen text where it tells a bit of a story, and then gives you a few options for branching paths in the middle of it?
                  If so, then this should be perfectly doable with this system, with a bit of a ui facelift to get the same look of course.

                  For the chatbox, the system doesn't store previous dialogue out of the box, though it could be painlessly captured and stored so you could display it.

                  The system was built with inheritance and customizability in mind, so I don't foresee (m)any snags to get these things working

                  Cheers!

                  Comment


                    No, I don't mean the prologue stuff, I mean the radio conversations occurring throughout the game, where you basically initiate and progress conversations in real-time, without interfering with player input.

                    And I suppose if that's not hard to extend in such a way, well, that's fair enough.
                    Last edited by Candescence; 07-29-2017, 02:53 PM.

                    Comment


                      Originally posted by Candescence View Post
                      No, I don't mean the prologue stuff, I mean the radio conversations occurring throughout the game, where you basically initiate and progress conversations in real-time, without interfering with player input.

                      And I suppose if that's not hard to extend in such a way, well, that's fair enough.
                      Oh I see what you mean. So that again isn't the out of the box behaviour, but it can definitely be adapted to it (you can define your own dialogue functions in BP for the scripting system, so there are many ways to skin this cat. Also, don't skin cats.)

                      Comment


                        Originally posted by Grogger View Post
                        Oh I see what you mean. So that again isn't the out of the box behaviour, but it can definitely be adapted to it (you can define your own dialogue functions in BP for the scripting system, so there are many ways to skin this cat. Also, don't skin cats.)
                        Right, I see. I can see what you mean. I'll have to do some tweaking, then, see what I can come up with.


                        Actually, now that I think about it, what I really want with the text is a text box that can simply 'add' new lines of dialogue to the box (which would be in a scroll bar frame), either via the typewriter style or not, as opposed to each new line of dialogue overwriting the previous one. If that's doable, that'd be terrific.

                        To reiterate what I want to do, I'd like a system where the player can use the dialogue choice menu to select a choice of nearby valid conversation partners, and then be able to call up the dialogue choice menu at any time without limiting the player's character inputs, and when making a choice, that choice is recorded immediately (non-typewriter style) into the 'chat box', before a new line from the conversant is recorded into the 'chat box' as well, providing the player a constant record of their dialogue choices and the responses, as well as being able to keep up with more dynamic scenes with multiple characters talking.

                        But it sounds like it is possible, it's just that I'd need to modify the system a bit to handle that functionality. That being said, the actual BPs involved look awfully daunting, though, I'm still not quite sure what I should be looking into to get the functionality I need xD

                        Edit: Okay, so I think the real meat of what I want to change is in the UI widget blueprint. Preventing a clear line should be simple enough, I guess, but should I just put the [br] tag at the beginning/end of each dialogue line or is there any way I could tell the dialogue UI that it should be doing that automatically? Also, would be nice to be able to insert the speaker name and portrait into the text itself, but that's something that I can do in the text itself, I guess rather than trying to program it in.
                        Last edited by Candescence; 07-30-2017, 12:33 AM.

                        Comment


                          Yeah, I'm really not making any progress on that front, unfortunately. The way the text is handled is so complicated that while I can stop the text from being cleared, I can't get it to go to a new line after the previous bunch of text, and I can't even figure out how where I would even look to do that. And, to boot, I can't even display responses for some reason. I feel like I'm breaking things more than I'm fixing them at this point.

                          Though, in general, it would be really cool if the text/scripting system in this could be used for pretty much any input text, dialogue or otherwise, because the text system by itself is really cool.

                          Comment


                            Originally posted by Candescence View Post
                            Yeah, I'm really not making any progress on that front, unfortunately. The way the text is handled is so complicated that while I can stop the text from being cleared, I can't get it to go to a new line after the previous bunch of text, and I can't even figure out how where I would even look to do that. And, to boot, I can't even display responses for some reason. I feel like I'm breaking things more than I'm fixing them at this point.

                            Though, in general, it would be really cool if the text/scripting system in this could be used for pretty much any input text, dialogue or otherwise, because the text system by itself is really cool.
                            Hi Candescence, sorry I missed your last reply (I didn't receive email notification for it).

                            To keep the dialogue in the same list, the system would maybe need to change quite a bit. When a branch is processed, a new UI is generated and populated to display the new dialogue.
                            I can think of a potential work-around for this using multiple dialogue widgets and a widget to host all of them in a scroll box. I believe this could be made to work without changing the dialogue UI too much (responses would need to be optionally stripped away).

                            eg. instead of opening a dialogue, a "host" widget would be displayed. It would read the history of dialogue and create those widgets as nested dialogue widgets (with responses removed) in a scroll box, and the new dialogue would then be displayed somewhere, maybe at the bottom of that scroll box.

                            It sounds like a fair bit of work, but I think it would work (disclaimer: this is off the top of my head, I could be completely wrong and trying it may or may not create new and dangerous life-forms.)

                            Comment


                              Hey there! I am really excited about this plugin but I am using the top down template and I cannot get this to work. I looked through the documents and watched the videos but still cannot seem to get it to work. Even loading the sample map does not work so I am wondering if it is a setting in the template... Also I noticed a handful of depreciated BP nodes causing them to compile with warnings and give me BP not compiled errors when I try to play (PIE).

                              Any insight would be great! Thank you.
                              Mike "Z"
                              UI / Game Designer
                              LinkedIn

                              Comment


                                Originally posted by mikezteh69 View Post
                                Hey there! I am really excited about this plugin but I am using the top down template and I cannot get this to work. I looked through the documents and watched the videos but still cannot seem to get it to work. Even loading the sample map does not work so I am wondering if it is a setting in the template... Also I noticed a handful of depreciated BP nodes causing them to compile with warnings and give me BP not compiled errors when I try to play (PIE).

                                Any insight would be great! Thank you.
                                Hi mikezteh,

                                You should be able to safely ignore the depricated nodes, they haven't caused any problems so far (at least up until 4.18). With the sample project, there is no configuring to do - the standalone sample project should just work out of the box.

                                Can you create a new project from the launcher to see if it still has the issue?
                                EDIT: Which editor version are you working in by the way? I've just tried a new project with 4.18.1 from the launcher without any problems.

                                Last edited by Grogger; 11-21-2017, 02:19 PM.

                                Comment

                                Working...
                                X