Search Unity

[RELEASED] Dialogue System for Unity - easy conversations, quests, and more!

Discussion in 'Assets and Asset Store' started by TonyLi, Oct 12, 2013.

  1. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @jburfield - What version of the Dialogue System are you using? If it's an old version, like 1.4.4 or earlier, there was a timing issue where the previous AudioWait() would clean up after itself by stopping the AudioSource on the same frame that the next AudioWait() tried to start.

    I tested out what you described in an example scene. You might compare it with yours to see if any differences are causing the issue:
    Please also feel free to send an example project to tony (at) pixelcrushers.com. I'll be happy to take a look tomorrow. (My workday is just about over today I'm afraid.)

    Set the dialogue UI's GUIRoot.visible = false:
    Code (csharp):
    1. using PixelCrushers.DialogueSystem.UnityGUI;
    2. DialogueManager.DisplaySettings.dialogueUI.GetComponent<GUIRoot>().visible = false;
     
  2. jburfield

    jburfield

    Joined:
    Aug 19, 2015
    Posts:
    8
    I have version 1.5.4. I've looked at your example scene and I tried setting mine up like it, but no luck. I then tried redownloading the dialogue system and replacing my dialogue system folder and no luck again. But when I restarted Unity, it worked again. Not sure which step fixed it, but maybe one of them required a restart to work? I'm thinking maybe something got deleted or corrupted by accident? Currently it seems to be working.

    I tried this, and it just gives me a null reference exception, constantly. I have this code in the update method, along with my other "pause menu" code.
     
  3. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Doh, sorry, typo! Try this:
    Code (csharp):
    1. DialogueManager.DisplaySettings.dialogueUI.GetComponentInChildren<GUIRoot>().visible = false;
    (Use GetComponentInChildren, not GetComponent.)

    If it's just used when paused, I suppose it's okay to put it in Update. You generally don't want to use GameObject.Find or MonoBehaviour.GetComponent* in update methods, though, since they're relatively slow. It would be better to set visible=false once, when you pause the game. Then set visible=true when you resume playing.
     
  4. jburfield

    jburfield

    Joined:
    Aug 19, 2015
    Posts:
    8
    That works!

    But, my first problem is back again, same situation. It looks like it worked fine until I received the error: Unhandled Exception: System.UnauthorizedAccessException: Access to the path "[PATH_TO_PROJECT]\Temp\Assembly-CSharp.dll.mdb" is denied.

    I looked up some stuff on the issue, and it seems like it might be my antivirus not liking the Unity Temp folder or its dlls? Not sure. Only thing I have close to an antivirus is Windows Defender.
     
  5. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    I'm sorry, I don't have any suggestions except to try the same project on a different computer. I'll be happy to take a look at it if you want to send it to tony (at) pixelcrushers.com.
     
  6. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Five Minute Ultra-Quick Start Guide Available

    For those new to the Dialogue System, there's now a Five Minute Ultra-Quick Start Guide. It's a gentle introduction to the basic workflow of the Dialogue System. The guide will also be available in the next release's Dialogue System folder.
     
    Dreamaster and BackwoodsGaming like this.
  7. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    I really like the directness of your Ultra-Quick Start Guide! :)

    I'm sure many new users will appreciate it.

    I don't know if anyone else has a use-case like mine (I always seem to be the weirdo), but what I first needed to do in Dialogue System was create quests (I have no dialogue associated with the quest giving). After I get my quests settled and am just applying window dressing, I am likely to use Dialogue System to set up narrative captions and character barks. Lastly, when everything is firmly in place, I intend to use it for cutscene type situations in which there may be dialogue with options.
     
  8. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Thanks! I'm going to work on a similar quick start for quests, for people like me who prefer to read at my own pace rather than follow video tutorials. (There's a quests video tutorial for those who prefer videos.)
     
    BackwoodsGaming likes this.
  9. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Speaking of quests... Any updates on the status of Quest Machine's development?
     
  10. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    It's coming along! My goal is to have it in beta before heading out to Unite, and then release 1.0 a couple weeks thereafter.
     
    BackwoodsGaming likes this.
  11. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Updated PlayMaker Support Package Available

    The Dialogue System Extras page has an updated support package for PlayMaker that initializes the Set Variable and Set Lua Field actions’ values to None by default so you don’t have to manually set unused values yourself. You can also download the package here:
     
  12. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Dialogue System for Unity 1.5.5 On Asset Store

    Version 1.5.5 is now available on the Asset Store! To recap what's in this version:

    This release introduces support for RT-Voice, which uses your system's text-to-speech capability to generate audio. The Dialogue System, RT-Voice, and SALSA make it very easy to let your characters talk out loud with lipsync. If you plan to use voice actors, this is a great way to prototype your game before you've recorded them.


    Version 1.5.5
    Core
    • Added: entrytaglocal sequencer keyword (localized entrytag).
    • Added: OnBarkLine script message.
    • Improved: Added DialogueManager.LoadAsset(name,type) overload to specify type.
    • Changed: MoveTo() sequencer command now uses Rigidbody.MovePosition/Rotation if subject has rigidbody.
    • Changed: Dialogue System debugging (set via Dialogue Manager > Debug Level) now only logs in debug builds (Debug.isDebugBuild).
    • Fixed: Instantiated dialogue UI prefabs now set parent with Transform.SetParent(parent,false) to retain local transform settings.
    • Fixed: ProximitySelector now prevents click passthrough from previous conversation to trigger.
    • Fixed: VerificationError warning when playing hide animations on Unity UI dialogue UIs in webplayer builds.
    • Unity UI: Added Always Visible checkbox to subtitle panels; improved typewriter effect (can use any text alignment, can pause & unpause).
    Third Party Support
    • Action-RPG Starter Kit: Added Persistent Player Spawner component; improved DSTeleporter component with more options; added ARPGLoadLevel() sequencer command.
    • RT-Voice: Added support.
    • SALSA with RandomEyes: Fixed timing issue when two sequential lines play on same SALSA character.
    • S-Inventory: Updated for S-Inventory 1.27; can now transparently load from Resources or asset bundles; added Realistic FPS Prefab 2 Cameras example.
     
  13. rhubarbzeta

    rhubarbzeta

    Joined:
    Apr 1, 2013
    Posts:
    3
    Hello! I just purchased the Dialogue System asset a couple days ago, and I've been having trouble getting up and running.

    It seems pretty complicated, but I attempted to just dive in by using the Five Minute Quick Start Guide. Unfortunately, despite the simplicity of the instructions, it is not working for me.
    I first attempted to implement the guide in an existing scene of my game. (It's a 2D game with no camera movement.) Upon launching the game, Dialogue system will flash the first message of the conversation on the screen and then disappear. It's literally there for a handful of frames. Additionally, the default behavior is apparently to move the camera (which seems like an odd choice).

    So after wrestling with the documentation and looking through the examples, I changed the camera settings default sequence to "None()". This seemed to fix my camera movement problem. It was pulled from an example though, and I don't really know if it is a correct solution, or what the other commands/syntax is for this setting.

    Unfortunately, my text is still flashing on the screen and then disappearing. I thought perhaps some existing elements in my scene were conflicting with the Dialogue System, so I created a new blank scene, re-did the quick start tutorial, and had the same flashing problem.

    Can I get some help here?
     
  14. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @rhubarbzeta - Thanks for purchasing the Dialogue System! Let's see if we can get it working for you quickly. You're correct that the default behavior is to move the camera. A while ago, I proposed changing the default to simply delay with no camera movement, but many longtime users lobbied to keep it. You did the right thing by setting the Default Sequence to "None()". Alternatively, you could set it to "Delay({{end}})" to cause each line to stay onscreen for a while before moving to the next stage. You can also use the Dialogue Manager Setup Wizard (Windows > Dialogue System > Wizards > Dialogue Manager) to step through the Default Sequence choices and other options interactively.

    To help address the disappearing text, what OS and versions of Unity and the Dialogue System are you using? (Window > Dialogue System > Help > About to get the Dialogue System version.) Does the issue occur while playing in the editor or in a build? (If a build, what platform?) Did you change anything else on the Dialogue Manager, such as assigning a different dialogue UI? (If so, which UI?) Do the example scenes in Dialogue System/Examples/Unity UI Examples work?

    Please also feel free to send an example project or scene to tony (at) pixelcrushers.com. I'll be happy to take a look.
     
  15. rhubarbzeta

    rhubarbzeta

    Joined:
    Apr 1, 2013
    Posts:
    3
    I'm using Dialogue System 1.5.4 on Windows 10.
    I had only tested from in the editor before, but running it as a Windows executable seems to exhibit the same problem. I haven't changed any of the other settings that aren't mentioned in the five minute tutorial (with the exception of the sequencer change in my game scene. In my other non-game scene test, I did not change the sequencer value.)

    I have not run all of the examples, but for the ones that I have seem to work with the exception of one. I unpacked the Text Mesh Pro examples, and they do not seem to work properly. I don't see text on the dialog boxes when I run the demo. I do have Text Mesh Pro imported into this project.

    Another odd behavior that I am now noticing: I created an entirely new project to recreate the issue in and send to you, however in that project the tutorial steps create the desired effect. I'm not sure what this means. I've completely deleted my dialogue database and re-built it twice now to make sure that I didn't miss any steps, but it still does not work in my original project. Additionally, the example scenes DO still work, even when loaded in the project where I can't seem to create a working dialog box.

    Not sure if this is useful information, but I have Text Mesh Pro imported and am using MoonSharp to load Lua files containing my level data. I don't know if either of these could somehow interfere with (just my) scenes in this project.
     
  16. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    What version of Unity are you using?

    I'll put together a test project with the Dialogue System 1.5.4 and the latest versions of MoonSharp and TextMesh Pro, and then I'll report back here with any findings.

    In the meantime, here are a few notes:
    • The latest version of the Dialogue System is 1.5.5. Please update to the latest and check if the problem still occurs.

    • The Dialogue System comes with a Lua implementation. (Two, actually. You can choose to build with LuaInterpreter or NLua, or import the source and integrate it with another Lua implementation such as MoonSharp.). You may want to consolidate and use only one Lua implementation. None of them are particularly big, however, so it's fine if you just want to keep things the way they are.
     
  17. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    @rhubarbzeta - Please update to the latest version of the Dialogue System (1.5.5). It should fix the issue. I was able to reproduce the issue in 1.5.4, but it's fixed in 1.5.5. (The quick start was written for 1.5.5.) If 1.5.5 doesn't fix it, please let me know. I PM'ed you private upload information if you'd like to send a project.

    BTW, LuaInterpreter and MoonSharp get along just fine together. MoonSharp is only 325 KB, and LuaInterpreter is only 89 KB. Even for mobile games, having both of them in your project is fine since they're fairly tiny. I'd only consolidate if you're bored and have lots of spare time and patience. Myself, I'd rather get to actual game-making. :)
     
  18. geraldsmallbear

    geraldsmallbear

    Joined:
    Jul 30, 2015
    Posts:
    19
    Hi Tony I'm having problems triggering my first conversation.

    It's supposed to trigger when player enters npc trigger. Interestingly when I set Dialogue System to use the trigger I lost all control over it - the component panel on the npc for the trigger disappeared.

    Gameplay: after a 10 sec delay, npc walks down path to beach - player should be able to interact with him there for 10 sec before he returns but nothing happens. Controls are WASD, Space. Middle mouse will throw and exception and T should crouch but it's faulty too - avoid these.
     
    Last edited: Sep 5, 2015
  19. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    @geraldsmallbear - I downloaded the project. Please click 'edit' at the bottom of your post and delete the link.


    -----
    Action-RPG Starter Kit Support - Updated Package Available

    An updated support package for Action-RPG Starter Kit is available on the Dialogue System Extras page. It fixes a synchronization issue with equipment when switching levels or loading games.
     
  20. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    @geraldsmallbear - Thanks! What version of Unity are you using? Which scene contains the problem? game-scene1-2? If so, it looks like the character (Pants_King) doesn't have any Dialogue System components on it. I'm not sure the project I received is complete. It had compiler errors when I loaded it in Unity 5.1.1.

    For an example of setting up an NPC trigger, look at Private Hart in the Feature Demo scene. He has a child GameObject named "AI". This child GameObject has a Sphere Collider whose Is Trigger checkbox is ticked. The physics layers are set so it registers collisions when the player enters it. It also has a Conversation Trigger component set to "OnTriggerEnter".

    You don't have to use a child GameObject. You can put the Sphere Collider (with Is Trigger checked) and the Conversation Trigger on your main NPC GameObject. This is simpler than creating a child GameObject.

    Also, please try updating to the latest version of the Dialogue System (1.5.5). It contains bug fixes and additional inspector tooltips that may be helpful.

    I'm finishing up work for the day. I'll check back on this first thing in the morning.
     
    geraldsmallbear likes this.
  21. geraldsmallbear

    geraldsmallbear

    Joined:
    Jul 30, 2015
    Posts:
    19
    I just dragged the project to my gdrive, so I don't know if it needs to be packaged up properly or not (I'm new and learning as I go).

    Some of the components do have non-critical errors/bugs that don't seem to affect performance.

    The scene to check is Scenes>game-scene 1-3. Using Unity 5.1.2, Windows 7.

    Been having these errors with the demo:

    https://drive.google.com/file/d/0B0MWE8QALlw7TFJkVC1ET2E2M3c/view?usp=sharing

    I will have a closer look at the demo and try to replicate what you've done. Thanks for the reply.
     
    Last edited: Sep 5, 2015
  22. rhubarbzeta

    rhubarbzeta

    Joined:
    Apr 1, 2013
    Posts:
    3
    @TonyLi - Yeah, I got around to updating Dialogue System this morning and it did fix the issue. Thanks for taking a look, I appreciate it.
     
  23. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @geraldsmallbear - There's no game-scene 1-3 in the project you sent me. If you'd like to send it again (using the private upload link I PM'ed you), please exit Unity and zip up the Assets and ProjectSettings folders. Then upload the zipfile.

    Before you do that, please do these steps:
    1. Delete the Dialogue System folder from your project.
    2. Select menu item Edit > Project Settings > Editor.
    3. In Inspector view, under the heading Asset Serialization, change Mode to Mixed.
    4. Open the Asset Store window and import the latest version of the Dialogue System.
    5. Optional: Change Asset Serialization back to Force Text.
    It looks like the Dialogue System didn't import correctly. The steps above should fix that. After doing those steps, you can import this scene to refer to as an example. The scene is in Assets/Trigger Test.

    Hi @rhubarbzeta - Great! I'm glad that fixed it.
     
  24. geraldsmallbear

    geraldsmallbear

    Joined:
    Jul 30, 2015
    Posts:
    19
    Thanks for that, I went and re-imported Dialogue System to a clean project and it's working fine now. So you were spot-on with the idea about not importing properly. Instead of re-uploading the project, I'll just keep tinkering with the tutorials and see how I go. Thanks for the help.
     
  25. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @geraldsmallbear - Sounds good! Don't hesitate to post or email me directly at tony (at) pixelcrushers.com if you have any questions.
     
  26. ScottSummers

    ScottSummers

    Joined:
    Jul 12, 2015
    Posts:
    27
    TonyLi, thanks for the great kit!

    I'd like the NPC dialogue to not disappear when the player's options appear. Could you give me a pointer on how to do that?
     
  27. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @ScottSummers - On your dialogue UI, assign the same UI elements to Dialogue > Response Menu > Subtitle Reminder. When the NPC is saying its line, the NPC Subtitle is visible. When the player's options appear, the Subtitle Reminder is visible. If you use a typewriter effect, duplicate your Subtitle Line element. Remove the the typewriter effect from the duplicate copy, and assign it to the Subtitle Reminder > Subtitle Line field. This way the typewriter effect will play when the NPC says its line, but it won't play when showing the reminder during the player options.
     
  28. ScottSummers

    ScottSummers

    Joined:
    Jul 12, 2015
    Posts:
    27
    1. Can you give more detail on how to assign the same UI elements to them? Do you mean in UnityUIResponseMenuControls.cs?

    2. Also, the typewriter speed doesn't seem to go faster if its set to 99 characters per second instead of 30 characters per second. (But changing it to 1 character per second does go slower.) Is there any way to make it go faster?

    Thanks.
     
  29. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @ScottSummers - No need to touch any code. Just assign them in the UnityUIDialogueUI inspector. Here's an example screenshot from Examples/Unity UI Examples/SF Example Scene:



    In this scene, I:
    1. Duplicated the entire NPC Panel and named the duplicate NPC Reminder Panel.
    2. Removed the Typewriter Effect from NPC Reminder Panel/NPC Subtitle Line.
    3. Assigned all of the NPC Panel elements to Dialogue > Npc Subtitle.
    4. Assigned all of the NPC Reminder Panel elements to Dialogue > Response Menu > Subtitle Reminder.

    The Dialogue System's built-in typewriter effects run in a coroutine that uses WaitForSeconds between each character. The shortest time WaitForSeconds can wait is one frame update, which is typically 60 FPS. So the effect will be capped at 60 characters per second. If you need it to go faster, you could replace the effect with your own script that works differently. As long as it starts the effect in OnEnable, it'll work with the Dialogue System. I'll also add this to the roadmap. No one's asked for a faster effect, so I hadn't thought to change the way it works.
     
  30. ScottSummers

    ScottSummers

    Joined:
    Jul 12, 2015
    Posts:
    27
    1. That would be great to add the faster typewriter effect to the roadmap. For my uses, it's significantly too slow.

    2. Is there a special way to get the typewriter's audio clip to play? I tried to do so this way: In the NPC Subtitle Line inspector, I added my .wav in the box labeled Audio Clip (under Unity UI Typewriter Effect). I don't hear an audio clip in the online sci-fi demo either.

    Thanks.
     
  31. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi - Will do. I'll put out a patch beforehand when it's ready.

    Add an AudioSource to the NPC Subtitle Line. You'll probably want to slide Audio Pan all the way to the left to make it a 2D sound. Make sure to use an audio clip that's no longer than the duration of each character. Otherwise the character sounds will run into each other. For example, if you're playing 60 characters per second, your audio clip should be 1/60th of a second long.
     
  32. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
  33. ScottSummers

    ScottSummers

    Joined:
    Jul 12, 2015
    Posts:
    27
    @TonyLi
    1. The faster typewriter looks great, thanks!

    2. Hover & click sounds: I've noticed the default UI is the only one that has hover and click sounds. But that UI doesn't have the visual flair of the other UIs, and seems to be more complicated to modify, apparently getting its features from GUIButton.cs (accessible via unpacking). Do you have any suggestions for getting hover & click sounds to work for the other UIs?
     
  34. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @ScottSummers - With Unity UI, you can use Unity's event system, and you don't have to write a single line of code:


    Here are the steps:
    1. Add an Audio Source to a GameObject. In the example above, I added it to the main dialogue UI.
    2. Add another OnClick handler. Assign the Audio Source, and select the Play or PlayOneShot method. If you use PlayOneShot, you can specify an audio clip. If you use Play, you need to set up the Audio Source with the clip ahead of time. This sound will play when you click on the button.
    3. Add an Event Trigger, and add a Pointer Enter event to it. Assign an Audio Source and the Play or PlayOneShot method. This sound will play when you hover over the button.
     
  35. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Updated Action-RPG Starter Kit Support Package Available

    A 2015-09-09 support package for ARPG is available on the Dialogue System Extras page. This update:
    • Addresses an issue syncing experience points when using DSTeleporter, and
    • Adds a SetCursorOnStart component that's useful when using the DSSaveLoad menu's "Quit to Title" option. (Quitting to the title scene leaves the cursor invisible, but you may want it visible in the title scene.)
     
  36. KingLlama

    KingLlama

    Joined:
    Jul 18, 2015
    Posts:
    199
    Does this work UFPS?
     
  37. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @KingLlama - Yes, several games have been published with the Dialogue System and UFPS, such as Shadows Peak and the Dead Bunker series.

    The Dialogue System also includes a UFPS Support integration package that ties UFPS into the Dialogue System's save system, quest system, etc.
     
    KingLlama likes this.
  38. ScottSummers

    ScottSummers

    Joined:
    Jul 12, 2015
    Posts:
    27
    Is there any way to make UI objects in a canvas bark?

    Thanks for your earlier help, TonyLi. I'm considering buying your other assets as well!
     
  39. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Thanks!

    I'm not sure exactly what you mean by making UI objects bark, but you can use a BarkDialogueUI to play conversation lines through the participants' bark UIs. BarkDialogueUI bypasses the response menu, instead choosing the first valid response. A Unity UI-specific version on the Dialogue System Extras page (about 6 buttons down under "EXTRAS") uses the response menu like all the regular dialogue UIs.

    If you only want to use barks for a specific character's conversation, you can add an Override Dialogue UI or Override Display Settings component to the character.

    ---
    On the other hand, you might mean the characters are UI objects themselves. If so, you can still add bark UIs and bark triggers to them.
     
  40. cyangamer

    cyangamer

    Joined:
    Feb 17, 2010
    Posts:
    234
    Hi,

    Most of everything is great but I did encounter one issue involving integration with another asset.

    1) I'm not sure you have Motion Controller or not, but I'm noticing that the Animation On Conversation doesn't work when using it while disabling Motion Controller.
    upload_2015-9-12_20-28-21.png

    Example: if my character is running past an NPC and hits the Interact key, the player will freeze but the running animation will still be playing.

    I don't think there's much that can be done as I'm not sure how much integration you've done with MC, but that I thought I'd bring it up anyway.

    2) I'm also using plyGame with Dialogue System's blocks. Whenever I use the On Conversation End event, This event is fired three times when I start a conversation.
    Capture02.JPG Capture01.JPG

    Is there some guidance you can give me for issue (2)?
     
    Last edited: Sep 13, 2015
  41. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi @cyangamer1 - Some control systems (I think Motion Controller may be one) set the animation every frame. Animation On Conversation runs on the frame that the conversation starts. On that frame, if Motion Controller sets the animation after Animation On Conversation has run, it'll reset the animation back to running. One easy solution is to add an Animation() or AnimatorPlay() sequencer command to the conversation's START node. (Use Animation() for legacy, AnimatorPlay() for Mecanim.) Use this command to play the idle animation at, say, 0.1 seconds:
    • Sequence: AnimatorPlay(Idle)@0.1
    [EDIT: I forgot to add that the playGame support's Conversation Controller's "Animation On Conversation" assumes that the character uses a legacy Animation component. If you're using Mecanim and an Animator component, download the updated plyGame Support package from the Dialogue System Extras page. Only one script changed: ConversationController. Then inspect the Conversation Controller and specify the name of the idle Mecanim state.]

    The "OnConversationEnd" event is broadcast to three GameObjects: the Dialogue Manager, the actor, and the conversant. Since it's broadcast, it's also sent to all of their child GameObjects. Could your debug be capturing the event from all three?
     
    Last edited: Sep 13, 2015
  42. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Dialogue System 1.5.5 Patch 2015-09-12 Available

    A patch for the Dialogue System 1.5.5 is available on the Pixel Crushers customer download site. If you need access, please PM me your Asset Store invoice number. The patch contains:
    • Changed: The Dialogue Manager’s Default Sequence now delays instead of doing camera closeups.
    • Improved: Conversations now respect Override Actor Name on extra conversation participants, not just actor and conversant.
    • Improved: Unity UI Typewriter effect can now run faster than frames/second.
    • Action-RPG Starter Kit: Fixed bug syncing equipment when saving and loading.
    • PlayMaker: SetVariable and SetLuaField action values now default to None.
    (The updated plyGame support package mentioned in the previous post didn't make it into this patch, but you can download it as well as the ARPG and PlayMaker support packages from the Dialogue System Extras page.)
     
  43. escooler

    escooler

    Joined:
    Sep 15, 2015
    Posts:
    5
    Hi There Tony.

    Just started using Dialogue system with playmaker recently. Am not a coder (cg artist), and this stuff does not come naturally to me, but after playing around and using your very helpful resources. Anyway, there was somthing I was wanting to achieve that I could not find out about;

    Is there a way to use the arrow and return keys as well as the mouse to navigate user responses in conversations, I searched this tread and saw this came up a few years ago, and you alluded to a potential implantation, did this yet done? Am using modified versions of the UnityUI prefabs, is there a simple way to achieve this? Answer was this ( For Unity GUI, you can create a subclass of UnityDialogueUI that implements the extra functionality) - which left me with some what of a blank face if I was honest.

    Adam
     
  44. Evil-Otaku

    Evil-Otaku

    Joined:
    Oct 17, 2012
    Posts:
    72
  45. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Hi Adam - It's all built in now.

    For Unity UI, set up Unity's built-in navigation using the link Evil Otaku posted. Then tick the Auto Focus checkbox on your Unity UI Dialogue UI component. This automatically highlights the starting point for navigation (e.g., the first response button).

    For legacy Unity GUI, follow these steps.
     
  46. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Sensible Sale - Dialogue System for Unity 65% Off

    The Dialogue System for Unity is part of the Asset Store's Sensible Sale through September 22. If you don't already have it, you can pick up a copy now at a great discount!
     
    Dreamaster likes this.
  47. escooler

    escooler

    Joined:
    Sep 15, 2015
    Posts:
    5
    Hey guys, thanks alot, got it working now.

    Adam
     
  48. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    That was fast! :)
     
  49. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,692
    Someone interested in using the Dialogue System asked if it works with gamepad controllers. I thought I'd post a reply here, too, in case others are wondering the same thing:

    The Dialogue System works with controllers, keyboard, mouse, and touch. Since the UI is modular, studios have even added other control methods to their own projects such as voice control and VR look control. (The voice control was for a project that also ran the dialogue text through text-to-speech for vision-impaired users instead of showing it onscreen.)
     
  50. akhil96

    akhil96

    Joined:
    Oct 12, 2014
    Posts:
    32
    Hi,

    Does this asset has runtime text to speech conversion feature in all platforms?