So I'm trying to make a system in my game that allows the server to process user input. However, I'm not sure what the most efficient method to do that is.
I've come up with two methods so far:
Method A) For every possible action for every possible client, create a separate remote event. Pros: Fastest Readability
Pros:
-Each action from each client has a remote event, which means the requested action may be performed immediately
Cons:
-The server will have to keep track of several event listeners. I'm not sure how this impacts server traffic
-The server has to keep track of several game objects.
Method B) Have one remote event for every possible action from every possible client. The remote event
Pros:
-Convenient, only one remote event to handle all user input from every client
Cons:
-Two dictionaries have to be indexed before the requested action is performed, which means slower readability
I'm not sure which method is more efficient, or if there's a better one out there. I want the game to be responsive, but I also want to mitigate server traffic. Let me know if I need to elaborate, and thanks for the help!

4 comments
Your trying to gather user input to do an action right? Just need to make sure
What are the actions that you would be wanting to track? How often would they be performed?
I am gathering user input to do any action that needs to be performed on or checked by the server. That means there would be several actions which are frequently performed. For example: forage, pickup, dig, attack, shoot, etc.
It occurred to me that remote functions are also an option. This would allow me to remove all of the event listeners if I went with method a, which means the only downside would be several gameobjects