ggzd - GGZ Gaming Zone Main Server
The main GGZ Gaming Zone server ggzd implements a centralized facility
for multiplayer gaming. It is a multi-threaded multi-process daemon
which handles rooms, games, players and tables, and is connected to a
database to handle player permissions and game statistics. The server
forks a child server for every launched game. It listens on port 5688
by default for incoming connections from GGZ core clients (or other
clients like the chatbot grubby).
Most of its options are configured in ggzd.conf, although some command
line options are available as well. Configuration details are outlined
below. It is recommended that the GGZ Server Hosting Guide be read
before running the server, especially for production systems. An
overview on the server is given in GGZ Server Architecture. Both
documents are available in the ggz-docs package.
Stay in the foreground instead of daemonizing away from the
Use the specified configuration file instead of the default one,
which is ggzd.conf.
Start with the given log levels for messages to the console.
Levels are described in ggzd.conf. A value of all will output
all log messages.
Use this port number to listen for incoming connections. The
default PORT is 5688.
Display the compile-time configuration of ggzd. For some values,
the activation depends on configuration settings, so their
values are shown in brackets for each of those values.
Display ggzd version information.
Display the command line options overview.
The file ggzd.conf contains several sections for general server
configuration, database connectivity, security, logging, broadcasting
of events and more.
In case reconfiguration support has been compiled in and
ReconfigureRooms is enabled, room files added to and removed from
/etc/ggzd/rooms/ will automatically be read in by ggzd.
The server might contact a zeroconf daemon, a metaserver and a database
server depending on the configuration. Therefore, its first run should
be performed with the -F option, so that errors can be caught. All of
the daemons mentioned above must be running before ggzd is launched,
even though intermediate downtimes of the database server are handled
by some of the backends in ggzd.
/etc/ggzd/ggzd.conf - main server configuration
/etc/ggzd/ggzd.motd - message of the day
/etc/ggzd/games/* - description files for the game servers
/etc/ggzd/rooms/* - room description files
/var/lib/ggzd/* - dynamic game data files and savegames (if any)
The GGZ Development Team <email@example.com>