The ZZT & ZZT-OOP Wiki
ZZT is Tim Sweeney's 1991 text-mode adventure game, and the game-maker that came inside it. Every wall, monster and door is a character from the PC's character set; every talking character, shop and boss is an object running a small program written in ZZT-OOP. This wiki explains how all of it really works.
What makes this wiki different: everything here was checked against the real engine. Each statement is backed by one of:
| Tag | Meaning |
|---|---|
| tested | Run in the real ZZT 3.2 engine (DOSBox, or Zeta in a browser) with an automatic check. |
| source | Read in the engine's own source code (the Reconstruction of ZZT, which compiles to a byte-for-byte copy of ZZT 3.2). |
| manual | From the original ZZT-OOP manual shipped with the game. |
| corpus | Measured across thousands of real ZZT worlds from the Museum of ZZT. |
Where the manual and the engine disagree, the engine wins, and the page says so.
Start here
- Your first object: a talking sign in five minutes.
- How objects run: turns, cycles, messages and labels. Read this once and most mysteries go away.
Reference
- Command reference: every ZZT-OOP command, A to Z, with what the engine really does.
- Directions & conditions:
SEEK,FLOW,CW,#IF ALLIGNED,ANY BLUE KEY, and the full list of kinds and colours. - Text, menus and message boxes: one-line messages, scroll windows,
$titles and!choices. - Music: the
#PLAYnotation, with measured frequencies and durations. - Worlds and the engine: boards, items, keys, health, timers, limits, the debug console, the file format.
Making games
- Quirks and gotchas: the surprises that catch every ZZT author, all verified.
- Cookbook: tested recipes: NPCs, menus, shops, gates, counters, enemies, cutscenes, bosses.
- Designing good ZZT games: what the best worlds do, measured across 3,000+ clean worlds.
- Tools: editors, emulators and the test tools used to write this wiki.
Super ZZT
- Super ZZT: everything that differs in ZZT's sequel: big scrolling boards,
/e 5moves, two-line messages, Stones of Power, hint key, new creatures. Tested in the realSUPERZ.EXE.
Background
- Sources and credits: where every fact came from.
This wiki covers ZZT 3.2 (the last official version, and the one nearly every world targets). Super ZZT has its own page. Extended engines such as Weave ZZT are not covered: their extra commands (#speed, #color, #put at…) do not work in real ZZT.
Play real ZZT on your phone with ZZTboii.