bic

bic

Good and bad tools for creating branching dialogues

Hello everybody :slight_smile:

I’m making a tool with the goal to help creating branching dialogues for game development. I want to make it easy to use and intuitive with the ability to export the story into different output formats. So far I think I have a solid foundation: 2 basic views for story display, very structured and scalable clean code, basic functionality to add or delete story elements.

Now I’m a little stuck because I’m not a domain expert :slight_smile: In other words I haven’t worked with dialogues for games yet (except for looking into yarn spinner, playing around with unity and unreal engine for a while and testing twine). Basically my issue is that I don’t know what tools are great and what tools are less so. Knowing what works and what doesn’t for experts would help me out a lot in figuring out what feature to implement and how to make it as intuitive and helpful as possible. The goal is to make a tool that doesn’t stand in the way of the creative process.

Maybe some of you can kick my butt in the right direction? I would greatly appreciate that :slight_smile:

And thank you in advance!

Most Liked

AstonJ

AstonJ

Hey Bic, welcome to devtalk :023:

It’s not an area I’m personally familiar with but what about looking at these:

  • Twine
  • Yarn Spinner
  • Ink (by Inkle)
  • ChatMapper

Also I’m not sure if it’s worth looking at books from @Paradox927 and @herbert, which might also contain some useful info…

Eiji

Eiji

Maybe consider my Elixir package:

With a simple and extensible DSL you can write any story and easily translate it using po files. In recent release there is lots of extra code for a session management and so on. This way you can easily write a simple game or presentation by generating a new Phoenix (web framework) based project, adding your LiveView pages and of course using the DSL and optionally translating the content.

I have even created a simple project to demonstrate how a video talk have been transformed into a presentation. You can use for example a Rust NIF to do the GUI or use wxWidgets bindings for Erlang language or even Scenic for embedded devices.

Working on HTML-based game at the very start should be simplest option and it’s also worth to mention that we have a LiveViewNative project. Let me know how that sounds for you.

Scarlet

Scarlet

You’re off to a strong start—clean, scalable code and a solid UI foundation already put you ahead of many early tools in this space. To kick you in the right direction: focus on how writers think, not just how devs structure logic. Look into what makes Twine fast for prototyping, why Ink by Inkle is praised for writer-friendly syntax, and how Yarn Spinner handles conditionals and variables intuitively. Key features to prioritize: non-linear navigation, variable tracking, previewing dialogue flow, and export options to JSON, Ink, or Yarn formats. Talk to narrative designers if you can—nothing beats real-world pain points to guide what not to do. You’re building the bridge between creativity and code—just make sure it’s one they want to cross.

Where Next?

Popular Game Dev topics Top

AstonJ
Please share!! :video_game: What did you use? What would you use going forward?
New
AstonJ
I hope we get some join at some point :star_struck: PS5 specs: Anyone else looking forward to the PS5? I am! :grin:
New
AstonJ
Looks really good - the anti-aliasing is awesome. Wonder if it’s temporal and whether they still need checkerboard rendering on the PS5?
New
New
AstonJ
I wish they would create an OS or let you run Linux like they did with the PS3…
New
AstonJ
https://www.powerlanguage.co.uk/wordle/ You have to start by entering a word (rather than just random characters) Here’s today’s (...
New
buslovskyi_design
Hello, dear Developers! My name is Alex, and I specialize in creating custom covers and logos for games designed for the Steam platform....
New
AtlantiaKing
Watch the trailer here: More info available on our steam page here: Don't Forget on Steam Don’t Forget is a 3D singlepl...
New
Paz
Hi there! I’m hosting a jam with my team and would like to invite you to participate :slight_smile: It’s about building just one level o...
New
RomanStarCoder
(Note: I said this on multiple other forums, but nobody either actually said anything, or the mods don’t approve me. I’m just wondering f...
New

Other popular topics Top

Exadra37
I am thinking in building or buy a desktop computer for programing, both professionally and on my free time, and my choice of OS is Linux...
New
siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
PragmaticBookshelf
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
AstonJ
If you get Can't find emacs in your PATH when trying to install Doom Emacs on your Mac you… just… need to install Emacs first! :lol: bre...
New
husaindevelop
Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
AstonJ
This is a very quick guide, you just need to: Download LM Studio: https://lmstudio.ai/ Click on search Type DeepSeek, then select the o...
New