Home › Guides › Multiplayer guide

Multiplayer guide

Everything network-related in one place.

The net driver

The framework replaces Unreal's default GameNetDriver with AFPNetDriver, installed via AFS_Libraries/Config/Engine.ini. It changes exactly one thing: objects implementing IOutsidePawnRPCInterface may call server RPCs even though they are not the player's pawn. Multicast and client RPCs are unaffected.

Warning

If this is not active, server RPCs from state and select components are silently dropped. Nothing errors — the interaction simply does not replicate. This is the most common multiplayer problem.

Replicating transforms

Add BPC_Replication_Actor for a whole actor, or BPC_Replication_Component with a Component Tag for a single component. Both interpolate on remote clients, replicate with SkipOwner so the manipulating player is not corrected by their own data, and switch sample rate based on whether the object is moving.

Authority follows possession: CheckIfOwnerChanged re-evaluates ownership so the player holding an object drives it.

Replicated UI

BPC_ReplicatedUI on a pawn plus BFL_ReplicatedUI.ReplicatedUI_SetReplication lets other players see a player's interface. URenderTargetReplicatorComponent handles the underlying transfer by JPEG-compressing a render target and multicasting it — adjust JPEG Quality to trade fidelity for bandwidth.

Testing

Use Play In Editor with two clients and Run Dedicated Server off for the fastest loop. The AFM_Replication example map is set up for exactly this.