Not everyone knows the different types of games that are out there,
so in an effort to form a common language that we can all use, I'll run
through each game type and provide a very brief history.
Once upon a time, when Apple ][, Commodore, and Atari ruled the world, text
adventures were the game of choice of `intelligent folk'. They were self contained
executables on disks (even casettes). These days we're a bit more sophisticated than
that. Now there's usually a data file and an interpreter. The interpreter reads data
files and provides the gaming interface. The data file is the actual game, and is often
implemented by a scripting language. So for example, you you could have the two Scott
Adams datafiles “The Count.dat” and “Voodoo Castle.dat”. To
actually play the games, you'd invoke the scottfree interpreter with the name of the
datafile you wish to play.
The first adventure game was Adventure (actually “ADVENT”,
written on a PDP-1 in 1972). You can play adventure yourself (actually, a
descendent); it comes with “bsd games” on most Linux distros.
They became popularized by Scott Adams, who is widely considered to be the father
of text adventuring. You can play Scott Adams adventures using
scottfree, the game file interpreter written by Alan Cox, and
the old data files, which are now shareware and can be download from Scott Adams' website.
Text adventures climaxed in the 80's with Infocom. There are many Infocom
interpreters available for Linux; the most popular one being
frotz. You still need the data files, and these are all still
owned and considered commercial property by Activision.
As computer graphics became easier and more powerful, text adventures gave
rise to graphic adventures. The death of interactive fiction more or less coincided
with the bankruptcy of Infocom.
Graphical adventures are, at heart, text adventures on steroids. The degree to
which they use graphics varies widely. Back in the 80's, they were little more than text
adventures which showed a screen of static graphics. When you picked up an item, the
background would be redrawn without the item appearing. The canonical example would be
the so-called `Hi-Res Adventures' like The Wizard And The Princess. Later on, the
sophisticated graphical adventures had your character roaming around the screen, and you
could even use a mouse, but the interface remained purely text.
Next there are the `point and click adventures' which basically have no text
interface at all, and often have dynamic graphics, like a cat wandering around the room
while you're deciding what to do next. In these games, you point at an object (say, a
book) and can choose from a pull-down list of functions. Kind of like object oriented
adventuring. :) There aren't many graphical adventures written natively for Linux. The
only one I can think of is Hopkins FBI (which happens to be my favorite game for Linux).
What light through yonder window breaks? It must be the flash of the double
barreled shotgun! We have a long and twisted history with FPS games which started when id
Games released the code for Doom. The code base has forked and merged numerous times.
Other previously closed engines opened up, many engines are playable via emulators, many
commercial FPS games were released for Linux and there are quite a number of FPS engines
which started life as open source projects. Although you may not be able to play your
favorite FPS under Linux (Half-Life plays great under winex) Linux
definitely has no deficiency here!
First person shooters are characterized by two things. First, you pretty much blow
up everything you see. Second, the action takes place in first person. That is, look
through the eyes of the character who's doing all the shooting. You may even see your
hands or weapon at the bottom of the screen. Some are set in fantasy (Hexen), others are
science fiction (Quake II), and some are set in the present day `real world' (Soldier Of
Fortune).
Just like text adventures, FPS fit the engine/datafile format. The engine refers to
the actual game itself (Doom, Quake, Heretic2) and plays out the maps and bad guys
outlined by the datafile (doom2.wad, pak0.pak, etc). Many FPS games allow people to write
their own non-commercial datafile. There are hundreds, even thousands of non-commercial
Doom datafiles that you can download for free off the net. Often, companies discard
their engines and put them into the open source community so we can hack and improve them.
However, the original data files are kept proprietary. To this day, you still have to
purchase doom.wad.
Anyone who has played games like Dungeons & Dragons or Call of Cthulhu knows
exactly what an RPG is. You play a character, sometimes more than one, characterized by
traits (eg strength, dexterity), skills (eg explosives, basket weaving, mechanics) and
properties (levels, cash). As you play, the character becomes more powerful and the game
adjusts itself accordingly, so instead of fighting orcs, at high levels you start fighting
black dragons. The rewards increase correspondingly. At low levels you might get some
gold pieces as a reward for winning a battle. At high levels, you might get a magic sword
or a kick-butt assault rifle.
RPG's generally have a quest with a well defined ending. In nethack you need
to retrieve the amulet of Yendor for your god. In Ultima II, you destroy the evil
sorceress Minax. At some point, your character becomes powerful enough that you can
`go for it' and try to complete the quest.
The canonical RPG on Linux is Rogue (the ncurses library can be traced back to the
screen handling routines that were written for Rogue!) and its infinite variants like
Zangband and Nethack (which has infinite variants itself). Some of them are quite
complicated and are great feats of programming. There seems to be a deficiency of
commercial RPGs on Linux. If you don't count all the rogue variants, there also seems to
deficiency of open source RPGs as well.
While the insanely popular Ultima series, written by Richard Garriot (aka Lord
British) for Origin, was not the first RPG, it popularized and propelled the RPG genre
into mainstream. Ultima I was released in 1987 and was the game that launched 9
(depending on how you want to count them) very popular sequels, finishing with Ultima IX:
Ascension. You can play Ultima VII under Linux with Exult.