377 lines
12 KiB
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"
|
|
><<A
|
|
HREF="mailto:strigeus(at)users(dot)sourceforge(dot)net"
|
|
>strigeus(at)users(dot)sourceforge(dot)net</A
|
|
>></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 <<A
|
|
HREF="http://scummvm.sourceforge.net/"
|
|
TARGET="_top"
|
|
>http://scummvm.sourceforge.net/</A
|
|
>>. 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> <<A
|
|
HREF="http://sarien.sourceforge.net"
|
|
TARGET="_top"
|
|
>http://sarien.sourceforge.net</A
|
|
>>, 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 <<A
|
|
HREF="http://www.gnelson.demon.co.uk/zspec/index.html"
|
|
TARGET="_top"
|
|
>http://www.gnelson.demon.co.uk/zspec/index.html</A
|
|
>> 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 <<A
|
|
HREF="http://www.cs.csubak.edu/~dgriffi/proj/frotz/"
|
|
TARGET="_top"
|
|
>http://www.cs.csubak.edu/~dgriffi/proj/frotz/</A
|
|
>>. 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 <<A
|
|
HREF="http://jzip.sourceforge.net/"
|
|
TARGET="_top"
|
|
>http://jzip.sourceforge.net/</A
|
|
>> 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
|
|
<<A
|
|
HREF="http://www.msadams.com/"
|
|
TARGET="_top"
|
|
>http://www.msadams.com/</A
|
|
>> 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 <<A
|
|
HREF="http://uwadv.sourceforge.net/"
|
|
TARGET="_top"
|
|
>http://uwadv.sourceforge.net/</A
|
|
>> 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
|
|
> <<A
|
|
HREF="http://exult.sourceforge.net/"
|
|
TARGET="_top"
|
|
>http://exult.sourceforge.net/</A
|
|
>> 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 <<A
|
|
HREF="http://madeira.physiol.ucl.ac.uk/tsshp/sshock.html"
|
|
TARGET="_top"
|
|
>http://madeira.physiol.ucl.ac.uk/tsshp/sshock.html</A
|
|
>> 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"
|
|
> </TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>Websites And Resources</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |