summaryrefslogtreecommitdiff
path: root/games/hunt/README
diff options
context:
space:
mode:
authorDavid Leonard <d@cvs.openbsd.org>1999-01-21 05:33:39 +0000
committerDavid Leonard <d@cvs.openbsd.org>1999-01-21 05:33:39 +0000
commiteb646ea9c2bfc356f1f54b102fbb1b144805a08e (patch)
treee656cefbb764098dc20f2c50301b0a99d4686cce /games/hunt/README
parentf5c0040a9a389576df86c9d0baf8881752b82ef7 (diff)
hunt (from NetBSD)
Diffstat (limited to 'games/hunt/README')
-rw-r--r--games/hunt/README175
1 files changed, 175 insertions, 0 deletions
diff --git a/games/hunt/README b/games/hunt/README
new file mode 100644
index 00000000000..3bc2728c1da
--- /dev/null
+++ b/games/hunt/README
@@ -0,0 +1,175 @@
+What *is* hunt?
+
+ Hunt is a multi-player search-and-destroy game that takes place
+ in a maze. The game may either be slow and strategic or fast
+ and tactical, depending on how familiar the players are with the
+ keyboard commands.
+
+Distribution Policy:
+
+ Hunt is part of the user-contributed software distributed by
+ Berkeley in 4BSD. The sources are copyrighted by the authors
+ and the University of California. You may redistribute freely
+ as long as the copyright notices are retained.
+
+Words of Warning:
+
+ hunt uses the socket mechanism of 4BSD Unix, so if you are on
+ System V (my sympathies), you're on your own.
+ If your machine does not permit non-setuid-root processes to
+ broadcast UDP packets, then hunt uses a *very* inefficient
+ method for locating the hunt server: it sends a packet
+ to every host on your network. If your machine falls
+ into this category, we strongly recommend that you use
+ either standalone or inetd mode *and* start hunt by
+ specifying the hunt server host.
+ hunt can be configured to use Unix-domain sockets, but that
+ code has not been tested in recent memory. Also, since
+ 4.2BSD Unix-domain sockets are buggy, running hunt on
+ 4.2BSD with Unix-domain sockets will probably crash
+ your system. If you want to experiment, feel free to
+ do so. However, don't say I didn't warn you :-).
+ hunt uses a fair amount of CPU time, both in user time (for
+ computing interactions) and system time (for processing
+ terminal interrupts). We found that a VAX 750 can
+ support about three users before the system is
+ noticeably impacted. The number goes up to about 8 or
+ 10 for a VAX 8650. On a network of Sun 3/50's with the
+ server running on a 3/280, things work much more
+ smoothly as the computing load is distributed across
+ many machines.
+ hunt may be dangerous to your health. "Arthritic pain" and
+ "lack of circulation" in fingers have been reported by
+ hunt abusers. Hunt may also be addictive, and the
+ withdrawal symptoms are not pretty :-)
+
+Installation:
+
+ 1. Edit file "Makefile" and make sure the options selected are
+ reasonable. There are four "make" variables that you
+ should check: GAME_PARAM, SYSCFLAGS, SYSLDFLAGS, and DEFS.
+ GAME_PARAM controls what features of the game will be
+ compiled in (e.g. reflecting walls). The optional features
+ are listed in comments above where GAME_PARAM is defined.
+ If you want to try them, just add the ones you want to the
+ GAME_PARAM definition.
+
+ DEFS is where most system configuration is described.
+ If your system is 4.3BSD, Sun, Ultrix, Convex, HPUX
+ v6.0.1, or SGI, you're in luck. We provide the
+ appropriate definitions for these systems and you just
+ need to select one of them (e.g. if you have an Ultrix
+ system, just change the line
+ DEFS= $(GAME_PARAM) $(DEFS_43)
+ to
+ DEFS= $(GAME_PARAM) $(DEFS_ULTRIX)
+ ). If your system is *not* listed above, then you may
+ need to do some experiments. All of the options are
+ documented in the Makefile, be brave.
+
+ SYSCFLAGS and SYSLDFLAGS are used for "unusual" systems
+ and you probably won't need to deal with it. An
+ example of an unusual system is the Silicon Graphics
+ IRIS, which keeps the network socket code in a BSD
+ emulation library that is in -lbsd. Edit these only if
+ you *know* your system is "different."
+
+ 2. Edit file "Makefile" and look at the "install:" target. By
+ default, files are installed in /usr/games,
+ /usr/games/lib, and /usr/man/man6, which are "standard"
+ locations for games. If your system has a local games
+ directory, you'll need to change these.
+ 3. Edit file "pathname.c" and make sure the file names and port
+ numbers are reasonable. You can ignore the first set
+ of variables as they are used only for debugging
+ purposes. The second set is used in the installed
+ version of hunt. The important variables are "Driver"
+ (where the server is kept), "Test_port" (the Internet
+ UDP port number that new players should use to contact
+ the server), and "Stat_file" (where scoring statistics
+ and body counts are written). The only tricky variable
+ here is "Test_port". The default value is chosen so
+ that it is unlikely to conflict with other service port
+ numbers, but you can change it if you want to.
+ 4. Type "make install", which will compile and install the
+ programs and manual pages. Now you're almost ready to
+ go (see next section). There may be some warnings during
+ compilation. Ignore them.
+
+Setting up the network:
+
+ Hunt may be set up in one of three modes: standalone, inetd, or
+ nothing. In "standalone" mode, there is always a hunt server
+ running on a server machine. All players who enter the game
+ will be talking to this server. This is the mode we use at
+ UCSF. The cost is one entry in the process table on the server
+ machine. In "inetd" mode, the server is started via inetd.
+ Again, only one machine should be set up to answer game
+ requests. The cost is having to edit a few system files. In
+ "nothing" mode, no server is running when there is no one
+ playing. The first person to enter hunt will automatically
+ start up a server on his machine. This, of course, gives him
+ an unfair advantage. Also, there may be race conditions such
+ that players end up in different games. The choice of which
+ mode to use depends on site configuration and politics. We
+ recommend using "standalone" mode because it is simple to set
+ up and starts up rapidly.
+
+ -----
+
+ FOR STANDALONE MODE, put these lines in /etc/rc.local on the
+ server machine. THERE SHOULD ONLY BE ONE SERVER MACHINE!
+
+ # start up the hunt daemon if present
+ if [ -f /usr/games/lib/huntd ]; then
+ /usr/games/lib/huntd -s & (echo -n ' huntd') >/dev/console
+ fi
+
+ Also, you should start one up (on the off chance that you will
+ want to test this mess :-) by typing "/usr/games/lib/hunt -s".
+
+ -----
+
+ FOR INETD MODE, then things get more complicated. You need to
+ edit both /etc/services and /etc/inetd.conf. In /etc/services,
+ add the line
+
+ hunt 26740/udp
+
+ 26740 corresponds to the default "Test_port". If you changed
+ that variable, then you should put whatever value you used here
+ as well. In /etc/inetd.conf, add the line
+
+ hunt dgram udp wait nobody /usr/games/lib/huntd huntd
+
+ This works for 4.3BSD. I don't remember the configuration file
+ format for 4.2BSD inetd.
+
+ See the huntd.6 manual page for more details.
+
+ -----
+
+ FOR NOTHING MODE, do nothing.
+
+Testing:
+ Now you are ready to test the code. Type "/usr/games/hunt" or
+ whatever you call the hunt executable. You should be prompted
+ for your name and team. Then you should get the display of a
+ maze. At this point, you should read the manual page :-).
+
+======
+
+Hunt is not officially supported by anyone anywhere (that I know of);
+however, bug reports will be read and bug fixes/enhancements may be
+sent out at irregular intervals. Send no flames, just money. Happy
+hunting.
+
+ Conrad Huang
+ conrad@cgl.ucsf.edu
+ Greg Couch
+ gregc@cgl.ucsf.edu
+ October 17, 1988
+
+P.S. The authors of the game want to emphasize that this version of hunt
+was started over eight years ago, and the programming style exhibited here
+in no way reflects the current programming practices of the authors.