
Keyless

local player = game.Players.LocalPlayer
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Debris = game:GetService("Debris")
-- Character
local character = player.Character or player.CharacterAdded:Wait()
local root = character:WaitForChild("HumanoidRootPart")
player.CharacterAdded:Connect(function(char)
character = char
root = character:WaitForChild("HumanoidRootPart")
end)
-- GUI
local gui = Instance.new("ScreenGui")
gui.Name = "AutoFarmUI"
gui.ResetOnSpawn = false
gui.Parent = player:WaitForChild("PlayerGui")
-- Button
local button = Instance.new("TextButton")
button.Size = UDim2.new(0, 180, 0, 55)
button.Position = UDim2.new(0, 25, 0, 25)
button.Text = ""
button.BackgroundColor3 = Color3.fromRGB(35,35,35)
button.Parent = gui
Instance.new("UICorner", button).CornerRadius = UDim.new(0,12)
-- Gradient
local gradient = Instance.new("UIGradient")
gradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(60,60,60)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(25,25,25))
}
gradient.Rotation = 90
gradient.Parent = button
-- Stroke
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(80,80,80)
stroke.Thickness = 2
stroke.Parent = button
-- Shadow
local shadow = Instance.new("Frame")
shadow.Size = button.Size
shadow.Position = button.Position + UDim2.new(0,4,0,4)
shadow.BackgroundColor3 = Color3.fromRGB(0,0,0)
shadow.BackgroundTransparency = 0.6
shadow.ZIndex = 0
shadow.Parent = gui
Instance.new("UICorner", shadow).CornerRadius = UDim.new(0,12)
-- Label
local label = Instance.new("TextLabel")
label.Size = UDim2.new(1,0,1,0)
label.BackgroundTransparency = 1
label.Text = "AutoFarm: OFF"
label.Font = Enum.Font.GothamBold
label.TextSize = 18
label.TextColor3 = Color3.fromRGB(255,255,255)
label.Parent = button
-- Settings
local autofarm = false
local distance = 10
local speed = 0.1
-- Tween helper
local function tween(obj, props)
TweenService:Create(obj, TweenInfo.new(0.15), props):Play()
end
-- Fonts
local fonts = {
Enum.Font.Gotham,
Enum.Font.GothamBold,
Enum.Font.Arcade,
Enum.Font.FredokaOne,
Enum.Font.Cartoon,
Enum.Font.Bangers,
Enum.Font.SourceSansBold,
Enum.Font.Code,
Enum.Font.RobotoMono
}
-- Rainbow
local function getRainbowColor(t)
return Color3.fromHSV(t % 1, 1, 1)
end
-- Hover FX
local hovering = false
local finalRotation = -3
button.MouseEnter:Connect(function()
hovering = true
tween(button, {Size = UDim2.new(0,210,0,70)})
TweenService:Create(label, TweenInfo.new(0.15), {
TextSize = 22
}):Play()
-- tilt once
local tilt1 = TweenService:Create(label, TweenInfo.new(0.12), {Rotation = 6})
local tilt2 = TweenService:Create(label, TweenInfo.new(0.12), {Rotation = finalRotation})
tilt1:Play()
tilt1.Completed:Connect(function()
tilt2:Play()
end)
-- effects loop
task.spawn(function()
local t = 0
while hovering do
local c1 = getRainbowColor(t)
local c2 = getRainbowColor(t + 0.3)
label.Font = fonts[math.random(1,#fonts)]
label.TextColor3 = c1
gradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, c1),
ColorSequenceKeypoint.new(1, c2)
}
t = t + 0.05
task.wait(0.03)
end
end)
end)
button.MouseLeave:Connect(function()
hovering = false
tween(button, {Size = UDim2.new(0,180,0,55)})
label.Font = Enum.Font.GothamBold
label.TextSize = 18
label.TextColor3 = Color3.fromRGB(255,255,255)
label.Rotation = finalRotation
gradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(60,60,60)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(25,25,25))
}
end)
-- Drag
local dragging = false
local dragInput, dragStart, startPos
local moved = false
local function update(input)
local delta = input.Position - dragStart
if delta.Magnitude > 5 then moved = true end
local newPos = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
button.Position = newPos
shadow.Position = newPos + UDim2.new(0,4,0,4)
end
button.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
moved = false
dragStart = input.Position
startPos = button.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
button.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UIS.InputChanged:Connect(function(input)
if input == dragInput and dragging then
update(input)
end
end)
-- CLICK EFFECT + TOGGLE
button.MouseButton1Click:Connect(function()
if moved then return end
-- press animation
local originalSize = button.Size
local press = TweenService:Create(button, TweenInfo.new(0.08), {
Size = originalSize - UDim2.new(0,10,0,10)
})
local release = TweenService:Create(button, TweenInfo.new(0.1), {
Size = originalSize
})
press:Play()
press.Completed:Connect(function()
release:Play()
end)
-- ripple
local ripple = Instance.new("Frame")
ripple.Size = UDim2.new(0,0,0,0)
ripple.Position = UDim2.new(0.5,0,0.5,0)
ripple.AnchorPoint = Vector2.new(0.5,0.5)
ripple.BackgroundColor3 = Color3.fromRGB(255,255,255)
ripple.BackgroundTransparency = 0.5
ripple.Parent = button
Instance.new("UICorner", ripple).CornerRadius = UDim.new(1,0)
TweenService:Create(ripple, TweenInfo.new(0.4), {
Size = UDim2.new(0,200,0,200),
BackgroundTransparency = 1
}):Play()
Debris:AddItem(ripple, 0.4)
-- flash
local old = gradient.Color
gradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(255,255,255)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(200,200,200))
}
task.delay(0.1, function()
gradient.Color = old
end)
-- toggle
autofarm = not autofarm
label.Text = autofarm and "AutoFarm: ON" or "AutoFarm: OFF"
end)
-- Movement
task.spawn(function()
while true do
if autofarm and root then
root.CFrame = root.CFrame + root.CFrame.LookVector * distance
task.wait(speed)
root.CFrame = root.CFrame - root.CFrame.LookVector * distance
task.wait(speed)
else
task.wait(0.1)
end
end
end)
tysm best scripttt
why ts don't put a credits because he stealed my idea... PUT CREDITS KID
Im really saying serious. I Published my Autofarm script first kid this is a copy but I accept everything in that script Like it don't get all the *ets (Totally different but still a copy) I accepet all the *ets Thanks for reading.
@Noob_ I saw another video about this without exploits and I made one with exploits but i didn’t know you made one before so I will credit you still
@zestpulity Thanks.
could you add a death farm where it basically famrs deaths for you
@randomscipter I will try but it will be a separate script
It don't work it just teleports me to the saferoom
@A2000 are you talking about the void rooms that teleport you to the safe room? if you are you have to go back then use it, keep going forward untill you start gettting xp and levels
I made an auto death farm script for this script
use it on WOED
@whatyyyyy what's WOED??
@Johan1 World of Eternal Domains
tysm
Hiii im back after some um... days?