History of TADS

For the IF Code Amnesty Day, I’m putting together an archive of an old game I half-wrote and then abandoned. To explain the context of the game, I’m writing a short history and am curious if people can fill me in on some of the history of TADS.

I have extensive notes from when I started writing the game, which was January 2004. I believe the notes are dependable, but it’s been nearly two decades so a bunch of the details I don’t remember.

It appears I started to write it in ADRIFT at the start of January 2004, threw that away and started with TADS 2. Later in January 2004, I threw away the TADS 2 code to use WorldClass, which appears to be a different TADS 2 library, by Dave Baggett. I have no knowledge of it, and found a reference to in in SPAG #5.

Apparently mid-March 2004 I threw the WorldClass code away and started in TADS 3. Weirdly, IF Wiki claims the first beta release of TADS 3 was September 2004. What was I using?!

In May 2004, I wrote I was betatesting Return to Ditch Day (which IF Wiki confirms).

I worked on Convolution extensively throughout 2004 until mid-September and then I went on a hiatus. The discussion in my notes that year seems to cover a fairly extensive TADS 3 adv3 library, so I feel like it must have been out of beta.

Can anyone remember WorldClass? When was TADS 3 actually released?


I’d love to learn more about the history of TADS! The more I dig into the library, the more awe I have! :smile: Hopefully someone has the knowledge to share with us!


I feel that way… when I comb through the adv3 library extensively I feel like I’m beholding the workings of a truly marvelous machine…


TADS 3 Change History doesn’t give a release date for the first version of TADS3, but it does give a date for TADS 3.0.1 of June 17th, 2000.

It also mentions TADS 3.0.12 being released on September 15th, 2006, and that “this is the TADS 3.0 General Release version”, suggesting that earlier versions were regarded as works in progress.


As I understand, T3 had a development strategy akin to what we’d now call “early access”, with in-dev builds being relatively widely available for years prior to the official release.


This might be useful, especially the links: TADS - Wikipedia


The TADS 3 - IFWiki page has more dates. Sept 12 2004 was beta.


Also the TADS Release History page has dates and downloads for a bunch of earlier 3.0.x versions? Going back to 3.0.0 on April 1, 2000.


If so, that makes today the 23rd anniversary of TADS 3!

I think Josh’s date is the correct one, if by “actually released” you mean the first time TADS 3 was widely available. I was coding TADS 2 back then. It felt dicey, but I decided to rewrite my work-in-progress in TADS 3 (which, of course, I never finished) rather than risk being left behind.

I believe Dave Baggett coded WorldClass to simplify and add consistency to the TADS 2 library. In this sense, WorldClass was to TADS 2 what adv3Lite is to TADS 3. Before TADS 3 came along, I looked at WorldClass and thought it was…interesting, but not compelling enough to switch from the standard library. (Also, by 1999/2000 I recall sensing WorldClass to be abandoned.)

Baggett and others also formed a company called Adventions to sell IF games (perhaps using a shareware model?) He was behind the Unnkulian series. He also co-wrote +=3 to settle a rec.arts.int-fiction flame war. (Baf’s Guide: “Written as an example of how not to write games…Not meant to be played and enjoyed.”). All are in TADS 2. IFWIki says +=3 was coded with WorldClass.

Hope this helps.


Adventions was my introduction to all IF! Played all of the Unnkulians plus Horror of Rylvania… also found and played the 3 game just because it was by Baggett. Also downloaded but never played his GC parity bit game…


It occurred to me that WorldClass might be in the if-archive, and lo, it is there.

The documentation has a brief introduction to the differences between WorldClass and the default TADS 2 library, and some sample code.

If you’re a TADS programmer, it’s a nice way to step back in time.


Thanks for all the helpful responses! Certainly an interesting time back then. I’m still surprised I jumped into TADS 3 so quickly and wholeheartedly!


