A Brief Summary of the Differences Between Sierra's AGI and SCI Engines
Note: for simplicity, this post is limited to ports of AGI's and SCI's main target platform, the PC.Many of the Sierra On-Line games before AGI used the then standard 4 color CGA graphics and single voice sound via the PC speaker.
In 1984 Sierra introduced the original "King's Quest: Quest for the Crown" to showcase the expanded abilities of IBM's new computer, the PCjr. In fact, the first couple of releases were published by IBM. The Adventure Game Interpreter (AGI) was developed as the new engine for this task. AGI's graphics were 200px x 160px by 16 colors (quadrupedal that of CGA's 4 colors) using vector graphics backgrounds. It also had three voice with noise channel sound. This was quite a technological advancement and even cutting edge at the time. AGI was designed for portability (easy to port to other platforms.) It became Sierra's main game engine until the advent of Sierra's next engine, SCI. Most of Sierra's famous series began in the AGI era.
King's Quest : Quest for the Crown Intro (AGI)
Hardware began to advance beyond what AGI could utilize, so Sierra began development on its next engine, SCript Interpreter or later Sierra Creative Interpreter (SCI). The previous year before the last official AGI game, "Manhunter 2: San Francisco" in 1989, Sierra released the first SCI (SCI0) game, "King's Quest IV: The Perils of Rosella" in 1988. In keeping with Moore's Law, SCI could take advantage of the constantly increasing capabilities of the new hardware. As with AGI in its day, SCI was a big leap forward in technology. The higher resolution allowed for better graphics. Even though 320px x 200px may not seem that much over AGI's 200px x 160px, it is very noticeable. While still just 16 colors, but SCI0 introduced dithering, which mixed pixels of different colors into the same fill areas that gave the effect of more than 16 colors. Most importantly, support for the new sound cards. With SCI, music became an inseparable part of Sierra games. Even though the first exposure most had was with AdLib's hoots and honks, it also supported the MPU-401, which allowed Sierra's composers to create some amazing Roland MT-32 sound tracks.King's Quest I: Quest for the Crown SCI Demo
Sierra co-developed King's Quest IV in both AGI and SCI. If the hardware requirements were too high for a user's PC, he could send in his SCI game for the AGI version. Here are side by side comparisons of the two versions:King's Quest IV: The Perils of Rosella AGI Intro
King's Quest IV: The Perils of Rosella SCI Intro
Technologically, another huge advance was SCI's object oriented scripting language (AGI was a procedural language), which allowed for much more complex scripting, opening possibilities the developers could have only dreamt of earlier. Sierra was able to continually expand SCI's capabilities as hardware advanced. Slightly before the transition from SCI0 to SCI1, digital sound was added, and the characters began to speak.Roger Speaks for the first time!
With King's Quest V: Absence Makes the Heart Go Yonder!" Sierra introduced VGA to SCI (SCI1), giving SCI games a 256 colors with bitmapped or raster backgrounds.
During the transition to VGA, Sierra released both EGA and VGA version of the same games. Some of these had artwork that were completely done for both versions. The end result was better optimized for the EGA users, as in Jones in the Fast Lane.
Later VGA games simply took the VGA graphic and reduced the palette.
Besides more detailed images and more accurate colors, the expanded color depth allowed palette switching to simulate even more colors and being able to modify an existing picture resource by changing the palette it used. They could simulate a day/night cycle by merely changing the palette, while using the same PICTURE resource. The same method was used to add dawn and dusk scenes, as well.
Note the KQ4AGI day/night cycle had to be done with two distinct PICTURE resources.
Like KQ4AGI, KQ4 SCI version 1.000.111 used two distinct PICTURE resources, too.
KQ4 SCI version 1.006.004 used additional partial PIC resources overlayed on top of the normal daytime PIC resource, such as a dark sky with stars to add a darker sky with stars and covering other lighter colors with darker ones, etc. to create a composite for the night PIC. SCI0 generally did not use a complete second resource the way AGI did. Note that the teal color in the overlay PICTURE resource is set to be transparent. Anything in the base Pic under the teal would show.
With SCI2, around the time of "Gabriel Knight: Sins of the Fathers", VESA support was added, giving SCI a 640px x 480px resolution. The first VESA games used a mixture of VGA and VESA graphics. Using the VESA driver or a Windows interpreter, the 320px x 200px graphics were scaled up, overlaying higher resolution graphics for things like GUI items on top. The VGA to VESA transitional games would have two sets of resources, one lower res for VGA and a higher one for VESA.
Later versions of SCI32 used Windows SVGA and/or DOS VESA at 640px x 480px only.
Note that while the pixel dimensions mentioned are not proportional, the aspect ratio for these games is 4:3. The monitors from the different eras had differently shaped pixels, but the same overall dimensions
Leisure Suit Larry 7: Love for Sail Opening Credits
Often the interpreter was modified, improved or features added to meet the needs of a game in development. This could cause the engine to become so specific to that game that the the source code for the engine would be stored with the source for the game.SCI lasted until the switch to the 3D engines used for Mask of Eternity, Gabriel Knight 3 and Quest for Glory V. Sierra as we like to remember it, the Ken Williams era, did not last much longer than SCI.
AGI
Graphics:
- 160x200 by 16 colors
- 3 voice plus noise channel (PCjr/Tandy)
- 1 voice PC speaker (PC)
- Parser without mouse support
SCI
Graphics:
- 320x200 by 16 colors EGA (SCI0 - Early SCI1)
- 320x200 by 256 colors VGA (SCI1 and later)
- 320x200 by 256 colors VGA with video support (SCI1.1 and later)
- 640x480 by 256 colors VESA (SCI2 and later)
- AdLib/MPU-401/Roland MT-32 music (SCI0)
- AdLib/MPU-401with Roland MT-32 music with digital audio (SCI0.1 - Early SCI1)
- AdLib/MPU-401with Roland MT-32/General MIDI music with digital audio (SCI1.1 and later)
- Digital audio (SCI1 and later)
- Parser with mouse support (SCI0 - Early SCI1)
- Point and Click (SCI1 and later)