Quetzal is a standardised file format for the saved state of Z-machine games, invented by Martin Frost. Prior to the introduction of Quetzal, each Z-machine interpreter saved games in its own format; Quetzal enabled players to save a game using one interpreter and restore it with another. Use of the format is strongly recommended in Graham Nelson's Z-machine standards document, but not obligatory. Most modern Z-machine interpreters have the ability to save Quetzal files.
Filename extension | .sav, .glksave |
---|---|
Internet media type | application/x-glksave |
Magic number | IFZS |
Developed by | Martin Frost |
Latest release | 1.4 November 13, 1997 |
Type of format | Z-machine save game |
Container for | Z-machine state |
Extended from | Interchange File Format |
Standard | inform-fiction.org |
Open format? | Yes |
The files are IFF files with a FORM of "IFZS" (presumably standing for "Interactive Fiction Z-machine Save"), although the saved files are commonly given an extension of ".sav": less commonly sighted are "quz" and "qtz". Despite the reference to the Z-machine in the FORM code, the format has proved flexible enough to be adapted for at least one alternative architecture, Glulx.
The magic-number reading of the files are often shown as:
'IFF data, Z-machine or Glulx saved game file (Quetzal)'
A backronym for the format is "Quetzal Unifies Efficiently The Z-Machine Archive Language".
Version 1.3b, which was widely available, contained a bug later corrected in version 1.4: after a save instruction, the Z-machine requires that a success code is saved in a particular place (which differs depending on the version). Versions of the Quetzal standard before 1.4 have reference only to the instruction after the save, which complicates finding the correct place to put the success code.