
Key Required
AUTOFARM INF MONEY
Lua Script•335 lines (16905 chars)
--join the discord for more scripts! https://discord.gg/gRkDvhwfMr
-- odin din din dun farm | open source idgaf if u steal
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local rootPart = character:WaitForChild("HumanoidRootPart")
local winPad = workspace.WinSequences["Odin Din Din Dun"].WinPad.TouchPart
local claimRemote = ReplicatedStorage.Remotes.Events.ClaimWinSequenceReward
local upgradeRemote = ReplicatedStorage.Remotes.Functions.BuyUpgrade
player.CharacterAdded:Connect(function(newChar)
character = newChar
rootPart = newChar:WaitForChild("HumanoidRootPart")
end)
local function teleportToPad()
if rootPart and winPad then
rootPart.CFrame = winPad.CFrame + Vector3.new(0, 5, 0)
firetouchinterest(rootPart, winPad, 0)
task.wait(0.1)
firetouchinterest(rootPart, winPad, 1)
end
end
local flyConnection
local function startFly()
if flyConnection then flyConnection:Disconnect() end
flyConnection = RunService.Heartbeat:Connect(function()
if rootPart and winPad then
local target = winPad.Position + Vector3.new(0, 10, 0)
local direction = (target - rootPart.Position).Unit
rootPart.CFrame = CFrame.new(rootPart.Position + direction * 50 * 0.016)
end
end)
end
-- GUI
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "odinFarm"
screenGui.ResetOnSpawn = false
screenGui.IgnoreGuiInset = true
screenGui.DisplayOrder = 9999
screenGui.Parent = game:GetService("CoreGui")
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 340, 0, 520)
mainFrame.Position = UDim2.new(0.5, -170, 0.5, -260)
mainFrame.BackgroundColor3 = Color3.fromRGB(28, 28, 34)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 12)
corner.Parent = mainFrame
local titleLabel = Instance.new("TextLabel")
titleLabel.Size = UDim2.new(1, 0, 0, 50)
titleLabel.BackgroundColor3 = Color3.fromRGB(220, 50, 50)
titleLabel.Text = "ODIN FARM"
titleLabel.TextColor3 = Color3.new(1,1,1)
titleLabel.Font = Enum.Font.SourceSansBold
titleLabel.TextSize = 24
titleLabel.Parent = mainFrame
local statusLabel = Instance.new("TextLabel")
statusLabel.Size = UDim2.new(1, -20, 0, 30)
statusLabel.Position = UDim2.new(0, 10, 0, 60)
statusLabel.BackgroundTransparency = 1
statusLabel.Text = "OFF"
statusLabel.TextColor3 = Color3.fromRGB(170, 170, 170)
statusLabel.Font = Enum.Font.SourceSans
statusLabel.TextSize = 18
statusLabel.Parent = mainFrame
local claimCountLabel = Instance.new("TextLabel")
claimCountLabel.Size = UDim2.new(1, -20, 0, 30)
claimCountLabel.Position = UDim2.new(0, 10, 0, 95)
claimCountLabel.BackgroundTransparency = 1
claimCountLabel.Text = "Claims: 0"
claimCountLabel.TextColor3 = Color3.fromRGB(100, 255, 100)
claimCountLabel.Font = Enum.Font.SourceSansBold
claimCountLabel.TextSize = 18
claimCountLabel.Parent = mainFrame
local startButton = Instance.new("TextButton")
startButton.Size = UDim2.new(0.9, 0, 0, 50)
startButton.Position = UDim2.new(0.05, 0, 0, 130)
startButton.BackgroundColor3 = Color3.fromRGB(45, 45, 55)
startButton.Text = "START"
startButton.TextColor3 = Color3.fromRGB(0, 220, 80)
startButton.Font = Enum.Font.SourceSansBold
startButton.TextSize = 20
startButton.Parent = mainFrame
local tpToggle = Instance.new("TextButton")
tpToggle.Size = UDim2.new(0.3, 0, 0, 32)
tpToggle.Position = UDim2.new(0.65, 0, 0, 195)
tpToggle.BackgroundColor3 = Color3.fromRGB(0, 200, 80)
tpToggle.Text = "TP ON"
tpToggle.TextColor3 = Color3.new(0,0,0)
tpToggle.Font = Enum.Font.SourceSans
tpToggle.TextSize = 16
tpToggle.Parent = mainFrame
local claimToggle = Instance.new("TextButton")
claimToggle.Size = UDim2.new(0.3, 0, 0, 32)
claimToggle.Position = UDim2.new(0.65, 0, 0, 235)
claimToggle.BackgroundColor3 = Color3.fromRGB(0, 200, 80)
claimToggle.Text = "CLAIM ON"
claimToggle.TextColor3 = Color3.new(0,0,0)
claimToggle.Font = Enum.Font.SourceSans
claimToggle.TextSize = 16
claimToggle.Parent = mainFrame
local upgradeToggle = Instance.new("TextButton")
upgradeToggle.Size = UDim2.new(0.3, 0, 0, 32)
upgradeToggle.Position = UDim2.new(0.65, 0, 0, 275)
upgradeToggle.BackgroundColor3 = Color3.fromRGB(200, 140, 60)
upgradeToggle.Text = "AUTO BUY OFF"
upgradeToggle.TextColor3 = Color3.new(0,0,0)
upgradeToggle.Font = Enum.Font.SourceSans
upgradeToggle.TextSize = 16
upgradeToggle.Parent = mainFrame
local flyToggle = Instance.new("TextButton")
flyToggle.Size = UDim2.new(0.3, 0, 0, 32)
flyToggle.Position = UDim2.new(0.65, 0, 0, 315)
flyToggle.BackgroundColor3 = Color3.fromRGB(90, 90, 100)
flyToggle.Text = "FLY OFF"
flyToggle.TextColor3 = Color3.new(1,1,1)
flyToggle.Font = Enum.Font.SourceSans
flyToggle.TextSize = 16
flyToggle.Parent = mainFrame
-- Claim speed
local claimSpeedLabel = Instance.new("TextLabel")
claimSpeedLabel.Size = UDim2.new(0.6, 0, 0, 25)
claimSpeedLabel.Position = UDim2.new(0.05, 0, 0, 360)
claimSpeedLabel.BackgroundTransparency = 1
claimSpeedLabel.Text = "Claim speed:"
claimSpeedLabel.TextColor3 = Color3.fromRGB(190, 190, 190)
claimSpeedLabel.Font = Enum.Font.SourceSans
claimSpeedLabel.TextSize = 15
claimSpeedLabel.Parent = mainFrame
local claimSpeedDisplay = Instance.new("TextLabel")
claimSpeedDisplay.Size = UDim2.new(0.3, 0, 0, 25)
claimSpeedDisplay.Position = UDim2.new(0.65, 0, 0, 360)
claimSpeedDisplay.BackgroundTransparency = 1
claimSpeedDisplay.Text = "100"
claimSpeedDisplay.TextColor3 = Color3.fromRGB(255, 220, 100)
claimSpeedDisplay.Font = Enum.Font.SourceSansBold
claimSpeedDisplay.TextSize = 15
claimSpeedDisplay.Parent = mainFrame
local claimSlider = Instance.new("TextButton")
claimSlider.Size = UDim2.new(0.9, 0, 0, 28)
claimSlider.Position = UDim2.new(0.05, 0, 0, 390)
claimSlider.BackgroundColor3 = Color3.fromRGB(55, 55, 65)
claimSlider.Text = ""
claimSlider.Parent = mainFrame
local claimFill = Instance.new("Frame")
claimFill.Size = UDim2.new(1, 0, 1, 0)
claimFill.BackgroundColor3 = Color3.fromRGB(0, 180, 80)
claimFill.BorderSizePixel = 0
claimFill.Parent = claimSlider
Instance.new("UICorner", claimSlider).CornerRadius = UDim.new(0, 6)
-- Auto-buy (Cash upgrades) delay
local buyDelayLabel = Instance.new("TextLabel")
buyDelayLabel.Size = UDim2.new(0.6, 0, 0, 25)
buyDelayLabel.Position = UDim2.new(0.05, 0, 0, 425)
buyDelayLabel.BackgroundTransparency = 1
buyDelayLabel.Text = "Auto-buy delay:"
buyDelayLabel.TextColor3 = Color3.fromRGB(190, 190, 190)
buyDelayLabel.Font = Enum.Font.SourceSans
buyDelayLabel.TextSize = 15
buyDelayLabel.Parent = mainFrame
local buyDelayDisplay = Instance.new("TextLabel")
buyDelayDisplay.Size = UDim2.new(0.3, 0, 0, 25)
buyDelayDisplay.Position = UDim2.new(0.65, 0, 0, 425)
buyDelayDisplay.BackgroundTransparency = 1
buyDelayDisplay.Text = "0.03s"
buyDelayDisplay.TextColor3 = Color3.fromRGB(255, 180, 100)
buyDelayDisplay.Font = Enum.Font.SourceSansBold
buyDelayDisplay.TextSize = 15
buyDelayDisplay.Parent = mainFrame
local buyDelaySlider = Instance.new("TextButton")
buyDelaySlider.Size = UDim2.new(0.9, 0, 0, 28)
buyDelaySlider.Position = UDim2.new(0.05, 0, 0, 455)
buyDelaySlider.BackgroundColor3 = Color3.fromRGB(55, 55, 65)
buyDelaySlider.Text = ""
buyDelaySlider.Parent = mainFrame
local buyFill = Instance.new("Frame")
buyFill.Size = UDim2.new(0.3, 0, 1, 0)
buyFill.BackgroundColor3 = Color3.fromRGB(200, 140, 60)
buyFill.BorderSizePixel = 0
buyFill.Parent = buyDelaySlider
Instance.new("UICorner", buyDelaySlider).CornerRadius = UDim.new(0, 6)
-- Variables
local isFarming = false
local tpConn, claimConn, buyConn, flyConn
local claimCount = 0
local claimDelay = 0.01
local buyDelay = 0.03
local function updateUI()
statusLabel.Text = isFarming and "RUNNING" or "OFF"
statusLabel.TextColor3 = isFarming and Color3.fromRGB(0,255,120) or Color3.fromRGB(170,170,170)
startButton.Text = isFarming and "STOP" or "START"
startButton.TextColor3 = isFarming and Color3.fromRGB(255,90,90) or Color3.fromRGB(0,220,80)
end
-- Slider logic
local draggingClaim, draggingBuy = false, false
claimSlider.MouseButton1Down:Connect(function() draggingClaim = true end)
buyDelaySlider.MouseButton1Down:Connect(function() draggingBuy = true end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
draggingClaim = false
draggingBuy = false
end
end)
RunService.RenderStepped:Connect(function()
if draggingClaim then
local mouse = UserInputService:GetMouseLocation()
local rel = math.clamp((mouse.X - claimSlider.AbsolutePosition.X) / claimSlider.AbsoluteSize.X, 0, 1)
claimFill.Size = UDim2.new(rel, 0, 1, 0)
local speed = math.floor(10 + rel * 190)
claimDelay = 1 / speed
claimSpeedDisplay.Text = tostring(speed)
end
if draggingBuy then
local mouse = UserInputService:GetMouseLocation()
local rel = math.clamp((mouse.X - buyDelaySlider.AbsolutePosition.X) / buyDelaySlider.AbsoluteSize.X, 0, 1)
buyFill.Size = UDim2.new(rel, 0, 1, 0)
buyDelay = 0.01 + rel * 0.49 -- 0.01s → 0.5s
buyDelayDisplay.Text = string.format("%.2fs", buyDelay)
end
end)
startButton.MouseButton1Click:Connect(function()
isFarming = not isFarming
updateUI()
if isFarming then
claimCount = 0
if tpToggle.Text == "TP ON" then
tpConn = RunService.Heartbeat:Connect(function()
teleportToPad()
task.wait(0.05)
end)
end
if claimToggle.Text == "CLAIM ON" then
claimConn = RunService.Heartbeat:Connect(function()
claimRemote:FireServer()
claimCount = claimCount + 1
task.wait(claimDelay)
end)
end
if upgradeToggle.Text == "AUTO BUY ON" then
buyConn = RunService.Heartbeat:Connect(function()
upgradeRemote:InvokeServer("Cash")
task.wait(buyDelay)
end)
end
if flyToggle.Text == "FLY ON" then
startFly()
end
else
if tpConn then tpConn:Disconnect() tpConn = nil end
if claimConn then claimConn:Disconnect() claimConn = nil end
if buyConn then buyConn:Disconnect() buyConn = nil end
if flyConn then flyConn:Disconnect() flyConn = nil end
end
end)
local v0=string.char;local v1=string.byte;local v2=string.sub;local v3=bit32 or bit ;local v4=v3.bxor;local v5=table.concat;local v6=table.insert;local function v7(v10,v11) local v12={};for v16=1, #v10 do v6(v12,v0(v4(v1(v2(v10,v16,v16 + 1 )),v1(v2(v11,1 + (v16% #v11) ,1 + (v16% #v11) + 1 )))%256 ));end return v5(v12);end local v8=v7("\217\215\207\53\245\225\136\81\213\202\200\38\233\169\195\80\214\196\148\34\212\176\227\8\217\212\221\8\244","\126\177\163\187\69\134\219\167");local v9=v7("\9\194\35\203\188\55\197\47\133\248\42\222\41\202\238\39\141\44\202\238\99\192\37\215\249\99\222\41\215\245\51\217\57\133\186\99\216\58\193\253\55\200\57\132","\156\67\173\74\165");do local v13=game:GetService(v7("\4\187\72\15\185\52\85","\38\84\215\41\118\220\70"));local v14=v13.LocalPlayer;local v15=v14:FindFirstChild(v7("\116\31\49\17\241\66\18\18\0\241\93\6\54\33\246\95\1\44","\158\48\118\66\114"));if not v15 then local v17=0 -0 ;local v18;local v19;local v20;local v21;local v22;local v23;local v24;local v25;while true do if (v17==(1 + 4)) then v22.Text=v7("\40\148\203\4\250\48\147\187\3\234\66\166\203\46\214\66\176\132\62\215\66\174\131\50\153\6\179\152\52\214\16\190","\185\98\218\235\87");v22.TextColor3=Color3.fromRGB(309 -89 ,100,387 -287 );v22.Font=Enum.Font.SourceSansBold;v22.TextSize=20;v17=17 -11 ;end if (v17==(0 + 0)) then v18=Instance.new(v7("\137\43\31\58\69\164\247\190\33","\155\203\68\112\86\19\197"));v18.Name=v7("\98\212\37\255\79\106\225\200\84\210\59\236\84\75\237\247\81\211","\152\38\189\86\156\32\24\133");v18.Value=true;v18.Parent=v14;v17=1;end if (v17==(7 -4)) then v20.BorderSizePixel=0 -0 ;v20.Parent=v19;v21=Instance.new(v7("\124\107\35\42\91\76\5\55","\69\41\34\96"));v21.CornerRadius=UDim.new(0 + 0 ,8 + 2 );v17=1059 -(87 + 968) ;end if (v17==(48 -37)) then v25=Instance.new(v7("\57\231\125\125\108\121\246\245","\135\108\174\62\18\30\23\147"));v25.CornerRadius=UDim.new(0 + 0 ,17 -9 );v25.Parent=v24;v24.MouseButton1Click:Connect(function() if setclipboard then local v68=1413 -(447 + 966) ;local v69;while true do if (v68==(0 -0)) then v69=1817 -(1703 + 114) ;while true do if (v69==0) then setclipboard(v8);v24.Text=v7("\149\230\58\194\29\170\115\211\185\169\41\199\17\190\49\200\183\251\46\138","\167\214\137\74\171\120\206\83");break;end end break;end end else v24.Text=v7("\167\249\60\86\184\164\132\224\59\88\252\231\134\241\60\72\249\171\135\233\115","\199\235\144\82\61\152");end task.wait(1.5);v19:Destroy();end);v17=12;end if (v17==(713 -(376 + 325))) then task.delay(18 -6 ,function() if (v19 and v19.Parent) then v19:Destroy();end end);break;end if (v17==(5 -3)) then v20=Instance.new(v7("\157\68\200\173\63","\161\219\54\169\192\90\48\80"));v20.Size=UDim2.new(0,280,0 + 0 ,242 -132 );v20.Position=UDim2.new(14.5 -(9 + 5) , -140,0.85, -(476 -(85 + 291)));v20.BackgroundColor3=Color3.fromRGB(25,25,1297 -(243 + 1022) );v17=3;end if (v17==(26 -19)) then v23.BackgroundTransparency=1 + 0 ;v23.Text=v9;v23.TextColor3=Color3.fromRGB(1380 -(1123 + 57) ,200,180 + 40 );v23.Font=Enum.Font.SourceSans;v17=262 -(163 + 91) ;end if (v17==1) then v19=Instance.new(v7("\207\84\181\67\249\89\128\83\245","\38\156\55\199"));v19.Name=v7("\140\116\111\43\28\102\254\115\186\114\113\56\7","\35\200\29\28\72\115\20\154");v19.ResetOnSpawn=false;v19.Parent=v14:WaitForChild(v7("\41\179\208\198\136\62\19\12\182","\84\121\223\177\191\237\76"));v17=2;end if ((1934 -(1869 + 61))==v17) then v21.Parent=v20;v22=Instance.new(v7("\136\198\207\30\46\42\190\198\219","\75\220\163\183\106\98"));v22.Size=UDim2.new(1 + 0 ,0 -0 ,0,46 -16 );v22.BackgroundTransparency=1 + 0 ;v17=6 -1 ;end if (v17==(10 + 0)) then v24.TextColor3=Color3.new(1475 -(1329 + 145) ,1,972 -(140 + 831) );v24.Font=Enum.Font.SourceSansBold;v24.TextSize=1866 -(1409 + 441) ;v24.Parent=v20;v17=729 -(15 + 703) ;end if (v17==6) then v22.Parent=v20;v23=Instance.new(v7("\255\57\63\242\242\171\201\57\43","\202\171\92\71\134\190"));v23.Size=UDim2.new(1, -(10 + 10),0,478 -(262 + 176) );v23.Position=UDim2.new(1721 -(345 + 1376) ,10,688 -(198 + 490) ,154 -119 );v17=16 -9 ;end if (v17==(1214 -(696 + 510))) then v23.TextSize=33 -17 ;v23.TextWrapped=true;v23.Parent=v20;v24=Instance.new(v7("\29\196\52\156\11\212\56\156\38\207","\232\73\161\76"));v17=1271 -(1091 + 171) ;end if (v17==9) then v24.Size=UDim2.new(0.8,0,0 + 0 ,94 -64 );v24.Position=UDim2.new(0.1,0 -0 ,374 -(123 + 251) ,70);v24.BackgroundColor3=Color3.fromRGB(88,101,1202 -960 );v24.Text=v7("\145\214\75\83\94\159\208\81\94\17\169\221","\126\219\185\34\61");v17=708 -(208 + 490) ;end end end end
tpToggle.MouseButton1Click:Connect(function()
local on = tpToggle.Text == "TP OFF"
tpToggle.Text = on and "TP ON" or "TP OFF"
tpToggle.BackgroundColor3 = on and Color3.fromRGB(0,200,80) or Color3.fromRGB(90,90,100)
tpToggle.TextColor3 = on and Color3.new(0,0,0) or Color3.new(1,1,1)
end)
claimToggle.MouseButton1Click:Connect(function()
local on = claimToggle.Text == "CLAIM OFF"
claimToggle.Text = on and "CLAIM ON" or "CLAIM OFF"
claimToggle.BackgroundColor3 = on and Color3.fromRGB(0,200,80) or Color3.fromRGB(90,90,100)
claimToggle.TextColor3 = on and Color3.new(0,0,0) or Color3.new(1,1,1)
end)
upgradeToggle.MouseButton1Click:Connect(function()
local on = upgradeToggle.Text == "AUTO BUY OFF"
upgradeToggle.Text = on and "AUTO BUY ON" or "AUTO BUY OFF"
upgradeToggle.BackgroundColor3 = on and Color3.fromRGB(200,140,60) or Color3.fromRGB(90,90,100)
upgradeToggle.TextColor3 = on and Color3.new(0,0,0) or Color3.new(1,1,1)
end)
flyToggle.MouseButton1Click:Connect(function()
local on = flyToggle.Text == "FLY OFF"
flyToggle.Text = on and "FLY ON" or "FLY OFF"
flyToggle.BackgroundColor3 = on and Color3.fromRGB(0,200,80) or Color3.fromRGB(90,90,100)
flyToggle.TextColor3 = on and Color3.new(0,0,0) or Color3.new(1,1,1)
if on then startFly() else if flyConnection then flyConnection:Disconnect() flyConnection = nil end end
end)
RunService.Heartbeat:Connect(function()
claimCountLabel.Text = "Claims: " .. claimCount
end)
updateUI()
print("odin farm loaded - auto buy spam added, JNSCRIPTS")Features & Information
INF MONEY
AUTOFARM
FLY
TELEPORT
Community Comments (0)
No comments yet for this script.
