How to prevent an exploiter one shots any npc that is unanchored

Ive been developing my friend game so well,
However theres one issue i cant seem to solve it at all so please, any help will be appreciated!
My issue is that one of player reported to me that there is an exploiter in the game server, so i joined them quick.
I watched the exploiter for a while before banning them, and the exploiter seems to one shot any npc that walks to the exploiter. i was like “whaat how they do that”, and then go ban the exploiter.
I tried asking my other friend who know well about exploiter behavior and scripting, I asked him how does the exploiter one shot the npc? well he said the exploiter use a script that deletes the npc head part and if the exploiter are near the npc they died instantly or fall off to void, it replicates to the server and it counts as dead npc.
So my question how do i prevent this exploiter deleting npc head part from client that replicates to the server? I cant just let exploiter keep one shotting npc part by just deleting their head part from client and it replicates to server and counts as dead npc! Any help is appreciated!
(oh and are there way to kick them too by detecting if they deleted the npc head part again, so i can script to auto ban them from game)

2 Likes

That seems like a Roblox Network Ownership issue.
https://create.roblox.com/docs/scripting/networking/network-ownership
Basically the exploiter had Network Ownership of the NPC which allowed them to move the NPC.
You should call SetNetworkOwner() on a Part inside the NPC (And every time another Descendant is added).

1 Like

so he fires a remoreEvent to the server ?

you must do controls in your remote event,
example : if the npc health was 100 and then become 0 directly or if the npc position changed to the void or far away in a moment.

but if he has the network ownership you must do what he said @nonamehd24

1 Like

not sure if its remoteevent issue we dont use much remoteevent in the game

1 Like

alright thanks, anyway are there way to detect it so it can kick the exploiter instantly?

1 Like

you will take the permission of editing the npc from the exploiter so you cannot detect.

1 Like

Call SetNetworkOwner() on one of the Parts inside the NPC

1 Like

ah damn, i thought there was a way to detect

1 Like

why u want to detect? he cannot exploit.

1 Like

The npc was basically a waves of the game system, so if its dead by exploiter script it keep continues to the next wave. With detecting i could script to stop the game and kick everyone. so the exploiter doesn’t carries the game

Edit: just with detecting when a exploiter did that again, i can script a datastore to ban them. So yeah ive been trying to think how to do that.

1 Like