Connected players move faster than host on their screens.
The player prefab has an empty with a standard Unity Character Controller, a Network Behaviour script attached, and a Network Transform component, with its interpolation target set to a "model" child transform.
The empty itself, is a child of another empty which holds the Network Object component and a Room Player component which holds data about the player.
This is a snippet from the Network Behaviour that controls movement:
public override void FixedUpdateNetwork()
if (GetInput(out NetworkInputData data))
CurrentInput = data;
if (!LastInput.GetButton(NetworkInputData.E_Buttons.BUTTON_A) && CurrentInput.GetButton(NetworkInputData.E_Buttons.BUTTON_A))
LastInput = CurrentInput;
The three Update methods use the Character Controller's Move method to move the character.
When I host a game, and join through another editor instance, the host sees everything normally. Host moves normally and the player that joined also moves normally.
However, the joined player appears to move much faster on their screen, and as a result the two player screens fall out of sync.
I also found that the FixedUpdateNetwork method for their player instance gets called at more than twice the speed of the host. The host player on the other hand, appears to move normally without any problems and is synced on both screens.
Input-wise, everything seems alright and synced properly.