Unknown Lands Script | AUTO HARVEST, COLLECT CASES, ESP, ANTI-CHEAT BYPASS, AND MORE!

Created by HamstaGang

Features:

  • AUTO HARVEST
  • COLLECT CASES
  • ESP
  • ANTI-CHEAT BYPASS
  • AND MORE!
-- HamstaGang -w- Here

-- Wally's Lib
local library = loadstring(game:HttpGet("https://pastebin.com/raw/CkyR8ePz", true))()

-- Main Window
local a = library:CreateWindow("Unknown Lands")

-- ESP Window
local b = library:CreateWindow("ESP")

-- Plr Mod Window
local c = library:CreateWindow("Player")

-- Script Locals
local plr = game:GetService("Players").LocalPlayer
local maxplayerdistance = 500;
local maxcasedistance = 500;
local maxoredistance = 500;

-- GUI Items (Main Window)
local AutoCollectCases = a:Toggle("Auto Collect Cases", {flag = "AutoCollectCases"})
local AutoHarvest = a:Toggle("Auto Harvest (Trees/Ore)", {flag = "AutoHarvest"})
local AutoAttackMonster = a:Toggle("Auto Attack Monsters", {flag = "AutoAttackMonster"})
local AutoAttackPlayers = a:Toggle("Auto Attack Players", {flag = "AutoAttackPlayers"})
a:Section("Created by HamstaGang");

-- GUI Items (ESP Window)
b:Section("ESP Players");
local ESPPlayers = b:Toggle("Esp Players", {flag = "ESPPlayers"})
local ESPPlayers_MAX = b:Slider("Max Studs", {min = 1; default = 500; max = 3000; flag = "ESPPlayers_MAX"}, function(studs)
  maxplayerdistance = studs;
end)

b:Section("ESP Cases");
local ESPCases = b:Toggle("Esp Cases", {flag = "ESPCases"})
local ESPCases_MAX = b:Slider("Max Studs", {min = 1; default = 500; max = 3000; flag = "ESPCases_MAX"}, function(studs)
  maxcasedistance = studs;
end)

b:Section("ESP Ore");
local ESPOre = b:Toggle("Esp Ore", {flag = "ESPOre"})
local ESPOre_MAX = b:Slider("Max Studs", {min = 1; default = 500; max = 3000; flag = "ESPOre_MAX"}, function(studs)
  maxoredistance = studs;
end)

-- GUI Items (Plr Mod Window)
local WalkSpeed = c:Slider("WalkSpeed", {min = 16; max = 100; flag = "WalkSpeed"}, function(WalkSpeed)
  pcall(function()
   plr.Character.Humanoid.WalkSpeed = WalkSpeed;
  end)
end)

local JumpPower = c:Slider("JumpPower", {min = 50; max = 350; flag = "JumpPower"}, function(JumpPower)
  pcall(function()
   plr.Character.Humanoid.JumpPower = JumpPower;
  end)
end)


-- [[ Anti-Cheat Bypass ]] --
local oof
oof = hookmetamethod(game, "__namecall", function(self, ...)
   local method = getnamecallmethod()

   if not checkcaller() and self.Name == "Executioner" and method == "FireServer" then
       return;
   end

   return oof(self, ...)
end)

for i, v in ipairs(plr.Backpack:GetChildren()) do
   if v:IsA("LocalScript") then
       -- Disabled Anti-Cheat script (its unnamed)
       v.Disabled = true;
   end
end


-- [[ ESP Function (Very Basic) ]] --

function Create(base, team, name, trackername, color, studs)
   local bb = Instance.new('BillboardGui', game.CoreGui)
   bb.Adornee = base
   bb.ExtentsOffset = Vector3.new(0,1,0)
   bb.AlwaysOnTop = true
   bb.Size = UDim2.new(0,6,0,6)
   bb.StudsOffset = Vector3.new(0,1,0)
   bb.Name = trackername
   
   local frame = Instance.new('Frame', bb)
   frame.ZIndex = 10
   frame.BackgroundTransparency = 0.3
   frame.Size = UDim2.new(1,0,1,0)
   frame.BackgroundColor3 = color
   
   local txtlbl = Instance.new('TextLabel', bb)
   txtlbl.ZIndex = 10
   txtlbl.BackgroundTransparency = 1
   txtlbl.Position = UDim2.new(0,0,0,-48)
   txtlbl.Size = UDim2.new(1,0,10,0)
   txtlbl.Font = 'ArialBold'
   txtlbl.FontSize = 'Size12'
   txtlbl.Text = name
   txtlbl.TextStrokeTransparency = 0.5
   txtlbl.TextColor3 = color
   
   local txtlblstud = Instance.new('TextLabel', bb)
   txtlblstud.ZIndex = 10
   txtlblstud.BackgroundTransparency = 1
   txtlblstud.Position = UDim2.new(0,0,0,-35)
   txtlblstud.Size = UDim2.new(1,0,10,0)
   txtlblstud.Font = 'ArialBold'
   txtlblstud.FontSize = 'Size12'
   txtlblstud.Text = tostring(studs) .. " Studs"
   txtlblstud.TextStrokeTransparency = 0.5
   txtlblstud.TextColor3 = Color3.new(255,255,255)
end

