So this is something I've found myself doing recently that I haven't really seen elsewhere much so I'm kind of curious if it's a case of, it's good practice, bad practice, or just indifferent. Essentially the idea is that you run the exact same check in a local script as you would on the server side. So say I wanted to charge a player 50 bucks to buy an item in game. I'd of course check that on the server side to make sure they actually had that much.
if player.Money >= 50 then
But now what if I had the same check on the local side AS WELL? If the check fails, then it never goes to the server check in the first place but if it passes, it gets sent to the server to be checked again. Would this improve performance by having the server check less things, reduce performance being as it's now an extra check that has to be performed every time, or does it really have no overall effect?