
Key Required
Tbb remaster script
Lua Script•269 lines (13791 chars)
local Players=game:GetService("Players")
local UserInputService=game:GetService("UserInputService")
local RunService=game:GetService("RunService")
local HapticService=game:GetService("HapticService")
local ReplicatedStorage=game:GetService("ReplicatedStorage")
local player=Players.LocalPlayer
local playerGui=player:WaitForChild("PlayerGui")
local old=playerGui:FindFirstChild("AutoChatGui")
if old then old:Destroy()end
local C={
panel=Color3.fromRGB(20,10,10),
topBar=Color3.fromRGB(120,15,15),
border=Color3.fromRGB(180,30,30),
btn=Color3.fromRGB(140,20,20),
btnGreen=Color3.fromRGB(30,120,50),
text=Color3.fromRGB(255,220,220),
textDim=Color3.fromRGB(180,120,120),
modOn=Color3.fromRGB(30,140,60),
modOff=Color3.fromRGB(100,15,15),
}
local modActive=false
local modConnection=nil
local isShiftLockEnabled=false
local slSpawned=false
local slCircleRef=nil
local userGameSettings=nil
local OFFSET_VAL=1.75
local camera=workspace.CurrentCamera
local tpwalkSpeed=1.5
local minimized=false
local sg=Instance.new("ScreenGui",playerGui)
sg.Name="AutoChatGui" sg.ResetOnSpawn=false sg.IgnoreGuiInset=true sg.ZIndexBehavior=Enum.ZIndexBehavior.Sibling
local Crosshair=Instance.new("ImageLabel",sg)
Crosshair.AnchorPoint=Vector2.new(0.5,0.5) Crosshair.Position=UDim2.new(0.5,0,0.5,-29) Crosshair.Size=UDim2.new(0.04,0,0.04,0) Crosshair.BackgroundTransparency=1 Crosshair.Image="rbxasset://textures/MouseLockedCursor.png" Crosshair.Visible=false Crosshair.ZIndex=10
Instance.new("UIAspectRatioConstraint",Crosshair).AspectRatio=1
local panel=Instance.new("Frame",sg)
panel.Size=UDim2.new(0,220,0,240) panel.Position=UDim2.new(0.5,-110,0,60) panel.BackgroundColor3=C.panel panel.BorderSizePixel=0
Instance.new("UICorner",panel).CornerRadius=UDim.new(0,14)
Instance.new("UIStroke",panel).Color=C.border
local ptb=Instance.new("Frame",panel)
ptb.Size=UDim2.new(1,0,0,34) ptb.BackgroundColor3=C.topBar ptb.BorderSizePixel=0
Instance.new("UICorner",ptb).CornerRadius=UDim.new(0,14)
local ptbFix=Instance.new("Frame",ptb) ptbFix.Size=UDim2.new(1,0,0.5,0) ptbFix.Position=UDim2.new(0,0,0.5,0) ptbFix.BackgroundColor3=C.topBar ptbFix.BorderSizePixel=0
local dot=Instance.new("Frame",ptb) dot.Size=UDim2.new(0,6,0,6) dot.Position=UDim2.new(0,10,0.5,-3) dot.BackgroundColor3=Color3.fromRGB(255,100,100) dot.BorderSizePixel=0
Instance.new("UICorner",dot).CornerRadius=UDim.new(1,0)
local ptl=Instance.new("TextLabel",ptb) ptl.Text="TBB REMASTER" ptl.Size=UDim2.new(1,-140,1,0) ptl.Position=UDim2.new(0,22,0,0) ptl.BackgroundTransparency=1 ptl.TextColor3=C.text ptl.Font=Enum.Font.GothamBold ptl.TextSize=10 ptl.TextXAlignment=Enum.TextXAlignment.Left
local speedBox=Instance.new("TextBox",ptb)
speedBox.Size=UDim2.new(0,28,0,22) speedBox.Position=UDim2.new(1,-134,0.5,-11) speedBox.BackgroundColor3=Color3.fromRGB(35,10,10) speedBox.Text="1.5" speedBox.TextColor3=C.text speedBox.Font=Enum.Font.GothamBold speedBox.TextSize=9 speedBox.BorderSizePixel=0 speedBox.ClearTextOnFocus=false
Instance.new("UICorner",speedBox).CornerRadius=UDim.new(0,4)
Instance.new("UIStroke",speedBox).Color=C.border
local modBtn=Instance.new("TextButton",ptb)
modBtn.Size=UDim2.new(0,42,0,22) modBtn.Position=UDim2.new(1,-100,0.5,-11) modBtn.BackgroundColor3=C.modOff modBtn.Text="MOD" modBtn.TextColor3=C.text modBtn.Font=Enum.Font.GothamBold modBtn.TextSize=9 modBtn.BorderSizePixel=0
Instance.new("UICorner",modBtn).CornerRadius=UDim.new(0,5)
Instance.new("UIStroke",modBtn).Color=C.border
local minimizeBtn=Instance.new("TextButton",ptb)
minimizeBtn.Size=UDim2.new(0,22,0,22) minimizeBtn.Position=UDim2.new(1,-52,0.5,-11) minimizeBtn.BackgroundColor3=Color3.fromRGB(80,60,10) minimizeBtn.Text="-" minimizeBtn.TextColor3=Color3.fromRGB(255,220,100) minimizeBtn.Font=Enum.Font.GothamBold minimizeBtn.TextSize=14 minimizeBtn.BorderSizePixel=0
Instance.new("UICorner",minimizeBtn).CornerRadius=UDim.new(0,5)
local closeBtn=Instance.new("TextButton",ptb)
closeBtn.Size=UDim2.new(0,22,0,22) closeBtn.Position=UDim2.new(1,-26,0.5,-11) closeBtn.BackgroundColor3=Color3.fromRGB(80,10,10) closeBtn.Text="X" closeBtn.TextColor3=Color3.fromRGB(255,120,120) closeBtn.Font=Enum.Font.GothamBold closeBtn.TextSize=10 closeBtn.BorderSizePixel=0
Instance.new("UICorner",closeBtn).CornerRadius=UDim.new(0,5)
speedBox.FocusLost:Connect(function()
local val=tonumber(speedBox.Text)
if val then
val=math.clamp(val,1,10)
tpwalkSpeed=val
speedBox.Text=tostring(val)
else
speedBox.Text=tostring(tpwalkSpeed)
end
end)
local modStatus=Instance.new("TextLabel",panel)
modStatus.Text="MOD: OFF" modStatus.Size=UDim2.new(1,-16,0,16) modStatus.Position=UDim2.new(0,8,0,38) modStatus.BackgroundTransparency=1 modStatus.TextColor3=C.textDim modStatus.Font=Enum.Font.GothamBold modStatus.TextSize=10 modStatus.TextXAlignment=Enum.TextXAlignment.Left
local scroll=Instance.new("ScrollingFrame",panel)
scroll.Size=UDim2.new(1,-12,1,-60) scroll.Position=UDim2.new(0,6,0,56) scroll.BackgroundTransparency=1 scroll.BorderSizePixel=0 scroll.ScrollBarThickness=3 scroll.ScrollBarImageColor3=C.border scroll.CanvasSize=UDim2.new(0,0,0,0) scroll.AutomaticCanvasSize=Enum.AutomaticSize.Y
local layout=Instance.new("UIListLayout",scroll) layout.Padding=UDim.new(0,6) layout.SortOrder=Enum.SortOrder.LayoutOrder
Instance.new("UIPadding",scroll).PaddingTop=UDim.new(0,4)
minimizeBtn.MouseButton1Click:Connect(function()
minimized=not minimized
if minimized then
scroll.Visible=false
modStatus.Visible=false
panel.Size=UDim2.new(0,220,0,34)
minimizeBtn.Text="+"
else
scroll.Visible=true
modStatus.Visible=true
panel.Size=UDim2.new(0,220,0,240)
minimizeBtn.Text="-"
end
end)
local function makeBtn(label,order,callback)
local btn=Instance.new("TextButton",scroll)
btn.Size=UDim2.new(1,-6,0,36) btn.BackgroundColor3=C.btn btn.Text=label btn.TextColor3=C.text btn.Font=Enum.Font.GothamBold btn.TextSize=12 btn.BorderSizePixel=0 btn.LayoutOrder=order
Instance.new("UICorner",btn).CornerRadius=UDim.new(0,8)
Instance.new("UIStroke",btn).Color=C.border
btn.MouseButton1Click:Connect(function() callback(btn) end)
return btn
end
local CHARS={
{label="krip", remote="Krip", arg="Switch"},
{label="fatboy", remote="fatboy", arg="Switch"},
{label="doombringer", remote="DoomBringer", arg="Switch"},
{label="Mrdoombringer", remote="DoomBringer", arg="MrDoomBringer"},
{label="turking", remote="Turking", arg="Switch"},
{label="exec", remote="Exec", arg="Switch"},
}
for i,data in ipairs(CHARS) do
makeBtn(data.label,i,function(btn)
local ok=pcall(function()
local events=ReplicatedStorage:WaitForChild("CharacterSwitchEvents")
events:WaitForChild(data.remote):FireServer(data.arg)
end)
btn.BackgroundColor3=ok and C.btnGreen or Color3.fromRGB(100,20,20)
task.delay(0.3,function() btn.BackgroundColor3=C.btn end)
end)
end
makeBtn("Shiftlock",7,function(btn)
if slSpawned then return end
slSpawned=true
btn.Text="Spawned!" btn.BackgroundColor3=C.btnGreen
task.wait(1.2)
btn.Text="Shiftlock" btn.BackgroundColor3=C.btn
local slCircle=Instance.new("ImageButton",sg)
slCircle.AnchorPoint=Vector2.new(0.5,0.5) slCircle.Position=UDim2.new(0.85,0,0.8,0) slCircle.Size=UDim2.new(0.075,0,0.075,0) slCircle.BackgroundColor3=Color3.fromRGB(12,8,8) slCircle.BackgroundTransparency=0.1 slCircle.BorderSizePixel=0 slCircle.Image="" slCircle.ZIndex=10
Instance.new("UIAspectRatioConstraint",slCircle).AspectRatio=1
Instance.new("UICorner",slCircle).CornerRadius=UDim.new(1,0)
local slStroke=Instance.new("UIStroke",slCircle) slStroke.Color=C.border slStroke.Thickness=2
slCircleRef=slCircle
local slIcon=Instance.new("ImageLabel",slCircle)
slIcon.BackgroundTransparency=1 slIcon.Position=UDim2.new(0.15,0,0.15,0) slIcon.Size=UDim2.new(0.7,0,0.7,0) slIcon.Image="rbxasset://textures/ui/mouseLock_off.png" slIcon.ScaleType=Enum.ScaleType.Fit slIcon.ImageColor3=Color3.fromRGB(220,50,50)
slCircle.MouseButton1Click:Connect(function()
isShiftLockEnabled=not isShiftLockEnabled
Crosshair.Visible=isShiftLockEnabled
RunService:UnbindFromRenderStep("FinalNailSync")
if isShiftLockEnabled then
slIcon.ImageColor3=Color3.fromRGB(80,220,100)
slStroke.Color=Color3.fromRGB(80,220,100)
RunService:BindToRenderStep("FinalNailSync",Enum.RenderPriority.Camera.Value+1,function()
if not isShiftLockEnabled then RunService:UnbindFromRenderStep("FinalNailSync") return end
local char=player.Character
local hrp=char and char:FindFirstChild("HumanoidRootPart")
if not hrp then return end
if not userGameSettings then pcall(function() userGameSettings=UserSettings():GetService("UserGameSettings") end) end
if userGameSettings then pcall(function() userGameSettings.RotationType=Enum.RotationType.CameraRelative end) end
local dist=(camera.Focus.Position-camera.CFrame.Position).Magnitude
if dist>0.90 then
local camPos=camera.CFrame.Position
local safeY=math.max(camPos.Y,hrp.Position.Y-2)
local newCF=CFrame.new(Vector3.new(camPos.X,safeY,camPos.Z),camera.Focus.Position)*CFrame.new(OFFSET_VAL,0,0)
camera.CFrame=newCF camera.Focus=newCF*CFrame.new(0,0,-dist)
end
end)
else
slIcon.ImageColor3=Color3.fromRGB(220,50,50)
slStroke.Color=Color3.fromRGB(180,30,30)
if userGameSettings then pcall(function() userGameSettings.RotationType=Enum.RotationType.MovementRelative end) end
UserInputService.MouseBehavior=Enum.MouseBehavior.Default
end
end)
local slDragging,slDragStart,slStartPos=false,nil,nil
slCircle.InputBegan:Connect(function(i)
if i.UserInputType==Enum.UserInputType.Touch or i.UserInputType==Enum.UserInputType.MouseButton1 then
slDragging=true slDragStart=i.Position slStartPos=slCircle.Position
end
end)
slCircle.InputChanged:Connect(function(i)
if slDragging and (i.UserInputType==Enum.UserInputType.Touch or i.UserInputType==Enum.UserInputType.MouseMovement) then
local d=i.Position-slDragStart
slCircle.Position=UDim2.new(slStartPos.X.Scale,slStartPos.X.Offset+d.X,slStartPos.Y.Scale,slStartPos.Y.Offset+d.Y)
end
end)
UserInputService.InputEnded:Connect(function(i)
if i.UserInputType==Enum.UserInputType.Touch or i.UserInputType==Enum.UserInputType.MouseButton1 then slDragging=false end
end)
end)
local function startTpwalk()
if modConnection then modConnection:Disconnect() modConnection=nil end
modConnection=RunService.Heartbeat:Connect(function()
local char=player.Character
if not char then return end
local hrp=char:FindFirstChild("HumanoidRootPart")
local hu=char:FindFirstChild("Humanoid")
if not hrp or not hu then return end
if hu.MoveDirection.Magnitude>0 then
hrp.CFrame=hrp.CFrame+hu.MoveDirection*tpwalkSpeed
end
end)
end
local function stopTpwalk()
if modConnection then modConnection:Disconnect() modConnection=nil end
end
closeBtn.MouseButton1Click:Connect(function()
modActive=false stopTpwalk()
isShiftLockEnabled=false
Crosshair.Visible=false
RunService:UnbindFromRenderStep("FinalNailSync")
if userGameSettings then pcall(function() userGameSettings.RotationType=Enum.RotationType.MovementRelative end) end
if slCircleRef then slCircleRef:Destroy() slCircleRef=nil end
sg:Destroy()
end)
modBtn.MouseButton1Click:Connect(function()
modActive=not modActive
if modActive then
modBtn.BackgroundColor3=C.modOn
modStatus.Text="MOD: ON — spd "..tpwalkSpeed
modStatus.TextColor3=Color3.fromRGB(80,220,100)
startTpwalk()
else
modBtn.BackgroundColor3=C.modOff
modStatus.Text="MOD: OFF"
modStatus.TextColor3=C.textDim
stopTpwalk()
end
end)
player.CharacterAdded:Connect(function()
RunService:UnbindFromRenderStep("FinalNailSync")
if isShiftLockEnabled then
task.wait(0.5)
RunService:BindToRenderStep("FinalNailSync",Enum.RenderPriority.Camera.Value+1,function()
local char=player.Character
local hrp=char and char:FindFirstChild("HumanoidRootPart")
if not hrp then return end
local dist=(camera.Focus.Position-camera.CFrame.Position).Magnitude
if dist>0.90 then
local camPos=camera.CFrame.Position
local safeY=math.max(camPos.Y,hrp.Position.Y-2)
local newCF=CFrame.new(Vector3.new(camPos.X,safeY,camPos.Z),camera.Focus.Position)*CFrame.new(OFFSET_VAL,0,0)
camera.CFrame=newCF camera.Focus=newCF*CFrame.new(0,0,-dist)
end
end)
end
end)
local dragging,dragStart,startPos=false,nil,nil
ptb.InputBegan:Connect(function(i)
if i.UserInputType==Enum.UserInputType.Touch then
dragging=true dragStart=i.Position startPos=panel.Position
i.Changed:Connect(function()if i.UserInputState==Enum.UserInputState.End then dragging=false end end)
end
end)
UserInputService.InputChanged:Connect(function(i)
if dragging and i.UserInputType==Enum.UserInputType.Touch then
local d=i.Position-dragStart
panel.Position=UDim2.new(startPos.X.Scale,startPos.X.Offset+d.X,startPos.Y.Scale,startPos.Y.Offset+d.Y)
end
end)Features & Information
- char selection just like tbb battle. Wow
- you select character without even touching the game selection button. How lazy
-advandates
Shiftlock. Modification. And that's all

awda
sdada
can u add evilguy character in here his command is /evilguy btw
@Clearoof thanks ur scripts are the best ngl
@vowahik3847 hey uh sorry to ask because trying to make a evilguy button. ( Admin characters only) Is almost impossible. You need a server badge aka rank permission to have evilguy. Is almost impossible since is a very serverside game. I'm sorry I can't do your request
@Clearoof oh its okay