HUNTD(6)

NAME
huntd - hunt daemon, back-end for hunt game

SYNOPSIS
huntd [-bs] [-a addr] [ -Dvar=value ...] [-p port]

DESCRIPTION
huntd controls the multi-player hunt(6) game.

The -a addr option is used to cause the server to listen only on a specific interface address. The addr argument must be given as an IP address.

If the -b option is specified, huntd will fork and go into the background. In this mode, errors will be logged via syslog instead of to stderr.

Options given with -D override those read from configuration files ( see CONFIGURATION, below).

The -p port option changes the UDP port number used to rendezvous with the player process and thus allows for private games of hunt(6).

The -s option is for running huntd forever (server mode). This is similar to running it under the control of inetd(8) (see below), but it consumes a process table entry when no one is playing, and monitor clients are not disconnected.

  INETD
To run huntd from inetd(8), you'll need to add this line to /etc/inetd.conf:

    hunt dgram udp wait nobody /usr/games/huntd HUNT

Do not use any of the command line options — if you want inetd(8) to start up huntd on a private port, change the port listed in /etc/services.

  NETWORK RENDEZVOUS
When hunt(6) starts up, it broadcasts on attached networks, using the broadcast or point-to-point destination address for each interface, to find a hunt game in progress. If a huntd hears the request, it sends back the port number for the hunt process to connect to.

Regardless of how huntd is started, it always checks incoming connections with hosts_access(5), using a service name of ‘huntd’.

  CONFIGURATION
When huntd starts, it looks for configuration files that determine game parameters. Each line of a configuration file is of the form var = value. Comments start with a hash sign (‘#’). The configuration files loaded in order (if they exist) are: /etc/hunt.conf, $HOME/.hunt.conf, and ./.hunt.conf.

Many of these variables require intimate knowledge of the driver source code. The complete list of configurable variables is as follows.

random
    enable dispersion doors (default 1)
reflect
    enable generation of reflection walls (default 1)
monitor
    enable monitors (default 1)
ooze
    enable slime shots (default 1)
fly enable flight (default 1)
volcano
    enable volcanoes (default 1)
drone
    enable drone (default 1)
boots
    enable boots (default 1)
scan
    enable scanning (default 1)
cloak
    enable cloaking (default 1)
logerr
    errors to stderr (default 1)
syslog
    errors to syslogd(8) (default 0)
scoredecay
    nr deaths before nr kills begins to decay (default 15)
maxremove
    Maximum number of holes in the maze wall (default 40)
linger
    Seconds to keep game open with no players. -1 means forever (default 90)
flytime
    max time flying (default 20)
flystep
    max displacement each flying time unit (default 5)
volcano_max
    max size of volcano (default 50)
ptrip_face
    percentage chance of tripping a grenade on pickup (default 2)
ptrip_back
    percentage chance of same when backing onto it (default 95)
ptrip_side
    percentage chance of same when walking sideways into it (default 50)
prandom
    percentage of time dispersion doors appear (default 1)
preflect
    percentage of time reflection walls appear (default 1)
pshot_coll
    percentage chance of shots colliding (default 5)
pgren_coll
    percentage chance of grenades colliding (default 10)
pgren_catch
    facing player chance of catching grenade (default 10)
pmiss
    percentage chance of bullet missing player (default 5)
pdroneabsorb
    percentage chance of absorbing a drone (default 1)
fall_frac
    divisor of damage used for fall damage (default 5)
bulspd
    speed of bullets (default 5)
ishots
    initial ammo for player (default 15)
nshots
    ammo boost for all when new player joins (default 5)
maxncshot
    max number of simultaneous shots per player (default 2)
maxdam
    the initial shield for each player (default 10)
mindam
    minimum damage from one unit of ammo (default 5)
stabdam
    damage from stabbing (default 2)
killgain
    shield gained from killing someone (default 2)
slimefactor
    charge multiplier for slime (default 3)
slimespeed
    speed of slime (default 5)
lavaspeed
    speed of volcano lava (default 1)
cloaklen
    duration of a cloak (default 20)
scanlen
    duration of a scan (default 20)
mindshot
    minimum shot class needed to make a drone (default 2)
simstep
    maximum simulation step in microseconds. Zero means traditional blocking behaviour. Try 55000 for something reasonable (default 0)

FILES
/etc/hunt.conf
$HOME/.hunt.conf
./.hunt.conf

SEE ALSO
hosts_options(5), hunt(6), inetd(8)

AUTHORS
Conrad Huang, Ken Arnold, and Greg Couch;
University of California, San Francisco, Computer Graphics Lab

David Leonard tidied up, and added the configuration file.