Maze War


Maze, later expanded and renamed to Maze War, is a 3D networked first-person shooter originally developed by Steve Colley, Greg Thompson, and Howard Palmer for the Imlac PDS-1 computer. It was largely developed between the summer of 1972 and fall of 1973, at which point it included shooter elements and soon after was playable over ARPANET between multiple universities. It is considered the earliest first-person shooter; ambiguity over its development timeline has led it to be considered, along with Spasim, to be one of the "joint ancestors" of the genre.
Although the first-person shooter genre did not crystallize for many years, Maze War influenced 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 around corners through doorways. The game also uses simple tile-based movement, where the player moves from square to square. Other players are seen as their names, figures or later eyeballs in the Xerox version. When a player sees another player, they can shoot or otherwise negatively affect them. Players gain points for shooting other players, and lose them for being shot. Some versions had a cheat mode where the player running the server could see the other players' positions on the map. The original MIT Imlac version had cheat keys to knock out a wall in the player's local Imlac maze copy, which made it possible to walk through walls as seen by other players. Occasionally in later versions, a duck also appears in the passage.

Innovations

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

1973, Imlacs at NASA

It was originally written by Steve Colley 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, together with Greg Thompson, and Howard Palmer developed the MazeWars program at NASA in Jim Hart's Computation Division 2nd floor lab. Colley writes:

1973, Imlacs at MIT

The original Imlac networked version was limited to two players, with the Imlacs directly cabled to each other. In the fall of 1973, Greg Thompson brought the game with him when he went away to college at Massachusetts Institute of Technology. There at J. C. R. Licklider's MIT Project MAC Dynamic Modelling Laboratory, Greg with Dave Lebling expanded Maze Wars into a full multiplayer game that could operate between Imlacs over the early ARPANET. According to Lebling, the version of the game Thompson brought did not have shooting in it yet: "you wandered around in a maze, and that was it." In addition to the network connectivity, they added the shooting, and Lebling wrote a maze editor where players could create mazes with a text file of '1's for walls and '0's for spaces. As described in the history of interactive computing book The Dream Machine:
The clients ran on Imlacs which had 56 kbit/s serial connections, allowing them to communicate with a PDP-10 computer running MIT's Incompatible Timesharing System. A server program on the mainframe coordinated up to eight Imlac clients playing against each other. By using terminal servers, Imlacs at other colleges that were connected to the ARPANET could connect to the server at MIT and play against players located across the United States. The server program would also implement robot players and drive a playing monitor that would display a top-down map of the maze showing the locations of human and robotic players on an Evans & Sutherland LDS-1 Line Drawing System. Later a level editor was written so that different playing fields could have different designs.

1976, TTL at MIT

For a class in the fall of 1976, Greg Thompson, Mark Horowitz and George Woltman built a "hardware" version of Maze entirely from 7400 series TTL circuits, essentially creating a Maze computer with 256 16-bit instructions and 256 bytes of RAM, dedicated solely to playing Maze for up to 4 human players and 4 robots. 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. Robots players were also implemented in the firmware. Their skill level was controlled by simply adjusting the clock rate of the system. The game was so popular that even though it had been built as a MIT 6.111/6.112 class project it was kept assembled and operational for over a year.

1977, Xerox

In 1977, Jim Guyton, a staff member at Xerox's Palo Alto Research Center 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 playing field 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 graphical user interfaces.

1986, Digital Equipment Corporation

In 1982, Jim Guyton showed Christopher Kantarjiev Mazewar at RAND.
Kent later interned at Digital Equipment Corporation's Western Research Lab in Palo Alto during his Ph.D. studies. Several former PARC employees worked at WRL, and one of them, Gene McDaniel, gave Kent a hard copy 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.

1992, Oracle SQL*Net

Using Kent's code and earlier code from MIT, Jack Haverty and others at 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

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

Maze alumni