Issue with Multicast function

I’m having an issue with this multicast function not firing on the clients when fired from a client.

When it’s running as a listen server, and the server client triggers the onUse function it works and replicates to all of the other clients.

There is a BP with the function On Use, and a child BP that overwrites the function.

The playerclass BP uses a button to trigger a ray trace.

Which then triggers the OnUse function of the object it finds.

I figured it out right after I posted it, I figured I’d just update the question in case anyone else stumbles upon it while looking.

Instead of having it directly calling Toggle, I have it call a function that replicates to the server, then I have the server call the multicast function.

Your function Toggle is not executed on clients because it isn’t called at all from a client – your Has Authority switch forbids it. Because a listen server would call this method, I assume that the server has the authority over the Usable Object, but not the client. Normally you would create (for example) a ServerOnUse function in your player controller or character and call it after you linetrace. This should be set to Run On Server and then calls the OnUse function. And when your lights are replicated, their status is updated on all client automatically.