Git Product home page Git Product logo

dialoguenodes's Introduction

DialogueNodes

DialogueNodes editor A plugin for creating and exporting dialogue trees from within the Godot Editor. Godot provides all the tools needed to create your own dialogue system, however, for most game developers, this task is tedious and complex. This is where Dialogue Nodes come into the picture. The plugin extends your Godot editor to allow for creating, testing and incorporating branching dialogues in your game.

Installation

  • Open the AssetLib tab in Godot with your project open.
  • Search for "DialogueNodes" and install the plugin by Nagi
  • Once the download completes, deselect everything in the popup window except for the addons folder.
  • You can also select the examples folder if you want to check out some ready-made dialogues.
  • Open project settings > plugins, and enable DialogueNodes.
  • Done!

For installation from the github repo, you can find the instructions in the wiki.

Features

Simple and straight-forward editor

The dialogue editor was created with the focus on keeping the workflow simple and easy to pick up. While the editor supports powerful features under the hood, it tries to stay out of the way of the user. A beginner can easily pick up the editor and start creating basic dialogues thanks to the intuitive design. If your focus is on creating simple dialogues for your game, you can get setup in no time. If you want to work with multiple dialogue files, or put all the branching dialogues in one file, DialogueNodes have got you covered. Heck! Do both if you want!

Dialogue animations, conditions, variables, signals: its all there!

The real power of the plugin lies in the tools it provides the user to utilize the full potential of the feature rich dialogue editor. Be it using variable values in the dialogue, conditional dialogues or even conditional options, modifying variable values and even emitting signals which open up a world of posibilities when it comes to custom events during the dialogue.

Test it before you save it

The plugin allows for running any branching dialogue withing the editor itself for quick testing and faster iteration times. No need to run your game every time you modify the dialogue. Under the hood, this uses the same DialogueBox node you'll use in your project. So, you'll know exactly how your dialogue will run in-game without even running the game!

Additionally, enable the debugging toggle to understand what all events are occuring as the dialogue runs. Note: this feature only works in the editor, not the game.

Put a dialogue box in your game in just 2 steps

Once you have your dialogue files and are ready to test them out in-game, the plugin provides a super simple way of creating dialogue boxes for your game.

  1. Add the DialogueBox node to your scene and set its position and size as per your requirements.
  2. Select the dialogue file from the inspector and run $DialogueBox.start('<YOUR_START_ID>') in your code to start the dialogue.

The DialogueBox node provides several options to customize the look and layout to your liking. However, being derived from Control nodes, it is recommended to change the colors, font and borders using Godot's theme editor.

Localize it!

The dialogue files are stored as Godot Resources, which are not only easy to edit, load and save, but also great for localizing using Godot awesome localization remap tools!

Prefer other localization methods? Stay tuned as more localization options are planned for future releases.

Learn more

Read the wiki to learn how to get started with using the plugin and adding dialogues to your awesome games!

Note: The wiki is still being updated frequently. Some of the functionalities might not be documented. Please expect more updates soon, and feel free to contact me if you want to contribute to the documentation. (I could really use some help here lol!)

Known issues

  • DialogueNode in the workplace may have wrong colored slots on light themes
  • Icons do not look right in light theme
  • Using return character in the dialogue results in options not showing up in certain cases
  • Shifting focus to empty option from another empty option results in the option data moving around

If you find any bugs or issues, report them in the issues page. Please ensure the same or a similar issues isn't already present before creating your own.

dialoguenodes's People

Contributors

nagidev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.