Currently making a game where lots of remotes will be fired in a second, each containing a lot of data in the parameters. Data includes things like: Tables(Configs), CFrames, Booleans, Vector3s, Objects, etc.
This Data is passed from one client to the server, then the server passes it to different clients except for the one which originally sent the data. It is crucial for gameplay for each client to receive that data.
I have noticed replication lag, or in other words server or network lag in heavy usage situations, such as lots of players firing the remotes at once, constantly. I aim for a 40-50 player count for each server, and this replication lag kicked in at around 10-15 players.
I have a few ideas on how to reduce this lag, such as compressing the data the client sends, or encoding and then decoding. Now I’ve got no clue if that would actually really help, since I’m not too well-versed on the topic of packets and sent data and all that, but I feel like that would also require heavy editing of scripts to include support for the decoding and unpacking of the data, which would also cost me extra code and generally make it look more unreadable and complex than it already is.
Any tips from people who have experience with this? What would be the most optimal way to pass this data and reduce this lag.?