OpenGB
Rivet and OpenGB work together under the hood of the Rivet Godot plugin. While developing your Godot game, OpenGB runs in the background, and you need to configure it before you start. But why is this?
We built OpenGB to allow developers to think less about how their game is tied to servers, but also have more control over the process if they choose.
OpenGB lets you combine modules (docs) like
lobbies, auth,
or matchmaker to control what
your game's backend will do. The default backend.json
that comes with the Godot
plugin includes several modules, so let's see what they do:
{
"modules": {
"users": {},
"rate_limit": {},
"tokens": {},
"lobbies": {
// ...
},
"rivet": {}
}
}
The most important module that we use right when we start developing a game in
Godot with Rivet is the lobbies
module
(docs). This will allow Godot to
get routed to a game server by asking the OpenGB lobbies
module to find a
server in the closest server region possible, and otherwise create one if it
doesn't exist. Or rather, that's the default behaviour of the
lobbies
module, but it's easy to tweak if we had special conditions about the
lobby we wanted to join. This is what makes OpenGB so powerful; you're not
locked to how Rivet assumes your gameserver should work!
Other than lobbies
, there are several other modules, so let's step through
them:
- users:
- rate_limit:
- tokens:
- rivet: