Transfering data from the server to the client without remotes?

i am working on an fps and i want to reduce the delay between the mouse click and the shot as much as possible. to do that i want to move all the calculations from the server remote to the local script. that will reduce the safety, but well, everything comes at a price, i guess. However there is one problem. In ReplicatedStorage there is a module script where the server stores stuff like what gun players are holding, caster behaviors (im using fastcast) etc. is it even possible to access this data in a local script without remote functions (because well the point is to get rid of the remotes so there is no delay)?

Any instances placed under ReplicatedStorage container can be accessed by both the clients and the server.

What is FastCast? haha sorry Im not used to use these kind of external modules.
So this is the documentation/website

Thats a module required by the player’s local scripts? any module added into the player? You should find in the documentation or in the player if theres something you can access about it

yeah but whenever i update the module on the server, the client doesnt see it. its kinda like the server and the client have separate copies of the module

i dont think they have a solution to my problem because well its not really related with the module. i just need the data from the module on the client without using remotes

Do you mean this module script?

If so, how are you changing the module script?

1 Like

So its a module required by the player (not into the player?) but its not related with the module, you just need data from the module? wheres the module? not module? no data then?

1 Like

this is how i change the module (server side):
image
but then when i try to read it on the client:
image
i get this

the module is in replicated storage. the server stores info there and i want to retrieve that info on the client

It seems like changing the values of something in a module script from the server side does not replicate the change to the client. So, my idea would be present this value in another way, or wait for a more advanced scripter to come here and tackle your problem.

yep thats exactly what im trying to do but i just cant think of anything

I believe there’s a plethora of methods to choose from, but based on my current scripting knowledge, you could create a Folder in ReplicatedStorage that contains all the data of each individual player. Try and work out from here.

1 Like

yeah thats the first thing that came to my mind as well, but i just felt like that would have been inefficient because of the amount of values and folders i would have to create

I don’t think this would affect performance, another way is that you could create attributes that stores the data.

It’s late here so I have to go now, good luck!

1 Like

When a module script is in ReplicatedStorage, the client and server get their own unique versions of that module script, so that’s why the changes don’t replicate to the client.

What kind data are you trying to access? My advice would be to store all of this data on the client and then do checks on the server to verify the data whenever needed. It doesn’t matter what is stored on individual clients, as long as incorrect information is not replicated to other clients.

1 Like