im new at using oop and I have decided to put my class in their, but can’t exploiters steal that code. My methods are both server and client, so some run inside the server and some on the client
If you have any sensitive code you don’t want exploiters to decompile, put them in ServerScriptService. Otherwise if it doesn’t matter and you need clients to be able to use them put them in ReplicatedStorage.
would you consider a level up system to be sensitive?
I mean if it’s being enforced on the server does it really matter, although, since it’s only going to be used on the server you might as well hide it in ServerScriptService
i want to animate the level up gui though
That is fine then, just keep the leveling up code on the server but the actual detection for level changes on the client so you can animate the gui.
can’t exploiters steal that code
Anything you put in ReplicatedStorage is visible to the client, and thus visible to exploiters, yes.
You might benefit from reading this.
Also, from https://developer.roblox.com/en-us/api-reference/class/ModuleScript:
It’s important to know that return values from ModuleScripts are independent with regards to LocalScripts and Scripts, and other environments like the Command Bar. Using
requireon a ModuleScript in a LocalScript will run the code on the client, even if a Script did so already on the server.
I would put any classes that the client needs in ReplicatedStorage, and leave everything else in ServerScriptStorage.