-- Clear Player ESP
function ClearPlayersESP()
   for _,v in pairs(game.CoreGui:GetChildren()) do
       if v.Name == 'playertracker' and v:isA('BillboardGui') then
           v:Destroy()
       end
   end
end

-- Clear Case ESP
function ClearCaseESP()
   for _,v in pairs(game.CoreGui:GetChildren()) do
       if v.Name == 'casetracker' and v:isA('BillboardGui') then
           v:Destroy()
       end
   end
end

-- Clear Ore ESP
function ClearOreESP()
   for _,v in pairs(game.CoreGui:GetChildren()) do
       if v.Name == 'oretracker' and v:isA('BillboardGui') then
           v:Destroy()
       end
   end
end


-- [[ Toggle Handlers (Main Window) ]] --

-- AutoCollectCases
spawn(function()
   while wait(0.3) do
       if a.flags.AutoCollectCases then
           local temp_plr = game:GetService("Players").LocalPlayer
           local items = game:GetService("Workspace"):WaitForChild("Items", 10)
           local cases = game:GetService("Workspace"):WaitForChild("Case", 10)
           
           for i, case in ipairs(cases:GetChildren()) do
               if temp_plr:DistanceFromCharacter(case:FindFirstChild("ThePrimary").Position) < 250 then
                   game:GetService("Workspace").Remoter.OpenBox:FireServer(case)
               end
           end
           
           for i, item in ipairs(items:GetChildren()) do
               local name = item.Name;
               if item ~= nil then
                   if temp_plr:DistanceFromCharacter(item.PrimaryPart.Position) < 250 then
                       game:GetService("Workspace").Remoter.TakeItem:FireServer(item)
                   end
               end
           end
       end
   end
end)

-- AutoHarvest
spawn(function()
   while wait(0.2) do
       if a.flags.AutoHarvest then
          for i, child in ipairs(plr.Character:GetChildren()) do
               if child:IsA("Tool") then
                   if child:FindFirstChild("Server") ~= nil then
                       child.Server.UseItem:FireServer("Harvest")
                   end
               end
           end
       end
   end
end)

-- AutoAttackMonster
spawn(function()
   while wait(0.3) do
       if a.flags.AutoAttackMonster then
           for i, child in ipairs(plr.Character:GetChildren()) do
               if child:IsA("Tool") then
                   if child:FindFirstChild("Server") ~= nil then
                       child.Server.UseItem:FireServer("Monster")
                   end
               end
           end
       end
   end
end)

-- AutoAttackPlayers
spawn(function()
   while wait(0.3) do
       if a.flags.AutoAttackPlayers then
           for i, child in ipairs(plr.Character:GetChildren()) do
               if child:IsA("Tool") then
                   if child:FindFirstChild("Server") ~= nil then
                       child.Server.UseItem:FireServer("Player")
                   end
               end
           end
       end
   end
end)

-- [[ Toggle Handlers (ESP Window) ]] --

-- ESPPlayers
spawn(function()
   while wait(0.3) do
       if b.flags.ESPPlayers then
          pcall(function()
               local Players = game.Players:GetChildren()
               ClearPlayersESP()
               for _,v in pairs(Players) do
                   if v ~= plr then
                       local temp_plr = game:GetService("Players").LocalPlayer
                       local studs = temp_plr:DistanceFromCharacter(v.Character.PrimaryPart.Position)
                       if studs <= maxplayerdistance then
                           Create(v.Character.Head, false, v.Name, "playertracker", Color3.new(250,0,0), math.floor(studs + 0.5))
                       end
                   end
               end
           end)
       else
           ClearPlayersESP();
       end
   end
end)

-- ESPCases
spawn(function()
   while wait(0.3) do
       if b.flags.ESPCases then
          pcall(function()
               local cases = game:GetService("Workspace"):WaitForChild("Case", 10)
               ClearCaseESP()
               for _,v in pairs(cases:GetChildren()) do
                   local temp_plr = game:GetService("Players").LocalPlayer
                   local studs = temp_plr:DistanceFromCharacter(v.PrimaryPart.Position)
                   if studs <= maxcasedistance then
                       Create(v.PrimaryPart, false, v.Name, "casetracker", Color3.new(0,250,0), math.floor(studs + 0.5))
                   end
               end
           end)
       else
           ClearCaseESP();
       end
   end
end)

-- ESPOre
spawn(function()
   while wait(0.3) do
       if b.flags.ESPOre then
          pcall(function()
               local ore = game:GetService("Workspace"):WaitForChild("Ore", 10)
               ClearOreESP()
               for _,v in pairs(ore:GetChildren()) do
                   local temp_plr = game:GetService("Players").LocalPlayer
                   local studs = temp_plr:DistanceFromCharacter(v.PrimaryPart.Position)
                   if studs <= maxoredistance then
                       Create(v.PrimaryPart, false, v.Ore.OreName.Value, "oretracker", Color3.new(0,0,250), math.floor(studs + 0.5))
                   end
               end
           end)
       else
           ClearOreESP();
       end
   end
end)

ENJOY!

Warning: DO NOT DOWNLOAD anything from this page, you’re only here to copy the script!

Share This Post

Share on facebook
Share on linkedin
Share on twitter
Share on email