Currently trying to make grabbable objects for a multiplayer game. Basically what I have right now is I have the client actually running the logic to grab and then notifying the server that the object was grabbed. This does two things, 1: it runs the grab logic again so it replicates all the necessary values to all the clients and 2: it checks whether it was actually a valid grab or not. Basically doing this so that grabbing objects are responsive but my code is still server authorative.
Right now if it’s a valid grab on the server it just proceeds with replicating the state of the grab to all the other clients. However, if the grab isn’t valid I will need to detach the grabbed object. I don’t want to use the Client RPC because I’ve read that it should only be used for transient purposes.
Is there a way for me to resync the offending client in some sort of way to the server?