iMaze - version 1.3 February 1996 by Hans-Ulrich Kiel and Joerg Czeranski at TU Clausthal join the iMaze community and have fun! Copyright ========= Copyright (c) 1993-1996 by Hans-Ulrich Kiel and Joerg Czeranski Permission is granted to any individual or institution to use or copy iMaze so long that it is not sold for profit and that this copyright notice is retained. The source code of iMaze may ONLY be distributed in its original, unmodified state. Contributions and enhancements to iMaze will be appreciated, and should be sent to us. What is iMaze? ============== iMaze is a multi-player network action game for TCP/IP with 3D graphics under X11/XView and Motif. It has successfully broken down the local FORTRAN lessons. Other features include: - sophisticated, reliable network protocol, works even with SLIP connections via modem - windows can be freely scaled to avoid speed drawbacks due to poor display performance - modular, portable source code - scores - extensive documentation (german) After hours of testing, dueling and enjoying MidiMaze 2 on the Atari ST we decided that it wouldn't be such a bad idea to write something similar for Unix. "iMaze" means "Internet Maze" and by a strange coincidence it is also a substring of "MidiMaze". For those whom fate has denied the pleasures of MidiMaze we should add the following: You run through a labyrinth and shoot everything that is round without being hit by other round anythings. Of course anything round is one of the following: - other players playing over the net - computer controlled ninjas - deadly shots (except your own) We even managed to have this work be accepted as our "Softwarepraktikum" (some kind of term project every computer science student in Clausthal has to do). If you wonder what Clausthal is: it is that little town just between Berlin and Bonn with no girls, bad weather, slow Internet connectivity and weird people willing to devote their time to stupid computer games. Supported systems ================= iMaze was tested successfully on the following systems: SunOS 4.1.3, OpenWindows SunOS 5.5, OpenWindows SunOS 5.5, Motif Linux Slackware, OpenWindows Ultrix 4.4, Motif HP-UX 9.05, Motif DEC OSF/1 3.2C, Motif AIX 4.1.4, Motif FreeBSD 2.1, OpenWindows SGI Irix v5.3, Motif Sinix 5.41, Motif, GNU-make You may be able to compile it with another OS, if you have the XView library or the Motif library. It should run with any graphics hardware including black and white and grayscale X displays. Sound is only implemented for Linux, FreeBSD and SunOS with OpenWindows and (analog) joystick support only for Linux and FreeBSD. The Linux joystick support was written for the joystick kernel module 0.7.3. What do you get? ================ If you don't have "imaze1.3.tar.Z" yet, get it now from ftp.tu-clausthal.de:/pub/unix/games/imaze (while this README waits for you). Uncompress it and un-tar it, it will create the directory "imaze". The directory "imaze" contains this README and a sample Xdefaults file. The directory "imaze/source" contains the sources and the Makefile. The directory "imaze/man6" contains the man pages. The directory "imaze/cat6" contains the cat-man pages. The directory "imaze/labs" contains some demo labyrinths. Sound files and german documentation for version 1.0 (which HUK is very fond of) are also available on ftp.tu-clausthal.de but they're not included in "imaze1.3.tar.Z". How to compile? =============== For OpenWindows systems $OPENWINHOME needs to be defined as /usr/openwin, /usr/local/openwin or wherever your OpenWindows stuff resides. Then type "cd imaze/source". You may want to define the default server host as: DEFINES=-DDEFAULT_SERVER='"host.name"' in the Makefile. Otherwise the default is to connect to the iMaze server in Clausthal. If you use the sound, you may set the sound directory as: DEFINES=-DDEFAULT_SOUND_DIR='"/sound/dir"' in the Makefile. Choose the appropriate definitions in the first section of the Makefile. Type "make" to get an overview of the supported platforms. Then type "make ". How to start? ============= First start the server "imazesrv", then the clients "imaze"/"ninja". See the man pages for details. The rules of the game ===================== Aim: Run through the labyrinth and shoot the other players without being shot yourself. Doors: Colored walls are doors. Some doors can be passed through in one direction only. Shots: You can only shoot forward. If you shoot again, your previous shot dies. The shot dies also, if it hits a player, a wall or a door. Death: After being shot, you are suspended from the game for 3 seconds and then join in again at a random place. Score: You get 1 point for every shot enemy. How to use the user client? =========================== The XView client has three buttons: "Open" opens a front view, a rear view, a map, a compass or a scores list. "Properties" opens a properties window. You may activate scrollbars for the map there. "Connect/Disconnect" connects/disconnects your client to/from the server. "Pause/Resume" pauses/resumes the player. The Motif client has four menus: "File" only contains an "Exit" item. "Window" is the same as the "Open" menu of the XView client. "Server" contains "Connect" and "Disconnect". "Game" allows pausing and resuming the player with the "Pause" and "Resume" items. After connecting to the server, the front view and scores windows (or whatever you configure in your ~/.Xdefaults file) open automatically. For playing click on any of the client windows, so that it receives keyboard input. The cursor keys move the player, the spacebar and the shift and alt keys are for shooting (remember: you have one shot only). With ^S you pause your player, with ^Q you resume. The main window will display a 3D view. If you are not in the game, the main window is simply grey, if you have been shot, the lucky enemy and his message is displayed. How to create new labyrinths? ============================= You can create your own labyrinths with "genlab". Typing "./genlab" gives you the possible arguments. Just play around with it. But you should at least specify "-v" for verbose and "-s" for searching for a labyrinth without traps. The values for -d and -D shouldn't be too high. How to create new sounds? ========================= The sound files use the Sun audio u-law 8000hz format. If you have a microphone, you can record new sounds with the SunOS audiotool. Known bugs ========== Often the ninjas just don't have an idea where to move. Just give them a break, they're still kind of dumb. :-) It is no bug, that you can't leave a one way door in the other direction, even if you have just touched it. Prior versions ============== The version 1.0 was released in May 1994. Solved bugs since 1.0: - the server produced zombie processes - the XView client complained about "embedding seal incorrect" - the XView client sometimes omitted walls in the 3D display - unused bits in the labyrinth files weren't set to zero by genlab New features since 1.0: - compatibility with HP-UX, Ultrix and maybe AIX - logging of connections to the server - sound for the XView client on SunOS and Linux - joystick for the XView client on Linux - man pages The version 1.1 was released in July 1994. Solved bugs since 1.1: - problems with Solaris 2.x - some of the 3D bugs were fixed New features since 1.1: - score - X resources - client doesn't terminate after disconnect, you can reconnect to same or other server - 2 hours timeout for the ninja - a message is sent to players that you kill The version 1.2 was released in December 1994. Solved bugs since 1.2: - the server name was not configurable in the Makefile - sometimes the client kill message was scrambled in the 3D display - Linux sound didn't work properly New features since 1.2: - Motif support - support for several new platforms - pause button Where to get iMaze from? ======================== The newest version is always available on ftp.tu-clausthal.de (139.174.2.10) in the directory /pub/unix/games/imaze. You can fetch it via anonymous ftp, fsp (port 21) or email to mail-server@ftp.tu-clausthal.de. Credits ======= Axel Buttchereit at the Institute for Computer Science of the TU Clausthal for guiding the project until version 1.0 Christian Perle at the TU Clausthal for designing the title picture of the documentation with POVray Oliver Teuber at the FH Hannover for implementing sound on Linux and arranging MidiMaze sessions Andreas Piefke at the TU Clausthal for allowing us to test sound and joystick support on his Linux machine Gordon Berkley at Motorola Communications Israel Ltd., Tel Aviv for HP patches Stefan Schwoon and Andre at the University of Hildesheim for working on enhancements Ronald Kuehn at the TU Clausthal for the FreeBSD support Ingo Macherius at the TU Clausthal for the Sinix support and all beta testers and people who sent us bug reports. How to contact us? ================== The iMaze developers, Hans-Ulrich Kiel and Joerg Czeranski, can be reached via email as: imaze@tu-clausthal.de Or put anything intended for us as a single archive (e.g. tar) via anonymous ftp into /pub/unix/incoming on ftp.tu-clausthal.de. There is also a WWW page available at http://www.tu-clausthal.de/student/iMaze/