I have been at this for months with no real progress. All I want to happen is for a client to walk over to a NetworkObject and have it parented to their hand when they pick it up. I would much like to avoid a huge chain of nested NetworkObjects reaching all the way to the hand. For context, my Items derive from an abstract Item class and use prefabs. I also use ScriptableObjects for them, as usual. I started to make *some* progress when I figured out I could parent a NetworkObject with ParentConstaint assigned to the hand while being actually parented to the Player root. This worked flawlessly...on the server. It doesn't work in the slightest for Clients. I also tried to do something like making the NetworkObject just an empty, spawn it, and have the NetworkObject instantiate my items (now MonoBehaviours) as children. This did not really work that well for a couple of reasons. Why is something so minuscule in a single-player game, becoming the biggest obstacle for my first multiplayer game? What does Unity say the best practice is for this? There are next to no tutorials about this online. Can anyone help me?