ZZT Versions

An overview of of ZZT versions used to play its worlds today, as well as historical releases and hacks.

Authored By: Dr. Dos
Published: Apr 14, 2025
RSS icon

Page #1/3
1 2 3 >

If you're interested in exploring the thousands of user-created worlds made for ZZT throughout it's 30+ year history, you'll need a program capable of running ZZT worlds. There are two main programs used to play ZZT today: ZZT v3.2, the final official release of ZZT and ClassicZoo, a more modern source port that adds a number of conveniences while maintaining compatibility with worlds designed for the official program.

Below are links which when clicked will bring you to a page where you can download the latest official release of each of them. If you are using ZZT v3.2 or the DOS version of ClassicZoo, you'll want to download the Zeta emulator as well unless you plan to play on vintage hardware. Either of these programs will allow you to play nearly every ZZT game created from 1991 to 2020, and a significant number of games still being made to this day.


ZZT v3.2
Alternatively:
The Reconstruction of ZZT
The original program for MS-DOS, used to create and play thousands of ZZT games.

ClassicZoo
An enhanced port of ZZT with added quality of life features including native support for modern OSes.

Zeta Emulator
Run DOS releases of ZZT, ClassicZoo, and other ZZT variants with no setup required!

Other worlds hosted on the Museum of ZZT require specific programs in order to play them. ZZT has a successor, Super ZZT which is needed to play any Super ZZT worlds hosted on the Museum. Many modern releases make use of a greatly expanded fork of ZZT known as Weave, which due to more frequent updates and incompatible changes is traditionally bundled with any games which require it. By doing so, players don't need to hunt for specific versions of Weave that will be compatible with a given game.

For this wishing to dive right into the games available here on the Museum of ZZT, that's all you really need to know. If needed, there are more detailed instructions on using Zeta with ZZT v3.2 available in the ZZTing With Zeta article.

If you're interested in an overview of these programs and a few less frequently used alternatives, continue reading for more information.


ZZT v3.2 [Link]

zzt32-title
ZZT v3.2 running the first ZZT world, Town of ZZT

The final official release of ZZT. The original ZZT was effectively the only program capable of playing ZZT worlds for nearly thirty years. Due its long legacy, it remains the primary target for ZZT worlds that don't require any extensions to ZZT's limits or feature set which are offered by more enhanced ports of ZZT. Nearly every world hosted on the Museum of ZZT is designed for ZZT v3.2. When there are exceptions, the game will either include the program necessary to play it, or provide a link to it in accompanying documentation.

ZZT was originally a shareware program requiring users to register it for a fee in order to receive additional official ZZT worlds. In 1997 Tim Sweeney re-licensed ZZT allowing the registered program and its accompanying worlds to be distributed free of charge. As such, the ZZT v3.2 release hosted on the Museum of ZZT includes all of the original worlds:

Even if ZZT v3.2 doesn't become your primary program for playing ZZT games, it's worth grabbing a copy for these bundled worlds. They showcase where ZZT began, and remain favorites of ZZTers to this day.

The Reconstruction of ZZT [Link]

recon-demo
The Reconstruction of ZZT showing DEMO.ZZT's room for item demonstrations

You may have noticed the link to ZZT v3.2 is followed by a link to something called The Reconstruction of ZZT. The Reconstruction was a project by asie in 2020 to reverse engineer ZZT v3.2's executable and turn it back into Turbo Pascal source code. The project was a complete success, and the Reconstruction of ZZT's code compiles into an identical executable, effectively recreating ZZT's infamously lost source code.

The Reconstruction's codebase has been used since as the basis for new variants of ZZT including the aforementioned ClassicZoo, Weave, and more. The Reconstruction itself is effectively a drop-in replacement for ZZT v3.2, allowing the two programs to be used interchangeably. It has allowed ZZTers to unravel longstanding mysterious of the exact causes and symptoms of various bugs with ZZT, and provided a much deeper understanding of how its elements behave.

While there are no functional differences between The Reconstruction of ZZT and ZZT v3.2, The Reconstruction is the preferred release to use when bundling a copy of ZZT with a ZZT world. The Reconstruction of ZZT's ZZT.DAT file doesn't immediately tell users not to distribute the program. It is also licensed under the much more permissive MIT license which does not require distributions to include all of ZZT v3.2's original files in unmodified form.

For those deciding on which program to download, the only real difference is that The Reconstruction of ZZT only is bundled only with Demo. The rest of the original ZZT saga (and Tour) are only available in the ZZT v3.2 archive.

