---
name: "ggz.modules"
section: "5"
platform: "linux"
package: "ggzcore-bin"
version: "0.0.14.1-1"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ggz.modules"
---

# ggz.modules(5)

GGZ Gaming Zone module configuration file

## NAME

ggz.modules - GGZ Gaming Zone module configuration file

## DESCRIPTION

The GGZ Gaming Zone uses the file *ggz.modules* in order to configure which game modules are properly installed.  The only approved method of altering this file is using the *ggz-config* utility, however the file structure is documented here in order to facilitate manual repairs if necessary.

## PARAMETERS

The *ggz.modules* file is formattted in sections, each of which begins with a *\[SectionID\]* line.  The first (required) section is *\[Games\]*.  This section is followed by any number of game-specific sections named *\[g#\]*.

The *\[Games\]* section is formatted as follows:

\[Games\]\
 **\*GameList\*** = GameName1 GameName2 ...\
 **GameName1** = g1 g2 ...\
 **GameName2** = g3 ...

- **\*GameList\***

  Should be set to a list of all the game names which are currently installed.  Each name should appear once and only once, and should be the internal game name (eg:  *NetSpades*) and not the full descriptive name of the game.

- **GameNameX**

  Should equal a game name from the *\*GameList\**, a real world example would be *NetSpades*.  It should be set to a list of unique game section ID's of the form *g#*.  Each game section ID must be the name of a section ID which follows in the file.  The ID's need not be in any specific order, and ID numbers may be skipped but NOT repeated.

A game section is formatted as follows:

**\[g#\]**\
 Author = Game's Author\
 CommandLine = /path/to/command \[optionlist\]\
 Frontend = **FECODE**\
 Homepage = URL to Game's homepage\
 Name = **GameName**\
 Protocol = **ProtocolVersion**\
 Version = **GameVersion**

Most of these parameters are self explanatory, however the following may need clarification:

- **\[g#\]**

  This section code ID must be present in one of the game lists in the *\[Games\]* section above.

- **FECODE**

  The frontend code should be set to either *gtk* or *kde* depending on which user interface the game was designed for.  Note that the game is expected to work with either the GTK+ or KDE clients, assuming that the user has the proper windowing system installed.

- **GameName**

  This must equal the game name (in the *\[Games\]* section) which properly points to this *\[g#\]* section.

- **ProtocolVersion**

  This will be used to match an installed game client with the protocol version currently used by the game server. This allows a new game client to be installed, while retaining the old client for backwards compatibility with older servers.

- **GameVersion**

  This is simply the version of the game client itself. It need not be the same version as the game server as long as the *ProtocolVersion* ID matches.

## FILES

*@ggzconfdir@/ggz.modules*

## AUTHORS

The GGZ Development Team \<ggz-dev@mail.ggzgamingzone.org\>

## SEE ALSO

[ggz-config(6)](/ggz-config/6.md), ggz(7)
