So, I’m making a fighting game and I want the player to have the ability to perform a Dash and a Backdash, which propels them forward or backward respectively, but I’m not sure if I should handle it on the server or client. Handling it on the client will probably make dashing more responsive but might be prone to exploits while handling it on the server might be more secure, but less responsive. I need some guidance here.
You shouldn’t worry about this. Exploiters can teleport, why would they abuse dash? I would prioritise the experience of legit players over protecting the game from exploits like this. So yes, I would handle player mobility on the client.
I say do it client sided. Cause if you lag or the server lags it is gonna delay the action. Thats how I would do it thought but I suggest a client over a server.
@stagstagstagstag already gave a great answer to this already, but I must add that it’s good that you are worrying about exploits.
Although mobility exploits are far too common and basically cannot be avoided, it’s always worth to think about what the client can do to mess with the server. If I were to give any feedback, just make sure there’s no super simple backdoor (I.E. Remote Event / Function) that instantly gives points or weapons without any extra checkers.
The Remote Functions and Events developer reference gives an idea on when you should and shouldn’t make links to the client and the server.