Godot high-level multiplayer API
Godot's own documentation for the networking layer above raw packets. Where
unreal-replication replicates Actors and unity-netcode-gameobjects replicates NetworkObjects,
Godot hangs the whole thing off the SceneTree: MultiplayerAPI is managed at that level, and
every node has a multiplayer property pointing at the instance it is configured with. Sibling nodes
can therefore sit on different network configurations, which none of the other two stacks read on
2026-08-25 offers.
The peer abstraction
MultiplayerPeer extends PacketPeer and deliberately does not serialize anything itself, so more
than one implementation can sit underneath. Three ship: ENetMultiplayerPeer (the default),
WebRTCMultiplayerPeer, and WebSocketMultiplayerPeer. The transport is a swap, not a rewrite.
RPCs, and the three parameters that define one
The @rpc annotation marks a function callable on other peers — "functions that can be called on
other peers," in the docs' own words. Three independent axes:
Who may call it. authority means only the multiplayer authority (the server by default) can
invoke it remotely. any_peer lets clients invoke it, which is how player input gets to the server.
Where it runs. call_remote runs it only on the far side; call_local runs it on both.
How it is delivered. unreliable may be lost or reordered; unreliable_ordered keeps the order
and may still drop; reliable guarantees both and pays for it.
Authority is per node, and reassignable
The server holds authority by default, as peer ID 1. Any node's authority can be moved with
set_multiplayer_authority(). That is the middle position between Unreal's fixed server authority and
Unity's two whole-project topologies: one topology, but the authority within it is a per-node property
rather than a fact about the build.
Godot is also the only one of the three whose documentation states the security obligation as an
instruction to the developer: "validate RPC arguments before applying them to the game state." With
any_peer available on any function, that warning is load-bearing rather than boilerplate.
Related
netcode · unreal-replication · unity-netcode-gameobjects · godot-engine · godot-docs-tutorials · game-networking-fiedler