I’ll look later into the “Great Chronicle of IF” (that is, the r.a.i.f archives, whose I manage to turn the 350+MB .mbox file in a more or less browseable format… I’m still hunting for a mean of pruning out the aughties debate from the spam (applying eyeball mk.I on 120.000 posts is out of question, period), but what matter here is:

[Announce] TADS 3 preview release

    Subject: [Announce] TADS 3 preview release
    From: "Mike Roberts" <mjr-SEENOTE@hotmail.com>
    Date: 2000/04/01
    Newsgroups: rec.arts.int-fiction
    Organization: SBC Internet Services

Gunther Schmidl wrote and suggested that I should create a fake HTML TADS
release whose sole new feature is the much-needed <BLINK> attribute, as an
April Fool's joke.  Great idea, but I thought it might be even more amusing
to create an entire fake TADS 3 release.

On ftp.gmd.de, in incoming/if-archive, you'll find these files...

tads_authkit_300.exe - mock-up TADS 3 author's kit, self-installing,
        for Windows 95/98/NT
tads_300.zip - fake ZIP file version of above
tads_src_300.zip - simulated TADS 3 source code

I included the zip file version (tads_300.zip) for non-Windows users who
might at least wish to look at the falsified documentation included.

This release has no adventure game library, so it's not ready for anyone who
wants to start writing a game with it - you should stick with TADS 2.5.2 for
that.  However, the system portion is starting to settle down, and I think
it's getting to the point where it might be of some general interest here.
In addition, it's far enough along that anyone interested in writing their
own complete alternative library could start immediately; indeed, my own
plan is to turn next to creating the official library.  While I don't
anticipate a lot of sweeping, incompatible changes over the short term, it's
still possible that some might turn out to be necessary; so if you do start
actively writing code with this release, please let me know so I can keep
you apprised (or appraised, as they say in the real estate business) of new

I haven't made a lot of public announcements about TADS 3 in the past, to
avoid the risk that the project would turn into vaporware, but it's now far
enough along that I'm cautiously optimistic that something will come of it.
So, if you aren't sure what TADS 3 is all about, you can look at
<old, no more functional, link> for an overview.


[Announce] TADS 3.0.1 uploaded

    Subject: [Announce] TADS 3.0.1 uploaded
    From: "Mike Roberts" <mjr-SEENOTE@hotmail.com>
    Date: 2000/06/17
    Newsgroups: rec.arts.int-fiction, rec.games.int-fiction
    Organization: SBC Internet Services

I've just uploaded TADS 3.0.1 to ftp://ftp.gmd.de/incoming/if-archive.  This
is another "early adopter" release, in that the library still isn't ready.
This version has numerous small improvements; the included change log
(changes.htm) provides details.

For those wondering about the status of TADS 3, I am still not ready to
predict a completion schedule, but progress is being made.  Right now I'm
working on the library; much of the world model is in place, and I'm
beginning work on the command execution system.

The files are:

tads_authkit_301.exe - TADS 3 Author's Kit for Windows 95/NT
tads_301.zip - TADS 3 compiler/tools/documentation for Windows 95/NT
tads_src_301.zip - source code

(tads_301.zip contains the same files as tads_authkit_301.exe, but packaged
as a zip archive for non-Windows users who want to download it to look at
the documentation and other auxiliary files.)


whose points that 3.0 and 3.0.1 release was sneak prewiews of sort, lacking the adv3 library. But I can’t figure when was fully released, for now, because, well, there’s a sort of Y2k+ bug in RFC 822 the format of the Date: field, and many early aughties thread are not in the correct sequence (I use a program named mhonarc(1), whose produced a workable albeit not-so-chronological HTML threaded index similiar to the one generated by Todd Nathan in 1996…)

HTH and
Best regards from Italy,
dott. Piergiorgio.
(now cooling down this CPU…)


Oh god, I tried to do that once. Started writing down subject-line regexps to filter out “most” of the spam. After a couple of hours my brain rebelled and I couldn’t face it any more.


Considering what ilk of regexps one must wrote for filtering out spams, I’m unsurprised that even Zarf’s brain rebels…

I’m toying about the idea of using a bayesian filter with the stock setup (because the posts are up to 2012, the spams are 1st or 2nd generation, hence definitively in the “openly obvious” category) albeit at the risk of losing the few, if any, genuine AIF debate (this imply that sadly is nigh impossible cleansing the archive of alt.xtrek from spams…), but for me tackling the spam cleansing from r.a.i.f archive It’s a really low-priority project, more or less stuck at “feasibility analysis” stage; anyway, the spam’s Subject: are sooo obvious that is easy to skip them from the index.

Best regards from Italy,
dott. Piergiorgio.


Is the .mbox file available for others to look at, in case they wanted a slice of the insanity pie?


Yeah, the IF Archive has folders for both raif and rgif, including the .mbox files as well as a bunch of other stuff.


For some early years, people were collecting and curating the posts. After that period, you have to contend with the mbox files:


…which are not a fun time.


Uh, pardon my ignorance. What is Code Amnesty Day, exactly?


(Barges in like Kool-Aid Man)

Did someone say Source Code Amnesty Day?