I’m making a game similar to Slap Battles. There are going to be approximately 50 individual abilities the player can choose from. Each ability does something unique. All the abilities MUST run on the client for ALL players. This means :FireAllClients is utilized, the reason for this being, roblox physics aren’t smooth on the server. The game is a combat oriented game so hopefully using :FireAllClients for the combat/abilities isn’t going to be problematic.
So, my main question is how I should go about the structure of the scripts in my game. I have a few ideas and want to know which one is best before I spend hours coding it.
[-] A singular ModuleScript which contains the functions for all 50 abilities (would be quite lengthy)
[-] 50 ModuleScripts, one for each ability, all placed inside a folder to keep them organized.
[-] OOP, I am yet to learn object-oriented programming so I’m not sure if it’s a viable/efficient option for what I’m trying to do.
[-] Any better alternative to what I’ve listed above.
It will need to be a bit flexible too. I will likely need to add more than 50 abilities, so adding the new abilities shouldn’t be a major hassle or cause the code to break. It should also be efficient and performant friendly.
Any help is much appreciated, as I’m not an advanced scripter. Thanks for your time!