Advertisement

TADS

From Academic Kids

TADS is a programming system for creating interactive fiction games. The name is an acronym for "Text Adventure Development System".

Contents

History

The original TADS 1 was released by High Energy Software as shareware in the late 80s, and was followed by TADS 2 not long after. In the early 90s, TADS established itself as the number one development tool for interactive fiction, in place of simpler systems like AGT (Adventure Game Toolkit).

However, Graham Nelson's Inform has, since its release in 1993, slowly gained popularity and superseded TADS in the last half of the 90s. Nevertheless, TADS 2 has been maintained and updated at regular intervals by its creator, Michael J. Roberts, even after it became freeware in July 1996.

Multimedia TADS, introduced in 1998, allows games to display graphics, animation and play sounds, if the platform supports it.

Recently, TADS received a major overhaul with the release of TADS 3, which is a complete rewrite of the TADS engine, only retaining the platform-dependent code to ease porting. TADS 3 has many new features, such as efficient dynamic objects (with automatic garbage collection), structured exceptions, native UTF-8 strings, and many useful function classes.

According to the official TADS website (http://www.tads.org), as of November 2004, the TADS 3 system is in its beta release[1] (http://www.tads.org/t3dl.htm). While TADS 3 is still subject to last-minute changes, and while its documentation is incomplete, the TADS 3 compiler and interpreter are stable and they have been ported to the Unix, Macintosh and DOS platforms. It should be noted that several TADS 3 games have been entered into the 2002, 2003, and 2004 IF Competition.

TADS games

Games written in TADS are compiled to a platform-independent format that can be played on any computer for which a suitable virtual machine (VM) exists. Such virtual machines exist for most platforms, and in this respect, TADS closely follows the example of the original Infocom Z-machine, as well as modern languages such as Java and C#.

Whereas the TADS 1 and 2 VMs had to parse the commands entered by the player, before sending the results on to the game, TADS 3 employs a more general-purpose virtual machine, where the command-parsing is done by the game code itself, akin to Inform. The rationale for this is that it is easier to customize the parser.

The programming language

TADS 2 is based on C, with bits of Pascal.

A Hello world program isn't that simple to write in TADS 2, because TADS 2 requires a working world model to compile.

#include <adv.t>
#include <std.t>
 
replace commonInit: function
{
    "Hello World!\n";
    quit;
}
 
startroom: room; // We must define a startroom object.

Of course, the goal of TADS 2 is to make Interactive Fiction (and not Hello World programs) simple to implement, and in pursuing that goal it succeeds.

Nevertheless, TADS 3 dispenses with the requirement of a working world model, and also abandons the Pascal elements of the language.

function main(args)
{
    "Hello World!";
}

Further reading

  • Interactive fiction in general.
  • Inform is another interactive fiction design system that is comparable to TADS in terms of power, flexibility, portability, and popularity. Another well-regarded system is Hugo, though it is not nearly as widely-used as either TADS or Inform.

External links

Navigation

Academic Kids Menu

  • Art and Cultures
    • Art (http://www.academickids.com/encyclopedia/index.php/Art)
    • Architecture (http://www.academickids.com/encyclopedia/index.php/Architecture)
    • Cultures (http://www.academickids.com/encyclopedia/index.php/Cultures)
    • Music (http://www.academickids.com/encyclopedia/index.php/Music)
    • Musical Instruments (http://academickids.com/encyclopedia/index.php/List_of_musical_instruments)
  • Biographies (http://www.academickids.com/encyclopedia/index.php/Biographies)
  • Clipart (http://www.academickids.com/encyclopedia/index.php/Clipart)
  • Geography (http://www.academickids.com/encyclopedia/index.php/Geography)
    • Countries of the World (http://www.academickids.com/encyclopedia/index.php/Countries)
    • Maps (http://www.academickids.com/encyclopedia/index.php/Maps)
    • Flags (http://www.academickids.com/encyclopedia/index.php/Flags)
    • Continents (http://www.academickids.com/encyclopedia/index.php/Continents)
  • History (http://www.academickids.com/encyclopedia/index.php/History)
    • Ancient Civilizations (http://www.academickids.com/encyclopedia/index.php/Ancient_Civilizations)
    • Industrial Revolution (http://www.academickids.com/encyclopedia/index.php/Industrial_Revolution)
    • Middle Ages (http://www.academickids.com/encyclopedia/index.php/Middle_Ages)
    • Prehistory (http://www.academickids.com/encyclopedia/index.php/Prehistory)
    • Renaissance (http://www.academickids.com/encyclopedia/index.php/Renaissance)
    • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
    • United States (http://www.academickids.com/encyclopedia/index.php/United_States)
    • Wars (http://www.academickids.com/encyclopedia/index.php/Wars)
    • World History (http://www.academickids.com/encyclopedia/index.php/History_of_the_world)
  • Human Body (http://www.academickids.com/encyclopedia/index.php/Human_Body)
  • Mathematics (http://www.academickids.com/encyclopedia/index.php/Mathematics)
  • Reference (http://www.academickids.com/encyclopedia/index.php/Reference)
  • Science (http://www.academickids.com/encyclopedia/index.php/Science)
    • Animals (http://www.academickids.com/encyclopedia/index.php/Animals)
    • Aviation (http://www.academickids.com/encyclopedia/index.php/Aviation)
    • Dinosaurs (http://www.academickids.com/encyclopedia/index.php/Dinosaurs)
    • Earth (http://www.academickids.com/encyclopedia/index.php/Earth)
    • Inventions (http://www.academickids.com/encyclopedia/index.php/Inventions)
    • Physical Science (http://www.academickids.com/encyclopedia/index.php/Physical_Science)
    • Plants (http://www.academickids.com/encyclopedia/index.php/Plants)
    • Scientists (http://www.academickids.com/encyclopedia/index.php/Scientists)
  • Social Studies (http://www.academickids.com/encyclopedia/index.php/Social_Studies)
    • Anthropology (http://www.academickids.com/encyclopedia/index.php/Anthropology)
    • Economics (http://www.academickids.com/encyclopedia/index.php/Economics)
    • Government (http://www.academickids.com/encyclopedia/index.php/Government)
    • Religion (http://www.academickids.com/encyclopedia/index.php/Religion)
    • Holidays (http://www.academickids.com/encyclopedia/index.php/Holidays)
  • Space and Astronomy
    • Solar System (http://www.academickids.com/encyclopedia/index.php/Solar_System)
    • Planets (http://www.academickids.com/encyclopedia/index.php/Planets)
  • Sports (http://www.academickids.com/encyclopedia/index.php/Sports)
  • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
  • Weather (http://www.academickids.com/encyclopedia/index.php/Weather)
  • US States (http://www.academickids.com/encyclopedia/index.php/US_States)

Information

  • Home Page (http://academickids.com/encyclopedia/index.php)
  • Contact Us (http://www.academickids.com/encyclopedia/index.php/Contactus)

  • Clip Art (http://classroomclipart.com)
Toolbox
Personal tools