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

Utilities [WIP] DialogueQuest - Dialogue and Quest system with modern Node Editor

Discussion in 'Tools In Progress' started by LorandVarga, Jan 12, 2022.

  1. LorandVarga

    LorandVarga

    Joined:
    Apr 5, 2014
    Posts:
    5
    Hello, my name is Lóránd and I would like to present my first work-in-progress Asset Pack: DialogueQuest.
    I will edit this post in the future to include links once the Asset pack is published.

    Intro
    DialogueQuest is a collection of runtime systems and editor tools which allow you to create complex and branching Dialogues and Quests with built-in localization using Node based editors, store data in global variables and easily call your own custom C# code from Nodes. All systems also implement a save/load feature which can be integrated into your own save/load system if you already have one in your project. The systems are designed to also allow dynamic scene creation at runtime. You can easily extend the tools if you need to create custom nodes for your projects.

    promo_2.png

    promo_1.png

    promo_3.jpg

    Features
    All systems in this Asset pack use Scriptable Objects, custom Inspectors and Editor windows to make the process of data authoring as user friendly as possible. The Editor tools are built using the “new” UI Elements, which make them very fast even when working on huge Node graphs.

    Dialogue system
    The Dialogue systems is comprised of Dialogue and Actor assets, which are controlled by custom scripts. The Dialog Editor Window is used to edit a Dialogue asset, and allows the creation of many different types of Nodes: dialogue lines, conditional branching, random branching, hubs for dialogue choices, starting quests, calling custom C# code, etc.

    Quest system
    The Quest system is comprised of Quest assets which are edited using the Quest Editor Window and control scripts. The Quest Manager script is used to start and track Quests. Quests are comprised of Stages, each with multiple types of Objectives and Rewards. Custom Objectives and Rewards can easily be implemented for your project.

    Global variables
    Allows the creation of Global Variable Assets which store a single value (currently bool and int, but more will be implemented in the future). This value can be changed and read using Dialogue and Quest Nodes or from code. Listeners can also be registered for value change events.

    Localization

    The built-in localization system uses simple key-value files to store translated texts. Configuration assets can be used to edit the available languages or to entirely swap out the localization system for another Asset pack using wrappers.

    Node Editor
    At the heart of the editor tools is the custom Node Editor system, which can be extended to add additional Node types or create your own Node based system. The Node Editor windows seamlessly integrates with the localization system, allowing you to easily edit Dialogue or Quest graphs in the any language of your choosing. A “translator mode” is planned for the future. The editor tools support copy/paste and undo/redo.

    Roadmap
    This project is still a work in progress and is likely to change based on your feedback. Here is a list of additional features that I plan on implementing in the future (more items will be added as development progresses):
    • Finish features which are still under development
    • Implement demo scenes
    • Publish videos of various use cases on YouTube
    • Implement barks
    • Support for Cinemachine & Timeline integration
    • Translator mode for localization: View and edit texts in two or more languages in parallel
    • Wrappers for other localization systems
    • Wrappers for importing from articy::draft
    Feedback
    Any feedback (positive or negative) will be of great help in making this tool more accessible and user friendly. I’m also open to suggestions for additional features.
    I will post regular updates here, so make sure to watch this thread if you want to stay up to date with the development of this project.
     
  2. doubletroubler

    doubletroubler

    Joined:
    Sep 8, 2021
    Posts:
    1
    Hell yeah, this is just what I always wanted! <3
    Where can I download it?
     
  3. LorandVarga

    LorandVarga

    Joined:
    Apr 5, 2014
    Posts:
    5
    It's still a work in progress, but I appreciate your enthusiasm :D
     
  4. ondrasovka123456

    ondrasovka123456

    Joined:
    Aug 17, 2021
    Posts:
    1
    Any updates on the system?
     
  5. LorandVarga

    LorandVarga

    Joined:
    Apr 5, 2014
    Posts:
    5
    I've been working on this for the past year and I'm getting to close to releasing the first version.

    So far I have focused on two main things:
    1. Refactoring and redesigning code to make the systems as user friendly as possible for both designers who want to use the editors as well as for programmers who want to extend these systems
    2. Making Demo scenes to highlight the main features of these systems

    Here are a few screenshots from the Demo scenes:

    1.png 2.png 3.png 4.png

    The Asset Pack still needs a bit of work, but I'm aiming to release the first version some time in Q1 2023