Thanks for the tips. Yes, I’m running the code locally without the OnServer and Multicast Events, I thought it would work if I used them.
Still, it’s pretty odd that it doesn’t work, whereas if use something like this inside the function and connecting it to the Event Tick directly, it replicates fine while spectating:
So it must be something related with the code from the original weapon sway? Maybe some variable that is not replicating correctly?