📚 LinuxDocs
Topics:
All Pages8021X HOWTOACP ModemACPI HOWTOADSL Bandwidth Man..ATA RAID HOWTOATM Linux HOWTOAX25 HOWTOAccessibility Dev ..Accessibility HOWTOAdv Bash Scr HOWTOAdv Routing HOWTOAntares RAID sparc..Apache Compile HOWTOApache WebDAV LDAP..Assembly HOWTOAstronomy HOWTOAthlon Powersaving..Authentication Gat..Autodir HOWTOAviation HOWTOAvr Microcontrolle..BRIDGE STP HOWTOBTTVBackspaceDeleteBandwidth Limiting..Bangla HOWTOBash Prompt HOWTOBattery PoweredBelarusian HOWTOBelgian HOWTOBeowulf HOWTOBocaBogoMipsBootdisk HOWTOBridgeC++ dlopenC C++Beautifier HO..C editing with VIM..CDROM HOWTOCDServer HOWTOCable ModemCaudium HOWTOClone HOWTOCompaq Remote Insi..Compaq T1500 HOWTOConexant+Rockwell ..Cryptoloop HOWTODB2 HOWTODHCPDSL HOWTODVD Playback HOWTODebian Binary Pack..Debian JigdoDebian and Windows..Disk Encryption HO..Disk on Chip HOWTODocBook Demystific..DocBook InstallDocBook OpenJade S..Ecology HOWTOEmacspeak HOWTOEncourage Women Li..Encrypted Root Fil..Euro Char SupportEvent HOWTOFedora Multimedia ..Finnish HOWTOFirewall PiercingFlash Memory HOWTOFont HOWTOFramebuffer HOWTOGCC HOWTOGIS GRASSGlibc Install HOWTOHOWTO HOWTOHOWTO INDEXHP HOWTOHandspring VisorHard Disk UpgradeHardware HOWTOHighQuality Apps H..Home Electrical Co..IBM7248 HOWTOIO Perf HOWTOIP AliasIP Masquerade HOWTOIRCImplement Sys Call..Indic Fonts HOWTOInfrared HOWTOIngresII HOWTOInstall StrategiesInstallation HOWTOInstallfest HOWTOIntkeybItalian HOWTOJabber Server Farm..JavaStation HOWTOKerberos Infrastru..Kernel HOWTOKerneldKodak Digitalcam H..LDAP HOWTOLDP Reviewer HOWTOLILO crash rescue ..LVM HOWTOLeased LineLegoLinksys Blue Box R..Linux+Win95Linux+Win9x+Grub H..Linux+Windows HOWTOLinux Complete Bac..Linux Crash HOWTOLinux Gamers HOWTOLinux Modem SharingLinux Promise RAID..Linux i386 Boot Co..LinuxGL QuakeWorld..Lotus DominoR5MILO HOWTOMMBase Inst HOWTOMP3 CD BurningMail User HOWTOMajordomo MajorCoo..Man PageMasquerading Simpl..Medicine HOWTOMindTerm SSH HOWTOMobile IPv6 HOWTOMock MainframeModule HOWTOModulesMotorola Surfboard..Mozilla OptimizationMulti Distro DevNCURSES Programmin..NFS HOWTONFS Root Client mi..NIS HOWTONetMeeting HOWTONetwork boot HOWTONvidia OpenGL Conf..OLSR IPv6 HOWTOOnline Troubleshoo..Oracle 9i Fedora 3..PA RISC Linux Boot..PCTel MicroModem C..PHP Nuke HOWTOPPP HOWTOPagerPalmOS HOWTOPartitionPartition Mass Sto..Partition Mass Sto..Partition RescuePine ExchangePortSlavePost Installation ..Postfix Cyrus Web ..Pre Installation C..Print2WinPrinting HOWTOProcess AccountingProgram Library HO..Proxy ARP SubnetQmail ClamAV HOWTOQmail VMailMgr Cou..Querying libiptc H..RPM HOWTOReading List HOWTORedHat CD HOWTOReliance HOWTORemote BridgingRemote Serial Cons..SCSI 2.4 HOWTOSCSI Generic HOWTOSLIP PPP EmulatorSRM HOWTOSSL Certificates H..Scanner HOWTOScientific Computi..Scripting GUI TclTkSecure CVS PserverSecure Programs HO..Security HOWTOSecurity Quickstar..Security Quickstar..Serial Laplink HOWTOSerial Programming..Slovak HOWTOSmall MemorySmart Card HOWTOSoftware Proj Mgmt..Software Release P..Sound HOWTOSpam Filtering for..Speech Recognition..SquashFS HOWTOSybase ASA HOWTOSybase ASE HOWTOSybase PHP ApacheTCP Keepalive HOWTOTamil Linux HOWTOTimePrecision HOWTOTimeSys Linux Inst..Token RingTraffic Control HO..Traffic Control tc..UPS HOWTOUnix Hardware Buye..Unix and Internet ..UpgradeUsenet News HOWTOUser Authenticatio..VB6 to TclVMS to Linux HOWTOVPN HOWTOValgrind HOWTOVideoLAN HOWTOVim HOWTOVirtual WebWebcam HOWTOWikiText HOWTOWindows Newsreader..Wireless Link sys ..Wireless Sync HOWTOXDM XtermXDMCP HOWTOXFree Local multi ..XFree86 HOWTOXFree86 R200XFree86 Second MouseXFree86 Video Timi..XML RPC HOWTOXWindow Overview H..XWindow User HOWTOXinerama HOWTOXterminalsHtml singleI810 HOWTOLibdc1394 HOWTOOpenMosix HOWTOPhhttpd HOWTOPpp sshText

