Difference between revisions of "Adventure Game Interpreter"

From TheAlmightyGuru
Jump to: navigation, search
(Ugly)
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Adventure Game Interpreter''', often shortened to '''AGI''', is the name of a graphical adventure game engine developed by [[Sierra On-Line]]. It was initially designed to run the game [[King's Quest]] on the [[PCjr]], but was later expanded to play 14 games across 8 different platforms including the [[Amiga]], [[Apple II]], [[Apple IIgs]], [[Atari ST]], [[Macintosh]], [[MS-DOS]], and [[TRS-80 Color Computer]], as well as several demos. The engine was written in assembler, but it allowed game designers to write scripts in a custom C-like language called ''Game Adaptation Language'', which was compiled into a bytecode that would be interpreted by the engine. As computer hardware continued to improve, Sierra eventually replaced AGI with the [[Sierra's Creative Interpreter]] in 1988. Sprites were stored as bitmaps, but background art was stored in a vector format and drawn and painted to the screen.
+
[[Image:King's Quest - PCJR - Screenshot - Castle Right.png|thumb|256x256px|[[King's Quest]], the first AGI game.]]
  
The first game I played which used AGI was [[Space Quest II: Vohaul's Revenge]], but I have since played the majority of the games which used it.
+
'''Adventure Game Interpreter''', often shortened to '''AGI''', is the name of a graphical adventure game engine developed by [[Sierra On-Line]]. It was initially designed to run the game ''[[King's Quest]]'' on the [[PCjr]], but was later expanded to play 14 games and several demos, across 8 different platforms including the [[Amiga]], [[Apple II]], [[Apple IIgs]], [[Atari ST]], [[Macintosh]], [[MS-DOS]], and [[TRS-80 Color Computer]]. The engine was written in assembler, but it allowed game designers to write scripts in a custom C-like language called ''Game Adaptation Language'', which was compiled into a bytecode that would be interpreted by the engine. As computer hardware continued to improve, Sierra eventually replaced AGI with the [[Sierra's Creative Interpreter]] in 1988. Sprites were stored as bitmaps, but background art was stored in a vector format and drawn and painted to the screen. In the earliest games, you could actually see the backgrounds being drawn, but, in later releases, this was done in a buffer.
  
==Review==
+
The first game I played which used AGI was ''[[Space Quest II: Vohaul's Revenge]]'', but I have since played the majority of the games which used it.
===Good===
 
* The scripting system was really impressive for a game from 1984.
 
* By using a scripting system, and letting the engine handle all the nuts and bolts of the hardware, games were easily ported to various platforms.
 
* The engine even had a custom music format which could also be easily ported to new audio hardware.
 
* Despite being designed for side-view adventure games, the engine was versatile enough to handle action games like the sand skimmer in [[Space Quest I: The Sarien Encounter]] or the map navigation system in [[Man Hunter: New York]].
 
* The engine could handle several video displays beyond the default for each system. For IBM, it supported the PCjr display, [[Color Graphics Adapter|CGA]] (on CGA, RGB, and composite monitors), and [[Hercules Graphics Card|Hercules]], although, not every game supported these features.
 
 
 
===Bad===
 
* The engine was built for the PCjr, but is wasn't upgraded to take advantage of the superior hardware on the other platforms to which it was later ported.
 
* The 160x200 resolution used for background graphics results in fairly blocky art work. And looked especially bad on powerful platforms like the Amiga. Also, being limited to 16 colors was also pretty lame, especially on the Amiga.
 
* Since all the normal keyboard keys were sent to the text input line, only keys like function, tab, and home were allowed to perform other tasks. This made things a bit unusual for games like The Black Cauldron which have to use function keys to shortcut commands like "look." Had the engine used a single button to pop up a input dialog, all the other keys would be usable.
 
  
===Ugly===
+
I've played a bit with the various AGI editors that have been made, and I think it's really cool how you can edit existing games or create a whole new game from scratch using them.
* Nothing.
 
  
 
==Software==
 
==Software==
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
! Game !! [[PCjr]] !! [[MS-DOS]] !! [[Apple II]] !! [[Atari ST]] !! [[Amiga]] !! [[Apple IIgs]] !! [[Macintosh]] !! [[TRS-80 Color Computer|TRS-80 CoCo]]
+
! Title !! [[PCjr]] !! [[MS-DOS]] !! [[Apple II]] !! [[Atari ST]] !! [[Amiga]] !! [[Apple IIgs]] !! [[Macintosh]] !! [[TRS-80 Color Computer|TRS-80 CoCo]]
 
|-
 
|-
 
| ''[[King's Quest]]'' || 1984 || 1987 || 1984 || 1986 || 1987 || 1987 || 1987 ||  
 
| ''[[King's Quest]]'' || 1984 || 1987 || 1984 || 1986 || 1987 || 1987 || 1987 ||  
Line 33: Line 21:
 
| ''[[King's Quest III: To Heir Is Human]]'' || || 1986 || 1988 || 1986 || 1986 || 1988 ||  || 1988
 
| ''[[King's Quest III: To Heir Is Human]]'' || || 1986 || 1988 || 1986 || 1986 || 1988 ||  || 1988
 
|-
 
|-
| ''[[Space Quest: The Sarien Encounter]]'' || || 1986 || 1986 || 1986 || 1987 || 1987 || 1987 || 1986
+
| ''[[Space Quest I: The Sarien Encounter]]'' || || 1986 || 1986 || 1986 || 1987 || 1987 || 1987 || 1986
 +
|-
 +
| ''[[A Computer Christmas]]'' || || 1986 || || || || || ||
 
|-
 
|-
 
| ''[[Leisure Suit Larry In the Land of the Lounge Lizards]]'' || || 1987 || 1987 || 1987 || 1987 || 1987 || 1988 || 1988
 
| ''[[Leisure Suit Larry In the Land of the Lounge Lizards]]'' || || 1987 || 1987 || 1987 || 1987 || 1987 || 1988 || 1988
 +
|-
 +
| [[Sierra AGI Demos|Sierra Demo 1]] || || 1987 || || || || || ||
 
|-
 
|-
 
| ''[[Mixed-Up Mother Goose]]'' || || 1987 || 1990 || 1987 || 1988 || 1988 ||  ||  
 
| ''[[Mixed-Up Mother Goose]]'' || || 1987 || 1990 || 1987 || 1988 || 1988 ||  ||  
Line 42: Line 34:
 
|-
 
|-
 
| ''[[Space Quest II: Vohaul's Revenge]]'' || || 1987 || 1987 || 1987 || 1988 || 1988 || 1988||  
 
| ''[[Space Quest II: Vohaul's Revenge]]'' || || 1987 || 1987 || 1987 || 1988 || 1988 || 1988||  
 +
|-
 +
| [[Sierra AGI Demos|Sierra Demo 2]] || || 1987 || || || || || ||
 +
|-
 +
| [[Sierra AGI Demos|Sierra Demo 3]] || || 1987 || || || || || ||
 +
|-
 +
| [[Sierra AGI Demos|Sierra Demo 4]] || || 1987 || || || || || ||
 
|-
 
|-
 
| ''[[Gold Rush!]]'' || || 1988 || 1988 || 1989 || 1989 || 1989 || 1989 ||  
 
| ''[[Gold Rush!]]'' || || 1988 || 1988 || 1989 || 1989 || 1989 || 1989 ||  
 
|-
 
|-
 
| ''[[Manhunter: New York]]'' || || 1988 || 1988 || 1988 || 1988 || 1988 ||  ||  
 
| ''[[Manhunter: New York]]'' || || 1988 || 1988 || 1988 || 1988 || 1988 ||  ||  
 +
|-
 +
| [[Sierra AGI Demos|Sierra Demo 5]] || || 1988 || || || || || ||
 
|-
 
|-
 
| ''[[King's Quest IV: The Perils of Rosella]]'' || || 1988 || 1990 || 1990 || 1990 || 1989 ||  ||  
 
| ''[[King's Quest IV: The Perils of Rosella]]'' || || 1988 || 1990 || 1990 || 1990 || 1989 ||  ||  
Line 52: Line 52:
 
|}
 
|}
  
Additional software: Sierra Christmas Card (1986), Space Quest Demo, Space Quest II Demo, AGI Demo Packs 1-5, King's Quest Demo, King's Quest II Demo, King's Quest III Demo, King's Quest IV Demo, Leisure Suit Larry Demo, Manhunter: New York Demo, Mixed-up Mother Goose Demo, Police Quest Demo,  
+
==Graphics==
 +
For IBM compatible PCs, AGI supports IBM monochrome, [[Hercules Graphics Card]], [[Color Graphics Adapter]] in both RGB and composite modes, PCjr and [[Tandy Graphics Adapter]], and [[Enhanced Graphics Adapter]]. However, not every program took advantage of every mode.
 +
 
 +
<gallery>
 +
Space Quest II - Vohaul's Revenge - Screenshot - Vohaul - Hercules.png|Hercules (1-bit color).
 +
Space Quest II - Vohaul's Revenge - Screenshot - Vohaul - CGA RGB.png|CGA RGB (2-bit color).
 +
Space Quest II - Vohaul's Revenge - Screenshot - Vohaul - CGA Composite.png|CGA Composite (simulated 4-bit color).
 +
Space Quest II - Vohaul's Revenge - Screenshot - Vohaul - CGA Behind.png|Forced CGA. This is what is sent to a composite monitor which simulates 4-bit color.
 +
Space Quest II - Vohaul's Revenge - Screenshot - Vohaul - PCjr.png|PCjr (4-bit color).
 +
</gallery>
 +
 
 +
==Sound==
 +
AGI supports two audio outputs, the PCjr 3-voice audio protocol (later duplicated with the [[Tandy 1000]] line), and the single channel PC speaker. Each sound effect or song is stored in its own file and several files are collected into one of the various resource files. Each sound file stores all the necessary information to play the audio including the frequency (pitch), duration, and volume of each note as well as additional information like the duty cycle. Each file stores four channels of audio, three for each pulse wave and one for the noise channel. When playing on a PCjr or Tandy 1000, all four channels are sent to the audio chip, but, when playing on a PC that only has a PC speaker, only the first channel is processed, and all of the unsupported features like duty cycle and volume are ignored, only the frequency and duration of each note is played. This is a clever way of fitting music for two forms of output into a single file, but it has the setback of confining the melody to the first channel.
 +
 
 +
When played on a platform that doesn't support traditional pulse waves, like the Amiga and Apple GS, a driver is used to simulate pulse waves.
 +
 
 +
==Review==
 +
===Good===
 +
* The scripting system was really impressive for 1984.
 +
* By using a scripting system, and letting the engine handle all the nuts and bolts of the hardware, designers were freer to focus on the look and feel of the game leading to more attractive games, and games were easily ported to various platforms.
 +
* Using a vector based graphic system for backgrounds was a clever way to make full-screen graphics while keeping a small memory footprint.
 +
* The engine even had a custom music format which could also be relatively easily ported to new audio hardware.
 +
* Despite being designed for side-view adventure games, the engine was versatile enough to handle action sequences like the sand skimmer in ''[[Space Quest I: The Sarien Encounter]]'' or the Coney Island games in ''[[Man Hunter: New York]]''.
 +
* The engine could handle several video displays beyond the default for each system.
 +
* Utilizing color bleeding in CGA composite mode really made the games look great even with only a CGA card.
 +
* The engine could handle large software-controlled animated sprites.
 +
 
 +
===Bad===
 +
* The native resolution used for background graphics (160x200) results in blocky art work, even for the time.
 +
* Sprites could not be clipped to the edges of the screen, so they couldn't slowly emerge into the display. Instead, they had to appear in their entirety all at once. To allow for the appearance of partial sprites, designers had to cover up the edges of the screen with a foreground object (like a doorway or frame on the screen).
 +
* Since all the normal keyboard keys were sent to the text input line, only keys like tab, home, and the function keys were allowed to perform other tasks. This made things a bit unusual for games like The Black Cauldron which have to use function keys to shortcut commands like "look" instead of the much more intuitive "L" key. Had the engine used a single button to pop up a input dialog, all the other keys would be usable.
 +
 
 +
===Ugly===
 +
* The engine was built for the PCjr, but was never upgraded to take advantage of the superior hardware of the later platforms to which it was ported. The [[Amiga]] could easily handle a resolution of 320x200 with 4096 colors, but the AGI port remained limited to 160x200 resolution with 16 colors. Likewise, the Amiga had 4-channel digital audio, that the AGI didn't take full advantage of.
  
 
==Editors==
 
==Editors==
Line 61: Line 94:
  
 
==Links==
 
==Links==
* [https://en.wikipedia.org/wiki/Adventure_Game_Interpreter en.wikipedia.org/wiki/Adventure_Game_Interpreter] - Wikipedia.
+
{{Link|Wikipedia|https://en.wikipedia.org/wiki/Adventure_Game_Interpreter}}
  
  
 
[[Category: Video Game Engines]]
 
[[Category: Video Game Engines]]

Revision as of 10:06, 30 May 2019

Adventure Game Interpreter, often shortened to AGI, is the name of a graphical adventure game engine developed by Sierra On-Line. It was initially designed to run the game King's Quest on the PCjr, but was later expanded to play 14 games and several demos, across 8 different platforms including the Amiga, Apple II, Apple IIgs, Atari ST, Macintosh, MS-DOS, and TRS-80 Color Computer. The engine was written in assembler, but it allowed game designers to write scripts in a custom C-like language called Game Adaptation Language, which was compiled into a bytecode that would be interpreted by the engine. As computer hardware continued to improve, Sierra eventually replaced AGI with the Sierra's Creative Interpreter in 1988. Sprites were stored as bitmaps, but background art was stored in a vector format and drawn and painted to the screen. In the earliest games, you could actually see the backgrounds being drawn, but, in later releases, this was done in a buffer.

The first game I played which used AGI was Space Quest II: Vohaul's Revenge, but I have since played the majority of the games which used it.

I've played a bit with the various AGI editors that have been made, and I think it's really cool how you can edit existing games or create a whole new game from scratch using them.

Software

Title PCjr MS-DOS Apple II Atari ST Amiga Apple IIgs Macintosh TRS-80 CoCo
King's Quest 1984 1987 1984 1986 1987 1987 1987
King's Quest II: Romancing the Throne 1985 1987 1985 1985 1987 1987
The Black Cauldron 1986 1986 1986 1987 1987
Donald Duck's Playground 1986 1986 1986 1986
King's Quest III: To Heir Is Human 1986 1988 1986 1986 1988 1988
Space Quest I: The Sarien Encounter 1986 1986 1986 1987 1987 1987 1986
A Computer Christmas 1986
Leisure Suit Larry In the Land of the Lounge Lizards 1987 1987 1987 1987 1987 1988 1988
Sierra Demo 1 1987
Mixed-Up Mother Goose 1987 1990 1987 1988 1988
Police Quest: In Pursuit of the Death Angel 1987 1987 1987 1987 1987 1987
Space Quest II: Vohaul's Revenge 1987 1987 1987 1988 1988 1988
Sierra Demo 2 1987
Sierra Demo 3 1987
Sierra Demo 4 1987
Gold Rush! 1988 1988 1989 1989 1989 1989
Manhunter: New York 1988 1988 1988 1988 1988
Sierra Demo 5 1988
King's Quest IV: The Perils of Rosella 1988 1990 1990 1990 1989
Manhunter 2: San Francisco 1989 1990 1990 1989

Graphics

For IBM compatible PCs, AGI supports IBM monochrome, Hercules Graphics Card, Color Graphics Adapter in both RGB and composite modes, PCjr and Tandy Graphics Adapter, and Enhanced Graphics Adapter. However, not every program took advantage of every mode.

Sound

AGI supports two audio outputs, the PCjr 3-voice audio protocol (later duplicated with the Tandy 1000 line), and the single channel PC speaker. Each sound effect or song is stored in its own file and several files are collected into one of the various resource files. Each sound file stores all the necessary information to play the audio including the frequency (pitch), duration, and volume of each note as well as additional information like the duty cycle. Each file stores four channels of audio, three for each pulse wave and one for the noise channel. When playing on a PCjr or Tandy 1000, all four channels are sent to the audio chip, but, when playing on a PC that only has a PC speaker, only the first channel is processed, and all of the unsupported features like duty cycle and volume are ignored, only the frequency and duration of each note is played. This is a clever way of fitting music for two forms of output into a single file, but it has the setback of confining the melody to the first channel.

When played on a platform that doesn't support traditional pulse waves, like the Amiga and Apple GS, a driver is used to simulate pulse waves.

Review

Good

  • The scripting system was really impressive for 1984.
  • By using a scripting system, and letting the engine handle all the nuts and bolts of the hardware, designers were freer to focus on the look and feel of the game leading to more attractive games, and games were easily ported to various platforms.
  • Using a vector based graphic system for backgrounds was a clever way to make full-screen graphics while keeping a small memory footprint.
  • The engine even had a custom music format which could also be relatively easily ported to new audio hardware.
  • Despite being designed for side-view adventure games, the engine was versatile enough to handle action sequences like the sand skimmer in Space Quest I: The Sarien Encounter or the Coney Island games in Man Hunter: New York.
  • The engine could handle several video displays beyond the default for each system.
  • Utilizing color bleeding in CGA composite mode really made the games look great even with only a CGA card.
  • The engine could handle large software-controlled animated sprites.

Bad

  • The native resolution used for background graphics (160x200) results in blocky art work, even for the time.
  • Sprites could not be clipped to the edges of the screen, so they couldn't slowly emerge into the display. Instead, they had to appear in their entirety all at once. To allow for the appearance of partial sprites, designers had to cover up the edges of the screen with a foreground object (like a doorway or frame on the screen).
  • Since all the normal keyboard keys were sent to the text input line, only keys like tab, home, and the function keys were allowed to perform other tasks. This made things a bit unusual for games like The Black Cauldron which have to use function keys to shortcut commands like "look" instead of the much more intuitive "L" key. Had the engine used a single button to pop up a input dialog, all the other keys would be usable.

Ugly

  • The engine was built for the PCjr, but was never upgraded to take advantage of the superior hardware of the later platforms to which it was ported. The Amiga could easily handle a resolution of 320x200 with 4096 colors, but the AGI port remained limited to 160x200 resolution with 16 colors. Likewise, the Amiga had 4-channel digital audio, that the AGI didn't take full advantage of.

Editors

This is a list of AGI editors that allow you to modify AGI games or create new ones from scratch.

Links

Link-Wikipedia.png