I wanted to create a solo, lag free game, even if it meant exploiters could cheat to win on it by changing variables on the game. The only problem that I think of is that localscripts code can be read by exploiters, while serverscripts on serverscriptservice cant. Is there a way to protect the source of localscripts so people cant clone my game?
I suggest reading all of this.
Unfortunately, exploiters have programs available that can capture the local code even if you require them from outside of the game. The programs run at a higher level than you as a developer even have access to. Think of it like this: You are literally giving clients the code. No matter what you do, the client can access the code.
Hiding your local code should only ever be thought of as a deterrent since exploiters will always be able to access them. This is why you must use sanity checks on the server to make sure the information sent from the client is correct.
So in short, keep important data in your server scripts and only send information to the client. Remember that the main source and true engine of the game stems from the server scripts. Without the server scripts your game is basically a frame of a car, so it will not help an exploiter much.
A hacker/exploiter can read all localscripts.