So I'd been making a multiplayer game in Photon but Ive decided to move it to UNET now that it's finally out. In Photon I was able to send RPC messages to and from basically any networked object, but this only works on "player" objects. The exact situation I have right now is this: I've got an item in-game which resides on the server and I want player to be able to pick it up and move it around. In Photon I had been using RPCs so that when a player clicks on the client-instance of the serverside object, the client-instance of the object sends RPCs to the server-instance and asks for permission to pick it up, and the server-instance replies and approves with another RPC. Then the player can move the item around on their client while it is invisible to all other players. When the player lets go and drops the item, more RPCs are used to tell the server that the player has stopped moving it. The client-instance tells the server-instance the new location of the item (a Vector2D of the coordinates where the player dropped it) and the item snaps to that position, becomes visible to everyone, and basically goes back to the state it was at in the very beginning. Since Commands are for player-objects only, I can't send an RPC from the client-instance of an object to the master-server-instance. Is there a way to do this within the object? I figure I could have them take a "detour" and go through the player-object's networking, but it seems to me like that'd be overcomplicated and Id like to know if theres a better way to do it. TL;DR: I want to send RPCs messages on a non-player object in UNET. Should I route the messages through Commands and ClientRPCs on the player object or is there a better way?