Reservations

Warning: This feature is in closed beta and accessible by permission only.

A reservation is a request to the Multiplay Hosting API to reserve a specific server for a game session. Reservation requests are part of the reservation system Multiplay Hosting offers. The reservation system works the best for games that don’t use a matchmaker to group players together for a game session but use a server-select flow. A server-select flow is a method of connecting game clients to a game server where the player selects the specific game server they want to join.

Active build bonfiguration

Contrary to allocations, fleets using reservations-based matchmaking only operate using a single active build configuration. When the game client reserves a game server, the active build configuration is what the game server executes for that game session.

To determine and set the active build configuration for a reservations fleet, a request to the Multiplay Hosting API must be made.

When switching an active build configuration for a fleet, the graceful flag set on the fleet is used to determine how the system interacts with game servers as they are being switched to the new build configuration.

A flowchart illustrating the process of switching an active build configuration for a fleet, specifically the interaction between the fleet, the game server, and Multiplay Hosting's reservation processor.

  1. The active build configuration for a fleet is updated with a timeout.
  2. Multiplay Hosting passes the new build configuration to each server within the fleet to use.
  3. Multiplay Hosting's processor attempts to stop the existing servers to use the new active build configuration. In either case, once the supplied timeout is reached, the game server is forcibly switched to the new build configuration with the SIGKILL signal:
    • If graceful is set to true, the processor sends the SIGTERM signal to each server. A game server can use this signal to terminate after the current match is complete.
    • If graceful is set to false, the processor waits until the server becomes idle before issuing a SIGKILL signal. The server is then restarted on the new build configuration.