- A game server that compiles and runs on Linux. (Windows is currently unsupported).
- The game is session-based, meaning that the game has a start and endpoint where after the server can be stopped.
Every unique game that we run on our system will need to have its resource usage recorded. The reason for this is that our system needs to know how many matches it can fit on a machine safely so that there is no impact on matches already running.
For this, we need to know a benchmark of the heaviest usage we can expect. Generally, this means filling up a game server up to its maximum capacity with real active players running the game mode that hosts the most number of players.
The following data needs to be recorded:
- Number of vCPU/cores used, including the single-core CPU speed.
- Amount of RAM used.
- In some cases, bandwidth usage
Gameye requires to log a certain set of game events to know the state of the game server. For example, this is used to know when the server is ready and can be passed back to the matchmaking process or when a server is empty and can be shut down.
Currently, we require to log the events to stdout where the igniter tool can be configured to catch the events and define the game server state.
The following events are required to be exposed:
- When the game server has successfully started up and is ready to accept players
- When the last player has left and the server is empty
- When a session has ended
Updated 6 months ago