INSTRUCTIONS
Here's some information on how to use the app:
This app is meant to work together with the official Construct 3 tutorial from Laura_D called Branching
Dialogue Using Json:
Please note, this is still very much an alpha version so expect bugs and things breaking! Collaborators
are warmly welcomed!
The basic idea is to create character dialogue trees from the big plus button at the top. When you have
the first node of a dialogue tree, you can add more dialogue blocks to it from the smaller plus button
in the node. You can also change the type of the node to "question" in order to add a question with
branching answers.
When you are done with you dialogue tree, you can export it as a JSON file from the export button at the
top bar. You should be able to then take this file to Construct 3 and especially to the tutorial
.c3p-file created by Laura_D. Simply import as a project file and replace the existing json file import
in the eGame event sheet on even 2 (action: -> AJAX: Request dialogue.json (tag "LoadDialogue"))
The characters get assigned a dialogue from the JSON based on their "SceneID" instance variable value.
Some things to note:
You can drag the dialogues around to arrange them the way you prefer. Dragging a parent dialogue will
also move the children. You can also move the entire canvas by dragging from an empty area.
Changing the name of the character in one dialogue tree will change it for all the nodes. If you want
another character in the same JSON file export, use another dialogue tree.
The "next" value tells Construct which node it should go to after the current one. We are automatically
setting it to the next child node if the user has created one. If there is no child node, then the user
can define where to go next by setting the value manually.
The ID for each node is automatically assigned and I don't recommend changing them for now.
Adding line breaks in the text are of the node will separate those into different dialogues in Construct,
meaning that they will be displayed separately one-by-one. That way you can make sure large texts fit
the dialogue box design of your game.
Known bugs:
- Plain Text import only works for a single character at the moment
- When zooming the page back and forth the lines can get dislocated. A page refresh should fix the issue.
Important info for developers:
- Always make the change in the master object called gameDialogueMakerProject and then update DOM. Otherwise there will be issues.
TO DO:
- only update visible lines for better performance
- Add button that will auto-position nodes
- Proper mobile support
- Mouse wheel zoom
- Generic JSON exporter for other game engines
- Automatic splitting of long dialogues based on character count treshold setting
- Smart reordering of IDs based on user input
- Allow answer nodes to only connect to question nodes