Because I don't want the weapon system to work as regular tools, aka don't appear as a proper tool in the backpack, etc, I'm forced to make my own weapon system.
Is there any efficient way, or plan I should go by? Right now, my current plan is to set up inputs on the client, and the server can change the currentWeapon variable into the weapon. From then on, animations, hitboxes and such can be handled on the client whenever currentWeapon is not nil and a few under checks, and the rest can be handled on the server.
I'm going for something modular, so you can give tools by :Give() on a module through a WeaponManager on the server.
My main issue is the clientside and handling things so seperated like this, alongside this being harder to work with because it is not a tool, just a model.
If any of you have done something like this, can you share how you did it? Specifically how you handled client input and such in a way that's easily trackable and consistent, alongside optimized? Is it worth it? Are there better solutions to my problems?


** You are now Level 9! **
