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?
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?
this is how i change the module (server side):
but then when i try to read it on the client:
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.
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!
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.