Maze War

Maze War
Maze War
Maze war.jpg
Maze War played on a Xerox Star 8010 from 1985.
Developer(s) Steve Colley
Platform(s) Imlac PDS-1, Mac, NeXT Computer, PalmOS, Xerox Star, X11
Release date(s) INT 1974
Genre(s) First-person shooter
Mode(s) Single player, multiplayer

Maze War (also known as The Maze Game, Maze Wars, Mazewar or simply Maze) is a video game.

Maze War originated or disseminated a number of concepts used in thousands of games to follow, and is considered one of the earliest examples of, or progenitor of, a first-person shooter.[1] Uncertainty exists over its exact release date, with some accounts placing it before Spasim, the earliest first-person shooter with a known time of publication.

Although the first-person shooter genre did not crystallize for many years, Maze War had a profound impact on first-person games in other genres, particularly RPGs. The Maze War style view was first adopted by Moria in 1975, an early RPG on the PLATO network, and further popularized by Ultima and Wizardry, eventually appearing in bitmapped form in games like Dungeon Master, Phantasy Star, Eye of the Beholder and countless others.

Gameplay is simple by later standards. Players wander around a maze, being capable of moving backward or forwards, turning right or left in 90-degree increments, and peeking through doorways. The game also uses simple tile-based movement, where the player moves from square to square. Other players are seen as eyeballs. When a player sees another player, they can shoot, or negatively affect, them.[1] Players gain points for shooting other players, and lose them for being shot. Some versions (like the X11 port) had a cheat mode where the player running the server could see the other players' position on the map. Occasionally in some versions, a duck also appears in the passage.


Contents

Mazewar Innovations

Features either invented for Maze War or disseminated by it include:

  • First-person 3D Perspective. Players saw the playing field as if they themselves were walking around in it, with the maze walls rendered in one point perspective. This makes the game one of the first, if not the first first-person shooter. It also could be considered a very early virtual reality system.
  • Avatars. Players were represented to each other as eyeballs. While some earlier games represented players as spacecraft or as dots, this was probably the first computer game to represent players as organic beings.
  • Player's position depicted on level map. Representation of a player's position on a playing field map. Unlike the playing field of a side-view or second-person perspective, this is only used for position reference as opposed to being the primary depiction of play. It does not normally depict opponents. The combination of a first-person view and a top-down, second-person view has been used in many games since.
  • Level editor. A program was written to edit the playing field design.
  • Network play. Probably the first game ever to be played between two peer-to-peer computers, as opposed to earlier multiplayer games which were generally based on a minicomputer or mainframe with players using either terminals or specialized controls, in 1973.
  • Client-server networked play. An updated version may well have been the first client-server game, with workstations running the client connecting to a mainframe running a server program. This version could be played across the ARPANET, in 1977.
  • Observer mode. In the 1977 version, a graphics terminal could be used by observers to watch the game in progress without participating.
  • Internet play. Yet another port was probably the first network-aware game which could be played across the modern Internet, in 1986.
  • Online chat between players. While probably not the first game to feature this, it certainly was a very early example.
  • Modifying clients in order to cheat at the game.
  • Encrypting source code to prevent cheating.

Versions

1973, Imlacs at NASA

It was originally written by Steve Colley (later founder of nCUBE) in 1972-1973 on the Imlac PDS-1's at the NASA Ames Research Center in California. He had written a program for portraying and navigating mazes from a first-person perspective. The maze was depicted in memory with a 16 by 16 bit array. Colley writes:

