Optimal place for animating object animations

Hi, I’m currently trying to figure out what the most optimal way to handle animation for objects connected to a character is.
As an example, I have a character and I add a large third arm protruding from it’s back, this arm is a model with an Animation controller and it’s animations for punching and grabbing. Now the question is, where exactly I want to handle animations for this arm.

  1. Do I run the animation in a local script and set the player as network owner?
  2. Do I send a remote event and run the animations on the server?
  3. Do I run it on the client and send a remote event to nearby players to replicate the animation?

Thanks for any and all advice, all help is appreciated.

I’m not too sure but I personally would send an event whenever an action is triggered, do sanity checks on the server, and finally fire an event to all clients and let each client handle the animations and effects.

So what you’re saying is, send an event to the server telling it what I hit (and doing sanity checks ofc) amd running the animation myself (server send the animation to nearby clients)

If you could go a little bit more in depth please would really appreciate it

Well I’d send a single event when you want to trigger an action, do sanity checks, if you can you can check who you hit on the server because it would be a lot more secure, but if you can find a way to verify the client’s hit input that could work, and then after all of that fire an event to all of the clients in the server (Event:FireAllClients(Attacker, Victim, …)), and listen to that on a LocalScript in the PlayerScripts and do necessary animations and effects from there, I might be missing things so if any more clarification is needed I’d be happy to help because this type of replication took me a good while to figure out myself and there might even still be better methods than this

1 Like

Bump if anyone has anything to add, any advice helps.