Game Adaptation Language
Dates Used: | 1983 - 1984 |
---|---|
Company: | Sierra |
Developer(s): | Ken Williams and Arthur Abraham |
Type: | Graphical Parser |
Dev Language: | C |
Open Source: | Closed |
Source Availability: | No |
License: | Internal |
Platform(s): | Booter DOS |
Website: | www.sierra.com |
Description
There are two theories as to what the Game Adaptation Language (GAL) was. One theory is that it was the original name of the AGI (Adventure Game Interpreter)[1] system used by games such as King's Quest 2, Police Quest 1, Space Quest 1, etc.
My final question to Donald <Trivette> was regarding the Game Adaptation Language. His answer was "I called it what ever Ken Williams called it, which must have been Game Adaptation Language".
The "first" meaning of AGI was "advanced graphics interpreter." Moving games from system to system wasn't the big goal of the creation for the toolset. It was really designed so that artists and musicians could be part of the development process - something that really wasn't possible at the time. It was actually changed to "Game Adaption Language" at some point when we started using it to port games from machine to machine but at first it was really a workflow tool so that our artists could share work, do testing, etc. in the same system the programmers were working in.
The other theory is that it was the name of the system used by the original King's Quest game, after which a major redesign of the system produced the Adventure Game Interpreter (AGI) system used by King's Quest 2 and all AGI games after that. Regardless of which theory is correct, the one thing that appears to be true is that the scripting language used in original King's Quest game was called Game Adaptation Language.
AGI (Adventure Game Interpreter) was the development tool used by Sierra Online to create their early adventure games.
The original King's Quest engine and language (named Game Assembly Language or *.gal by its designer, Arthur Abraham) was developed by Sierra to to showcase the technology of the PCjr . AGI, originally developed by IBM, was donated to Sierra when it was unable to finish the project due to the dismissal of its main designer.
The first game to use the AGI engine was King's Quest I, released in 1984. There were also a few games made with AGI that were not adventure games.
When it was first used, in the mid-1980s, AGI was very innovative and made impressive use of the technology available at the time. Later versions were adapted to use 16 color EGA graphics and the Adlib soundcard.
By the end of the 80s, however, AGI's 160×200 resolution began to look outdated and it couldn't keep up with newer developments such as mice, which were used extensively by the SCUMM engine of competitor Lucasfilm Games. In 1990, Sierra abandoned AGI and started using the SCI (Sierra Creative Interpreter) engine for their adventure games.
History
The first verifiable mention of the Game Adaptation Language was in an article written by Donald B. Trivette [5]
In addition to the graphics for each room, there is a set of logical statements. These are written in a special language devised by Sierra called the Game Adaptation Language. The program constantly loops through these statements looking for something to change. They work sort of like a group of IF-THEN statements in BASIC.
For example, in one room, room 10, a goat randomly wanders around inside a pen (see photo). The pen extends into room number 11 on the right. If the goat happens to wander out of room 10, the program must erase the goat. The program knows the goat by the codename 14 and Sir Grahame by the name Ego. So if Ego moves to room 11 in search of the goat, the program must remember to draw 14 in room 11. The statement in Game Adaptation Language looks like this:
IF HAS-GOAT 0 AND OBJHIT-EDGE 14 AND EDGEOBJ-HIT 1 AND GOAT-GONE 0 AND SHOWCARROT 0 THEN ASSIGN GOAT-ROOM 11, ERASE 14.
The first King's Quest game originally used a language named Game Assembly Language, or *.gal, by its designer, Arthur Abraham, but when he left, Sierra was unable to complete the game. Since King's Quest was intended to showcase the technology of the IBM PCjr, IBM "donated" its product, AGI, to Sierra to allow development of King's Quest to continue.
What with Ken having a company to run, the heavy lifting of turning the proposal into a game engine largely fell to Jeff Stephenson. Just like the Hi-Res Adventure engine, this one was designed to be reusable and extendible from the start. It was initially known as the Game Adaptation Language, or GAL. Ken, however, loathed the cutesiness of that acronym, and it was eventually renamed to the Adventure Game Interpreter, or AGI.
References
- ↑ I called it what ever Ken Williams called it, which must have been Game Adaptation Language.
- ↑ https://sciprogramming.com/community/index.php?topic=1668.msg10352#msg10352
- ↑ https://sciprogramming.com/community/index.php?topic=1668.msg10359#msg10359
- ↑ https://en.wikipedia.org/w/index.php?title=Adventure_Game_Interpreter&oldid=12807912
- ↑ Inside King's Quest Compute! magazine February 1985
- ↑ www.listal.com/list/powered-by-agi
- ↑ https://www.filfre.net/2013/07/the-unmaking-and-remaking-of-sierra-on-line/
See Also