PUN1 RPC's sending but not received

Options
Over the past 2 weeks I have been having an issue where a photonView is called, but the RPC is never run at the target. This has been happening both to the MasterClient (server) and to the individual clients. (Project is PUN1 on Unity 2018.4.33f1)

To verify the issue I have a log output when the photonView is called and another log output at the start of the RPC. The photonView shows in the logs as called, but the RPC does not. This started with just one RPC but has now grown to at least 3 RPC's.

There are no errors in the server logs or in the output log.
I have also reindexed the RPC's and there is a total of 222 RPC's at this time. (Main branch)

Some additional information on this. I have a branch from the main project where I have been rewriting every RPC/photonView in the project. It is not complete by a long shot, but during the past two weeks I have loaded it up in the unity editor (2020) to test for any issues and performed builds although they have never been run.
It may likely be unrelated by the timeline does match up. The branch project has the data types and RPC's rewritten to reduce resource usage and network loading. Before this the data types were pretty much all strings, int32, and float, and all photonView's were PhotonTarget.ALL for the target type. The Live project is in beta and was coded like it is before I became involved, so I am doing a lot of cleanup and optimizing.
In addition I have raised the RPC limit from a byte to an int, although I have set a manual limit of 500 for now. The reason for this is the game is intended to be an MMO with massive content, and most of the network traffic is in the form up updates. I have split the main branch RPC's into purpose specific, such as trait updates, stat updates, position updates instead of the previous method of sending all object data in every update. (new branch has 351 RPC's)
RPC's are now also target specific, meaning that they are sent ONLY to the specific clients/targets that are affected, such as area specific or single client, or all members of a crew.
Some of the new RPC's do share the same name as some RPC's on the main project branch, but most have completely new names not found on the main branch. So far the RPC's that have stopped working do in fact have matching named RPC's in the rebuild branch that I am working on.

Comments

  • JamesMac
    Options
    I seem to have resolved the problem.
    1. I obtained a new app ID from PUN for the branch, and set it into the settings.
    2. Rebuilt the RPC list, saved, and then ran it from the Unity editor in the branch.
    3. Rebuilt the RPC list, saved, and then ran the main project in the Unity Editor.
    4. Restarted the Live Beta servers.
    5. Tested and the RPC's were working again.

    If someone can explain why this happened, I would appreciate it, and I am sure that those of us who don't know why it happened would appreciate it as well.