local hum = script.Parent:WaitForChild("Humanoid") -- this script is in characterStarterScripts
local Check = game.ReplicatedStorage.CheatCheck -- remote event
hum.Changed:Connect(function(changed)
Check:FireServer("hum",changed) -- So here I sent what changed to the server but how do I find the variable by it name when its a string
end)
So I got what changed on the client humanoid and I want to check if it is the same value as the server else if its not I click the player for cheating

2 comments
"Changed" refers to the property that was modified. Therefore it is a simple index: Humanoid[Changed] == ClientState. You'll want to pass the Value of what changed through the RemoteEvent as well.
yea and for example if speed changed Im gonna send what changed and what's it value on the client side and from the server side I gonna check if the value of speed is the same