Adventure Game Interpreter

The Adventure Game Interpreter (AGI) is a game engine developed by Sierra On-Line. The company originally developed the engine for King's Quest (1984), an adventure game that Sierra and IBM wished to market in order to attract consumers to IBM's lower-cost home computer, the IBM PCjr.

AGI was capable of running animated, color adventure games with music and sound effects. The player controls the game with a keyboard and, optionally, a joystick.

After the launch of King's Quest, Sierra continued to develop and improve the Adventure Game Interpreter. They employed it in 14 of their games between 1984 and 1989, before replacing it with a more sophisticated engine, Sierra's Creative Interpreter.

History
In late 1982, IBM began work on the PCjr, a lower-priced variant of the IBM Personal Computer with improved graphics and sound. The PCjr's Video Gate Array video adapter could display up to 16 colors at a time—a major improvement over the Color Graphics Adapter's four-color limit. The new sound chip, too, could output a wider range of tones than the PC speaker.

IBM commissioned Sierra to produce a game that could showcase these new capabilities. They discussed some requirements for the game, and IBM supplied Sierra with a PCjr prototype. They both agreed that the game should be animated—a first for Sierra. A team of six designers and developers, led by designer Roberta Williams, worked on the game that was eventually titled King's Quest. Among the developers were Chuck Tingley and Ken MacNeill (later releases also credit Chris Iden. An Apple II version credits Arthur Abraham).

IBM premiered the PCjr in 1984; it did not sell well and, therefore, neither did King's Quest. However, later that year Tandy Corporation released the Tandy 1000, an IBM PC compatible that succeeded where the PCjr failed. King's Quest caused a sensation in the burgeoning market of PC-compatible computers, and Sierra sold more than half a million copies. They ported it to other computing platforms, including the Apple II, Apple II GS, Macintosh, Amiga, and Atari ST, but the PC remained the primary platform for their games.

In 1988, with the release of King's Quest IV: The Perils of Rosella, Sierra debuted a more sophisticated game engine: Sierra's Creative Interpreter, or SCI. Since the SCI engine required a more powerful home computer, Sierra released an AGI version of the game at the same time. However, Sierra overestimated consumer demand for the lesser version, and ceased production.

The following year, Sierra published its final AGI-based title, Manhunter 2: San Francisco, then focused exclusively on SCI for new adventure game development. Among SCI's enhancements were a more versatile scripting system, an object-oriented programming model, higher-resolution graphics (320×200 rather than 160×200), a point-and-click interface, and support for additional sound card hardware.

Technical design
The technical complexity of King's Quest made it a burden to write in assembly language, so the programmers created a game engine to simplify development. The engine comprised a bespoke programming language called the Game Adaptation Language, a compiler, and a bytecode interpreter (the Adventure Game Interpreter). The Game Adaptation Language was a high-level programming language that resembled C. This was compiled into bytecode, which was executed by the interpreter.

Like Sierra's earlier adventure titles, such as Wizard and the Princess (1980), AGI games used vector graphics. The PCjr accepted floppy disks with a capacity of 360 kilobytes, and raster graphics would have consumed an excessive amount of disk space. Instead, King's Quest drew polygons on the screen, and then colored them. Beginning with AGI version 2, the game engine drew graphics in an off-screen data buffer, then blitted them into video memory. This approach was not just to economize use of system resources; it also prevented the game from revealing hidden objects while it drew the screen.

AGI was principally developed for 16-bit computer architectures, which were the state of the art in home computers at the time. These included the IBM PC compatible, the Atari ST, Commodore's Amiga series, and Apple's Macintosh computers. In addition, Sierra ported AGI to three 8-bit computer models: the TRS-80 Color Computer, the Apple IIe, and the Apple IIc.