Universal Serverhop [No Double Servers]
Key RequiredUniversal

Universal Serverhop [No Double Servers]

Universal ScriptSebySeby 21.6K views 9K executesUpdated Jul 2, 2022
5.0/ 5(5 votes)
50100% Positive
Lua Script•71 lines (2609 chars)
local PlaceID = game.PlaceId
local AllIDs = {}
local foundAnything = ""
local actualHour = os.date("!*t").hour
local Deleted = false
local File = pcall(function()
    AllIDs = game:GetService('HttpService'):JSONDecode(readfile("NotSameServers.json"))
end)
if not File then
    table.insert(AllIDs, actualHour)
    writefile("NotSameServers.json", game:GetService('HttpService'):JSONEncode(AllIDs))
end
function TPReturner()
    local Site;
    if foundAnything == "" then
        Site = game.HttpService:JSONDecode(game:HttpGet('https://games.roblox.com/v1/games/' .. PlaceID .. '/servers/Public?sortOrder=Asc&limit=100'))
    else
        Site = game.HttpService:JSONDecode(game:HttpGet('https://games.roblox.com/v1/games/' .. PlaceID .. '/servers/Public?sortOrder=Asc&limit=100&cursor=' .. foundAnything))
    end
    local ID = ""
    if Site.nextPageCursor and Site.nextPageCursor ~= "null" and Site.nextPageCursor ~= nil then
        foundAnything = Site.nextPageCursor
    end
    local num = 0;
    for i,v in pairs(Site.data) do
        local Possible = true
        ID = tostring(v.id)
        if tonumber(v.maxPlayers) > tonumber(v.playing) then
            for _,Existing in pairs(AllIDs) do
                if num ~= 0 then
                    if ID == tostring(Existing) then
                        Possible = false
                    end
                else
                    if tonumber(actualHour) ~= tonumber(Existing) then
                        local delFile = pcall(function()
                            delfile("NotSameServers.json")
                            AllIDs = {}
                            table.insert(AllIDs, actualHour)
                        end)
                    end
                end
                num = num + 1
            end
            if Possible == true then
                table.insert(AllIDs, ID)
                wait()
                pcall(function()
                    writefile("NotSameServers.json", game:GetService('HttpService'):JSONEncode(AllIDs))
                    wait()
                    game:GetService("TeleportService"):TeleportToPlaceInstance(PlaceID, ID, game.Players.LocalPlayer)
                end)
                wait(4)
            end
        end
    end
end

function Teleport()
    while wait() do
        pcall(function()
            TPReturner()
            if foundAnything ~= "" then
                TPReturner()
            end
        end)
    end
end

-- If you'd like to use a script before server hopping (Like a Automatic Chest collector you can put the Teleport() after it collected everything.
Teleport()

Features & Information

How it works: - Looks through a list of 100 Servers - Picks a server that isn't full (If it does it will go on with the loop until it finds a working server) - Before it joins the server it saves the ServerId in a file with the os.time of the current hour. - If the hour is different it will delete the file so that it refreshes next time. - If the hour isn't different it will look through the file and the server site for double servers, if found then it won't join that one, it will keep going. Credits to CharWar from v3rmillion Original thread: https://v3rmillion.net/showthread.php?tid=1040972
#universal#serverhop#server#hop

Community Comments (4)

RiftScriptsRiftScriptsOct 17, 2025

is there a possible way to add smth in that script that looks into the roblox in chat for people saying "cheater, Hacker, i will report u, report" or when the user is written into the chat so that it then server hops and also included the normal hop functions?

RiftScriptsRiftScriptsOct 19, 2025

okay so i created a script could you take a tiny look over?

RonisaliveRonisaliveNov 24, 2025

Hey if you make can you drop here i will check

DJ_SploitzDJ_SploitzDec 5, 2025

is their a way to make it server hop every 5 minutes?

More Scripts for Universal Scripts