Need advice choosing an authoring development system

I need advice choosing an authoring development system.

I’m ready to code my second IF game/story, my first one having been Finding Martin (released in 2005, written in TADS 2). I’d really like to do something playable on an online website but have given up trying to get TADS 3 UI to do that.

I’ve got a good story plan but I’m not sure if I can pull off coding it in a non-TADS development system (for the sake of gaining online playability). My ability to learn new things has declined a bit as I’ve gotten older, and my eyesight is deteriorating even more quickly.

I’m most comfortable with C-style syntax, database apps, and very basic HTML, Javascript, or PHP.

I’ve always shied away from INFORM because of the “natural language” element. I’m intrigued by TWINE – does that lend itself to parser and room stuff, or is it just for choice-based stories? What about other development systems?

Is there a way for a player to save and restore with online playability?


Having worked only on Twine (SugarCube mainly), I can’t say whether it is best or not for what you would want to do. Also note that Twine is just a compiler of different formats (incl Harlowe, SugarCube, Chapbook, etc…), each having a different syntax.

Twine is mainly used for Choice-Based/Hypertext stories, though it could be possible to create a parser game from it (difficult and not intuitive to do though).
AFIAK all Twine formats have some sort of save functions.


Fortunately, most systems aim for online playability (including save/restore) these days, since it’s the easiest way for less-enfranchised players (i.e. people coming across your game who don’t already have a Z-machine/TADS/etc interpreter set up to their liking) to jump in and play.

Twine, unfortunately, is not really designed for parser games. It’s straightforward to get started with, but out of the box it’s meant for choice-based games, and you have to do a lot of work to implement a command parser and an elaborate world model.

I’m a big fan of Inform 7, but its natural-language syntax isn’t for everyone. Its main goal is to optimize code readability, though, so that may be helpful if your eyesight causes problems. (The idea is that it’s easier to accurately take in “increase the score by 5” than “score += 5” when you’re skimming a long block of code.)

If you’re fond of database apps, you might also look into Dialog, which is a relation-based system inspired by Prolog. It’s relatively new to the scene (big emphasis on the “relatively”!) but I’ve found it quite straightforward to pick up compared to TADS, which is weighed down by the relics of its long history.

Or you might try Adventuron, which is explicitly designed to be easy to pick up (for use in the classroom and such). It’s also very database-like (the main part of the coding is putting in your data and the relationships between it) but the syntax is more C-like than Dialog’s.


I don’t think anyone codes to TADS Web UI these days. You don’t need to in order to make TADS games playable online. Parchment can play TADS 3 games in the browser, for example.


Thanks, I will check it out.

1 Like


TADS 3 with WebUI is unnecessarily convoluted, and requires too much to get running in any capacity, and Parchment just completely skips all of that.

At of the time writing this, Parchment does lack some markup functionality (like clickable text, mono-width fonts, and centering), but I have heard that they’re currently working on getting this working for TADS 3 games.

Therefore, you could probably just make the game normally for QTads (or your preferred interpreter), and rest assured that Parchment will catch up to you later. Once the missing markup stuff is handled, it’ll just work for your game, as-is.

TADS 3 also has functionality for rewriting clickable text when it’s running in something that doesn’t support it.


Thanks, I’ll look into these suggestions.

1 Like



What about Inform 6? It’s Object Oriented and has ample support for publishing online, where you can “spice it up” with any and all HTML related technologies.

You may check my own published works (either on or my web page) to see a fair and simple example of what’s possible.

Kind regards,



Thanks for the suggestion. is Inform 7 significantly different from Inform 6?.

1 Like

Very much so. Inform 7 is a rule-based language with English-esque syntax; Inform 6 is an object-based language with C-esque syntax.

The connection between them is that Inform 7 compiles to Inform 6.


You can find loads of I6 documentation and samples galore online.

It’s documentation web is the canonical source, but it’s just the begining.

There is plenty IDE support for coding: I use VisualCode + Inform 6 Extensions, but there are plenty of other options.

Hopefully helpfully,



Good to know, thanks!

1 Like


1 Like

I am going to pimp QuestJS, because I wrote it! Read about it here:

It is all in JavaScript, but if you are used to TADS, you will be fine with this. There is plenty of documentation, and your game is basically a web page, so easy to put on the web. Players can save and load games, and there are all sorts of options for the UI.

I wrote a game that was in IFComp a couple of years ago, if you want to see how it plays.


You could also consider PunyInform, which to me is even simpler than using normal Inform 6. PunyInform generates z-code files but it is possible to get them running online, though I never tried it.

A tutorial video is here: PunyInform tutorial 1: Creating locations - YouTube


Thanks for the info. This sounds really cool, especially the saving part.

This looks like it plays and stores online using Inform 7:

1 Like


The basic build of Parchment works with playing my TADS 3 compiled games online (these have a T3 extension). I haven’t yet figured out if there is a way to get the games to look as cosmetically nice as they look on my local interpreter – line spacing seems a bit funky and html center tags seem to be ignored so far. But that’s not a deal breaker for me. Thank you – I plan to code with TADS 3 since it will save me from having to learn a new system.

1 Like