MULTITETRIS DESCRIPTION ----------- Multitetris is a Tetris that will let you play either alone, or against a human opponent on a distant display (either cooperatively or in match). REQUIREMENTS ------------ You need X11R6, Motif (1.2 or 2.0) and a C++ compiler to compile Multitetris. Multitetris has been successfully compiled on : - SunOS 4.1.3 (CC 4.x, gcc 2.6.3) - Linux 1.2.0 (gcc 2.5.8) - SGI (gcc 2.6.3) - Solaris (*) (*) you will have to modify libprot/Imakefile by hand and add the lines : CXX=g++ RANLIB=echo and then replace "ar clq" with "ar cq" So if you've got problems on one of these configurations, I can most likely supply you with a statically linked executable (you can already check for those on ftp://koala.inria.fr/pub/multitetris*). COMPILATION ----------- Sun's CC is the default compiler. g++ (2.6.3) will make some complaints regarding "implicit declarations", which you can safely ignore. Default config file is for SunOS4. If you are running another architecture, $ cd config $ rm config $ ln -s config. config If you are using g++, using config.linux will probably work fine. Then $ cd .. $ xmkmf $ make Makefiles $ make all RUNNING MULTITETRIS ------------------- Try one of multitetris (single player) multitetris other.display:0 (match against an opponent) multitetris -cooperative other.display:0 (match in cooperation with an opponent) Type "multitetris -help" to get help. INSTALLATION ------------ Just put the binary wherever you want. An application-defaults file is supplied (Multitetris.ad) but you don't have to install it for the game to work. VERY SHORT MANUAL ----------------- The button Start will start a new game. If you want to change the keymap, click in the Textfield under "Keymap" (which contains 'aspd ' by default), and replace the mapping with yours. This mapping must be five characters long exactly, or it will be refused. Once it is typed, validate with RETURN. Characters are in that order : move left, flip left, flip right, move right, fall. TECHNICAL DETAILS ----------------- Multitetris uses the ICE library to achieve communication between the two processes. Actually, it includes an experimental C++ library on top of ICE which makes protocol handling trivial (see directory libprot/). See the file communicator.cxx which gathers all the communication. If this library interests you, drop me a mail to get the latest version. COMPLAINTS ---------- to beust@sophia.inria.fr (money equally welcome ;)).