Hey there!
I’m trying to build an Ability System which functions like so:
- Client1 presses a button, tells server they want to activate an ability.
- Server validates this, plays the ability’s animation and sends Client1’s Humanoid along with the animation id to all clients.
- Every client gets the animationTrack using Humanoid:GetPlayingAnimationTracks() and listens to VFX Animation Events on that ability animation track.
→ The reason I’m building this system is because it helps make vfx feel responsive by letting every client handle it through animation events.
→ I’ve managed to get the animation track on a different Client2 that the server plays on Client1.
Here’s the problem:
When I get the animation track played by the server on ANY client (Client1 or Client2), I found that AnimationTrack:GetMarkerReachedSignal(eventName) returned the signal successfully, but never fired when connected to a function.
This might be intended behavior, but I really need a way around this to let every client connect to the server animation, listen to animation events and play vfx when those events fire.