After a client joins when is it safe for a client to send an RPC to the server?

Your getting lucky. Go into PIE advanced settings and turn on network emulation. Use a 100/100 ping w/1% loss.

On Post Login is when the “Server” creates a controller and it has has Initialized on the “Server”. There’s no guarantee the server has even sent you the client a controller yet, much less you character class. Characters are spawned after the controller, then possession takes place.

Generally 2-3 ticks after OnPost Login is roughly “when” the server is sending you the controller, then Character.


If a regular RPC isn’t getting through there’s a choke. Typically this due to not enough bandwidth. Bump it up a bit.

Reliable means its just going to keep resending until received. Wasted bandwidth. Reliable RPC’s can negate other gameplay relevant RPC’s (movement etc) from being sent if there isn’t enough bandwidth at net flush tick.


Begin Play is 100% when you get the class loaded. A short delay after that is a good option.

Personally I use a loading pawn as the GM’s default pawn. It’s bare bones, no mesh. It’s job is to fire back to the controller when the level has loaded enough to spawn the real character class. This is when I send cosmetics etc.

1 Like