Game Service

Reference documentation for the Game Service, which manages players and the game lifecycle.

The Game Service is responsible for managing players and games.
Participants of the Microservice Dungeon register once as a player in order to take part in games.

Artifacts Links
Repository https://gitlab.com/microservice-dungeon/services/game-service
Registry https://gitlab.com/microservice-dungeon/services/game-service/container_registry
Changelog https://gitlab.com/microservice-dungeon/services/game-service/-/blob/master/CHANGELOG.md
OpenAPI https://docs.microservice-dungeon.de/docs/reference/game-service/openapi/
AsyncAPI https://docs.microservice-dungeon.de/docs/reference/game-service/asyncapi/

Table of contents:


Player Registration

To participate in the Microservice Dungeon, players register once using a unique playerName. Each player receives a unique playerId upon registration, which identifies the player across the entire application. To take part in a game, a player joins an open game using their playerId.

FAQ

I have already registered with my playerName but have forgotten the playerId.
  • The log-compacted Kafka topic db.player.ecst.v1 contains all registrations that have ever taken place. If the playerName is to be reused, the corresponding event must be identified. Checkout the AsyncAPI for details.

Maintainer

Running the Tests

The test suite uses Testcontainers to provide external dependencies (a PostgreSQL database) as Docker containers.

Prerequisite: Docker Desktop must be running before executing the tests.

./mvnw test

Game Service OpenAPI

The REST API of the Game Service.

Game Service AsyncAPI

The events the Game Service publishes.

Last modified October 22, 2026: Update documentation (f481966)