๐Ÿšš RPC Transporter

Short Description

Component that routes AutoReplication RPC payloads to server, client, or multicast targets.

Long Description

The transporter is responsible for the low-level routing of queued RPCs and property payloads. It can be subclassed to customize routing behavior or to inject custom targeting rules.

๐Ÿš€ Features

  • Routes RPCs based on target type (server/client/multicast).
  • Forwards property payloads using reliable or unreliable paths.
  • Exposes Blueprint events for resolving client targets.

๐Ÿ“š Usage Examples

RPCTransporter->InitializeTransporter(&AutoReplicationMixin);
RPCTransporter->RouteRPC(QueuedRPC);

Bind to On Resolve Client Target to pick the correct client when routing.

RouteRPC

Routes the queued RPC payload using the route type encoded in the queued RPC.

Parameter Name Type Description
QueuedRPC FGorgeousQueuedRPC RPC payload to route.
RPCTransporter->RouteRPC(QueuedRPC);

Best Practices

  • Keep a single transporter per owning Actor to avoid conflicting routes.
  • Use client target overrides sparingly for temporary routing changes.

Troubleshooting

  • If RPCs are not delivered, verify the owning Actor has network authority.
  • If client-bound RPCs fail, confirm a target controller is resolved.