TADS 3 Technical Manual Table of Contents

Introduction

Part I: Fundamentals

Creating Your First Project

Tips on Designing your Game

IF Design: In Practice

IF Design: In Theory

Object-Oriented Programming Overview

Some Common Input/Output Issues

Using Build Configurations

Understanding Separate Compilation

Using AutoHotKey with the Workbench Editor (Windows)

Bibliographic Metadata - the GameInfo Format

Part II: TADS 3 In Depth

Where Messages Come From

Action Results

Verify, Check, and When to Use Which

How to Create Verbs

Custom Preconditions

Message Parameter Substitutions

Implied Action Reports

Lists and Listers

Tips: A Context-Sensitive Help System

Creating Dynamic Characters

Choosing a Conversation System

Programming Conversations with NPCs

NPC Travel

Using the Banner API

Part III: Advanced Topics

Banishing (and Changing) Awkward Messages

The Command Execution Cycle

Manipulating the Transcript

Redefining Scope

Multiple Inheritance

Using Nested Rooms as Staging Locations

Handling Odd Noun Phrases

Global Command Remapping

Writing a Game in the Past Tense

Internet Media Types for TADS

Workbench Project Starter Templates

Part IV: T3 VM Technical Documentation

Introduction

Design Philosophy

Design Goals

Notation and Conventions

Machine Model

The Metaclasses

Byte-Code Instruction Set

Image File Format

Portable Binary Encoding

Character Mapping

Debug Records

t3vm Function Set

Metaclass Identifier List

Saving and Restoring State

TADS Special Characters