Maze was popular at first but quickly became boring. Then someone (Howard or Greg) had the idea to put people in the maze. To do this would take more than one Imlac, which at that time were not networked together. So we connected two Imlacs using the serial ports to transmit locations back and forth. This worked great, and soon the idea for shooting each other came along, and the first person shooter was born.
(Excerpted from Colley's reminisces for the 30th anniversary of Maze War)
( "Greg" refers to Greg Thompson and "Howard" is Howard Palmer)

Colley, Thompson, and Howard were part of a summer high school internship program at NASA.

1974, Imlacs at MIT

In 1974, Greg Thompson brought the game with him when he went away to college at MIT.

The original Imlac networked version was limited to two players, with the Imlacs directly cabled to each other. At MIT, the game was expanded to a client-server system. The clients ran on Imlacs which had 50 kbit/s serial connections allowing them to communicate with PDP-10 computers running MIT's Incompatible Timesharing System (ITS). A server program on the mainframe coordinated up to eight clients playing against each other.

By using terminal servers, Imlacs at other colleges that were connected to the ARPAnet (the predecessor to the modern Internet) could connect to the server at MIT and play against players located across the United States.

At some point, a level editor was written so that the playing field could have different designs.

Also, a playing monitor was written. An Evans and Sutherland graphics terminal connected to the mainframe host could display a top-down map with all of the players' positions shown.

1977, TTL at MIT

For a class in 1977, Thompson and others built a version of Maze entirely from TTL hardware, essentially creating a computer dedicated solely to playing Maze. Arcade games such as Pong had used this approach before. The TTL version of Maze used Tektronix oscilloscopes to display vector graphics. This was natural, since the Imlacs also used vector displays. This version introduced a full third dimension, by having a four-level maze with players able to climb up and down between levels. The game was so popular that even though it had been built as a class project it was kept assembled and operational for over a year.

1977, Xerox

In 1977, a staff member at Xerox's Palo Alto Research Center (PARC) rewrote Mazewar for the Xerox Alto and other Xerox Star machines. This was the first raster display version of Mazewar. It made use of the Alto's ethernet network, using the Xerox PUP network protocol. The Data General servers used on the network were capable of gatewaying games to remote office locations, allowing people at several Xerox sites to play against each other, making Mazewar capable of being played in four different configurations: peer to peer with two Imlacs, client-server with Imlacs and a PDP-10, in pure hardware, and over ethernet and PUP.

Several programmers at PARC cheated by modifying the code so that they could see the positions of other players on the playfield map. This upset the authors enough that the source code was subsequently stored in an encrypted form, the only program on the system to receive this protection. This is interesting in light of the fact that this laboratory housed many of the most important programming developments of the time, including the first Graphic User Interfaces.

1986, Digital Equipment Corporation

In 1982, Christopher Kent (later Christopher Kantarjiev) saw Mazewar at RAND.

Kent later interned at Digital Equipment Corporation's Western Research Lab (DEC WRL) in Palo Alto during his Ph.D. studies. Several former PARC employees worked at WRL, and one of them, Gene McDaniel, gave Kent a hardcopy of the Mesa source code listing from the Xerox version of Maze, and the bitmap file that is used for the display.

The X Window System had been newly released as a result of collaborative efforts between DEC and MIT. Kent wrote a networked version of Mazewar which he released in December 1986. This version used UDP port 1111, and could be played by Unix workstations running X Window across the Internet. This was probably the second game which directly used TCP/IP, and the first which could be played across the Internet (1983's SGI Dogfight used broadcast packets and thus could not transit a router).

1992, Oracle SQL*Net

Using Kent's code, Oracle created a version of Maze running over Oracle SQL*Net over TCP/IP, Novell SPX/IPX, DECnet, and Banyan Vines at Fall Interop 92 on a number of workstations, including Unix machines from Sun, IBM, and SGI, as well as DEC VMS workstations and MS-Windows. Attendees could play against each other at stations placed throughout the Moscone Convention Center in San Francisco.

Other versions

  • 1982, Snipes by SuperSet Software. This used semaphores in a shared file which resided on a network drive. It was written as a demonstration program for SuperSet's Local Area Network system, which became Novell Netware.
  • 1987, MacroMind MazeWars+ for the Apple Macintosh. Fully 3D (multiple vertical game levels) and could be played over Appletalk networks. It was distributed by Apple with new Macintoshes for some period of time.
  • 1987, MIDI Maze, a Maze War-inspired game for the Atari ST home computers, which used the MIDI interface for network connection
  • a version has been written for NeXT computers
  • a version has been written for Palm OS
  • a version has been written for iPhone and iPod Touch

Retrospective

A 30th anniversary retrospective was hosted by the Vintage Computer Festival held at the Computer History Museum in Mountain View CA on November 7th, 2004.

Maze alumni

Steve Colley subsequently worked on very early versions of Mars rover technology for NASA, and found that his 3D perspective work on Maze Wars was useful for this project.[2]

References

External links