- Home /
ClientRpc sent but not received
I'm working on a simple multiplayer game using the NetworkLobbyManager
.
Here's my workflow:
1) In the NetworkLobbyManager
's OnLobbyServerPlayersReady()
, I do some initialization to GameHandler
, a child GameObject with the GameController
script.
Then, I load the play scene using ServerChangeScene(playScene);
.
2) In the play scene, a Player object with the GamePlayerController
script is loaded for each client (linked as the Player object in the NetworkLobbyManager
). In the Start()
method, I do some initializations and send a Command to the server, telling them the client is loaded:
[ClientCallback]
void Start() {
// some initialization
CmdCourseLoaded();
}
[Command]
void CmdCourseLoaded() {
gameController.OnPlayerLoaded(this);
}
3) Once GameController#OnPlayerLoaded
was called for all clients, it sends out an RPC telling them that the game started:
foreach (GolfPlayerController player in players) {
Debug.Log("Send RPC");
player.RpcMapLoaded();
}
I'm currently testing this with only the host (i.e. only one client as well) and while the RPC gets sent out by the GameController
, it is never received by the client GamePlayerController
. Could this be because the GamePlayerController
is not set up to receive RPCs yet? If so, how could I set up my project to fix this?
I've found several similar issues but none of the solutions seemed to work. Any suggestions would be appreciated!
Your answer

Follow this Question
Related Questions
Rpc Can't be called on client - Problem with client, works on server 1 Answer
How to fix "ClientRpc call on un-spawned object" error, using UNET 2 Answers
Standard ClientRPC not called on client 1 Answer
how to ask Server for a value? 1 Answer
How do you Change Color or any variable of non-player object on both client and server in uNet 0 Answers