11. Interpreters

11.1. SCUMM Engine (LucasArts)

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 was able to reverse engineer the SCUMM format and write an interpreter for SCUMM based games that compiles under Linux and Win32 named scummvm <http://scummvm.sourceforge.net/>. Their website is very good, and chock full of any kind of information about SCUMM and playing these games under scummvm.

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. .:: forums.sorcererking.com ::.

11.2. AGI: Adventure Gaming Interface (Sierra)

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 .:: buyandsellhair.com ::. sarienon> <http://sarien.sourceforge.net>, an open source interpreter for AGI games.

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. [NPM Package: Ubuntu]

11.3. SCI: SCript Interpreter or Sierra Creative Interpreter (Sierra)

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.

Many SCI based games (games written in SCI0) can be played using freesci, available at http://freesci.linuxgames.com. 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.

11.4. Infocom Adventures (Infocom, Activision)

The Z-machine is a well documented <http://www.gnelson.demon.co.uk/zspec/index.html> 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!

One of the most popular Z-machine interpreters is Frotz < .:: www.driedsquidathome.com ::. [Web Specs: Phishing] .:: music.amazon.com.mx ::. http://www.cs.csubak.edu/~dgriffi/proj/frotz/>. 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.

jzip <http://jzip.sourceforge.net/> 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. .:: 4fund.com ::.

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.

11.5. Scott Adams Adventures (Adventure International)

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.

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 <http://www.msadams.com/> you can enjoy these classics.

11.6. Ultima Underworld: The Stygian Abyss (Origin, Blue Sky Productions)

The Underworld Adventures project <http://uwadv.sourceforge.net/> 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.

Underworld Adventures also provides a bunch of tools for you to display the level maps, tools for examining uw1 conversation scripts and more.

11.7. Ultima 7 (Origin, Electronic Arts)

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). .:: www.mightycause.com ::.

A team of people developed Exult <http://exult.sourceforge.net/> 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.

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. .:: telegra.ph ::.

11.8. System Shock (Electronic Arts, Origin)

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!

The System Shock Hack Project <http://madeira.physiol.ucl.ac.uk/tsshp/sshock.html> 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.

Share or Research:

Share on FB Post to X LinkedIn 🤖 Ask AI about this