Gameye is the orchestrator for demanding games. It lets you easily host your multiplayer games, orchestrating sessions across multiple providers and locations using high-performing servers.
Website: www.gameye.com
Documentation: https://docs.gameye.com/
You can launch your GAMEYE instances right out of Idem's matchmaker (see player-based architecture). This saves you the effort of needing an own backend for your game. Simply let your players (game client) connect directly to Idem's matchmaker. Once we find a match, we will launch the game-server on your behalf on GAMEYE and provide the connection details back to your player.
1. Preparing game-server
If you haven't already, follow the GAMEYE documentation to setup your game-server image. We recommend you try launching the game-server thorugh their API and make sure it launches when being triggered, before progressing with integrating it into Idem.
2. Follow integration guide
Navigate to player-based architecture and follow the guide there. Step (a) "Setup your game-server" you have already completed with the previous step.
Server regions
When you application calls the Idem endpoint, a servers argument must be given. This represents a list of all servers, the respective player can play on from a latency point of view. For Gameye, provide one or more of the server regions below:
| Sample locations | Full list |
|---|---|
| eu-west, eu-east, na-east, na-central, na-west, sa-east, asia-east, asia-northeast, oce-east | https://docs.gameye.com/regions-and-locations |
The server hosting will fail with a 404 response code if you pass a value for the servers argument that is not one of the GAMEYE regions.
Parameters
The following parameters are available for the Gameye intergration. They can be setup in the Idem console:
| Parameter | Optional | Description |
|---|---|---|
| API token | No | An API token allowing Idem to interact with the GAMEYE API on your behalf. The GAMEYE support team can create such a token for you. |
| image | No | The name of the image for your game that Idem should request GAMEYE to host. |
| version | Yes | The tag of an image for a specific version Idem should request GAMEYE to host. |
Response to players
The websocket response to players will have the following format:
{
"action": "joinInfo",
"payload": {
"providerName": "gameye",
"providerReference": null,
"connectionInfo": {
"host": "192.168.1.10",
"domain": null,
"ip": "192.168.1.10",
"ports": [
{ "name": null, "port": 30000, "protocol": "tcp" },
{ "name": null, "port": 40000, "protocol": "udp" }
]
},
"rawProviderInformation": {
"host": "192.168.1.10",
"ports": [
{ "type": "tcp", "container": 8080, "host": 30000 },
{ "type": "udp", "container": 9090, "host": 40000 }
]
}
}
}
This information can then be used to connect the players to the server.
