What tool do you use for interactive nonlinear stories?

alglezalglez Posts: 1Member


I would like to know what approach could be the optimal for nonlinear stories. I'm working in a game which has some linearity, but also some nonlinear parts.

I think to have separate files with the dialogues and possible outcomes could be a reasonable and desirable approach.

Actually the first approach I thought about is writing Json files with the dialogues, as well with some scenes options or extra dialogues options (if necessary). In this video Happiecat use inklewriter (http://www.inklestudios.com/inklewriter/). Similar to inklewriter there is Twine (https://twinery.org/), but, as far as I know, there is no option to export to Json without an external plugin.

Another option seems to use in programming language (http://www.inklestudios.com/ink/). Which seems not that bad, since is possible to export to json. But, since it is a scripting language, it has no visual diagram (could be bad or good). Anyway I think It will be nice to have integration within godot.

And there it is Scoria, but I don't know if it will be suitable for my purpose, or how to use it.

Any other tool that i'm missing or any other more interesting approach?


  • whooshfrostedwhooshfrosted Posts: 30Member

    Hey there,
    When Godot 3,0 comes out, I will try using Godot's visual programming language for my dialog trees.

  • whooshfrostedwhooshfrosted Posts: 30Member
    edited May 2017

    Some discussion you might be interested in here:

    I also tried ArticyDraft/ArticyAccess for a while and the editor was really nice. Unfortunately the ArticyDraft editor is PC only, and I don't use Windows any longer. The Access part is put inside your game engine. You would need to buy the code base for Linux, but there's a cheaper option where binaries for Windows and Apple are available. I would only recommend using it with C#, so perhaps when C# comes to Godot 3.0.

  • TwistedTwiglegTwistedTwigleg Posts: 1,000Admin

    I've made a dialog/story system in Godot 2 for Lost Sleep, which has a branching story (somewhat non-linear?).

    I used Godot's built in JSON parser and wrote all of the JSON dialog by hand. Later I wrote a plugin for making the dialog files in the Godot editor. It wasn't terribly difficult to write the system, though I'd already written a few dialog systems in other frameworks/engines and in other programming languages, so that probably helped :D .

    I used a system similar to the top answer in this stack exchange post. I would suggest learning writing your own dialog system with something like JSON, since Godot has a built in JSON parser, that way you can fine tune the system for your project.

    There is also SMRT-Godot and SGLscript, which are in the Godot Asset library. I haven't used either of them, but they look pretty cool :)

Sign In or Register to comment.