Easy Written By kitrank

What is Filtering Enabled? Created on: 30-12-2019

An explanation of Filtering Enabled

What is Filtering Enabled?

Filtering Enabled is a form of anti-exploit which significantly prevents exploiting. But it has a down side; it changes the way games have to be scripted, which is why nearly all old, classic games are broken.

Filtering Enabled is enabled by default for every newly created game; however it can be disabled by going into the properties of the Workspace. Disabling Filtering Enabled will make the game vunerable to exploiting AND it will restrict the game to players 13 or older.

How does Filtering Enabled work?

To understand how Filtering Enabled works, you must first understand the difference between the client and the server, and how they interact with each other, otherwise known as the Client-Server model.

Client Every player connected to a game, like you connected to this game right now, is a client. Yep, that's right. You're a client! It can also be thought of as your game or your computer running the game. This game only has single player servers because it's unnessacary to have multiple player servers due to the nature of this game, but there can be multiple clients connected to a server. Each player in a game has their own perspective of the game similar to reality. We're all living in reality (well most of us anyway) but we each have our own unique perspective of it.

Server Every client is connected to the server. The server's job is to keep every client's game consistent with every other client's game. Let's say that you decide to take a step forward in a game. This data that you just moved is sent to the server, then this data is relayed or passed on through the server to all other clients so that they also see you take a step forward in their game.

When Filtering Enabled is disabled (or never introduced yet, Filtering Enabled is relatively new to Roblox), absolutely all interaction from the client is replicated by the server.

That also means an exploiter can run scripts on their client and they will replicate on the server. Before Filtering Enabled, you could run any script you wanted and there would be nothing preventing you from doing it unless the game had their own custom form of exploit detection.

So what does Filtering Enabled do?

It's pretty simple once you understand the Client-Server model. Filtering Enabled prevents all interaction on the client from replicating on the server. In other words, the server doesn't trust anything that comes from the client.

How does this break outdated games?

To understand why outdated games are now broken, you must understand the differences between the different types of scripts; there's local scripts, scripts, and module scripts.

Scripts, often refered to as "server scripts" to specify that scripts including all three types in general is not meant insteadt, as well as Module Scripts are run on the server. Any code in them is replicated on the server. I'm not going into the specific differences between Scripts and Module scripts for this lesson, all that's important is whether they are ran on the client or server.

Local scripts, sometimes refered to as "client scripts", are ran on the client.

To put it simply, the reason why outdated games are now broken is because they use local scripts for most if not all of their code. Before Filtering Enabled was introduced, it wasn't (as) nessacary to use scripts.

So why can't outdated games be fixed?

It's not impossible for these outdated games to be fixed. Assuming the game isn't just forgotten so the developer doesn't feel like fixing it, they probably have to rewrite their entire game to be Filtering Enabled compatible. And no, it's not as simple as just copy and pasting their code from local scripts into server scripts.

As a side note, local scripts are not made obsolete by Filtering Enabled. They still have their uses including intentionally making changes for only the client.

Does Filtering Enabled completely prevent exploiting?

Unfortunately not. I gurantee that MOST exploiting is prevented. Exploiting games despite Filtering Enabled is a complicated topic for another tutorial. The good thing is that exploiters can't just inject random script builder scripts, or well they can, but they won't replicate or work on the server. For example, if an exploiter injects a random weapon script, they won't be able to kill you or even damage you.

Easy Written By kitrank

See kitrank's profile on Roblox

Discussion