Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

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

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

  1. Temuzhin

    Temuzhin

    Joined:
    Apr 9, 2015
    Posts:
    23
    Hello,
    finally I managed to make it with the default GUIButton script.
    Thanks!
     
  2. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    @Temuzhin - Okay. Otherwise you can use this legacy Unity GUI version:

    NumberedResponseUnityGUIDialogueUI.cs:
    Code (csharp):
    1. using UnityEngine;
    2.  
    3. namespace PixelCrushers.DialogueSystem.UnityGUI {
    4.  
    5.     public class NumberedResponseUnityGUIDialogueUI : UnityDialogueUI {
    6.  
    7.         public string separator = ": ";
    8.  
    9.         public override void ShowResponses(Subtitle subtitle, Response[] responses, float timeout) {
    10.             base.ShowResponses(subtitle, responses, timeout);
    11.             int current = 0;
    12.             foreach (var button in dialogue.responseMenu.buttons) {
    13.                 if (button.clickable || dialogue.responseMenu.showUnusedButtons) {
    14.                     button.trigger.key = (KeyCode)((int)KeyCode.Alpha1 + current);
    15.                     button.SetUnformattedText((current + 1) + separator + button.text);
    16.                     current++;
    17.                 }
    18.             }
    19.         }
    20.  
    21.     }
    22. }
     
  3. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Dialogue System for Unity 1.5.8 Released!

    Dialogue System customers can download the latest version from the Pixel Crushers customer download site. (PM me your Asset Store invoice number if you'd like access.) It should be available on the Asset Store in a few days, although expect a slightly longer delay than usual because it's the holiday season.

    If you haven't bought the Dialogue System for Unity yet, I recommend waiting until version 1.5.8 is available for purchase on the Asset Store.


    Highlights in 1.5.8:
    • Updated for Unity 5.3 and Unity 4.7.
    • Quest groups - organize your quests into topics (e.g., different towns in an RPG).
    • Support for animated sprite portraits and autonumbering in Unity UI.
    • Simultaneous conversations - the one-conversation-at-a-time restriction has been lifted.
    • Updates to lots of third party support packages.

    The complete release notes are:

    Version 1.5.8

    Core:
    • Updated for compatibility with Unity 4.7 and Unity 5.3.
    • Added: Help menu item to open Dialogue System Extras (free bonus material) URL.
    • Added: Quest groups. Added support for groups in Dialogue Editor, quest log windows, and QuestLog API.
    • Added: Added Allow Simultaneous Conversations checkbox to Dialogue Manager, support for simultaneous conversations.
    • Added: Added Default Player Response Menu Sequence to Dialogue Manager.
    • Added: Added Sort By IDs checkbox to CSV Converter.
    • Improved: Added Use Name In Database checkbox to Override Actor Name component (for localization).
    • Improved: Added Priority field to Override Dialogue UI and Override Display Settings components. Conversations choose the highest priority override.
    • Improved: Selector no longer requires an EventSystem.
    • Improved: Sequence fields in Dialogue Editor, Sequence Trigger & Dialogue System Trigger now have a helper menu.
    • Fixed: Can now undo when editing Dialogue Text in the inspector.
    • Fixed: Lua wizard in trigger components was applying the wrong quest state.
    • Changed: When splitting pipes (e.g., Chat Mapper Converter), sequences by default place {{end}} commands on the last split.
    • Changed: Unity 5 DLL package is no longer included with the Unity 4 version; download the Unity 5 version from the Asset Store instead.
    • Dialogue Editor:
      • Miscellaneous usability improvements.
      • Support for quest groups.
      • Can now add custom fields to individual dialogue entries in the inspector.
      • Added option to CSV Export to specify conversations after dialogue entries.
    • Unity UI:
      • Added: Support for animated portraits.
      • Added: Autonumbering support.
      • Improved: Quest log windows now support groups.
      • Improved: Can now assign Unity UI dialogue UI prefabs.
      • Fixed: Issue where alert panel was briefly visible at start of scene.
      • Fixed: Typewriter wasn't handling word-based rich text color codes (e.g., "blue") properly.

    Third Party Support:
    • Adventure Creator:
      • Added Dialogue System Lua Check action and VarChangeWatcher action list component.
      • Added option to prefix global variable names in AdventureCreatorBridge.
    • articy:draft:
      • Added support for cross-conversation links.
      • Fixed bug trying to import textures not in project.
    • Chat Mapper:
      • Added Smart Split checkbox to split pipes more wisely by putting {{end}} commands on the last split.
      • Fixed bug that wasn't removing 'Resources' from audio file resource paths.
    • ICode: Added Update Quest Tracker action.
    • Master Audio: Updated for Master Audio 3.5.8.7 compatibility.
    • NGUI: Added support for groups in quest log window. Added Follow Target checkbox to NGUI Selector Display.
    • PlayMaker: Conversation actions (e.g., Start Conversation) can now select conversations from a dropdown. Run Lua action can now use Lua wizard.
    • plyGame Support: Updated for plyGame 2.7.3 compatibility. Added Component menu item for event handler components.
    • Rogo LipSync: Updated for LipSync 0.402 (now supports Unity 4.6.4+).
    • RPG Kit:
      • Updated for RPG Kit 3.1.1/3.1.2 compatibility.
      • Now saves character-specific Dialogue System data.
      • Added RPG Kit Store Trigger No Out Of Range Message component.
      • Added support for overhead icons.
    • S-Inventory: Updated for S-Inventory 1.28 (requires Unity 5.0+).
    • UFPS: Reorganized and streamlined example scene; please delete Third Party Support/UFPS support folder and reimport.

    Whew! ;)
     
    BackwoodsGaming, Tinjaw and hopeful like this.
  4. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    Looking forward to the quest improvements, because I like that sort of thing. :)

    (Hopefully it will still work smoothly with Inventory System.)
     
  5. alexhapki

    alexhapki

    Joined:
    May 8, 2015
    Posts:
    32
    Hi Tony,

    Me again. I dont know what I changed but now my dialogues dont show options, it goes straight to one of the answers automatically and in my node conversations, different replies options are not in blue anymore, however I dont seem to find what the problem is, could you please help me with this?

    Otherwise, Happy Xmas everyone!!

    Thank you in advance.



    Snap 2015-12-23 at 10.10.44.png
     
  6. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Hi @hopeful - Yes, still works great with Inventory Pro and S-Inventory!

    Hi @alexhapki - Click on an empty space on the conversation canvas so you can edit the conversation's properties. In the Actor dropdown, select Player.

    Then go to the Actors tab and expand the foldout for your Player actor. Make sure IsPlayer is set to True.

    And Merry Christmas! :)
     
    hopeful and alexhapki like this.
  7. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Updated Realistic FPS Prefab Support Package

    The Dialogue System Extras page has an updated support package for Azuline Studios' Realistic FPS Prefab that provides additional handling during conversations. It prevents the VisibleBody component from animating the body, and it prevents CameraKick from bobbing the camera. To add the new functionality, select your FPSPlayer and then menu item Window > Dialogue System > Third Party > Realistic FPS Prefab > Disable Gameplay During Conversations.
     
  8. youarebritish2

    youarebritish2

    Joined:
    Nov 7, 2013
    Posts:
    29
    Hello, I apologize if this is a dumb question but I haven't been able to find an answer after a while of experimenting and searching. I'm working on a visual novel and I'm wondering what the best way would be to save the player's current position in a conversation and resume where they left off when the game is loaded.
     
  9. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Hi @youarebritish2 - Coincidentally, this topic recently came up on the Pixel Crushers forum: Saving and Loading Mid-Dialogue. Yesterday's post has a link to an example scene.
     
  10. youarebritish2

    youarebritish2

    Joined:
    Nov 7, 2013
    Posts:
    29
    Ah, thanks so much! That looks helpful. Don't know how it didn't turn up in my search.
     
  11. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Happy to help! If you have any questions about it, just let me know! :)
     
  12. youarebritish2

    youarebritish2

    Joined:
    Nov 7, 2013
    Posts:
    29
    Update: It worked perfectly. Thanks again!
     
  13. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Hi, can this system be used in a way that I could let players affect their spoken lines via a drop-down box?

    So for example "Where is [use drop down] ?"
    The player could then click an arrow and get a list of locations that they know of and after asking the question the NPC will answer differently depending on the selected option.

    I'm watching the tutorial videos right now and can't see if this is a possibility with this system.

    Thanks,
    Jack
     
  14. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Hi @Jack62Lewis - Yes, it's pretty easy to do this. The Dialogue System takes a modular approach to UIs, so it's easy to add new functionality. Here's an example: DropdownExample_2016-01-01a.unitypackage. You can also download it on the Dialogue System Extras page, which is full of bonus material. The example just uses a generic UI, but you can of course customize your own UI to look however you want:



    It includes two tiny scripts that add dropdown functionality. If you haven't already bought the Dialogue System, you can test it out using the evaluation version. The evaluation version is built for Unity 5.3, but the full version supports Unity 4.6.5 and up.
     
    Last edited: Jan 2, 2016
    hopeful likes this.
  15. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Thanks. So do I import "The Dialogue System" and then import that package?
    Is their any tutorials on this? And as I'm getting started with "The Dialogue System" should I watch all the tutorials on the youtube channel in order to get a good understanding of it or is their videos your recommend I head to first?

    Thanks,
    Jack
     
  16. Ludo97

    Ludo97

    Joined:
    Dec 9, 2015
    Posts:
    121
    Hello, I started Dialogue System and it is a very good system but I can create a complete scenario ? (
    example skyrim )
     
  17. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Hi @Jack62Lewis - The Manual is the most complete resource. I recommend following the 5-Minute Ultra-Quick Start first (video version). Then you could follow the Quick Start Tutorial in the manual for a deeper introduction. Some of the Video Tutorials, such as the video version of the Quick Start Tutorial, are scheduled to be updated in January, so the manual is the place to go for the most up-to-date information. Once you have a general idea of how the Dialogue System works, import the example linked above and play it to see dropdowns in action.

    If you have any questions, just let me know!

    Hi @Ludo97 - Yes, absolutely. You'll find textures in the Prefabs/Legacy Unity GUI Prefabs/Celtic folder that you can use to create a Skyrim-style dialogue UI (or just assign the Celtic Dialogue UI legacy GUI prefab to the Dialogue Manager). You can create branching conversations that work like Skyrim, and add cutscene sequences to each one to play voiceover, position the camera, play animations, etc. The Dialogue System doesn't create lipsync animation clips, but it can play them. You can use tools like FaceFX, Rogo LipSync, or SALSA to create the lipsync.

    You can also use the Dialogue System's Quest System to make traditional, Skyrim-style quests.

    If you have any specific questions about how to make something work like it does in Skyrim, please let me know!
     
  18. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Thanks again. Two things:

    I want the player to be able to speak with various NPCs. Some with quests and a lot of dialogue options and others that don't have all that much to say. So in convo these ones could really only tell you their names, jobs and other things about themselves that they know from my own scripts.
    So is their a way to make this modular so that I can use the one conversation for a lot of NPCs only they swap out certain words like "My name is [name string as is in custom script]" or "I work as a [job string from custom script]"?
    And once this is done could NPCs with more dialogue options and quests have these dialogue options in addition to what they already do?

    Is there a tutorial on the drop-down convo system cause I'm having trouble dissecting the example scene?

    Cheers,
    Jack
     
  19. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Yes. Here are a couple notes:

    When you set up a Conversation Trigger, you specify the Conversant (the NPC participant). If you add a Conversation Trigger to an NPC and don't specify the Conversant, it defaults to that NPC. If your dialogue UI is set up to show the NPC's name (as the default generic UI does), it will show the NPC's GameObject name. You can change this by adding an Override Actor Name component to the NPC.

    Dialogue databases have a Variables section. You can define your own variables here. At runtime, the Dialogue System automatically adds two variables during conversations:
    • Actor: The name of the conversation's Actor (the player).
    • Conversant: The name of the conversation's Conversant.
    You can use a number of markup tags in your conversation text. A really useful one is the [var] tag, which the Dialogue System replaces with the current value of a variable. So you could set your Dialogue Text to this:
    • Dialogue Text: "My name is [var=Conversant]."
    Your own scripts can use the DialogueLua class to get & set variables at runtime. Your scripts can also implement some special Dialogue System methods such as OnConversationStart, which is called when a conversation starts. For example, you could set a variable named "Job" by adding a script like this to the NPC:

    Code (csharp):
    1. using UnityEngine;
    2. using PixelCrushers.DialogueSystem;
    3.  
    4. public class SetJob : MonoBehaviour {
    5.  
    6.     public string myJob = "farmer";
    7.  
    8.     public void OnConversationStart(Transform actor) {
    9.         DialogueLua.SetVariable("Job", myJob);
    10.     }
    11. }
    Then your Dialogue Text could be:

    • Dialogue Text: "My name is [var=Conversant]. I work as a [var=Job]."

    If you want to get fancier, you can add your own C# methods to the Dialogue System's Lua environment and use the [lua] tag to put their return values in your text. For example, say you add a method GetCurrentHP(). Then you could do this:
    • Dialogue Text: "I have [lua(GetCurrentHP())] hit points."
    You can also add your own C# methods to use in dialogue entries' Conditions and Script fields. These fields are used to dynamically control the flow of conversations.

    No, sorry. I just threw that example together in like 10 minutes. I did put some basic instructions in comments at the top of each of the two scripts. It's a very simple design:
    • Set up your Template Response Button with a Button and a Dropdown. (In the example scene, expand Dialogue Manager > Canvas > ...Dialogue UI > Dialogue Panel > Response Panel > Scroll Rect > Scroll Content to see the template. It's named Custom Response Button Template.)
    • Add the RecordDropdownValue.cs script to the Dropdown.
    • Add the ConversationDropdownHandler.cs script to the main dialogue UI (Generic Unity UI Dialogue UI in the example scene).

    • To add a dropdown menu to a dialogue entry, inspect the entry. (In the example dialogue database, inspect the "Where is:" entry. Expand the All Fields section, and click the "+" to add a custom field. Name the field "Dropdown Choices". (Use that exact case and spelling.) Enter your choices separated by '|', such as: London|Paris|NewYork.
    • Add another custom field named "Dropdown Choice Variable". Enter the name of the variable that you want to use to hold the player's dropdown selection. Then define that variable in the Dialogue Editor's Variables section. (In the example scene, I used "dropdownChoice".)
    • Create an empty node, and set its Sequence field to None(). (see note below)
    • From the hub node, add your responses. In the example scene, you'll see responses for "London is in England," etc. Inspect each choice to see how I used the Conditions field to decide which one to display.

      Note: I put an empty node between the player's entry and the NPC's actual replies because the Dialogue System evaluates Conditions one extra level ahead. It has to do this to properly handle certain types of Continue Button modes. The empty node delays the evaluation until after the player makes his dropdown selection.
     
  20. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Thanks so much for the support very helpful!

    I got the first part done and perfect. My different NPCs respond to the same conversation tree with their unique names, jobs etc.

    I'm looking into the drop down stuff now. So could I use (like i did with the job names earlier) the lua [var] thing to replace the options Paris|London| etc. with my variables?
     
  21. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    You could, but I wasn't that clever when I wrote the script. Edit ConversationDropdownHandler.cs and add this line after line 37:
    Code (csharp):
    1. var choicesString = Field.LookupValue(response.destinationEntry.fields, "Dropdown Choices");
    2. // ADD THIS LINE BELOW:
    3. choicesString = FormattedText.Parse(choicesString, DialogueManager.MasterDatabase.emphasisSettings).text;
    That line runs the Dropdown Choices field through the markup tag parser.

    Then you could set your Dropdown Choices field to:
    • Dropdown Choices: [var=myChoicesVar]
    If you define myChoicesVar in the Dialogue Editor's Variables section and set its value to "London|Paris|New York", the end result will be equivalent to the original example.
     
  22. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    I don't know if you'll find this helpful at all, but I forgot to mention it earlier. You can add custom fields to any asset in a dialogue database, including actors. As you set up each actor, you can add a custom field for the actor's job, birthday, etc. For example, say you add a field named "Birthday". You can use the [lua] tag to show it in your dialogue text:
    • Dialogue Text: "My birthday is [lua( Actor[Variable["Conversant"]].Birthday )]."
    And if you want to add a field to all actors, you may find it easier to add it to the template. (BTW, the Templates tab turns into a Watch tab in play mode so you can watch variable values as you play. Also during play mode, the Conversations tab shows the progress of the current conversation.)
     
    Jack62Lewis likes this.
  23. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Hmm that line change doesn't seemed to have worked for me. It changed the dropdown option to just reading London and when I click on it, it remains blank.
     
  24. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Sorry, I missed another small change to that script. I packed it up, included an example of using a variable, and added a small writeup. The updated package is: DropdownExample_2016-01-01a.unitypackage
     
  25. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Thanks! Got that working with mark up tags. I had to add his reactions to the girl name choices and the conditions manually myself cause he was just saying something like "[...] got old like 15 years ago." I wasn't sure if you left it out intentionally or on purpose.

    The first option using the drop down box can only be selected once I select another option then click back on the first. Not a huge problem but do you know a work around?
     
  26. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    It was on purpose, but mostly laziness. Mambo #5 was a pop song that came out in 1999, and it was the only thing radio stations played for months until everyone got sick of it. The singer mostly just lists girls' names. I figured I could get away with Private Hart saying the same thing regardless of which name the player chooses. :)

    Drill down to Dialogue Manager > Canvas > Generic Unity UI Dialogue UI > Dialogue Panel > Response Panel > Scroll Rect > Scroll Content > Custom Response Button Template > Dropdown. On the Dropdown component, set Value to -1.
     
    Jack62Lewis likes this.
  27. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Cool cool. And cheers that works perfectly.

    My final query for now is how the Dropdown box UI works. I'm new to Unity UI so bear with me...

    I see you've added it under response pan>scroll rect etc.
    So I think I get why it's under response cause it needs to be with the player responses.

    A) As I'm trying to add a drop down box into the SF Unity UI preset UI for practicing purposes do I need the scroll rect etc. child objects and what do they do?

    B) There's one dropdown box in the scene yet it knows to add two next to the sentence starters and it knows which dropdowns correspond to which responses. How did you tell it to put the drop downs next to the first two options but not the "Nothing. Bye" response?
     
  28. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Use the "SF Unity UI Dialogue UI Response Template" prefab.

    Here's the long-winded explanation (which is still worth reading):

    The Dialogue System's built-in module for Unity UI supports two types of layouts:
    1. The first layout type instantiates as many response buttons as needed for each menu, adding them all to a container such as a ScrollRect. It makes copies of the response button template when instantiating response buttons. Most of the prefab UIs are built like this. This includes the dropdown example scene, which is based on the generic UI prefab.

    2. The second layout type uses a set of buttons specified at design time. This is usually used for dialogue UIs where the response buttons are specially positioned, as in the Wheel prefab:

    The "SF Unity UI Dialogue UI" prefab is also set up this way. In your case, this is unfortunate because the dropdown script is written to work with the first type of layout (instantiated buttons). Fortunately, the "SF Unity UI Dialogue UI Response Template" prefab is set up using instantiated buttons. It should work fine with the dropdown scripts as long as you modify the "Response Button Template". Add a Dropdown so it's set up similarly to the dropdown example scene.

    The ConversationDropdownHandler.cs script looks for the custom "Dropdown Choices" field on each dialogue entry node. If the node doesn't have this field, it simply deactivates the response's dropdown component.
     
  29. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Thanks.
    So how do I create a new field I can't find the '+' ?
     
    Last edited: Jan 2, 2016
  30. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    If you're using Dialogue System 1.5.8+ (including the current evaluation version), click the little "+" hiding off to the right of "All Fields":



    The Unity Asset Store is currently serving up version 1.5.7a. It's taking a little longer than usual for them update to 1.5.8 because of the holidays. If you're using the version on the Asset Store, here are two options:

    1. Go to the Templates tab. Expand Dialogue Entries. Click the "+" all the way on the right of the Dialogue Entries line. You should see a new field appear at the bottom of the list. Set the title to Dropdown Choices. Repeat and set the next field's title to Dropdown Choice Variable. Then go back to your dialogue entry and click the Template button.

    2. Or PM me your Unity Asset Store invoice number for access to the Pixel Crushers customer download site where you can download 1.5.8. I'm finishing work for the day, but I'll check back in the morning.
     
  31. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    Yeah I'm using the answer store version. I actually just managed it by editing the text of the very top "Title" field and that added a new field bar at the bottom somehow.

    Thanks
     
  32. Ludo97

    Ludo97

    Joined:
    Dec 9, 2015
    Posts:
    121
    With "Dialogue System" I just do a complete scenario? as Skyrim
     
  33. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Well that's certainly a sneaky way to do it. :) The Dialogue System always enforces that a dialogue entry has certain fields, including Title. If you rename the Title field, the Dialogue System will automatically create a new Title field.
     
    Jack62Lewis likes this.
  34. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Hi @Ludo97 - You may have missed my previous reply. So I don't forget to mention anything, I'll paste it again here:

    Yes, you can create a complete scenario. You'll find textures in the Prefabs/Legacy Unity GUI Prefabs/Celtic folder that you can use to create a Skyrim-style dialogue UI (or just assign the Celtic Dialogue UI legacy GUI prefab to the Dialogue Manager). You can create branching conversations that work like Skyrim, and add cutscene sequences to each one to play voiceover, position the camera, play animations, etc. The Dialogue System doesn't create lipsync animation clips, but it can play them. You can use tools like FaceFX, Rogo LipSync, or SALSA to create the lipsync.

    You can also use the Dialogue System's Quest System to make traditional, Skyrim-style quests.​

    Here's some more information:

    The Dialogue System relies on a GameObject called the "Dialogue Manager". This contains important settings such as references to your dialogue database and dialogue UI. Normally you'll put the Dialogue Manager in your start scene. It will persist through scene changes.

    You can also put a "test" Dialogue Manager in your gameplay scenes. This way you can play the gameplay scene in editor without having to come in from the start scene. When the game does come in from the start scene, the start scene's Dialogue Manager will destroy the test Dialogue Manager in the gameplay scene so ensure that there's only one.

    If I can provide any specific guidance, please let me know.
     
  35. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    I keep getting this red error:

    Trying to add (Layout Rebuilder for) Scroll Rect (UnityEngine.RectTransform) for layout rebuild while we are already inside a layout rebuild loop. This is not supported.
    UnityEngine.UI.ScrollRect:LateUpdate()

    It doesn't crash my game or anything but it is quite distracting. It happens when I stop running a scene. Any ideas?
     
  36. Ludo97

    Ludo97

    Joined:
    Dec 9, 2015
    Posts:
    121
    TonyLi thank you for your answers , I managed to create my first quest (object pick-up only , for the moment I do not know yet how the quest to kill enemies ) . This system is beautiful, I 'm a fan of that system.!:D
     
  37. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    It's a Unity bug. It's supposed to be fixed in 5.3.1p1, but some users have reported that it's still not fixed.

    Thanks! For a "kill enemies" quest, look at the example scene in Examples/Quest Example. The NPC Sergeant Graves gives a kill quest. There's also an accompanying video tutorial.

    Also, if you're using Realistic FPS Prefab, you may find the "Dialogue System On Pick Up Item" to be handy. It works with RFPS's pickup system.
     
  38. Ludo97

    Ludo97

    Joined:
    Dec 9, 2015
    Posts:
    121
    Thank you :)
     
  39. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Updated Support Package for Opsive's Third Person Controller

    The Dialogue System Extras page has an updated support package for Third Person Controller 1.2, which introduced some improvements to inventory management that require updates to the support package.


    Updated Support Package for Crazy Minnow's SALSA with RandomEyes

    The Dialogue System Extras page has an updated support package for the upcoming SALSA with RandomEyes 1.4 that adds support for RandomEyes 1.4's shape groups.
     
  40. thedreamer

    thedreamer

    Joined:
    May 13, 2013
    Posts:
    226
    I wonder Are you making quest generator?
     
    BackwoodsGaming and Teila like this.
  41. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Yes, still in the works. I'm spinning a lot of plates during the holidays. :)
     
    BackwoodsGaming likes this.
  42. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Was wondering if you were still working on it myself! Definitely looking forward to seeing what you come up with! :)
     
  43. Jack62Lewis

    Jack62Lewis

    Joined:
    Jun 17, 2013
    Posts:
    105
    What's a quest generator? What would it do?
     
  44. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Another awesome tool Tony has been developing. There are a couple of threads where he has talked about it.. I think this is one of the latest ones.

    Somehow I wasn't notified on last few posts Tony.. I see now where @hopeful had just asked about progress in Dec. heheh

    EDIT: I think this is the main thread for it - correct me if I'm wrong @TonyLi
     
  45. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
    Thanks, @Shawn67 - Both of those threads sent me back to the drawing board to tweak the design. It works nicely now, but the UI is rough around the edges. I'll post more updates as I have them!
     
    hopeful and BackwoodsGaming like this.
  46. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    What I do to catch all new posts on my watched threads is click on both the Alerts and then on Watched Threads. It seems some new posts always slip past the Alerts function and wind up sitting in the Watched Threads.
     
    BackwoodsGaming likes this.
  47. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Yup.. I do the same.. I just need to try to remember to check it once a week... lol
     
  48. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,614
    Hi TonyLi, I'd like to extend the functionality of my Continue button/prompt. I've found "DialogueManager.ConversationView.SetupContinueButton()", but is there a way to just check if the Dialogue System thinks it should be showing and/or an event for when it should appear/disappear?

    I realize I could just look at the source, but I've avoided that so far...
     
  49. Ludo97

    Ludo97

    Joined:
    Dec 9, 2015
    Posts:
    121
    Hello and Happy New Year , I have a little problem , I have an NPC is walking and when I talk to this NPC shows me his dialogue but the NPC continues walking and dialogue stops. How to make the NPC stops and turns to me when I active dialogue ?

    I watch the tutorial of CameraAngles but when I talk to a NPC behind him, the NPC did not return .
     
  50. kebrus

    kebrus

    Joined:
    Oct 10, 2011
    Posts:
    415
    Hi TonyLi, I'm evaluating to see if it fits my needs, trying the system up, following the tutorials, etc

    Is it possible to make a player response without choices? I want to be able to in one part of a conversation make an automated player response without him selecting anything and then later actually select something
     
    Last edited: Jan 4, 2016