Dialogue Forge
A downloadable tool for Windows, macOS, and Linux
A modular dialogue tool that supports any engine/framework that can read JSON files. Create dialogue files that adjust to fit your needs!
STATUS
The program V1.0 is officially out! It's production ready, with even more upgrades coming along the way. Parser addons for Godot and Unity are also in the works.
LIGHT, POWERFUL & MODULAR
This editor was created by a programmer for BOTH non-programmers AND programmers. The text interface allows for quick and easy dialogue creation and the modular design allow you to mold the tool to fit your needs through the use of markers, marker variables and marker data!
WORKS IN VIRTUALLY ANY ENGINE/FRAMEWORK
Dialogue exports are exported via JSON files using a dictionary format allowing for easy file reading! Should work for any engine/framework that supports JSON files.
DEVELOPMENT BACKLOG
- Add ability to add default variables to markers
- Add suggestion support for custom markers
- Add highlight support to custom markers
- Ability to rename dialogue files
- Godot Parser Addon
- Unity Parser Addon
- Unreal Parser Addon
- Gamemaker Parser Addon
DOCUMENTATION
WEBSITE
Support the software to help further development!
Status | In development |
Category | Tool |
Platforms | Windows, macOS, Linux |
Author | Minoqi |
Made with | Godot |
Tags | branching-dialogue, dialogue, Godot, Narrative, Nonlinear, Story Rich, tool, Unity, Unreal Engine |
Average session | A few seconds |
Inputs | Keyboard, Mouse, Touchscreen |
Purchase
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:
Development log
- New labels, V1.5 + 2.0 updates, parser addon updatesAug 03, 2024
- Version 1.0 is here!Jul 29, 2024
- Ver 1.0 Coming Soon! (Like 4 days lol)Jul 24, 2024
- Easily swap between dialogue files!Jul 19, 2024
- Breakthrough on Exporting Data ProgressJul 10, 2024
- It's Been A While, Here's An UpdateJul 03, 2024
- Roadmap Updates!Mar 26, 2024
Comments
Log in with itch.io to leave a comment.
hello, I'm like the editor being nice and simple to get a dialogue typing but getting confused about how each "label" communicates in JSON. what I mean by this is after you export to JSON and try to get it to write the logic (I use construct 3 ) I can't see how I go from one dialogue label to another without adding my own key(next) in the JSON to tell the JSON where to go after the dialogue is finished and I want another character to talk and since every single label goes into it own uh brackets I can't have the text and name change at the same time because of needing a next.
an example of this can be seen here: https://www.construct.net/en/tutorials/branching-dialogue-using-json-2395?vic=36
for a dialogue designer example which is where I found you can be found :
https://www.construct.net/en/tutorials/dialogue-designer-construct-2624
if you are making a Construct 3 plugin soon then you can ignore this thanks for the program
Thanks for getting the tool, I'm glad you're liking it!
The way I intended the data to be used is (if you're using one file for all the dialogue) to use the dialogue key (the dialogue name) to get to the correct point in the dialogue file. If it's separate files then just open the correct file. From there you'll notice the exports use numbers that then store a dictionary within it. I'd use a makeshift for loop to go through all the numbers. For each number I'd first check the LABEL and call the corresponding function that matches the label. So a dialogue label would call the dialogue function that takes in the VARIABLES as parameters as well as the array of DATA. How you'd go through the data will vary on how you want the label to work in game, but an example for multi-line dialogue would be to use a makeshift for loop, showing one line of dialogue at a time, and whenever the player presses next it continues through the makeshift for loop until it reaches the end and moves onto the next number until it eventually reaches the end of the dialogue. When you run into a label it'll store the number that corresponds to where that label starts. So you'd just jump ahead in the makeshift for loop with that number.
Currently Godot and Unity addons are my top priority since I use them the most and I imagine they'd be the most popular, although if another engine has more popularity I'll look into doing it first. Construct will probably take me some time as I've never used the engine personally and have limited experience with Javascript :)
I included a screenshot of an example of the JSON output with numbers to indicate the order you'd go through it as well as some quick pseudo code. Hope this helps clear it up, feel free to ask if it's still confusing!
ok thank you for the reply I'll try to apply what you said to construct js since event sheet is not compatible with with looping and getting key values