GGZ Gaming Zone Server/Game Server Protocol Specification

The GGZ Gaming Zone developers


Module protocol specification for GGZ Gaming Zone game servers. This document covers the communication between the GGZ server and the game server modules.

Table of Contents
1. The Protocol
1.1. Startup
1.2. Pregame phase
1.3. Playing phase
1.4. Done phase
A. Protocol Reference
A.1. Messages from ggzd to game server
GAME_LAUNCH -- Initializes the game with its seat data
GAME_SEAT -- Informs the game about seat change
GAME_SPECTATOR_SEAT -- Informs the game about spectator seat change
GAME_RESEAT -- Notification of seat/spectator seat change
GAME_STATE -- State update
A.2. Messages from game server to ggzd
LOG -- Log message from the game
GAME_STATE -- Request of game state change
NUM_SEATS -- Request of seat count change
BOOT -- Request of player/spectator boot
BOT -- Request to fill seat with bot player
OPEN -- Request to open seat
GAME_REPORT -- Notification of game results
SAVEGAME_REPORT -- Notification of temporary savegame location
A.3. Symbolic identifiers and their values
ControlToTable -- Opcodes from GGZ server to the game server module
TableToControl -- Opcodes from game server modules to the GGZ server
GGZSeatType -- Possible seat assignments for a table
GGZTableState (GGZdModState) -- Possible game states for a table