In this post, I'll focus on the new

Multiplayer in Godot 4.0: On servers, RSETs and state updates

submited by
Style Pass
2021-08-05 18:30:19

In this post, I'll focus on the new "headless" display, and the removal of multiplayer RSETs (read below before despairing!), along with keeping you hyped with some of the new features planned or in the work.

One of the emergent feature of Godot that users have discovered and really started to like is its ability to run on a headless Linux machine and act as game server.

Passing the --display-driver headless command line argument will start Godot without rendering, like the old server platform, no matter if you are on Linux, macOS or Windows.

Additionally, we are working on a series of "server" export options, to let developers further reduce the memory and load time footprint by replacing specific assets with "fake" files that only contains metadata. For example, a "fake" audio file will not contain any audio, but will retain informations about length, loops, etc. This means that server-side code relying on audio timing or texture sizes will still work correctly.

When building the multiplayer API, two forms of network communications were introduced: RPCs to call functions remotely, and RSETs to set variables remotely. This seemed like a good idea at the time: RSETs were a fast way to prototype, and easily make your game networked… or were they?

Leave a Comment