What exploits exist for PvE games, and how should I combat them?
Also, I’m making an game with zombies where you are with other players and need to survive.
What I arleady resolved: Nocliping, Flying, Having high walkspeeds, Teleporting, The jumppower is set to 0 so if it changes its simple to see the user is exploiting, godmode, Inserting stuff in _G.
Anyways, to answer your question, if you have weapons (since PvE), make sure to have melee weapon checks to make sure that the player isn’t “hitting” enemies from across the map.
Also maybe see if you can get anti-flinging since some people do this
With your guns make sure on the server to check where the bullet spawns and is going to. You really should try to do all the logic for the gun on the server
I guess the most common: flying and removing parts to hide.
Fly: Designate an area with region3 that checks that the humanoidrootpart is inside, if it is not, it kicks it. Another option is to put transparent parts that will kick them if they touch them, both would work.
Remove parts: the same as before or, if you want (although it may not work), it is to hide a localscript that detects when something is removed or that sends a table of all the objects on the map, if something is missing or the table is not exactly the same will be kicked (you can hide it by leaving it somewhere exploiters don’t think to review and I think it can also be set as parent nil)
One on the server to check if the player moved an high distance in an short time
And another one on the client to check if any part of the character activated :GetPropertyChangedSignal(“CFrame”) as it only happens if set manually by the exploiter(Or one script in the game, but I’m not changing the CFrame I’m only reading it for my Minimap)