Skip to content

Client that is not the owner can move a ClientNetworkTransform locally #2639

@Daniel4144

Description

@Daniel4144

Maybe this will be solved with other upcoming fixes regarding NetworkTransform synchronization, but since I could still reproduce it with the develop branch, I am reporting it just to be safe.

Description

When a NetworkObject with a ClientNetworkTransform is owned by a client (not host) while another client joins, the newly joined client is able to move the object locally, until the owning client moves the object at least once.

Reproduce Steps

Requires at least 3 instances
Requires an active NetworkObject with a ClientNetworkTransform in the scene where a client can take ownership of

  1. Start a host
  2. Start client 1
  3. Have at least one NetworkObject with a ClientNetworkTransform that is owned by client 1
  4. Start client 2
  5. Move the object from (3.) on client 2 -> The object is moving, although is should not
  6. Move the object on client 1 (owner)
  7. Move the object on client 2 -> The object is not moving anymore, as it should

There is not much involved in reproducing the issue, but I can provide a very minimal project where I could reproduce it in the editor.

Environment

  • OS: Windows 10
  • Unity Version: 2021.3.24f1
  • Netcode Version: 1.5.1 and develop branch (both same behaviour)

Additional Context

Both in-scene objects and spawned objects behave like this.
Does not seem to be connected to half-precision or interpolation unlike other recent NetworkTransform issues.

Metadata

Metadata

Labels

priority:highThis issue has high priority and we are focusing to resolve itstat:importedStatus - Issue is tracked internally at Unitytype:bugBug Report

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions