You’re not changing it for everyone because you only save the player who is leaving data.
You’ll have to track changes to the server outside of the event. I.e., let the server be aware of the state of the property when it changes for the client, so if the player leaves abruptly, there is data to reference. Though, you should consider restructuring your approach to data
I just wanna know how I can send the data to the server when they leave
Just use server script instead of local script, and if you want those “TwoTimesOrbsMinutes” and “TwoTimesOrbsSeconds” to save only the for specific player then add them in the player instance just like the ThreeTimesOrbsMinutes
.
but if I change the data on the client it doesnt change for the server how could i see if it changes on a specific players client
Why you want to change your data on client?
Lets just imagine Cash is in game.Players.Synitx
Then to change the cash value i’ll do
-- Server script
game.Players.Synitx.Cash.Value += 10 -- Adds 10 cash to myself
And its only got changed for myself not for the other players.
But the server and the other player can see the value.
because I change a value thats in replicated storage and not everyone client has their own replicated storage
nvm I made the TwoTimesOrbsMinutes and Seconds to a value inside the player and it works fine
Ahh, its gonna be complicated for me to explain you.
I suggest you to learn the difference between client and the server, and learn scripting.
Ive been scripting for two years I know the difference lol
Thats the point, replicated is same for everyone.
If you want to store a value for the specific player then you can create a folder similar that player’s name.
local replicatedStorage = game.ReplicatedStorage
local player = game.Players.Synitx
local player_data = Instance.new("Folder",replicatedStorage)
player_data.Name = player.Name
This will create a folder specially for the player and all your values are stored there.
-- local script
-- server script
game.Players.PlayerRemoving:Connect(function(player)
print(player.TimeLeft.ThreeTimesOrbsSeconds.Value, player.TimeLeft.ThreeTimesOrbsMinutes.Value)
player.TimeLeft.ThreeTimesOrbsMinutes.Value = Minutes.Value
player.TimeLeft.ThreeTimesOrbsSeconds.Value = Seconds.Value
end)
Try and read this, this will guide you a lot with what you want.
https://developer.roblox.com/en-us/onboarding/intro-to-saving-data/1
Saving data in server will not save it in another server but only in the local server. So you have to use something called datastores.