Real-time multiplayer games with GDevelop

Aurélien Vivet

Aurélien Vivet

GDevelop, the open-source, no-code video game development platform, introduces multiplayer features that are easier to integrate than ever before.

At the core of GDevelop is the idea of giving everyone the ability to create games fast, without requiring deep technical knowledge in a particular field. We felt it was important to keep this mindset, and with the introduction of this new multiplayer solution, GDevelop is taking another step forward, simplifying the process of creating multiplayer experiences.

Advantages of GDevelop's Multiplayer Feature

A big part of this new feature is the ease of use. A multiplayer game can be started in as little as a minute.

A demo of the GDevelop multiplayer integration in a game.

Multiplayer project: Arrow Fight
An online 1v3 multiplayer platformer game where you fight by shooting arrows at each other, and picking them up again.

The Multiplayer infrastructure of GDevelop removes the need to handle server configurations, network management, lobby creation, and many other technical or not-so-technical details.
This way game creators and developers can focus on game design and player experience.

Ready-to-use Lobbies thanks to Player Authentication

Making a lobby system is now as easy as using leaderboards in GDevelop: setup the number of lobbies, the number of players, you're good to go. A ready-to-play UI is integrated to games allowing players to choose a room and start playing.

You can have up to 8 players in the same lobby and they will be authenticated with their gd.games account. The player authentication gives creators an opportunity to rank players, which is perfect for competitive and challenging games!

How does Multiplayer work in GDevelop?

Multiplayer works by adding a behavior called "Multiplayer Object" to your game objects.

This behavior automatically handles the synchronization of the objects with their position, object variables, behaviors, and effects, along with player actions, ensuring a consistent experience across all clients.
It also transparently synchronizes the game state by sending needed scene data and game variables between players.

The behavior includes conditions and actions allowing you to precisely manipulate objects in a multiplayer game. You can change an object's ownership, send reliable custom messages between players, and you can also disable the synchronization of specified variables.

This means you can usually start by adding the behavior to objects that must be replicated across players, then start tweaking your gameplay to ensure every interaction is properly handled. For example, you can use the actions to change ownership to allow players to move an object, pick it up, steal it from someone else, shoot at a player or an item, etc...

Under the hood: client-side prediction and reconciliation

In addition to this "ownership" system, allowing each player to handle objects that they can move or interact with, the Multiplayer system is made so that games automatically benefit from important features:

  • Client-side prediction: to ensure a smooth gameplay, each game is simulating the whole gameplay. This includes notably simulating the physics engine, the platformer object movements and the movements of most objects having behaviors attached to them.
  • In the cases when objects or the state of the game diverges between players, the host is the one communicating the latest updates to all players.
  • Static objects that are not moving or interacted with will also send less data than "dynamic" objects that are moving.
  • We're working on compressing the data exchanged between players so that bandwidth consumption is reduced at a minimum.

What’s next?

We intend to expand the multiplayer feature further with more players per lobby, allowing people to join a lobby as guests, allowing joining a lobby mid-game, and having much more customization support in terms of design for lobbies.

Now is the time to make multiplayer games! For more information and to get started, visit the GDevelop Multiplayer Documentation.

Discover and play all games tagged as multiplayer on gd.games!