Very Strange RPC Error
Options
Note: Sorry I put this in announcements. Can you guys move this to the PUN section?
When I use my RPC, I'm getting this error: 'ArgumentException: failed to convert parameters' that leads to line 2149 of NetworkingPeer when double clicked.
Here's my code:
Here's the full errorlog:
When I use my RPC, I'm getting this error: 'ArgumentException: failed to convert parameters' that leads to line 2149 of NetworkingPeer when double clicked.
Here's my code:
void Start() { byte[] SendInfo = new byte[]{0,0,0}; short PosX = 5; short PosX = 6; photonView.RPC ("SetupCommand", PhotonTargets.All, SendInfo, PosX, PosY);//Tests with debug.log show that this is the line in the code responsible for the error } [RPC] public void SetupCommand (byte[] SendInfo, PosY, PosY) { //This is never reached }
Here's the full errorlog:
ArgumentException: failed to convert parameters System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:192) System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115) NetworkingPeer.ExecuteRPC (ExitGames.Client.Photon.Hashtable rpcData, .PhotonPlayer sender) (at Assets/3rdScripts/Photon Unity Networking/Plugins/PhotonNetwork/NetworkingPeer.cs:2149) NetworkingPeer.RPC (.PhotonView view, System.String methodName, PhotonTargets target, System.Object[] parameters) (at Assets/3rdScripts/Photon Unity Networking/Plugins/PhotonNetwork/NetworkingPeer.cs:2945) PhotonNetwork.RPC (.PhotonView view, System.String methodName, PhotonTargets target, System.Object[] parameters) (at Assets/3rdScripts/Photon Unity Networking/Plugins/PhotonNetwork/PhotonNetwork.cs:2494) PhotonView.RPC (System.String methodName, PhotonTargets target, System.Object[] parameters) (at Assets/3rdScripts/Photon Unity Networking/Plugins/PhotonNetwork/PhotonView.cs:557) GameManager.SendCommand (Int32 ID, Int16 PosX, Int16 PosY) (at Assets/GameManager.cs:101) GameManager.Update () (at Assets/GameManager.cs:164)
0
Comments
-
Maybe our RPC method does not get correctly what you want to send. You mix an array and single parameters and I'm not sure if/how we map that on the receiving end.
Please try to send like this:
photonView.RPC ("SetupCommand", PhotonTargets.All, new object[] {SendInfo, PosX, PosY});0 -
I found out that sending 3 bytes individually has exactly equal the bandwidth but I'll test this out when I need to send longer arrays of bytes.0
-
It's not about the bandwidth in this case. I just can't provide a good solution how to mix arrays and other values at the moment. Will have to check that out in more detail.0