ClassicZoo [ClassicZoo]

czoo-options
The DOS release of ClassicZoo running "The Pink Pogie Club" with the options menu visible

ClassicZoo offers two specific features that make it excellent way to quickly get into playing ZZT games. Firstly, it is (currently) the only major port of ZZT's codebase that runs natively on non-DOS operating systems. ClassicZoo has dedicated builds for DOS, Windows, and Linux (as well as a few more exotic OSes). Using an OS specific build of ClassicZoo means not requiring the Zeta emulator, letting it be a single download and executable that can be used to play the majority of ZZT worlds.

Even so, many ZZTers, even when using ClassicZoo, still make use of the DOS version through Zeta. Zeta has a few unique features of its own to offer such as support for capturing screenshots, GIFs, and audio during play.

Second, ClassicZoo (for modern non-DOS platforms) has support to search and download ZZT worlds from the Museum of ZZT directly from the program itself. This feature is still limited as it's presented within ZZT's UI which makes space for writing information on worlds come at a premium, but it does mean most ZZT worlds are right at your fingertips. This feature tends to be more useful for finding something you know the name of rather than browsing at random in search of something of interest where the Museum's presentation will offer a better experience.

elise
"For Elise", one of ZZT's most memory intensive worlds showing 532,519 bytes of free conventional memory and 978 pages available of extended memory.

ClassicZoo increases a number of ZZT's limits, but does not introduce any new commands or counters for worlds that would allow them to do things that couldn't be done in ZZT v3.2. Bugfixes can lead to changes in behavior between the original release and ClassicZoo such as allowing scrolls to move or permitting multiple uses of #BIND, though these fixes can also be disabled. Memory limits per-board and per-world are increased significantly, preventing crashes from in memory intensive ZZT games that can lead to corrupt .ZZT files and saves. A small number of worlds like Cyber Purge v2 are explicitly designed around these increased limits, making them incompatible with ZZT v3.2 and requiring the use of ClassicZoo.

With compatibility being its primary concern, the new features of ClassicZoo tend to be relegated towards making playing ZZT worlds more convenient for players. Settings are remembered rather than needing to be picked on startup, there are many new cheats added to make it easier to not become stuck in unbalanced/buggy games, certain in-game messages can be suppressed, and there's even a neuromotor assist option which waits for the player to take an action before anything else on the board may act (effectively a turn-based ZZT).

czoo-crash
ClassicZoo raising an alert when a crash would have occurred in ZZT v3.2

In terms of compatibility, ClassicZoo's is quite high. By default, it fixes a number of glitches with ZZT v3.2 itself that can cause the program to crash or freeze. All of these fixes can be disabled to test how a game will run in v3.2, with support for alerts when behavior which would crash v3.2 are encountered. ClassicZoo allows users to load custom fonts, palettes, and adjust how high-intensity background colors are displayed. In ZZT v3.2, these modifications require using other DOS programs to force these settings before launching ZZT to get the desired appearance.

Pretty much the only thing ClassicZoo doesn't maintain faithfully, is the memory layout of ZZT v3.2. This is a non-issue for every game save for a few of the more esoteric tech-demo worlds out there which rely on exploiting ZZT to run arbitrary code. That means no PortalZ or Hack the Matrix. These kind of worlds are fun to see in action, but are so small in number that ClassicZoo shouldn't be passed over solely for them.

examplia
ClassicZoo's editor working with "Examplia". An object's ZZT-OOP is shown with syntax highlighting.

ClassicZoo provides an overhaul ZZT's editor, making it much more capable than the original as well as significantly less buggy. Though it is worth noting that its editor is still less capable and less stable than popular external editors KevEdit and zedit2, with even ClassicZoo's author asie recommending their use over ClassicZoo's editor when possible.

But for those curious, some of the improvements over ZZT's own editor include the ability to select from all combinations of foreground/background colors, being able to customize the colors of any element rather than a select few, block operations allowing copy/pasting of board elements, copy/paste support when writing ZZT-OOP, ignoring locks placed on worlds intended to prevent editing, and the ability to delete boards rather than blank them out.

Super ZZT [Registered/Shareware]

szzt
Super ZZT's main menu, showing one of its official worlds' built-in menu screen.

Super ZZT is ZZT's official sequel. Published by Epic MegaGames in October 1992. Super ZZT features larger boards with a scrolling camera system that automatically focuses on the player. Most ZZT elements are included, along with a few new ones. The ZZT-OOP language remains the same, with some minor additions like a hint system and being able to detect when players have just entered a board.

