I am so annoyed about GetNWInt

So I happend to use GetNWInt as way of reading stats from the server, so…

I got a menu for stats adding and it works perfectly for first 5 seconds.

My problem is that whenever I add stats in my stats menu, they get added and players account file is modified as it should, but after 5 seconds when autosave runs, it gets restarted to the same stats as before adding.

It doesn’t output any error so I’ll just paste function in one of the buttons and the autosave:

[lua]local AddStrButton = vgui.Create(‘DButton’)
AddStrButton:SetSize(20, 20)
AddStrButton:SetPos(5, 20)
AddStrButton:SetText(’+’)
AddStrButton:SetParent(StatsPanel1)
AddStrButton.DoClick = function()

if LocalPlayer():GetNWInt(“stat_int”) >= 1 then
local StrPlus = LocalPlayer():GetNWInt(“str_int”) + 1
local StatMinus = LocalPlayer():GetNWInt(“stat_int”) - 1
LocalPlayer():SetNWInt(“str_int”, StrPlus)
LocalPlayer():SetNWInt(“stat_int”, StatMinus)
end
end[/lua]

And the autosave:
[lua]function SaveAcc( ply )
for , ply in pairs (player.GetAll()) do
local PlySteamID = ply:SteamID()
local PlySteamIDg = string.gsub(PlySteamID, “:”, "
")

if file.Exists(“Black_Rose/data/accounts/”…PlySteamIDg…".txt")
then
local LoadedAccCoded = file.Read(“Black_Rose/data/accounts/”…PlySteamIDg…".txt")
local LoadedAcc = glon.decode(LoadedAccCoded)

LoadedAcc[“exp”] = ply:GetNWInt(“exp_int”)
LoadedAcc[“lvl”] = ply:GetNWInt(“lvl_int”)
LoadedAcc[“str”] = ply:GetNWInt(“str_int”)
LoadedAcc[“agi”] = ply:GetNWInt(“agi_int”)
LoadedAcc[“vit”] = ply:GetNWInt(“vit_int”)
LoadedAcc[“stat”] = ply:GetNWInt(“stat_int”)

SavedAcc = glon.encode(LoadedAcc)
file.Write(“Black_Rose/data/accounts/”…PlySteamIDg…".txt", SavedAcc)

end
end
end
timer.Create( “SaveTimer”, SavePeriod, 0, SaveAcc, ply)
[/lua]

Networked variables aren’t updated on the server when set on the client.

Owwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww… So how can I connect them ? Something like ahhhh… now I get it…

Including statsmenu.lua should fix it ?
@Edit: No, wait, it is included, what else can I do ?
@Edit2: I can’t use ply instead of LocalPlayer() in Button.DoClick function right ?

Networked vars are server->client only.
For client->server communication use concommands.

SMART, Just gotta make serverside function which adds stat and set con command to it…
I love u dude (brothers love)

Can anybody tell me command in derma to refresh value ? For example for label ? Because it looks bad when I just set it to reopen.