Is this a good method to prevent exploiters from giving themselves in-game currencies?

Hi! I was wondering how could I prevent exploiters from giving themselves an in-game currency through RemoteEvents and I came up with an idea of adding a password as a parameter.

coinsEvent.OnServerEvent:Connect(function(player, code, amount)
	if code == "PasswordHere" then
		player.Coins.Value += amount
	else
		player:Kick("No coins? :(")
	end
end)

Would this work?

2 Likes

They can simply use RemoteSpy to see the password being sent. Why would you use a RemoteEvent to add currency in the first place?

Because there’s a minigame on client that gives money. It involves gui buttons, so it’s gotta be on the client. And I want to give players a few coins after winning the minigame.

Depending on the minigame you should be able to calculate it in parallel on the server. Awarding coins with a RemoteEvent makes it trivial to exploit.

1 Like

Alright, thanks for explaining

Sorry for the late feedback as this is old but I dont believe its bump old; I’d like to propose you an idea since it’s using GUIs. You could fire a remote event when the player pressed the spin button or whatever youre using to initiate the minigame. On the server side you could use the random generation youd use on the client or whatever your plan is and whatever they win could be directed to their balance or their balance could be corrected to the amount and after that, the winning gui or whatever could be cloned on the server to the player. Basically youre initiating the minigame on the client and the server does the minigame itself with a remote.

Again this is just adding extra propositions considering this post has already been solved.

1 Like

Thank you for the proposition! I’ll definitly keep it in mind and try to use it.