T3 in a Browser

Right now this might result in duplication of effort, considering that Mike announced a while ago his intentions to provide a web-based interpreter as part of TADS itself. On the other hand of course, more options are always nice to have.

Back to the original topic of this thread:


It seems TADS 3 is trying to take “online IF” pretty much to the same place it tries to take everything else too, to the extreme :slight_smile: (Dunno how else to describe an IF language that would allow you to write networking code in your game, if you so wish…) Hopefully all will work out on the end.

I suppose that means one could now actually even write a MUD in TADS. (Edit: well, when it’s ready, at least.)

Mike’s post maybe makes Jim’s funding pool less urgent (I’m not sure; I don’t get a sense of whether the thing is 3 months or 3 years from release…) but I wanted to mention that Kickstarter might be a good platform for this sort of thing. In my experiences with it, people are willing to donate more money than they would otherwise, because of the (very real) possibility that the funding goal won’t be met and they won’t have to pay. But then if the funding goal is in fact met, everybody is happy (the fundraiser for getting the money, the donators because they pledged the money a long time ago and have forgotten about it, but now they get something they wanted and feel good about contributing).

Longwinded way of saying: yes, browser-based TADS is much needed, and I’d be willing to contribute to a bounty, too, if we think that’ll help.

As RealNC/Nikos said, more options are good, especially because Jim is talking about a client-side interpreter (I think?) and the other one definitely is server-side.

Just for the record, it is somewhat possible to run TADS3 games in a browser in a client-server architecture. Solution which I’m running (only for testing purposes of my translation project) is composed of GlkOte, which is a javascript terminal for IF programmed to send input text with AJAX call to PHP script on Linux server, which in turn executes frobtads interpreter runing in plain mode. Script pipes batch of commands to load a game, execute one user command and saves the game again. Output of interpeter is parsed and returned to GlkOte.

As you can see, it is really not meant as a long term solution, because it is a dirty bag of hacks with several principial limitations. For example there is no support for menus, for single character input (just a complete line), no possibility for interactive games and so on.

There is another complication - because whenever game asks disambig questions, this state and ability to answer such question is not remembered in saved game. I was able to overcome this problem only by modification of adv3 to include special marks in output text for the frontend indicating, that it should repeat previous command. This means, that you must be able to recompile game for webplay.

So to sum up, the only positive of this solution is, that it is really easy to make. If someone is interested in more details, just drop me a line.

Support has been already implemented for the next version, but it has not been officially released yet.

See the following thread, starting at this post: https://intfiction.org/t/creating-ria-interpreter-for-tads-3/1984/10

You can try to get it running right now with the Git sources of FrobTADS (instructions on how to compile your game and how to run ‘frob’ are in the thread), but PHP-wise, you’d be on your own. When it is officially released, the plan is to have ready-made PHP scripts that will handle everything (most importantly multiple connections).

Ah, it is finally approaching. Sorry, I’ve missed that thread. Thank you for info, I’ve tested it and it looks promising.