Pastebin
Paste #38903: No description
< previous paste - next paste>
Pasted by Anonymous Coward
-- SERVICES
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TeleportService = game:GetService("TeleportService")
local LocalPlayer = Players.LocalPlayer
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
local RootPart = Character:WaitForChild("HumanoidRootPart")
getgenv().speed = 150
getgenv().AutoLockBase = false
getgenv().AllInOneMode = false
-- STORE THE COMPLETE SCRIPT SOURCE FOR RE-EXECUTION
getgenv().ScriptSource = getgenv().ScriptSource or game:HttpGet("YOUR_SCRIPT_URL_HERE")
-- VARIABLES
local collectionZonePosition = nil
-- GODMODE & NOCLIP
local godModeConnection
local function setupCharacter(character)
Character = character
RootPart = character:WaitForChild("HumanoidRootPart")
local humanoid = character:WaitForChild("Humanoid")
-- Noclip all parts
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
-- Godmode health max
humanoid.MaxHealth = math.huge
humanoid.Health = humanoid.MaxHealth
if godModeConnection then godModeConnection:Disconnect() end
godModeConnection = humanoid.HealthChanged:Connect(function()
if humanoid.Health < humanoid.MaxHealth then
humanoid.Health = humanoid.MaxHealth
end
end)
end
setupCharacter(Character)
LocalPlayer.CharacterAdded:Connect(setupCharacter)
-- TELEPORT FUNCTION
local function tweenTeleport(toCFrame, speed)
if not RootPart then return end
local distance = (toCFrame.Position - RootPart.Position).Magnitude
local tween = TweenService:Create(RootPart, TweenInfo.new(distance / speed, Enum.EasingStyle.Linear), {
CFrame = toCFrame
})
tween:Play()
tween.Completed:Wait()
end
-- Helper: Get player's plot
local function getPlayerPlot()
if not workspace:FindFirstChild("Plots") then return nil end
for _, plot in pairs(workspace.Plots:GetChildren()) do
local config = plot:FindFirstChild("Config")
if config and config:FindFirstChild("Owner") and config.Owner.Value == LocalPlayer then
return plot
end
end
return nil
end
-- Helper: Check if pos is inside BasePart bounds
local function isPositionInsidePart(pos, part)
local size = part.Size
local cf = part.CFrame
local relativePos = cf:PointToObjectSpace(pos)
return math.abs(relativePos.X) <= size.X/2
and math.abs(relativePos.Y) <= size.Y/2
and math.abs(relativePos.Z) <= size.Z/2
end
-- Helper: Check if pos is inside your entire plot (any part)
local function isPositionInsidePlot(pos, plot)
for _, part in ipairs(plot:GetDescendants()) do
if part:IsA("BasePart") then
if isPositionInsidePart(pos, part) then
return true
end
end
end
return false
end
-- Fire proximity prompts in obj
local function firePromptsIn(obj)
local success = false
for _, prompt in ipairs(obj:GetDescendants()) do
if prompt:IsA("ProximityPrompt") then
fireproximityprompt(prompt)
task.wait(0.1)
success = true
end
end
return success
end
-- Find Foxy outside your base by name keyword (case-insensitive)
local function findFoxyByNameKeyword(keyword)
local playerPlot = getPlayerPlot()
keyword = keyword:lower()
for _, obj in ipairs(workspace:GetDescendants()) do
local name = obj.Name:lower()
if name:find(keyword) then
local foxyPos = nil
if obj:FindFirstChild("HumanoidRootPart") then
foxyPos = obj.HumanoidRootPart.Position
elseif obj:IsA("BasePart") then
foxyPos = obj.Position
end
if foxyPos and playerPlot and isPositionInsidePlot(foxyPos, playerPlot) then
-- Foxy inside your base: skip it
continue
end
return obj
end
end
return nil
end
-- Steal Foxy by keyword (used for Radioactive and other animatronics)
local function stealFoxyByKeyword(keyword)
if not collectionZonePosition then
return false, "Please save Collection Zone first!"
end
local foxy = findFoxyByNameKeyword(keyword)
if not foxy then
return false, "No animatronic with name '"..keyword.."' found outside your base."
end
local foxyPos = nil
if foxy:FindFirstChild("HumanoidRootPart") then
foxyPos = foxy.HumanoidRootPart.Position
elseif foxy:IsA("BasePart") then
foxyPos = foxy.Position
end
if not foxyPos then
return false, "Cannot find animatronic position."
end
tweenTeleport(CFrame.new(foxyPos + Vector3.new(0, 5, 0)), getgenv().speed)
task.wait(0.3)
local interacted = firePromptsIn(foxy)
if not interacted then
for _, obj in ipairs(workspace:GetPartBoundsInBox(CFrame.new(foxyPos), Vector3.new(20, 20, 20))) do
if firePromptsIn(obj) then
interacted = true
break
end
end
end
task.wait(0.8)
-- Tween up to 200 studs above animatronic
tweenTeleport(CFrame.new(foxyPos + Vector3.new(0, 200, 0)), getgenv().speed)
-- Stay in air for 5 seconds
task.wait(5)
tweenTeleport(CFrame.new(collectionZonePosition + Vector3.new(0, 10, 0)), getgenv().speed)
return true, "Animatronic ("..keyword..") stolen!"
end
-- IMPROVED SERVER HOP FUNCTION
local function serverHop()
print("DEBUG: Starting server hop...")
-- Save all necessary state
getgenv().AllInOneEnabled = getgenv().AllInOneMode
getgenv().SavedCollectionPos = collectionZonePosition
getgenv().SavedSpeed = getgenv().speed
getgenv().ShouldReExecute = true
-- Add a timestamp to verify the state is fresh
getgenv().HopTimestamp = tick()
print("DEBUG: Saved state - AllInOne:", getgenv().AllInOneEnabled, "CollectionPos:", getgenv().SavedCollectionPos ~= nil)
-- Safe notification
if _G.Rayfield then
_G.Rayfield:Notify({
Title = "đ Server Hopping Now",
Content = "State saved. Re-executing in new server...",
Duration = 4
})
task.wait(2) -- Give time for notification to show
end
-- Try multiple server hop methods
local hopSuccess = false
-- Method 1: Basic teleport
if not hopSuccess then
local success = pcall(function()
print("DEBUG: Attempting basic teleport...")
TeleportService:Teleport(game.PlaceId, LocalPlayer)
end)
if success then
print("DEBUG: Basic teleport initiated")
hopSuccess = true
end
end
-- Method 2: Alternative teleport if first fails
if not hopSuccess then
pcall(function()
print("DEBUG: Attempting alternative teleport...")
game:GetService("TeleportService"):Teleport(game.PlaceId)
hopSuccess = true
end)
end
-- Method 3: HTTP method for different server
if not hopSuccess then
pcall(function()
print("DEBUG: Attempting HTTP server list method...")
local HttpService = game:GetService("HttpService")
local response = game:HttpGet("https://games.roblox.com/v1/games/" .. game.PlaceId .. "/servers/Public?sortOrder=Asc&limit=100")
local data = HttpService:JSONDecode(response)
if data and data.data then
local servers = {}
for _, server in pairs(data.data) do
if server.playing < server.maxPlayers and server.id ~= game.JobId then
table.insert(servers, server.id)
end
end
if #servers > 0 then
local randomServer = servers[math.random(1, #servers)]
print("DEBUG: Teleporting to specific server:", randomServer)
TeleportService:TeleportToPlaceInstance(game.PlaceId, randomServer, LocalPlayer)
hopSuccess = true
end
end
end)
end
print("DEBUG: Server hop completed, success:", hopSuccess)
end
-- ENHANCED RE-EXECUTION SYSTEM
local function reExecuteScript()
print("DEBUG: Re-execution function called")
if not getgenv().ShouldReExecute then
print("DEBUG: No re-execution flag found")
return
end
print("DEBUG: Re-execution flag found, proceeding...")
-- Wait for game to fully load
local loadWaitTime = 0
while not game:IsLoaded() and loadWaitTime < 30 do
task.wait(0.5)
loadWaitTime = loadWaitTime + 0.5
end
task.wait(5) -- Additional wait for stability
-- Restore saved settings
if getgenv().SavedCollectionPos then
collectionZonePosition = getgenv().SavedCollectionPos
print("DEBUG: Restored collection position:", collectionZonePosition)
end
if getgenv().SavedSpeed then
getgenv().speed = getgenv().SavedSpeed
print("DEBUG: Restored speed:", getgenv().speed)
end
-- Clear the re-execution flag
getgenv().ShouldReExecute = false
print("DEBUG: Settings restored, waiting for GUI...")
-- Wait for Rayfield to be available and then restore All In One mode
if getgenv().AllInOneEnabled then
task.spawn(function()
local attempts = 0
while not _G.Rayfield and attempts < 50 do
task.wait(0.2)
attempts = attempts + 1
end
if _G.Rayfield then
print("DEBUG: Rayfield found, notifying re-execution...")
_G.Rayfield:Notify({
Title = "â
Script Re-Executed Successfully!",
Content = "Resuming All In One mode in 3 seconds...",
Duration = 4
})
task.wait(3)
-- Restore All In One mode
getgenv().AllInOneMode = true
print("DEBUG: All In One mode re-enabled")
-- Find and activate the toggle if it exists
task.spawn(function()
task.wait(2)
if allInOneToggle then
allInOneToggle:Set(true)
print("DEBUG: All In One toggle activated")
end
end)
else
print("DEBUG: Rayfield not found after waiting")
end
end)
end
end
-- CHECK FOR RE-EXECUTION ON SCRIPT START
print("DEBUG: Checking for re-execution flag...")
print("DEBUG: ShouldReExecute =", getgenv().ShouldReExecute)
print("DEBUG: AllInOneEnabled =", getgenv().AllInOneEnabled)
print("DEBUG: HopTimestamp =", getgenv().HopTimestamp)
if getgenv().ShouldReExecute then
print("DEBUG: Re-execution detected, setting up restoration...")
task.spawn(reExecuteScript)
end
-- RAYFIELD GUI
local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
_G.Rayfield = Rayfield -- Store globally for server hop access
local Window = Rayfield:CreateWindow({
Name = "Steal A Freddy | KEYLESS + FREE",
LoadingTitle = "Loading...",
LoadingSubtitle = "By @OriginalTragic",
ConfigurationSaving = {
Enabled = true,
FolderName = "RadioactiveFoxyScript",
FileName = "config"
}
})
local MainTab = Window:CreateTab("Main", 4483362458)
-- ALL IN ONE SECTION
MainTab:CreateSection("All In One (OP)")
local allInOneActive = false
local lastRadioactiveFound = tick()
local autoLockToggle -- Forward declaration
local allInOneToggle -- Forward declaration
allInOneToggle = MainTab:CreateToggle({
Name = "All In One (OP) Mode",
CurrentValue = getgenv().AllInOneMode or false, -- Restore state if re-executed
Callback = function(value)
getgenv().AllInOneMode = value
allInOneActive = value
if value then
print("DEBUG: All In One mode enabled")
-- Step 1: Auto-save collection zone at CURRENT position when toggle is activated
if RootPart then
if not collectionZonePosition then
collectionZonePosition = RootPart.Position
end
getgenv().SavedCollectionPos = collectionZonePosition
Rayfield:Notify({
Title = "â
Step 1: Position Saved",
Content = "Collection zone saved at: " .. math.floor(collectionZonePosition.X) .. ", " .. math.floor(collectionZonePosition.Y) .. ", " .. math.floor(collectionZonePosition.Z),
Duration = 3
})
else
Rayfield:Notify({
Title = "â Error",
Content = "Could not save position - RootPart not found",
Duration = 3
})
return
end
-- Step 2: Enable auto-lock base
getgenv().AutoLockBase = true
lastRadioactiveFound = tick()
Rayfield:Notify({
Title = "â
Step 2: Auto-Lock Enabled",
Content = "Base auto-lock is now active",
Duration = 2
})
task.wait(1)
Rayfield:Notify({
Title = "đ Step 3: Searching for Radioactive Foxy",
Content = "Looking for Radioactive Foxy to steal...",
Duration = 3
})
-- Step 3: Start looking for Radioactive Foxy
task.spawn(function()
local searchAttempts = 0
while allInOneActive and getgenv().AllInOneMode do
searchAttempts = searchAttempts + 1
print("DEBUG: Search attempt #" .. searchAttempts)
if collectionZonePosition then
local foxy = findFoxyByNameKeyword("radioactive")
print("DEBUG: Found foxy:", foxy ~= nil)
if foxy then
-- Found Radioactive Foxy - steal it!
lastRadioactiveFound = tick()
Rayfield:Notify({
Title = "đ¯ Found Radioactive Foxy!",
Content = "Attempting to steal " .. foxy.Name .. "...",
Duration = 2
})
local success, message = stealFoxyByKeyword("radioactive")
Rayfield:Notify({
Title = success and "â
Successfully Stolen!" or "â Steal Failed",
Content = success and "Radioactive Foxy stolen and delivered!" or message,
Duration = 3
})
-- Reset search attempts after successful steal
searchAttempts = 0
else
-- No Radioactive Foxy found
local timeSinceFound = tick() - lastRadioactiveFound
-- Show search progress every 10 attempts (20 seconds)
if searchAttempts % 10 == 0 then
local remaining = math.max(0, 30 - math.floor(timeSinceFound))
Rayfield:Notify({
Title = "đ Still Searching... (Attempt " .. searchAttempts .. ")",
Content = "No Radioactive Foxy found. Server hop in " .. remaining .. "s",
Duration = 2
})
end
-- If no Radioactive Foxy found for 30 seconds, server hop
if timeSinceFound > 30 then
print("DEBUG: 30 seconds passed, initiating server hop")
Rayfield:Notify({
Title = "đ No Radioactive Foxy Found",
Content = "Server hopping and re-executing script...",
Duration = 4
})
task.wait(2)
serverHop()
break
end
end
else
Rayfield:Notify({
Title = "â Error",
Content = "Collection zone not set!",
Duration = 2
})
break
end
-- Wait 2 seconds before next search attempt
for i = 1, 20 do
if not allInOneActive or not getgenv().AllInOneMode then break end
task.wait(0.1)
end
end
end)
-- Auto-lock base loop (runs simultaneously)
task.spawn(function()
while allInOneActive and getgenv().AllInOneMode do
local playerPlot, lockTimeValue
if workspace:FindFirstChild("Plots") then
for _, plot in pairs(workspace.Plots:GetChildren()) do
local config = plot:FindFirstChild("Config")
if config and config:FindFirstChild("Owner") and config.Owner.Value == LocalPlayer then
playerPlot = plot
lockTimeValue = config:FindFirstChild("LockTime")
break
end
end
end
if lockTimeValue and playerPlot then
local spammedBeforeZero = false
local spammedAtZero = false
while (allInOneActive and getgenv().AllInOneMode) and (not spammedBeforeZero or not spammedAtZero) do
local currentLockTime = lockTimeValue.Value
if currentLockTime <= 0.1 and not spammedBeforeZero then
for _, part in ipairs(playerPlot:GetDescendants()) do
if part:IsA("TouchTransmitter") and part.Parent and part.Parent:IsA("BasePart") then
local basePart = part.Parent
firetouchinterest(RootPart, basePart, 0)
task.wait(0.01)
firetouchinterest(RootPart, basePart, 1)
end
end
spammedBeforeZero = true
elseif currentLockTime <= 0 and not spammedAtZero then
for _, part in ipairs(playerPlot:GetDescendants()) do
if part:IsA("TouchTransmitter") and part.Parent and part.Parent:IsA("BasePart") then
local basePart = part.Parent
firetouchinterest(RootPart, basePart, 0)
task.wait(0.01)
firetouchinterest(RootPart, basePart, 1)
end
end
spammedAtZero = true
end
task.wait(0.1)
end
end
task.wait(0.3)
end
end)
else
-- Disable everything when All In One is turned off
getgenv().AutoLockBase = false
getgenv().AllInOneEnabled = false
print("DEBUG: All In One mode disabled")
Rayfield:Notify({
Title = "âšī¸ All In One Disabled",
Content = "All automated functions stopped",
Duration = 2
})
end
end
})
-- Enhanced character respawn handling
LocalPlayer.CharacterAdded:Connect(function(newCharacter)
print("DEBUG: Character respawned")
task.wait(3) -- Wait for character to fully load
-- Re-setup character
setupCharacter(newCharacter)
-- If we're in the middle of re-execution, teleport back to collection zone
if getgenv().ShouldReExecute and getgenv().SavedCollectionPos then
print("DEBUG: Teleporting to saved collection zone after respawn")
local newRootPart = newCharacter:WaitForChild("HumanoidRootPart")
task.spawn(function()
task.wait(2)
if newRootPart and getgenv().SavedCollectionPos then
tweenTeleport(CFrame.new(getgenv().SavedCollectionPos + Vector3.new(0, 10, 0)), getgenv().speed)
end
end)
end
end)
-- ADDITIONAL RE-EXECUTION CHECK (Multiple methods)
task.spawn(function()
task.wait(8) -- Wait longer for everything to initialize
print("DEBUG: Secondary re-execution check...")
print("DEBUG: ShouldReExecute =", getgenv().ShouldReExecute)
print("DEBUG: AllInOneEnabled =", getgenv().AllInOneEnabled)
if getgenv().ShouldReExecute or getgenv().AllInOneEnabled then
print("DEBUG: Triggering delayed re-execution...")
reExecuteScript()
end
end)
MainTab:CreateSection("Radioactive Foxy Steal")
-- Radioactive Foxy Controls
MainTab:CreateButton({
Name = "Steal Radioactive Foxy",
Callback = function()
local success, message = stealFoxyByKeyword("radioactive")
Rayfield:Notify({
Title = success and "â
Success" or "â Error",
Content = message,
Duration = 3,
Image = 4483362458
})
end
})
local autoStealRadioactive = false
MainTab:CreateToggle({
Name = "Auto Steal Radioactive (0.5s)",
CurrentValue = false,
Callback = function(value)
autoStealRadioactive = value
if value then
task.spawn(function()
while autoStealRadioactive do
local success, message = stealFoxyByKeyword("radioactive")
Rayfield:Notify({
Title = success and "â
Auto Success" or "â Auto Error",
Content = message,
Duration = 2
})
for i = 1, 5 do
if not autoStealRadioactive then break end
task.wait(0.1)
end
end
end)
end
end
})
-- Other Animatronic Steal (Text Input)
MainTab:CreateSection("Other Animatronic Steal")
local animatronicName = "Pizzeria God" -- default value
local inputBox = MainTab:CreateInput({
Name = "Enter Animatronic Name",
PlaceholderText = "Type animatronic name here",
RemoveTextAfterFocusLost = false,
Callback = function(text)
animatronicName = text
end
})
MainTab:CreateButton({
Name = "Steal Entered Animatronic",
Callback = function()
if not animatronicName or animatronicName == "" then
Rayfield:Notify({
Title = "Error",
Content = "Please enter an animatronic name!",
Duration = 2
})
return
end
local success, message = stealFoxyByKeyword(animatronicName)
Rayfield:Notify({
Title = success and "â
Success" or "â Error",
Content = message,
Duration = 3,
Image = 4483362458
})
end
})
local autoStealAnimatronic = false
MainTab:CreateToggle({
Name = "Auto Steal Entered Animatronic (0.5s)",
CurrentValue = false,
Callback = function(value)
autoStealAnimatronic = value
if value then
task.spawn(function()
while autoStealAnimatronic do
if animatronicName and animatronicName ~= "" then
local success, message = stealFoxyByKeyword(animatronicName)
Rayfield:Notify({
Title = success and "â
Auto Success" or "â Auto Error",
Content = message,
Duration = 2
})
else
Rayfield:Notify({
Title = "Error",
Content = "Please enter an animatronic name!",
Duration = 2
})
end
for i = 1, 5 do
if not autoStealAnimatronic then break end
task.wait(0.1)
end
end
end)
end
end
})
-- Auto Lock Base toggle with improved lock spam timing
MainTab:CreateSection("Auto Lock Base")
autoLockToggle = MainTab:CreateToggle({
Name = "Auto Lock Base",
CurrentValue = false,
Callback = function(value)
getgenv().AutoLockBase = value
if value then
task.spawn(function()
while getgenv().AutoLockBase do
local playerPlot, lockTimeValue
if workspace:FindFirstChild("Plots") then
for _, plot in pairs(workspace.Plots:GetChildren()) do
local config = plot:FindFirstChild("Config")
if config and config:FindFirstChild("Owner") and config.Owner.Value == LocalPlayer then
playerPlot = plot
lockTimeValue = config:FindFirstChild("LockTime")
break
end
end
end
if lockTimeValue and playerPlot then
local spammedBeforeZero = false
local spammedAtZero = false
while getgenv().AutoLockBase and (not spammedBeforeZero or not spammedAtZero) do
local currentLockTime = lockTimeValue.Value
if currentLockTime <= 0.1 and not spammedBeforeZero then
for _, part in ipairs(playerPlot:GetDescendants()) do
if part:IsA("TouchTransmitter") and part.Parent and part.Parent:IsA("BasePart") then
local basePart = part.Parent
firetouchinterest(RootPart, basePart, 0)
task.wait(0.01)
firetouchinterest(RootPart, basePart, 1)
end
end
spammedBeforeZero = true
elseif currentLockTime <= 0 and not spammedAtZero then
for _, part in ipairs(playerPlot:GetDescendants()) do
if part:IsA("TouchTransmitter") and part.Parent and part.Parent:IsA("BasePart") then
local basePart = part.Parent
firetouchinterest(RootPart, basePart, 0)
task.wait(0.01)
firetouchinterest(RootPart, basePart, 1)
end
end
spammedAtZero = true
end
task.wait(0.1)
end
Rayfield:Notify({
Title = "â
Auto Lock Completed",
Content = "Base locked successfully!",
Duration = 3
})
end
task.wait(0.3)
end
end)
end
end
})
-- Collection Zone Buttons and speed slider
MainTab:CreateButton({
Name = "Save Collection Zone",
Callback = function()
if RootPart then
collectionZonePosition = RootPart.Position
getgenv().SavedCollectionPos = collectionZonePosition
Rayfield:Notify({ Title = "Saved", Content = "Collection Zone Saved", Duration = 3 })
else
Rayfield:Notify({ Title = "Error", Content = "RootPart not found", Duration = 3 })
end
end
})
MainTab:CreateButton({
Name = "Teleport to Collection Zone",
Callback = function()
if collectionZonePosition then
tweenTeleport(CFrame.new(collectionZonePosition + Vector3.new(0, 10, 0)), getgenv().speed)
else
Rayfield:Notify({ Title = "Error", Content = "No Zone Saved", Duration = 3 })
end
end
})
MainTab:CreateSlider({
Name = "Teleport Speed",
Range = {10, 200},
Increment = 5,
CurrentValue = getgenv().speed,
Callback = function(v) getgenv().speed = v end
})
-- Manual Server Hop Button
MainTab:CreateSection("Server Management")
MainTab:CreateButton({
Name = "Server Hop & Re-Execute",
Callback = function()
Rayfield:Notify({
Title = "đ Manual Server Hop",
Content = "Hopping and re-executing script...",
Duration = 3
})
task.wait(2)
serverHop()
end
})
-- Final initialization check for re-execution
task.spawn(function()
task.wait(10) -- Final check after everything is loaded
if getgenv().AllInOneEnabled and not getgenv().AllInOneMode then
print("DEBUG: Final check - enabling All In One mode")
if allInOneToggle then
allInOneToggle:Set(true)
else
getgenv().AllInOneMode = true
end
end
end)
-- Loaded notification
Rayfield:Notify({
Title = "Made By @OriginalTragic",
Content = "Thanks To @aggot For Teleport Source",
Duration = 4
})
New Paste
Go to most recent paste.