1What *is* hunt? 2 3 Hunt is a multi-player search-and-destroy game that takes place 4 in a maze. The game may either be slow and strategic or fast 5 and tactical, depending on how familiar the players are with the 6 keyboard commands. 7 8Distribution Policy: 9 10 Hunt is part of the user-contributed software distributed by 11 Berkeley in 4BSD. The sources are copyrighted by the authors 12 and the University of California. You may redistribute freely 13 as long as the copyright notices are retained. 14 15Words of Warning: 16 17 hunt uses the socket mechanism of 4BSD Unix, so if you are on 18 System V (my sympathies), you're on your own. 19 If your machine does not permit non-setuid-root processes to 20 broadcast UDP packets, then hunt uses a *very* inefficient 21 method for locating the hunt server: it sends a packet 22 to every host on your network. If your machine falls 23 into this category, we strongly recommend that you use 24 either standalone or inetd mode *and* start hunt by 25 specifying the hunt server host. 26 hunt can be configured to use Unix-domain sockets, but that 27 code has not been tested in recent memory. Also, since 28 4.2BSD Unix-domain sockets are buggy, running hunt on 29 4.2BSD with Unix-domain sockets will probably crash 30 your system. If you want to experiment, feel free to 31 do so. However, don't say I didn't warn you :-). 32 hunt uses a fair amount of CPU time, both in user time (for 33 computing interactions) and system time (for processing 34 terminal interrupts). We found that a VAX 750 can 35 support about three users before the system is 36 noticeably impacted. The number goes up to about 8 or 37 10 for a VAX 8650. On a network of Sun 3/50's with the 38 server running on a 3/280, things work much more 39 smoothly as the computing load is distributed across 40 many machines. 41 hunt may be dangerous to your health. "Arthritic pain" and 42 "lack of circulation" in fingers have been reported by 43 hunt abusers. Hunt may also be addictive, and the 44 withdrawal symptoms are not pretty :-) 45 46Setting up the network: 47 48 Hunt may be set up in one of three modes: standalone, inetd, or 49 nothing. In "standalone" mode, there is always a hunt server 50 running on a server machine. All players who enter the game 51 will be talking to this server. This is the mode we use at 52 UCSF. The cost is one entry in the process table on the server 53 machine. In "inetd" mode, the server is started via inetd. 54 Again, only one machine should be set up to answer game 55 requests. The cost is having to edit a few system files. In 56 "nothing" mode, no server is running when there is no one 57 playing. The first person to enter hunt will automatically 58 start up a server on his machine. This, of course, gives him 59 an unfair advantage. Also, there may be race conditions such 60 that players end up in different games. The choice of which 61 mode to use depends on site configuration and politics. We 62 recommend using "standalone" mode because it is simple to set 63 up and starts up rapidly. 64 65 ----- 66 67 FOR STANDALONE MODE, put these lines in /etc/rc.local on the 68 server machine. THERE SHOULD ONLY BE ONE SERVER MACHINE! 69 70 # start up the hunt daemon if present 71 if [ -f /usr/games/huntd ]; then 72 /usr/games/huntd -s & (echo -n ' huntd') >/dev/console 73 fi 74 75 Also, you should start one up (on the off chance that you will 76 want to test this mess :-) by typing "/usr/games/hunt -s". 77 78 ----- 79 80 FOR INETD MODE, then things get more complicated. You need to 81 edit both /etc/services and /etc/inetd.conf. In /etc/services, 82 add the line 83 84 hunt 26740/udp 85 86 26740 corresponds to the default "Test_port". If you changed 87 that variable, then you should put whatever value you used here 88 as well. In /etc/inetd.conf, add the line 89 90 hunt dgram udp wait nobody /usr/games/huntd huntd 91 92 This works for 4.3BSD. I don't remember the configuration file 93 format for 4.2BSD inetd. 94 95 See the huntd.6 manual page for more details. 96 97 ----- 98 99 FOR NOTHING MODE, do nothing. 100 101Testing: 102 Now you are ready to test the code. Type "/usr/games/hunt" or 103 whatever you call the hunt executable. You should be prompted 104 for your name and team. Then you should get the display of a 105 maze. At this point, you should read the manual page :-). 106 107====== 108 109Hunt is not officially supported by anyone anywhere (that I know of); 110however, bug reports will be read and bug fixes/enhancements may be 111sent out at irregular intervals. Send no flames, just money. Happy 112hunting. 113 114 Conrad Huang 115 conrad@cgl.ucsf.edu 116 Greg Couch 117 gregc@cgl.ucsf.edu 118 October 17, 1988 119 120P.S. The authors of the game want to emphasize that this version of hunt 121was started over eight years ago, and the programming style exhibited here 122in no way reflects the current programming practices of the authors. 123