I do see it, but hackers can tamper with remotes
really, i know did u read the whole text?
WRONG WAY
-ServerScript
game.ReplicatedStorage.RemoteEvent.OnServerEvent(plr,filtered)
plr.Character. something something .Text = filtered
end)
Server Seeing = “LMAO” – he type this with exploit
Client Seeing = “LMAO”
CORRECT WAY
-LocalScript
for i,v in ipairs(game.Players:GetChildren()) do
local filter = game.Chat:FilterStringForBroadcast(v.Character.Textt.Value,game.Players.LocalPlayer)
v.Character. something something .Text = filter
end
game.ReplicatedStorage.FilterText.OnClientEvent:Connect(function(plr)
local filter = game.Chat:FilterStringForBroadcast(plr.Character.Textt.Value,game.Players.LocalPlayer)
plr.Character. something something .Text = filter
end)
Server Seeing = “LMAO” – he type this with/without exploit
Client Seeing = “####” – client always seeing filtered version of server text
PLEASE READ THE WHOLE TEXT
yea they can access to remotes but they cant access to other clients so this script filters the text in clientside (filters in every client not in one client)
if you cant understand what im saying exploiters cant bypass the filter with this scripts ok?
PLEASE READ THE WHOLE TEXT
that’s now how exploits work, text filtering is server authorative
That will work but why not just filter the text on the server then pass the value to the client wouldn’t that prevent any sort of exploitable scenarios in any way?
Client > he type “s–” and he sended this string to server
Server > server is now changing his texttt value to sended string then sending filtertext event to all clients (server didnt change the text property of billboard)
Other Clients and Client > Filtering the string from sended string by server then changing text property of bilboard to filteredtext
Server seeing this = “” - server is not client so server cant see any text
Clients seeing this = “###”
EVERYTHING THIS
we cant filter strings in server?
invoke the server with text to filter then return the filtered text as a result
exploiters can bypass this so why i need to do this?
Not sure if you are aware but you can filter strings on the server with TextService
ok uhhhhh so i made this script for clientside text-filter protection hehehe
Text filtering must be exclusively conducted on the server. When a user submits potentially explicit content through a text box, it should be sent to the server for filtering. Subsequently, the filtered text, represented as hashtags or appropriate substitutes, can then be sent to all clients. The purpose of this approach is to ensure that clients never receive unfiltered text directly from other clients.
And… what’s stopping from exploiters from spoofing that?
can anybody read the whole text this script is not filtering in client then sending to server
this script is first sending unfiltered string to server then server sending to all clients event
in clients they filtering the string then changing the text to filteredtext
why anybody cant understand this i think i need to send video of it
In essence, you are suggesting that other clients receive the unfiltered string and then filter it individually. However, this practice contradicts the Roblox Developer Terms of Service, as clients should never directly receive unfiltered strings from one another.
they cant see unfiltered strings this is just in values clients cant see values so?
first one is what client seeing
second one is what server seeing
However, this approach exposes the possibility of exploiters gaining access to unfiltered content. Furthermore, sending individual filter requests for each client may lead to an excessive number of requests, potentially triggering rate limits and causing some of them to fail. Optimal practice dictates filtering the string once on the server and then distributing the sanitized version to all clients for display.
this thread is for just an tutorial or something like this, you can improve that and i type in last line’s above line: its just an example but you can make ur scripts like this