TADS 3
Jump to: Downloads - Documentation - Reporting Bugs - Notes for TADS 2 Users - T3 VM Technical Information
TADS 3 is a robust, modern programming environment specially designed for creating Interactive Fiction.
The current General Release version is 3.0.18, available for download here - see the links below.
Latest update: The latest general release is version 3.0.18.1.
IF Archive note: Most of the packages below are also available at the IF Archive, but the Archive's versions might not be as up to date as the ones below. We generally send updates to the Archive only at major releases, to avoid overburdening the Archive's managers.
Current Stable Release Packages
Author's Kit for Windows with Full
Documentation. This has everything you need to write TADS 3 games
on Windows - the compiler, the Workbench development environment, the
libraries, and other tools. This Kit is packaged as an automatic
installer for easy setup: just download and run this file to install.
This package includes full documentation, including Getting Started
in TADS 3, Learning TADS 3, the TADS 3 Tour Guide,
the System Manual, the Technical Manual, and the
Library Reference Manual. [14 MB download, 54 MB installed;
May 5, 2009]
Author's Kit for Windows - No
Documentation. This version of the Author's Kit includes all of
the same tools as the version above, but does not include any
of the documentation. Instead, this package includes links to the
books on-line. If you have a slow Internet connection or limited disk
space, you might prefer to download this smaller version. [5.6 MB
download, 15 MB installed; May 5, 2009]
Player Kit for Windows.
This is the full HTML TADS interpreter, which can play TADS 2 and TADS
3 games and features full multimedia support. [1.2 MB download, 3.0
MB installed; January 29, 2010. This version fixes a problem with
audio playback that affected versions Win114 (5/5/2009) and Win113 (4/28/2009).]
FrobTADS provides a set of the TADS
compilers and tools for Mac OS systems. The tools run as command-line
programs, so this is best if you're comfortable with the command
shell.
TADS
Workbench for Macintosh (download)
is a complete TADS 3 GUI development environment for Mac OS, including
the compiler, documentation, text editor, and interpreter, wrapped in
a nice Aqua user interface. (Warning: as of this writing, this is
based on an older version of the TADS tools, and hasn't been updated
in a couple of years. To get the current tool set you'll need
FrobTADS instead.)
CocoaTADS (download) is a
full Multimedia TADS Interpreter for Mac OS X. As of this writing,
CocoaTADS is "pre-beta", meaning that it's still in the development
stages, but users have reported excellent results with most games.
The second public test release was in July, 2009 (the first was
Februrary '09).
Zoom is another
interpreter option for Mac OS users. Zoom is a multi-system
interpreter that plays games written for numerous other IF systems
besides TADS, so it saves you the trouble of installing multiple
interpreters. Note one limitation, though: Zoom plays TADS
games in text-only mode - it doesn't provide Multimedia TADS features.
Spatterlight is another
multi-system interpreter for Mac OS, similar to Zoom. Spatterlight
runs TADS games in text-only mode.
FrobTADS is another interpreter option for
Mac OS users. FrobTADS plays games in text-only mode. Note that
installation is Unix-style (it's distributed as source code).
FrobTADS is Nikos Chantziaras's version
of TADS for Linux and other Unix platforms. FrobTADS is distributed
as a highly portable Unix source package with easy-to-use autoconfig
installation. Please see the FrobTADS page
for full details.
FrobTADS works not only on Linux, but
on almost all Unix and Unix-derived platforms as well.
FrobTADS also runs on BeOS.
Author's Kit for MS-DOS
(djgpp). This is a complete TADS 3 author/player kit for MS-DOS.
This version uses the "djgpp" 32-bit DOS extender (included in the
package), so a 386 or later processor (486, Pentium, etc) is required.
You don't need Windows to run this - just plain old MS-DOS.
[May 5, 2009]
Adv3 adventure game library.
The library is included in the Author's Kits, so you don't need to
download this separately unless it's dated more recently than the
latest Author's Kit (above). Note that you should always make sure
you have the latest Author's Kit if you download a new version of this
library. [May 5, 2009]
System and run-time library
header files. This is a collection of header files defining
system interfaces. This is included in the Author's Kit and source
distributions. [May 5, 2009]
Porting kit (system source
files). This is the generic C++ source code for the TADS 3
compiler, interpreter, and other tools, for porting the system to
other platforms. The package includes test scripts, system headers,
and documentation files. Important: You'll need the latest
version of TADS 2 for your platform in order to compile this - see the
TADS 2 Patch page for a download link.
[May 5, 2009]
Documentation. This is the full
documentation package, including Getting Started in TADS 3,
Learning TADS 3, the TADS 3 Tour Guide, the System
Manual, the Technical Manual, and the Library Reference
Manual. [May 5, 2009]
Older Unix packages
The following Unix packages have been superseded by FrobTADS, and are no longer maintained. We
offer them here for historical reference only - these aren't
recommended for current use.
Author's Kit for Linux.
This kit has everything you need to write and play TADS 2 and 3
games on Intel x86-based Linux systems. This distribution is a
pre-built Linux binary with an automatic installer script, so it's
quick and easy to set up. [March 7, 2005, based on the September 12,
2004 generic source distribution]
Author's Kit for Unix. This is the
complete TADS 2 and 3 authoring kit for most other Unix and Unix-type
systems. This distribution is in source-code form, so it works on a
wide range of hardware and Unix variants. See also the FrobTADS page. [June 2, 2005, based on the
September 2004 generic source distribution, plus Dan Shiovitz's
terminal I/O path of 5/17/2005]
On-line documentation. The downloadable documentation package (see above) is quite large, mostly because of the extensive cross-referencing in the Library Reference Manual. If you'd prefer not to download the documentation, you can view it here.
Errata for Learning TADS 3. This is Eric Eve's list of known errors in Learning TADS 3, along with corrections.
Return to Ditch Day is a game I wrote partly as an example for TADS 3 authors, but mostly as a game for its own sake. It's a medium-size game (reported playtime is about six to twelve hours); it's a bit of a puzzle-fest, but it's a story-oriented puzzle-fest. The complete source code is available on the IF Archive, so if you play the game and wonder how a particular bit works, you can go straight to the code and find out.
Eric Eve's TADS 3 page. Eric is the author of much of the official TADS 3 documentation, and his site has even more resources. Offerings include a collection of sample games, translations of some well-known Inform examples, and pointers to Eric's own games.
Path finder (Dijkstra's Algorithm) - included in the lib/extensions folder in the Adv3 distribution and Author's Kits. This module implements Dijkstra's Algorithm, a well-known path-finding algorithm. The implementation here is abstracted so that it can be used with any sort of "graph" data structure, but the module also includes a ready-to-use subclass for the most obvious IF application: finding the best path from one location to another in a game's map of rooms. I used this in Return to Ditch Day to implement the campus map (an object found within the game that can be consulted for step-by-step directions to any building on campus).
Subjective-time clock - included in the lib/extensions folder in the Adv3 distribution and Author's Kits. Implementing a plausible form of wall-clock time in IF has always been notoriously difficult. This module follows the modern approach of linking the passage of story time to the occurrence of key plot points, but tries to build on this "narrative time" approach by also allowing for in-game timepieces that show an exact "objective" time. I used this in Return to Ditch Day, and it seems to produce a pretty good effect.
Template Quick Reference. Eric Eve created this quick-reference guide to the object "templates" defined in the library. Templates are a short-hand notation for defining object properties that save you the trouble of typing the names of the most commonly-used properties. Templates can save you a lot of typing while you're creating a game, but you have to know where to look up the definitions to know what they mean. This quick reference can help a lot. (PDF)
Library Reference generator program. This is the source code for the program that we use to generate the Library Reference Manual from the Adv3 library sources. Edward Stauff originally wrote this program and was kind enough to contribute it. We offer it for download for anyone who wants to customize the way it generates the library, or for use in generating documentation for their own libraries. Please note that this is UNSUPPORTED - we might be able to answer questions about it as time permits, but we probably won't be able to offer help fixing bugs or making customizations. This program is written in C# (with an optional C++ component), so to build it you need the Microsoft C# compiler, and Windows is probably the only option for that. [April 10, 2008]
Technical Manual Wish List. The Technical Manual is designed to be a work in progress, with new articles added over time as users find things they'd like to know more about. This page has a "wish list" of topics for future editions.
TADS IFID Generator. Every TADS game should have its own "IFID" - an Interactive Fiction Identifier, which gives archivists and players a way of uniquely identifying your game. It's the same idea as the ISBN for a book. This page is an on-line application that will generate a new IFID for you. You can use it to create an IFID when you start a new game project.
To report a bug, please use the TADS Bug Database. See our tips on reporting bugs for more information.
If you've used TADS 2, we want you to know that TADS 3 is an entirely new system, built from the ground up. Unlike past upgrades on the TADS 2 branch, this version is not compatible with TADS 2 source code, so you can't easily move your existing TADS 2 games to the new version. If you currently have a TADS 2 project under way, we recommend that you stick with TADS 2 for that project. The time to move to TADS 3 is when you're ready to start a new project.
An overview of new TADS 3 features that weren't in TADS 2 can be found here. You'll find that TADS 3 eliminates many of TADS 2's limits and adds a great deal of new power and functionality. Of course, this means that there'll be new things to learn, but we think you'll find that your knowledge from TADS 2 will help you get started fairly quickly with the new version.
The T3 VM's internals are documented in detail in the TADS 3 Technical Manual, available as part of the documentation package.
