I have two questions:
Is it possible to make a variable have a random number between 2 and 12?
Is it possible to add the value of two variables?
Thank you very much!
A downloadable tool for Windows, macOS, and Linux
Works with Unity, Unreal 4, Godot, Construct 3, GameMaker Studio 2 and many more!
The editor was created for non-programmers. It is easy to understand and navigate. It is also fast and lightweight - it runs smoothly even on less powerful PCs.
The editor includes a characters database and local variables database (strings, integers, booleans). They are incredibly helpful in organising the dialogue and keeping track of player's progress.
Change the dialogue language by selecting it from a drop-down menu. There are no limits for the amount of languages you can use.
Export your dialogue with one click to an easy to read JSON text file, which can be imported into most modern game engines and frameworks.
Example file: Download an example exported file from the bottom of this page.
Read more about JSON: https://en.wikipedia.org/wiki/JSON#Example
All updates will be released for free for owners of the editor.
|Updated||17 days ago|
|Platforms||Windows, macOS, Linux|
|Genre||Role Playing, Visual Novel|
|Tags||branching-dialogue, dialogue, godot, Narrative, Nonlinear, Story Rich, tool, Unity|
|Average session||A few seconds|
In order to download this tool you must purchase it at or above the minimum price of $9.99 USD. You will get access to the following files:
Log in with itch.io to leave a comment.
I have two questions:
Is it possible to make a variable have a random number between 2 and 12?
Is it possible to add the value of two variables?
Thank you very much!
Great software! I want to make a few requests:
1. It would be great if the files knew their own name. For example if i save a file as foo.json but then externally edit it as bar.json and re-open. When I save it still wants to save itself as foo.json. I think it should just associate itself with whatever it's file is actually named in the file system.
2. Similar issue with folders. Having a base project folder is a bit odd. It would be better to just have a save dialogue pop up where you can choose a folder in your file system (similar to most other software). When you open the file back up it should know where it is located in your file system and want to save itself there by default (file > save). I have a lot of dialogue files and it gets hard to organize having to sit them all in the same base project folder.
3. Do we really need a 'save' and an 'export'? I get that export doesnt include the graph stuff used in the program itself but its really not saving you much to not have the graph included in your json. json files are really small to begin with. if someone is really upset about the size they can always go into the file and strip the graph info out of there.
--- Basically you should have a save, and save as option (just like most other software) ---
4. Global list of characters and variables please :)
Is there any chance to change the Charactername by language?
For example a NPC is called "Mystery Man" in english but "Mysteriöser Mann" in german.
I want to see if this is right for me, but the JSON example link you have isn't working. I just get a blank page.
You can download example dialogue files from the bottom of the page and open them in f.e Visual Studio Code (make sure to have a json beautifier addon). I also recommend Json Formatter Pro from windows store.
It is very intuitive to build dialogue, and I plan to use it in really big projects, but have a lot to things to improve:
(Current version is 3.2.1, using in GMS 2)
- The horizontal bar isn't working
- The purple baloon that shows the text of Show Message boxes flicks when changing zoom
- Don't know about other languages and engines, but in GMS you can't name variables inside a struct with numbers, like in Chance Branch and Random Branch (i hade to split strings to use it properly)
- I use a notebook, and the program doesn't accept when I use for example Ctrl + Alt + W (that would write "?"), and it's REALLY BAD having to use Ctrl + F Ctrl + V EVERY TIME
Missing features(something really basic):
- MORE ZOOM OUT, PLEASE (for what i've read from reviews, it's a really old problem that haven't been solved yet)
- Show Recent files in the "File..." section
Nice things to add:
- Option to minimize boxes
- Switch condition
- Option to search for a text (something like Ctrl + F)
I've been using DD for renpy for a while now and I've been enjoying it so far, but in the last update the execute nodes of the program don't accept line break (pilcrow) characters anymore to allow multiple lines of code, which bars me from adding code that cannot be executed in separate nodes.
Personally, I require being able to write various lines of code in the execute nodes, or else my whole project can't work as intended. Considering that, I wanted to ask if you could restore the functionality of using line break characters, or if the execute node can be expanded, like the dialogue nodes, so that you can add various lines of code in each node: That would be an incredibly useful addition.
New version is up (3.2.2). You can now resize the execute node and pressing enter makes a new line.
I have a question, do we really have to create every locales each time we create a file? Let say I have 10 locales, currently, each time I create a new discussion, I have to re-create those 10 locales, which make it unusable for me unfortunately.
That would be nice to have real "project" settings that are available in all new files we create, otherwise I don't see how it could scale to big projects.
Cheers! Looking forward new features.
The new version is up.
Just open up one of your existing files and tick the box.
And don't worry if you delete a locale and the texts in message nodes get deleted. You can just add the same locale ID and the text will appear back up.
I've been using Dialogue Designer for a while now and mostly it's really good. However, I think there really needs to be a field on the nodes to reference audio files.
I'm at a point now in my game where I want to add recorded speech over the text, and being able to reference an audio file directly from the node would be a godsend. All it would need to be is an extra field.
Matt, please add this. I'm willing to discuss the option of paying for you to take some time to do this if necessary.
You can message me over on Twitter under the handle @herrwebster if you want to discuss it further (I don't think we can send messages through Itch).
You should be able to already achieve that using variables. Create a variable named something like "audioFile". Then just set that variable to the name of the audio file you want to play prior to the character's dialogue.
I'm actually releasing a new version soon that will have your requested feature. Hopefully today.
The new update is up. You can now test it out.
Just out of curiosity: With which software / language / engine have you developed this?
What's the basic usage of this tool? I bought it and I'm a little confused. Is each project for a single dialogue sequence? Or is a project suppose to contain all dialogue sequences for an entire game project?
The idea was to make a tool to create manageable, separate dialogue files for dialogue heavy games which require non-linear storytelling. Those files are meant to be connected by an external software, like a game engine or a framework.
Ok so If I'm understanding you correctly, if I'm making an RPG and I have 2 conversations, one between the player and a villager, then one between the player and the final boss, I would make 2 separate dialogue designer projects?
I like this program. Keep up the good work! Wanted to ask if you can implement a better zooming option. I just started with my first dialog and after zooming out I realised that I may only see 2 or 3 dialogs at the same time which is nothing compared with the many dialogs which will be implemented. To move fast to a specific point I would appreciate a much more zoomed out view.
I think I just get the idea that you have a single file for each dialog? :O
Yeah, the idea is that you'd have one file for each dialogue. It seems to me like the best way to organize conversations.
this tool has been great so far, I just have a question: What do the different speaker types mean? I understand "character" but what are "custom path" and "interacted character" for?
They simply change the value of one of the variables in the final dialogue file. You can interpret them any way you want in your game engine or framework.
Hi there :)
How is it licensed?
After spending a bit of time with Dialogue Designer, I have to say that I'm very happy with the program. Matt, I'm not sure how active you are in updating Dialogue Designer, but I thought I'd provide some feedback:
Being able to easily duplicate nodes would be a huge quality of life improvement. My suggestion would be ctrl+left click and drag to duplicate a node.
Choices: It would be really useful to be able to change the order of choices by dragging them. As most engines will use the order to loop and display to screen in order, being able to easily change the order would be a big help, as right now it requires deleting choices and rewriting, and relinking. It's a major pain when you realise you need a new choice at the top of the list.
Renaming characters. Currently, any change to a character name requires a new entry, which means that every node they speak on must be manually changed. Ideally, this could be changed at the character panel with changes reflected automatically across nodes. Renaming variables would be a similar improvement, but only if it auto-updated any node references to the changed variable.
Ability to add additional values to nodes would be useful. I'm currently using slide_camera as a boolean checker for animation control, but it would be nice to be able to rename it or add multiple checks.
Start node is not always index 0 which is annoying as you need to loop through the json to find the start block
When removing languages from a project, they are not removed from choice branches.
Overall, I'm really happy with DD. I'm hoping it continues to get the support it deserves.
I got a big problem with this app and just wanna share my experience. DON'T EVER make something that overwrites a file without asking for confirmation.
I did a copy of a .json file and renamed it, but when i opened and made i change on it, i pressed a button to save and he saved on the previous file name... and in a second i just lost a few days of work.
For anyone struggling to implement this into Construct 3, I've created an example project that might be useful. Note that it's in the style of my game which is more like an adventure game (inspired by Monkey Island's dialogue system), though it wouldn't be hard to adapt to your needs.
Hopefully it might be useful to someone.
I’m using dialogue designer for the first time and the strings that connect dialogue boxes don’t seem to be working— the strings connect between some boxes, but other boxes just get dragged around when I try to connect them, or the string comes out of one but doesn’t attach to the other. Is this a common problem?
[Bug Report] Export Message Texts
I'm using the steam version and I find the "Export Message Texts" could only export partial texts, lots of contents are missing in the exported txt.
If you need any project file to produce it, please let me know!
Need free scroller zooming for scale percentage.
This software has definitely made managing branching dialog easier. The JSON output is a bit much so I write a small utility to convert the JSON to INI for use with GM2.
This tool you made is making my life sooo much easier, awesome work mate :)
I was wondering if you planned to create a Discord channel at some point. That way people could gather and help each other using this wonderful piece of software.
The export button which saves the simplified version uses the same filename name as the regular save file. It would be better if it used a different file name since it's a different format.
Hi. Another question: Is it possible to use this plugin to create something like that in UE4:
Hi! I am really newbie in Unreal and I need to produce a conversation system where the user will chat with a 3D character. The 3D character will speak by voice (TTS) and the user will have to respond by text by selecting one of the options. Each response given by the user activates a facial animation on the 3D character and while waiting for the response the 3D character remains in an idle movement (breathing and moving his shoulders). The options chosen by the user will have to generate some metrics based on responses and response time (bar at the bottom of the screen with percentage of confidence / motivation / initiative). I intend to use Reallusion programs to create de characters. Can I use this plugin for this? Could you give me some support to implement it?
I bought dialogue designer and I have made a script with it. But, I’m wanting to do Voice Overs, and I don’t have anything to send the people to read. I could go through, copying and pasting everything, but my script is HUGE, and that would take forever. Would it be possible for you to make a way for me to export my script as a plain text file? It doesn’t have to follow an order or be indented or anything, just all of the messages printed out to a .txt. I am sure I am not the only one out there with the same problem...
I hope that will help!
There are weird artifacts on OSX when you open a new JSON file. So Open one file, make some changes. Save it, then open a new one and some of the connection lines remain from the old file. If you click file new then open a file they go away which means the screen isnt being cleared properly on the second file opening.
BUG: The comment window does not resize the text field when I expand its size. I'm using de latest version (3.0.8). Please fix it.
On mac os im finding the menus extremely small.. is there a way around this?
i guess the issue is it doesnt scale if you use a higher res.. at least i can zoom in on the nodes and stuff
does this fix work for mac as well? are there any shortcuts for saving the file? a notification to save work before closing the app would be good too
also this is possibly a dumb question but im trying to find a hyperlink on that page to download the fix and not seeing anything? Is it because I'm on mac and the fix isnt available for mac?
Try downloading it from the product main page.
thanks for the help.. for others trying to correct this on mac you need to go to your app and right click > show package contents
then go to
contents / MacOS
drop the override.cfg in there. option 2 worked fine for me.
@radmatt you should add these things to the app settings if possible. you designed a great dialogue editor but it needs a bit of love. I've been trying quite a few of these apps and this is my favorite. hope you continue to polish and support the project.
Can you update the example JSON in the documentation. It's currently going to a 404:
what does this work with? (e.g unity, buildbox, gb studio)
It works with any engines / frameworks that support JSON file format (most of them do). See this as an example (for Unity): https://docs.unity3d.com/Manual/JSONSerialization.html
Hi, I'm using on macOS and have a problem where it isn't possible to connect any nodes, except the start node to another.
Clicking on the output just drags the node around. It's the same problem as mentioned by 'djrainbow' below.
Are there any updates on this problem?
I'm really excited about this and Godot Dialogue Designer 2 which I've been slowly trying to work out. Thanks!
How should I check for variables in the branching logic? I have an Int. Is it if.. Round=1 or is it if... Round==1 ? Can't test this.
You check it as if you're writing it in your game code, f.e. in Godot it would be round==1.
Sadly this looks like an abandoned project. No answers on bug and issue reports or suggestions over weeks now - nor here or on Steam or on emails. :(
Hi, I'd ask you to re-send your email if you still are having problems. I was on a long break recently and might not find your message.
Can you please add functionality to add a portrait/image to the characters so that it's easier to visually see who is saying what?
omg, how much do you want to integrate this in to godot, and make a similar theme to the godot Visual Script and Visual Shader :D this looks amazing
Nice app but could you reimport all assets with high resolution so you can set the res of all assets in the settings? Would be really nice!
On top of that it would be nice if you can zoom in using Ctrl + mouse wheel.
I've written a runtime integration for Unity. You can try it here: https://github.com/BrianMacIntosh/DialogueDesignerUnity.
In detail, what are the differences of the "Type" on the Show Message windows and the options on the drop down box on the top left side (contains "Character", "Custom path" and "Interacted character", I think)? Are they only related to the JSON output or also the program itself?
To answer my question partly by myself (maybe also others wants to know it): By "Character" you can choose one of the characters you have added. Both other option give you a free text input box (one with and one without a border).
Is the Steam version the same version? Will both variants receive updates at the same time?
Is this compatible with RPG Maker MV?