xref: /dragonfly/games/hunt/huntd/huntd.6 (revision 956939d5)
1.\"	$NetBSD: huntd.6,v 1.3 1998/01/09 08:03:42 perry Exp $
2.\"	$OpenBSD: huntd.6,v 1.18 2007/05/31 19:19:18 jmc Exp $
3.\"	$DragonFly: src/games/hunt/huntd/huntd.6,v 1.2 2008/09/04 07:35:06 swildner Exp $
4.\"
5.\"  Hunt
6.\"  Copyright (c) 1985 Conrad C. Huang, Gregory S. Couch, Kenneth C.R.C. Arnold
7.\"  San Francisco, California
8.\"
9.\"  Copyright (c) 1985 Regents of the University of California.
10.\"  All rights reserved.  The Berkeley software License Agreement
11.\"  specifies the terms and conditions for redistribution.
12.\"
13.Dd September 2, 2008
14.Dt HUNTD 6
15.Os
16.Sh NAME
17.Nm huntd
18.Nd hunt daemon, back-end for hunt game
19.Sh SYNOPSIS
20.Nm
21.Op Fl s
22.Op Fl a Ar addr
23.Sm off
24.Oo
25.Fl D Ar var No = Ar value \ \&...
26.Oc
27.Sm on
28.Op Fl p Ar port
29.Sh DESCRIPTION
30.Nm
31controls the multi-player
32.Xr hunt 6
33game.
34.Pp
35The
36.Fl a Ar addr
37option is used to cause the server to listen only on a
38specific interface address.
39The
40.Ar addr
41argument must be given as an IP address.
42.Pp
43Options given with
44.Fl D
45override those read from configuration files
46.Po
47see
48.Sx CONFIGURATION ,
49below
50.Pc .
51.Pp
52The
53.Fl p Ar port
54option changes the UDP port number used to rendezvous with the player
55process and thus allows for private games of
56.Xr hunt 6 .
57.Pp
58The
59.Fl s
60option is for running
61.Nm
62forever
63.Pq server mode .
64This is similar to running it under the control of
65.Xr inetd 8
66.Pq see below ,
67but it consumes a process table entry when no one is playing,
68and monitor clients are not disconnected.
69.Ss INETD
70To run
71.Nm
72from
73.Xr inetd 8 ,
74you'll need to
75add this line to
76.Pa /etc/inetd.conf :
77.Pp
78.Dl hunt dgram udp wait nobody /usr/games/huntd HUNT
79.Pp
80Do not use any of the command line options \(em if you want
81.Xr inetd 8
82to start up
83.Nm
84on a private port, change the port listed in
85.Pa /etc/services .
86.Ss "NETWORK RENDEZVOUS"
87When
88.Xr hunt 6
89starts up, it broadcasts on attached networks,
90using the broadcast or point-to-point destination address for each interface,
91to find a
92.Nm hunt
93game in progress.
94If a
95.Nm
96hears the request, it sends back the port number for the
97.Nm hunt
98process to connect to.
99.Pp
100Regardless of how
101.Nm
102is started, it always checks incoming connections with
103.Xr hosts_access 5 ,
104using a service name of
105.Sq huntd .
106.Ss "CONFIGURATION"
107When
108.Nm
109starts, it looks for configuration files that determine
110game parameters.
111Each line of a configuration file is of the form
112.Ar var No = Ar value .
113Comments start with a hash sign
114.Pq Sq # .
115The configuration files loaded in order
116.Pq if they exist
117are:
118.Pa /etc/hunt.conf ,
119.Pa "$HOME/.hunt.conf" ,
120and
121.Pa ./.hunt.conf .
122.Pp
123Many of these variables require intimate knowledge of the
124driver source code.
125The complete list of configurable variables is as follows.
126.Pp
127.Bl -tag -width pdroneabsorb -compact
128.It Va random
129enable dispersion doors
130.Pq default 1
131.It Va reflect
132enable generation of reflection walls
133.Pq default 1
134.It Va monitor
135enable monitors
136.Pq default 1
137.It Va ooze
138enable slime shots
139.Pq default 1
140.It Va fly
141enable flight
142.Pq default 1
143.It Va volcano
144enable volcanoes
145.Pq default 1
146.It Va drone
147enable drone
148.Pq default 1
149.It Va boots
150enable boots
151.Pq default 1
152.It Va scan
153enable scanning
154.Pq default 1
155.It Va cloak
156enable cloaking
157.Pq default 1
158.It Va logerr
159errors to stderr
160.Pq default 1
161.It Va syslog
162errors to
163.Xr syslogd 8
164.Pq default 0
165.It Va scoredecay
166nr deaths before nr kills begins to decay
167.Pq default 15
168.It Va maxremove
169Maximum number of holes in the maze wall
170.Pq default 40
171.It Va linger
172Seconds to keep game open with no players. \&-1 means forever
173.Pq default 90
174.It Va flytime
175max time flying
176.Pq default 20
177.It Va flystep
178max displacement each flying time unit
179.Pq default 5
180.It Va volcano_max
181max size of volcano
182.Pq default 50
183.It Va ptrip_face
184percentage chance of tripping a grenade on pickup
185.Pq default 2
186.It Va ptrip_back
187percentage chance of same when backing onto it
188.Pq default 95
189.It Va ptrip_side
190percentage chance of same when walking sideways into it
191.Pq default 50
192.It Va prandom
193percentage of time dispersion doors appear
194.Pq default 1
195.It Va preflect
196percentage of time reflection walls appear
197.Pq default 1
198.It Va pshot_coll
199percentage chance of shots colliding
200.Pq default 5
201.It Va pgren_coll
202percentage chance of grenades colliding
203.Pq default 10
204.It Va pgren_catch
205facing player chance of catching grenade
206.Pq default 10
207.It Va pmiss
208percentage chance of bullet missing player
209.Pq default 5
210.It Va pdroneabsorb
211percentage chance of absorbing a drone
212.Pq default 1
213.It Va fall_frac
214divisor of damage used for fall damage
215.Pq default 5
216.It Va bulspd
217speed of bullets
218.Pq default 5
219.It Va ishots
220initial ammo for player
221.Pq default 15
222.It Va nshots
223ammo boost for all when new player joins
224.Pq default 5
225.It Va maxncshot
226max number of simultaneous shots per player
227.Pq default 2
228.It Va maxdam
229the initial shield for each player
230.Pq default 10
231.It Va mindam
232minimum damage from one unit of ammo
233.Pq default 5
234.It Va stabdam
235damage from stabbing
236.Pq default 2
237.It Va killgain
238shield gained from killing someone
239.Pq default 2
240.It Va slimefactor
241charge multiplier for slime
242.Pq default 3
243.It Va slimespeed
244speed of slime
245.Pq default 5
246.It Va lavaspeed
247speed of volcano lava
248.Pq default 1
249.It Va cloaklen
250duration of a cloak
251.Pq default 20
252.It Va scanlen
253duration of a scan
254.Pq default 20
255.It Va mindshot
256minimum shot class needed to make a drone
257.Pq default 2
258.It Va simstep
259maximum simulation step in microseconds.
260Zero means traditional blocking behaviour.
261Try 55000 for something reasonable
262.Pq default 0
263.El
264.Sh "FILES"
265.Bl -tag -width Pa -compact
266.It Pa /etc/hunt.conf
267.It Pa "$HOME/.hunt.conf"
268.It Pa ./.hunt.conf
269.El
270.Sh SEE ALSO
271.Xr hosts_options 5 ,
272.Xr hunt 6 ,
273.Xr inetd 8
274.Sh AUTHORS
275Conrad Huang, Ken Arnold, and Greg Couch;
276.br
277University of California, San Francisco, Computer Graphics Lab
278.Pp
279David Leonard tidied up, and added the configuration file.
280.\"Sh BUGS
281