It calls over to the item being used, and should execute a short “script” there. However, when a client attempts to use the item, it only executes on that client.
I’ve tried creating a custom event behind the action interface with “executeson server” replication like this with no luck. This still only gets executed on the client side of things. I’ve tried with multicasts as well with the same results for some reason.
Is there any way to get a action interface which exists on a client-side hud, to execute on a server-side object?
I’ve tried googling replication of action interfaces and I only find people asking the same question, without clear efficient answers.
You should separate “client wants X to be done” from “server wants X to be done” in the object logic.
When the GUI tries to run the action, the object should send that as an event to the server (“run on server” for an event, for example.)
The server should then verify that the thing happens, and then broadcast to all clients, including the client that requests the action.