old-www/HOWTO/Linux-Gamers-HOWTO/interpreters.html

377 lines
12 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>Interpreters</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="The Linux Gamers' HOWTO"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="Emulation and Virtual Machines"
HREF="x809.html"><LINK
REL="NEXT"
TITLE="Websites And Resources"
HREF="x981.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>The Linux Gamers' HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x809.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x981.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="INTERPRETERS"
></A
>11. Interpreters</H1
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN932"
></A
>11.1. SCUMM Engine (LucasArts)</H2
><P
>Lucasarts wrote an engine for point and click adventures named SCUMM (Script Creation
Utility for Maniac Mansion). They wrote many graphical adventures using SCUMM, like their
famous Monkey Island series (all three). Ludvig Strigeus
<TT
CLASS="EMAIL"
>&#60;<A
HREF="mailto:strigeus(at)users(dot)sourceforge(dot)net"
>strigeus(at)users(dot)sourceforge(dot)net</A
>&#62;</TT
> was able to reverse engineer the
SCUMM format
and write an interpreter for SCUMM based games that compiles under Linux and Win32 named
scummvm &#60;<A
HREF="http://scummvm.sourceforge.net/"
TARGET="_top"
>http://scummvm.sourceforge.net/</A
>&#62;. Their website is very
good, and chock full of any kind of information about SCUMM and playing these games under
scummvm.</P
><P
>A compatibility page is maintained at the scummvm website. FWIW, I've been able to
finish many of the games that are listed as 90% done with no problems. scummvm is rock solid,
and allows you to purchase SCUMM based Lucas Arts games, copy the data files to your hard
drive and play them under Linux. As of February 2002, I've been following their cvs, and
this project is undergoing constant development. Kudos to the scummvm team.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN938"
></A
>11.2. AGI: Adventure Gaming Interface (Sierra)</H2
><P
>The older Sierra DOS graphical adventure games used a scripting language named AGI
(Adventure Gaming Interface). Some examples of games written in AGI would be Leisure Suit
Larry I (EGA), Space Quest I and II, King's Quest II, Mixed-Up Mother Goose and others. These
games can be played using <SPAN
CLASS="APPLICATION"
>sarien</SPAN
>on&#62; &#60;<A
HREF="http://sarien.sourceforge.net"
TARGET="_top"
>http://sarien.sourceforge.net</A
>&#62;, an open source interpreter for AGI
games.</P
><P
>Sarien was written in SDL, so it should run on any platform that can compile SDL
programs. In addition, there are versions for DOS, Strong-Arm based pda's, QNS (holy cow!
embedded gaming!), MIPS based systems and SH3/4 based Pocket PC's. The developers are clearly
out of their minds (in a good way!). Sarien also has numerous enhancements not found in the
original games, like a Quake style pull-down console, picture and dictionary viewer, enhanced
sound and support for AGDS, a Russian AGI clone. Sarien is under development and the
developers have been very good about documenting the Sarien internals if anyone wants to get
involved in hacking it.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN944"
></A
>11.3. SCI: SCript Interpreter or Sierra Creative Interpreter (Sierra)</H2
><P
>The newer Sierra graphical adventure games (we're talking about the late 80's here) used
an interpreter named SCI. There were many versions of SCI since Sierra was constantly
improving its engine. The original SCI games were DOS based, but Sierra eventually started
releasing Win32 SCI based games. Some examples of games written with SCI are Leisure Suit
Larry 1 (VGA), Leisure Suit Larry 2-7, Space Quest 3-6, King's Quest 4-6, Quest For Glory 1-4
and many others. Compared with AGI games, SCI adventures have better music support, a more
complex engine and loads of bells and whistles.</P
><P
>Many SCI based games (games written in SCI0) can be played using
<SPAN
CLASS="APPLICATION"
>freesci</SPAN
>, available at <A
HREF="http://freesci.linuxgames.com"
TARGET="_top"
>http://freesci.linuxgames.com</A
>. Like Sarien, FreeSCI has many graphics targets
including SDL, xlib and GGI, so this program can compile and run under an incredible number
of platforms. The developers have done a fantastic job of documenting and FAQing their
application.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="INFOCOM"
></A
>11.4. Infocom Adventures (Infocom, Activision)</H2
><P
>The Z-machine is a well documented &#60;<A
HREF="http://www.gnelson.demon.co.uk/zspec/index.html"
TARGET="_top"
>http://www.gnelson.demon.co.uk/zspec/index.html</A
>&#62; virtual machine designed by
Infocom to run their interactive fiction games. This allowed them to write game data files in
a cross platform manner, since only the engine itself, the Z-machine, would be platform
dependent. Z-machine went through a number of revisions during the lifetime of Infocom, and
two further revisions (V7 and V8 created by Graham Nelson) after the Infocom's demise. The
later versions even supported limited sound and graphics!</P
><P
>One of the most popular Z-machine interpreters is Frotz &#60;<A
HREF="http://www.cs.csubak.edu/~dgriffi/proj/frotz/"
TARGET="_top"
>http://www.cs.csubak.edu/~dgriffi/proj/frotz/</A
>&#62;. This excellently done page
has many nice links for interactive fiction fans. Frotz is GPL, runs all versions of
Z-machine and will compile on most versions of Unix. Frotz has spawned many forks, like a
version for PalmOS and Linux based PDA's.</P
><P
>jzip &#60;<A
HREF="http://jzip.sourceforge.net/"
TARGET="_top"
>http://jzip.sourceforge.net/</A
>&#62; is another very popular
Z-machine interpreter that will run V1-V5 and V8 Z-machine data files. jzip is very portable;
it compiles on all Unices, OS/2, Atari ST and DOS.</P
><P
>There are actually many other Z-machine interpreters like nitfol and rezrov (written in
Perl!). Each interpreter has its own set of strengths, and you can find links to them on the
home pages for Frotz and jzip.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="SCOTTADAMS"
></A
>11.5. Scott Adams Adventures (Adventure International)</H2
><P
>Scott Adams is, arguably, the father of interactive fiction. Although he himself was
inspired by the first piece of interactive fiction, Adventure, Scott brought adventuring to
the masses. His games were available for Atari, Apple 2, Commodore, Sorcerer, TI, and CPM.
His company, Adventure International, released a number of much loved games between 1978 and
1984 before folding. He recently released a new game (a Linux version is not available) but
since the decline of adventuring, he has pretty much kept out of the gaming industry.</P
><P
>Alan Cox wrote scottfree, a Scott Adams adventure game file interpreter for Unix. Using
scottfree and any of the Scott Adams data files which can be downloaded from Scott's website
&#60;<A
HREF="http://www.msadams.com/"
TARGET="_top"
>http://www.msadams.com/</A
>&#62; you can enjoy these classics.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN964"
></A
>11.6. Ultima Underworld: The Stygian Abyss (Origin, Blue Sky Productions)</H2
><P
>The Underworld Adventures project &#60;<A
HREF="http://uwadv.sourceforge.net/"
TARGET="_top"
>http://uwadv.sourceforge.net/</A
>&#62; is an effort to port the 1992 classic, Ultima
Underworld: The Stygian Abyss, to modern operating systems like Linux, MacOS X, and Windows.
It uses OpenGL for 3D graphics, SDL for platform specific tasks and is released under the GNU
GPL. Underworld Adventures provides an impressive graphics system which uses the original
game files, so you'll need the original game disk to play.</P
><P
>Underworld Adventures also provides a bunch of tools for you to display the level maps,
tools for examining uw1 conversation scripts and more.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="EXULT"
></A
>11.7. Ultima 7 (Origin, Electronic Arts)</H2
><P
>Ultima 7 is actually 2 games: part I (The Black Gate) and part II (Serpent Island) which
uses a slightly enhanced version of The Black Gate's engine. In addition, an addon disk was
released to both part I (The Forge Of Virtue) and part II (The Silver Seed).</P
><P
>A team of people developed <SPAN
CLASS="APPLICATION"
>Exult</SPAN
> &#60;<A
HREF="http://exult.sourceforge.net/"
TARGET="_top"
>http://exult.sourceforge.net/</A
>&#62; which is an open source interpreter that will
run both parts of Ultima 7 and their addon disks. Exult is written in C++ using SDL, so it
will compile on any platform that can compile SDL programs. It also features some
enhancements over the original versions of the Ultima VII engine. You'll need to purchase a
copy of Ultima 7 to play. The developers have no plans on extending Exult to interpret the
other Ultimas since the engines changed so radically between releases.</P
><P
>The Exult team has also been hard at work creating a map editor, Exult Studio, and a
script compiler that will let users create their own RPG in the Ultima style.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN976"
></A
>11.8. System Shock (Electronic Arts, Origin)</H2
><P
>System Shock is a classic first person shooter/adventure from 1994, which puts it as a
contemporary of Doom. However, its engine is much more feature rich than the original Doom:
for example, System Shock had 3D sprites, free look and a facility to have objects on top of
each other, giving the illusion of a full 3D map, like Quake. Game reviewers agree that this
game has the features of Quake with a story-line more compelling than Half-life. The System
Shock engine was optimized for sophistication, while Doom's engine was optimized for throwing
lots of monsters at you; a completely different appoach. Quite impressive for such an old
game!</P
><P
>The System Shock Hack Project &#60;<A
HREF="http://madeira.physiol.ucl.ac.uk/tsshp/sshock.html"
TARGET="_top"
>http://madeira.physiol.ucl.ac.uk/tsshp/sshock.html</A
>&#62; is an attempt to update
the game for modern operating systems. The project uses SDL and is released under the
modified BSD license. While you need the original game files to play SSHP, it should work
with the System Shock demo, which is freely available.</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x809.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x981.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Emulation and Virtual Machines</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Websites And Resources</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>