These worlds are not compatible with ZZT and its forks, requiring a separate Super ZZT program to run them. Like with ZZT, the are two main options, and the Zeta emulator is required to run the DOS versions on modern machines.


Super ZZT v2.0
Alternatively:
The Reconstruction of Super ZZT
The original program, used to create and play ...dozens of Super ZZT games.

ClassicZoo
ClassicZoo includes a port of Super ZZT that shares its improvements to ZZT plus SZZT specific enhancements.

Zeta Emulator
Run DOS releases of ZZT, ClassicZoo, and other Super ZZT variants with no setup required!

monsterzoo
Super ZZT's Monster Zoo, complete with scrolling boards and new elements like water currents.

Despite boasting more features, Super ZZT never took off in the same way ZZT did. While its board sizes are larger, the number allowed in a world was reduced significantly. These boards are still subject to the same 20,000 bytes of memory allotted to boards in ZZT v3.2. Worse yet, these larger boards also have a smaller stat limit than ZZT, reducing it from 150 to 128. These changes limit the possibilities for more elaborate ZZT-OOP scripting as Super ZZT boards can take up a non-negligible amount of this memory before any code is even written. Dark boards were removed entirely. Some new enemies don't move or attack in any way, as well as having customizable properties that can set, but have no effect during gameplay.

But the biggest reason that Super ZZT remained comparatively niche is that unlike ZZT, its editor was hidden. While it does still exist in the shareware version of the program, the method of accessing it was withheld to registered users only. Although word spread that adding the switch /e would allow the editor to be opened, only a small number of worlds were ever created for it.

Its editor is built from ZZT's, with minimal changes to support Super ZZT. You'll find references to cut features, a lack of documentation, and a mismatch in video modes between the editor and gameplay, making it harder to visualize what the board being worked on will actually look like in action.

Despite the challenges of creating Super ZZT worlds, there are still a number of them available, and a particular fondness for its own trilogy of worlds: Lost Forest, Proving Grounds, and the shareware game Monster Zoo.

Just like with ZZT, the source code was lost for years, until it too was reconstructed. The Zeta emulator supports both Super ZZT and its Reconstruction (as well as automatically enabling its editor without the need to pass a command line switch). ClassicZoo also comes bundled with a separate executable to player Super ZZT worlds as well.

Weave


Weave
The popular and powerful fork for faster ZZT development and more complex games.

zoz
A combat scene from WiL's ZOZ, a Weave game with deckbuilding as a central gameplay mechanic.

Weave (formerly called WeaveZZT) is a modern fork of ZZT by WiL that is focused on expediting development of ZZT games by removing the need to rely on glitches and unintended interactions to perform what in other game making engines would be basic functions. While ClassicZoo stays true to ZZT v3.2's limitations, Weave allows itself to beyond. Games created for Weave are not compatible with ZZT v3.2 or ClassicZoo. You can easily identify such games on the Museum by the spool of thread icon prefacing the title.

weave
The first page of the index to Weave's own demo world listing a fraction of the new capabilities Weave offers.

Since Weave aims to meet the needs of authors, its feature set is regularly being updated, with compatibility between the older versions and the newest not being guaranteed. Games created for Weave are bundled with the program itself so you won't need to go digging for older versions to play early Weave releases.

Some of what Weave offers that ZZT cannot, either outright or at least without considerable effort, include:

jj
Jennifer Janowski is Doomed, an early Weave game, shows off color changing objects, a new player look, and UI tailored specifically to the game

Weave follows a design philosophy of remixing existing code (Pascal, not ZZT-OOP) in ZZT in order to prevent the project from becoming something that no longer feels like ZZT. So don't go expecting ZZT without a grid, in 32-bit color, accompanied by high quality audio playback! For those looking for ZZT turned up to the max, check out MegaZeux, a 1994 ZZT-clone that succeeded and continues to be developed for an active community.

If you're interested in creating Weave games, you'll want to download the latest version from its Itch page. If you're only looking to play them, you can run them through Zeta using the included version of Weave in the games' downloads.


As far a major versions of ZZT that are still in use today, that's the list. The rest of this article will go over earlier official versions of ZZT, as well as some early efforts with hex editing ZZT v3.2 to make modifications to the program without any source code available. These versions are no longer needed if you are interested in playing or making ZZT worlds. They are presented here to provide some insight into how ZZT itself evolved in its early days, as well as what efforts were made by ZZT community members to build upon ZZT with nothing more than the compiled executable.

Page #1/3
1 2 3 >