Our game's servers are getting crashed by exploiters - "Player has been removed from the DataModel"

Already been done. Save yourself the trouble of saying backdoor basics.

no it has not check the post again

This is the message that pops up if you :Destroy() the player inside of the Players service

Have you tried looking through core gui? Because I believe some scripts can run from there when you play. So a plugin could of inserted it in

People donā€™t get me wrong I appreciate the help but, Iā€™ve been scripting for somewhat 5 years so I know how exploiting and backdoors work and how to find them via Ctrl + Shift + F. These methods donā€™t work obviously and it hasnā€™t even been confirmed if itā€™s a backdoor or a rogue remote (NONE of the remotes DELETE anything).

I beg your pardon???

Using CTRL + SHIFT + F and searching all of those keywords we already have done many times now

I know. I showed someone else one of your posts so you didnā€™t have to say things twiceā€¦

Oh right, I didnā€™t see that you replied to the other guy, soz

Hi, if you are still experiencing issues I am more than willing to run a one-time check on your game for exploits and backdoors manually. Itā€™s more or less my field of expertise and I donā€™t like seeing games struggle.

If you want to take me up on that offer, please message me on discord @realsamtheman . Free of charge.

You havenā€™t showed us the results though

sorry for bumping lol but player removed from the datamodel means on the server u called Player:Destroy(), which made that error.
like:

local players = game:GetService('Players')
players.PlayerAdded:Connect(function(player)
print("neuron activation")
player:Destroy() -- this thing is causing the kick message
end)

idk if it works on the client (game.Players.LocalPlayer:Destroy()), just check every scripts u have that destroys the player instance. might be a backdoor too

Itā€™s likely a remote event that accepts an instance and destroys it which has improper checks which allows it to be fired with any instance.

Donā€™t even reply to this post anymore, we stopped working on the game (not because of the exploit).
As of now, and ever. No real solution has been found.

This error occurs when a player deletes (himself or others) from the Players subfolder in the game. You can do this very easily in studio. Simply delete your player under Players.

Oh, I saw that too late, but other developers with the same question should also get answers.

You may be telling the truth, but it could easily be an attempt to steal this guys source code, so I donā€™t think heā€™ll let you do that.

Although I may not look like it I am fairly reputable in terms of my personal career. Not to push an ego here but I have worked on a handful of notable projects and with a handful of notable people as well.

I do completely understand your viewpoint however I was just trying to extend a helping hand when others were pasting responses from GPT.

This message isnā€™t a crash message, it means that an exploiter somehow ran player.Parent = nil or player:Destroy() on the server. This suggests that thereā€™s a backdoor in your game that allows exploiters to run server-sided code.

Exploiters tend to use various methods for hiding keywords and obfuscating code. So an approach you can use is that instead of searching for said keywords, search for their hide-and-seek traces. You can try searching for long sequences of tabs, spaces, invisible characters, newlines, etc. Also search for patterns like space, tab, space, tab, etc.

If you end up finding code that is highly unreadable remove it and see if the error still occurs. Especially if said unreadable code is in a normal script far away from the actual decoy script, you can notice that by checking the x and y scroll size on the editor compared to the actual script source.

PS: Disabling loadstring isnā€™t a fix, most of the time they use their own custom Lua parser modules.

1 Like