Oaklands Script Roblox, Tree Aura, Log Aura Free Copy & Free Download

We are going to share the Oaklands Script Roblox with you in this post, and we are giving you two options: first, a copy, and second, a direct download link. If you need this script, continue reading once you download and copy it. 

WhatsApp Group Join Now
Telegram Group Join Now
Discord Group Join Now

Welcome to the vibrant world of Roblox programming, where the possibilities are endless. Explore the inventive Oaklands Script, a testimony to talent, and set out on a trip. This script adds engaging elements and mechanisms to your Roblox game, giving virtual environments life. In the introduction that follows, we explore Oaklands Script’s core ideas and show how it has the ability to reinvent immersive gaming for both players and creators.

Script NameOaklands Script Roblox
Use OptionsCopy & Download
Update Date20.08.2023

Click To Copy

--> Macros

if not LPH_OBFUSCATED then
    LPH_JIT_MAX = function(...)
        return ...
    end
end

--> Variables
local Services =
    setmetatable(
    {},
    {
        __index = function(self, index)
            return game:GetService(index)
        end
    }
)
local KiriotESP = loadstring(game:HttpGet("https://kiriot22.com/releases/ESP.lua"))
local Version = "v1.2.1"
local Title = "oaklands - sunken " .. Version
local ReplicatedFirst = Services.ReplicatedFirst
local Client = require(ReplicatedFirst.Client)
local GameShared = require(ReplicatedFirst.Client.Interface.Shared)
local Modules = rawget(GameShared, "Modules")
local Changelog = require(Modules.Changelog)
local GetVersion = function()
    local count = 0
    local v6 = nil
    for i, v in next, Changelog.versions do
        if v.Id > count then
            count = v.Id
            v6 = i
        end
    end
    return "v" .. v6
end
local Outdated = GetVersion():gsub("%p+", "") > Version:gsub("%p+", "") and ("bad") or ("good")
local Players = Services.Players
local Player = Players.LocalPlayer
local Character = Player.Character
local module = require(game.ReplicatedFirst.Client)
local tutorial = module.ActiveModules.Tutorial
local invTable = nil
local Colours = {
    Magnetite = BrickColor.new("Bright violet"),
    ["Rosa Quartz"] = BrickColor.new("Carnation pink"),
    Mythril = BrickColor.new("Med. bluish green"),
    Gold = BrickColor.new("Br. yellowish orange"),
    Iron = BrickColor.new("Dark grey"),
    Pyrite = BrickColor.new("Flame yellowish orange"),
    Quartz = BrickColor.new("Institutional white"),
    Tin = BrickColor.new("Light stone grey"),
    Copper = BrickColor.new("Flame reddish orange")
}
local Areas = {
    ["Oak Depot"] = Vector3.new(736, 82, 1677),
    ["Oak Depot Sell"] = Vector3.new(702, 83, 1790),
    ["Lighthouse"] = Vector3.new(1067, 118, 1958),
    ["Dock"] = Vector3.new(945, 79, 1509),
    ["Island"] = Vector3.new(945, 76, 1233),
    ["Crossway"] = Vector3.new(71, 107, 1465),
    ["Junkyard"] = Vector3.new(-550, 133, 2010),
    ["Mountains"] = Vector3.new(-1759, 419, 865),
    ["Abandoned Shelter"] = Vector3.new(-1819, 330, 561),
    ["Beach Hut"] = Vector3.new(-3591, 113, 163),
    ["Lake"] = Vector3.new(-3069, 132, 455)
}

local function Init()
    do
        for i, v in next, getconnections(game:GetService("LogService").MessageOut) do
            v:Disable()
            shared.FoundMessageOutLogger = true
        end
        for i, v in next, getconnections(game:GetService("ScriptContext").Error) do
            v:Disable()
            shared.FoundErrorLogger = true
        end
        if shared.FoundMessageOutLogger then
            local old
            old =
                hookfunction(
                print,
                newcclosure(
                    function(...)
                        return old(("[SW] Debug: %s:%s:%s > "):format(os.date("%H"), os.date("%M"), os.date("%S")), ...)
                    end
                )
            )
            print("Debugging Below")
            for i, v in next, shared do
                print(i, v)
            end
        end
    end
end

local function CheckProcess()
    local Success, Output = pcall(Init)
    if not Success then
        if type(messagebox) == "function" then
            writefile("Oaklands/ErrorLogs/" .. os.time(), Output)
            local Answer =
                messagebox(
                string.format(
                    "Something has gone wrong when bypassing anti-cheat\n\nThis may put you at risk\n\nError has been written to executor path: workspace/Oaklands/ErrorLogs/%s",
                    os.time()
                ),
                "sunken anti cheat bypassing",
                1570
            )
            if Answer == 3 then
                game:Shutdown()
            elseif Answer == 4 then
                CheckProcess()
            elseif Answer == 5 then
                shared.LoadScript = true
            end
        else
            game:Shutdown()
        end
    else
        shared.LoadScript = true
    end
end

CheckProcess()

repeat
    task.wait()
until shared.LoadScript == true

print("Loading Main Script")

if Outdated == "bad" then
    local Answer =
        messagebox(
        "The script is currently outdated, this may put you at risk, would you like to continue?",
        "sunken version checker",
        4
    )
    if Answer == 7 then
        game:Shutdown()
    end
end

if not (Services.StarterGui:GetCoreGuiEnabled("PlayerList")) then
    local Text = Drawing.new("Text")
    Text.Position =
        Vector2.new(
        (workspace.CurrentCamera.ViewportSize.X / 2) - 125,
        workspace.CurrentCamera.ViewportSize.Y / 2 - (Services.GuiService:GetGuiInset().Y / 2)
    )
    Text.Text = "Waiting for you to have a plot"
    Text.Outline = true
    Text.Font = 1
    Text.Size = 28
    Text.Color = Color3.fromRGB(255, 255, 255)
    Text.OutlineColor = Color3.fromHSV(tick() % 3 / 3, 1, 1)
    Text.Visible = true
    print(Text.Text)
    repeat
        task.wait()
        Text.Position =
            Vector2.new(
            (workspace.CurrentCamera.ViewportSize.X / 2) - 125,
            workspace.CurrentCamera.ViewportSize.Y / 2 - (Services.GuiService:GetGuiInset().Y / 2)
        )
        Text.OutlineColor = Color3.fromHSV(tick() % 3 / 3, 1, 1)
    until Services.StarterGui:GetCoreGuiEnabled("PlayerList")
    Text.Text = "Loading"
    task.wait(0.5)
    Text:Remove()
end

local function closestTree()
    return (tutorial:ClosestModel(tutorial.Player.Character:GetPivot().Position, tutorial:GetTreesInRadius()))
end

--> Minified Functions ( Neater Looking Code )

local function Teleport(Pos)
    if Player.Character.Humanoid.Sit == true then
        Pos = Pos + Vector3.new(0, 40, 0)
    end
    Player.Character:PivotTo(typeof(Pos) == "CFrame" and Pos or CFrame.new(Pos))
end

local Hooks = {}
do
    function Hooks.HookingLighting()
        if shared.HookedLighting == true then
            return
        end
        shared.HookedLighting = true
        local old
        old =
            hookmetamethod(
            game,
            "__newindex",
            newcclosure(
                function(self, index, value)
                    if tostring(self) == "Lighting" and shared.FullBright then
                        if index == "ClockTime" then
                            value = 12
                        end
                    end
                    return old(self, index, value)
                end
            )
        )
    end
    function Hooks.HookingHumanoid()
        if shared.HookedHumanoid == true then
            return
        end
        shared.HookedHumanoid = true
        local old
        old =
            hookmetamethod(
            game,
            "__index",
            newcclosure(
                function(self, index)
                    if tostring(self) == "WalkSpeed" or tostring(self) == "JumpPower" then
                        return tostring(self) == "WalkSpeed" and 16 or 50
                    end
                    return old(self, index)
                end
            )
        )
    end
end
print("Loading Hooks")
for i, v in next, Hooks do
    local Success, Output = pcall(v)
    print("Hooked ", i, Success)
end
local Util = {}
print("Loading Util")
do
    function Util.GetVehicle()
        for i, v in next, game:GetService("Workspace").World.Structures:GetChildren() do
            if v.Name:find("VehiclePad") then
                local Owner = v:FindFirstChild("Owner")
                if Owner and Owner.Value == Player then
                    local Vehicle = v:FindFirstChild("RiggedVehicle")
                    if Vehicle then
                        return Vehicle
                    end
                end
            end
        end
    end
    function Util.ModVehicleSpeed(Speed)
        local Vehicle = Util.GetVehicle()
        local VFramework = Vehicle:FindFirstChild("Framework")
        if VFramework then
            local Seats = VFramework:FindFirstChild("Seats")
            if Seats then
                local DriverSeat = Seats:FindFirstChild("VehicleSeat")
                if DriverSeat then
                    DriverSeat.MaxSpeed = Speed
                end
            end
        end
    end
    function Util.CleanVehicle()
        local Vehicle = Util.GetVehicle()
        if Vehicle then
            for i, v in next, Vehicle:GetDescendants() do
                if v:IsA("BasePart") then
                    if v.Material == Enum.Material.CorrodedMetal then
                        v.Material = Enum.Material.SmoothPlastic
                    end
                end
            end
        end
    end
    function Util.ColourVehicle(Colour)
        local Vehicle = Util.GetVehicle()
        if Vehicle then
            local Wheels = Vehicle:FindFirstChild("Wheels")
            local Headlights = Vehicle:FindFirstChild("Framework"):FindFirstChild("Headlights")
            for i, v in next, Vehicle:GetDescendants() do
                if v:IsA("BasePart") and not v:IsDescendantOf(Wheels) and not v:IsDescendantOf(Headlights) then
                    v.Color = Colour
                end
            end
        end
    end
    function Util.GetIndexFromValue(self, value)
        for i, v in next, self do
            if v == value then
                return i
            end
        end
    end
    function Util.GetPlot()
        for i, v in next, game:GetService("Workspace").World.Property:GetChildren() do
            local Owner = v:FindFirstChild("Owner")
            if Owner then
                if Owner.Value == game:GetService("Players").LocalPlayer then
                    return v
                end
            end
        end
    end
    function Util.GetClosestTree()
        local tree, dist = nil, math.huge
        for i, v in next, game:GetService("Workspace").World.TreeRegions.Island:GetChildren() do
            if v:IsA("Model") then
                if v:FindFirstChild("HeptagonPart") then
                    local mag = game.Players.LocalPlayer:DistanceFromCharacter(v:GetPivot().Position)
                    if mag < dist then
                        dist = mag
                        tree = v
                    end
                end
            end
        end
        return tree
    end
    function Util.GetOwnedTrees()
        local trees = {}
        for i, v in next, game:GetService("Workspace").World.LooseItems:GetChildren() do
            if
                v:FindFirstChild("Owner") and tostring(v.Owner.Value) == game.Players.LocalPlayer.Name and
                    v.Name == "Tree"
             then
                if v:FindFirstChildWhichIsA("BasePart") then
                    table.insert(trees, v)
                end
            end
        end
        return trees
    end
    function Util.GetOwnedOres()
        local ores = {}
        for i, v in next, game:GetService("Workspace").World.LooseItems:GetChildren() do
            if
                v:FindFirstChild("Owner") and tostring(v.Owner.Value) == game.Players.LocalPlayer.Name and
                    v.Name == "Rock"
             then
                if v:FindFirstChildWhichIsA("BasePart") then
                    table.insert(ores, v)
                end
            end
        end
        return ores
    end
    function Util.GetLowestTreePart(parts)
        local foot = Character.RightFoot.Position
        local closest, dist = nil, math.huge
        for i, v in next, parts do
            if not v:IsA("BasePart") then
                continue
            end
            local mag = (foot - v.Position).Magnitude
            if mag < dist then
                dist = mag
                closest = v
            end
        end
        return closest
    end
    function Util.GetClosestLog()
        local log, dist = nil, math.huge
        for i, v in next, Util.GetOwnedTrees() do
            local mag = Player:DistanceFromCharacter(v:GetPivot().Position)
            if mag < dist then
                dist = mag
                log = v
            end
        end
        return log
    end
    function Util.KeyPress(keyCode, time)
        Services.VirtualInputManager:SendKeyEvent(true, keyCode, false, game)
        task.wait(time)
        Services.VirtualInputManager:SendKeyEvent(false, keyCode, false, game)
    end
    function Util.GetPlayerByName(Name)
        for i, v in next, Players:GetPlayers() do
            if v ~= Player then
                if v.Name:lower():find(Name:lower()) or v.DisplayName:lower():find(Name:lower()) then
                    return v
                end
            end
        end
    end
    function Util.TeleportToPlayer(Player)
        Teleport(Player.Character and Player.Character:GetPivot())
    end
    function Util.GetOres()
        local ores = {}
        for i, v in next, Services.Workspace.World.RockRegions.Island:GetChildren() do
            if v:GetAttribute("Mineable") == true then
                table.insert(ores, v)
            end
        end
        return ores
    end
    function Util.GetClosestOre()
        local ores = Util.GetOres()
        local ore, dist = nil, math.huge
        for i, v in next, ores do
            local mag = Player:DistanceFromCharacter(v:GetPivot().Position)
            if mag < dist then
                dist = mag
                ore = v
            end
        end
        return ore
    end
    function Util.GetPlayersPlot(Name)
        for i, v in next, Services.Workspace.World.Property:GetDescendants() do
            if v.Name == "Owner" and v.Parent.Parent.Name == "Property" then
                local plotOwner = tostring(v.Value)
                if plotOwner:lower():find(Name:lower()) then
                    return v.Parent:FindFirstChild("MainRegion")
                end
            end
        end
    end
end
local Actions = {}
print("Loading Action")
do
    function Actions.GoToLog()
        local log = Util.GetClosestLog()
        Teleport(log:GetPivot())
    end
    function Actions.GoToOre()
        local ores = Util.GetOwnedOres()
        local ore, dist = nil, math.huge
        for i, v in next, ores do
            local primary = v:FindFirstChildWhichIsA("BasePart")
            local mag = Player:DistanceFromCharacter(primary.Position)
            if mag < dist then
                dist = mag
                ore = v
            end
        end
        Teleport(ore:GetPivot())
    end
    function Actions.BringLogs()
        local trees = Util.GetOwnedTrees()
        for i, v in next, trees do
            Teleport(Character:GetPivot() + Vector3.new(15, 10, 5))
        end
    end
    function Actions.GoToPlot()
        local Plot = Util.GetPlot()
        local Main = Plot:FindFirstChild("MainRegion")
        local Offset = Vector3.new(0, 15, 0)
        Teleport(Main:GetPivot() + Offset)
    end
    function Actions.GoToSell()
        local Offset = Vector3.new(0, 15, 0)
        Teleport(CFrame.new(-535, 135, 1920) + Offset)
    end
    function Actions.GoToMap()
        local Offset = Vector3.new(0, 15, 0)
        Teleport(Services.Workspace.World.SpawnLocation:GetPivot() + Offset)
    end
    function Actions.InfiniteStamina()
        rawset(Client:RequestModule("Stamina"), "CurrentStamina", 9e9)
    end
    function Actions.BypassBlacklists()
        for i, v in next, Services.Workspace.World.Property:GetDescendants() do
            if v:IsA("Part") then
                if Color3.fromRGB(255, 64, 64) == v.Color then
                    v:Destroy()
                end
            end
        end
    end
end
print("Loading ESP")
KiriotESP = KiriotESP()
KiriotESP.Color = Color3.fromRGB(170, 0, 248)
local Functions = {}
function Functions.BreakTree()
    if invTable == nil then
        for _, v in next, getgc(true) do
            if type(v) == "table" and rawget(v, "Inventory") then
                invTable = v
                break
            end
        end
    end
    if invTable then
        local tree = closestTree()
        local Inventory = rawget(invTable, "Inventory")
        if tree and Inventory then
            Inventory:InformServer("SwingStartAttempt", {})
            task.wait(.5)
            local args = {}
            local lowestPart = nil
            local lowestY = math.huge
            for _, v in next, tree:GetDescendants() do
                if v:IsA("MeshPart") and v.Position.Y < lowestY then
                    lowestPart = v
                    lowestY = v.Position.Y
                end
            end
            args.HitPart = lowestPart
            args.HitPosition = lowestPart.Position
            Inventory:InformServer("AttemptChop", args)
        end
    end
end
function Functions.BreakLog()
    if invTable == nil then
        for _, v in next, getgc(true) do
            if type(v) == "table" and rawget(v, "Inventory") then
                invTable = v
                break
            end
        end
    end
    if invTable then
        local tree = Util.GetClosestLog()
        local Inventory = rawget(invTable, "Inventory")
        if tree and Inventory then
            Inventory:InformServer("SwingStartAttempt", {})
            task.wait(.5)
            local args = {}
            local lowestPart = Util.GetLowestTreePart(tree:GetChildren())
            args.HitPart = lowestPart
            args.HitPosition = lowestPart.Position
            Inventory:InformServer("AttemptChop", args)
        end
    end
end
function Functions.BreakOre()
    if invTable == nil then
        for _, v in next, getgc(true) do
            if type(v) == "table" and rawget(v, "Inventory") then
                invTable = v
                break
            end
        end
    end
    if invTable then
        local ore = Util.GetClosestOre()
        local Inventory = rawget(invTable, "Inventory")
        if ore and Inventory then
            Inventory:InformServer("SwingStartAttempt", {})
            task.wait(.5)
            local args = {}
            local lowestPart = Util.GetLowestTreePart(ore:GetChildren())
            args.HitPart = lowestPart
            args.HitPosition = lowestPart.Position
            Inventory:InformServer("AttemptMine", args)
        end
    end
end

print("Loading Functions")

local library =
    loadstring(game:HttpGet("https://raw.githubusercontent.com/vozoid/ui-libraries/main/drawing/void/source.lua"))()

print("Loading User Interface")

local main =
    library:Load {
    Name = Title .. " | script status: " .. Outdated,
    SizeX = 550,
    SizeY = 600,
    Theme = "Midnight",
    Extension = "oaktree",
    Folder = "oaklands"
}

task.spawn(
    function()
        while task.wait(0.001) do
            library:ChangeThemeOption("Accent", Color3.fromHSV(tick() % 3 / 3, 1, 1))
        end
    end
)

local home = main:Tab("home")

local changelogs =
    home:Section {
    Name = "changelogs",
    Side = "Left"
}

changelogs:Label(
    [[
re-wrote esp

lags when turn on but dont lag after
blame luraph!! omg!! Lurpah!
use configs to get around this ^

rainbow epic gamer mode

]]
)
changelogs:Label("")
changelogs:Label("")
changelogs:Label("")

local tab = main:Tab("main")

local trees =
    tab:Section {
    Name = "trees",
    Side = "Left"
}

local rocks =
    tab:Section {
    Name = "ores",
    Side = "Left"
}

local misc =
    tab:Section {
    Name = "misc",
    Side = "Left"
}

local teleports =
    tab:Section {
    Name = "teleports",
    Side = "Right"
}

local player =
    tab:Section {
    Name = "player",
    Side = "Right"
}

local vehicle =
    tab:Section {
    Name = "vehicle",
    Side = "Left"
}

trees:Toggle {
    Name = "tree aura",
    Flag = "tree aura",
    Callback = function(bool)
        shared.tree_aura = bool
        while shared.tree_aura do
            if not shared.tree_aura then
                break
            end
            Functions.BreakTree()
            task.wait(0.05)
        end
    end
}

trees:Toggle {
    Name = "log aura",
    Flag = "log aura",
    Callback = function(bool)
        shared.log_aura = bool
        while shared.log_aura do
            if not shared.log_aura then
                break
            end
            Functions.BreakLog()
            task.wait(0.05)
        end
    end
}

rocks:Toggle {
    Name = "ore aura",
    Flag = "ore aura",
    Callback = function(bool)
        shared.ore_aura = bool
        while shared.ore_aura do
            if not shared.ore_aura then
                break
            end
            Functions.BreakOre()
            task.wait(0.05)
        end
    end
}

misc:Toggle {
    Name = "full bright",
    Flag = "full bright",
    Callback = function(x)
        shared.FullBright = x
    end
}

misc:Toggle {
    Name = "sprint",
    Flag = "sprint",
    Callback = function(x)
        Util.KeyPress("LeftShift", x == true and 9e9 or 0)
    end
}

misc:Toggle {
    Name = "ctrl + click to tp",
    Flag = "click to tp",
    Callback = function()
    end
}

for i, v in pairs(Areas) do
    teleports:Button {
        Name = i:lower(),
        Callback = function()
            Teleport(CFrame.new(v))
        end
    }
end

teleports:Button {
    Name = "plot",
    Callback = function()
        Teleport(Util.GetPlot():FindFirstChild("MainRegion"):GetPivot())
    end
}

teleports:Button {
    Name = "nearest owned log",
    Callback = function()
        Actions.GoToLog()
    end
}

teleports:Button {
    Name = "nearest owned ore",
    Callback = function()
        Actions.GoToOre()
    end
}

player:Slider {
    Name = "walkspeed",
    Flag = "walkspeed",
    Text = "[value]/24",
    Default = 16,
    Min = 16,
    Max = 24,
    Float = 1,
    Callback = function(value)
    end
}

vehicle:Button {
    Name = "clean car",
    Callback = Util.CleanVehicle
}

vehicle:Slider {
    Name = "max speed",
    Flag = "max speed",
    Text = "[value]/250",
    Default = 50,
    Min = 50,
    Max = 250,
    Float = 1,
    Callback = function(value)
    end
}

vehicle:Button {
    Name = "assign vehicle speed",
    Callback = function()
        Util.ModVehicleSpeed(library.flags["max speed"])
    end
}

vehicle:ColorPicker {
    Name = "vehicle colour",
    Default = Color3.fromRGB(255, 255, 255),
    Flag = "vehicle colour",
    Callback = function(color)
    end
}

vehicle:Button {
    Name = "assign vehicle colour",
    Callback = function()
        Util.ColourVehicle(library.flags["vehicle colour"])
    end
}

vehicle:Box {
    Name = "license plate text",
    Placeholder = "Soggyware",
    Flag = "license_plate_text",
    Callback = function(text)
    end
}

vehicle:Button {
    Name = "assign license plate",
    Callback = function()
        local Vehicle = Util.GetVehicle()
        if Vehicle then
            local Framework = Vehicle:FindFirstChild("Framework")
            if Framework then
                local License = Framework:FindFirstChild("LicensePlate")
                if License then
                    local Container = License:FindFirstChild("SurfaceGui")
                    if Container then
                        local LICENSE = Container:FindFirstChild("LICENSE")
                        LICENSE.Text = library.flags.license_plate_text
                        for i, v in next, Container:GetChildren() do
                            if v.Name == "TextLabel" then
                                if v.Text == "OAKLANDS" or v.Text == "On Top" then
                                    v.Text = "On Top"
                                else
                                    v.Text = "Soggyware"
                                end
                            end
                        end
                    end
                end
            end
        end
    end
}

local esptab = main:Tab("esp")

local esps =
    esptab:Section {
    Name = "esp",
    Side = "Left"
}

local oreespopts =
    esptab:Section {
    Name = "ore esp options",
    Side = "Right"
}

esps:Toggle {
    Name = "toggle",
    Flag = "toggle",
    Callback = function(x)
        KiriotESP:Toggle(x)
    end
}

esps:Toggle {
    Name = "boxes",
    Flag = "boxes",
    Callback = function(x)
        KiriotESP.Boxes = (x)
    end
}

esps:Toggle {
    Name = "names",
    Flag = "names",
    Callback = function(x)
        KiriotESP.Names = (x)
    end
}

esps:Toggle {
    Name = "players",
    Flag = "players",
    Callback = function(x)
        KiriotESP.Players = (x)
    end
}

esps:Toggle {
    Name = "ores",
    Flag = "ores",
    Callback = function(x)
        KiriotESP.Ores = (x)
    end
}

local InsertedOres = {}

local function UpdateESP(v, x, name)
    LPH_JIT_MAX(
        function()
            if v:IsA("Model") and x == "Add" then
                for i2, v2 in next, v:GetDescendants() do
                    if v2:IsA("BasePart") then
                        if v2.Name ~= "Section" then
                            if v:GetAttribute("Mineable") then
                                local NewName = Util.GetIndexFromValue(Colours, v2.BrickColor)
                                if NewName ~= nil then
                                    if not table.find(InsertedOres, v) then
                                        if library.flags[NewName] == true then
                                            table.insert(InsertedOres, v)
                                            KiriotESP:Add(
                                                v2,
                                                {
                                                    Name = NewName or "Unknown Ore",
                                                    IsEnabled = "Ores",
                                                    Color = v2.Color
                                                }
                                            )
                                        elseif library.flags[NewName] == false then
                                            local idx = table.find(InsertedOres, v)
                                            table.remove(InsertedOres, idx)
                                            if KiriotESP.Objects then
                                                local NewName = Util.GetIndexFromValue(Colours, v2.BrickColor)
                                                if NewName ~= nil then
                                                    for i3, v3 in next, KiriotESP.Objects do
                                                        if v3.Name == NewName then
                                                            v3:Remove()
                                                        end
                                                    end
                                                end
                                            end
                                        end
                                    end
                                end
                            end
                        end
                    end
                end
            elseif x == "Remove" and v:IsA("Model") then
                for i2, v2 in next, v:GetDescendants() do
                    if v2:IsA("BasePart") then
                        if v2.Name ~= "Section" then
                            if v:GetAttribute("Mineable") then
                                local idx = table.find(InsertedOres, v)
                                table.remove(InsertedOres, idx)
                                if KiriotESP.Objects then
                                    if name ~= nil then
                                        for i3, v3 in next, KiriotESP.Objects do
                                            if v3.Name == name then
                                                v3:Remove()
                                            end
                                        end
                                    end
                                end
                            end
                        end
                    end
                end
            end
        end
    )()
end

local function ForceUpdateESP(x, name)
    for i, v in next, game:GetService("Workspace").World.RockRegions:GetDescendants() do
        LPH_JIT_MAX(
            function()
                UpdateESP(v, x == true and "Add" or "Remove", name)
            end
        )()
    end
end

game:GetService("Workspace").World.RockRegions.DescendantAdded:Connect(
    LPH_JIT_MAX(
        function(v)
            UpdateESP(v, "Add")
        end
    )
)
game:GetService("Workspace").World.RockRegions.DescendantRemoving:Connect(
    LPH_JIT_MAX(
        function(v)
            UpdateESP(v, "Remove")
        end
    )
)

for i, v in next, Colours do
    oreespopts:Toggle {
        Name = i:lower(),
        Flag = i,
        Callback = function(x)
            LPH_JIT_MAX(
                function()
                    ForceUpdateESP(x, i)
                end
            )()
        end
    }
end

task.spawn(
    function()
        while task.wait(0.1) do
            Character.Humanoid.WalkSpeed = library.flags.walkspeed
        end
    end
)

game:GetService("UserInputService").InputBegan:Connect(
    function(x)
        pcall(
            function()
                Character = Player.Character
            end
        )
        if
            x.UserInputType == Enum.UserInputType.MouseButton1 and library.flags["click to tp"] and
                game:GetService("UserInputService"):IsKeyDown(Enum.KeyCode.LeftControl)
         then
            local pos = Player:GetMouse().Hit
            Teleport(pos)
        end
    end
)

local configs = main:Tab("configuration")
local themes = configs:Section {Name = "Theme", Side = "Left"}
local themepickers = {}
local themelist =
    themes:Dropdown {
    Name = "Theme",
    Default = library.currenttheme,
    Content = library:GetThemes(),
    Flag = "Theme Dropdown",
    Callback = function(option)
        if option then
            library:SetTheme(option:lower())
            for option, picker in next, themepickers do
                picker:Set(library.theme[option])
            end
        end
    end
}
library:ConfigIgnore("Theme Dropdown")
local namebox = themes:Box {Name = "Custom Theme Name", Placeholder = "Custom Theme", Flag = "Custom Theme"}
library:ConfigIgnore("Custom Theme")
themes:Button {Name = "Save Custom Theme", Callback = function()
        if library:SaveCustomTheme(library.flags["Custom Theme"]) then
            themelist:Refresh(library:GetThemes())
            themelist:Set(library.flags["Custom Theme"])
            namebox:Set("")
        end
    end}
local customtheme = configs:Section {Name = "Custom Theme", Side = "Right"}
themepickers["Accent"] =
    customtheme:ColorPicker {
    Name = "Accent",
    Default = library.theme["Accent"],
    Flag = "Accent",
    Callback = function(color)
        library:ChangeThemeOption("Accent", color)
    end
}
library:ConfigIgnore("Accent")
themepickers["Window Background"] =
    customtheme:ColorPicker {
    Name = "Window Background",
    Default = library.theme["Window Background"],
    Flag = "Window Background",
    Callback = function(color)
        library:ChangeThemeOption("Window Background", color)
    end
}
library:ConfigIgnore("Window Background")
themepickers["Window Border"] =
    customtheme:ColorPicker {
    Name = "Window Border",
    Default = library.theme["Window Border"],
    Flag = "Window Border",
    Callback = function(color)
        library:ChangeThemeOption("Window Border", color)
    end
}
library:ConfigIgnore("Window Border")
themepickers["Tab Background"] =
    customtheme:ColorPicker {
    Name = "Tab Background",
    Default = library.theme["Tab Background"],
    Flag = "Tab Background",
    Callback = function(color)
        library:ChangeThemeOption("Tab Background", color)
    end
}
library:ConfigIgnore("Tab Background")
themepickers["Tab Border"] =
    customtheme:ColorPicker {
    Name = "Tab Border",
    Default = library.theme["Tab Border"],
    Flag = "Tab Border",
    Callback = function(color)
        library:ChangeThemeOption("Tab Border", color)
    end
}
library:ConfigIgnore("Tab Border")
themepickers["Tab Toggle Background"] =
    customtheme:ColorPicker {
    Name = "Tab Toggle Background",
    Default = library.theme["Tab Toggle Background"],
    Flag = "Tab Toggle Background",
    Callback = function(color)
        library:ChangeThemeOption("Tab Toggle Background", color)
    end
}
library:ConfigIgnore("Tab Toggle Background")
themepickers["Section Background"] =
    customtheme:ColorPicker {
    Name = "Section Background",
    Default = library.theme["Section Background"],
    Flag = "Section Background",
    Callback = function(color)
        library:ChangeThemeOption("Section Background", color)
    end
}
library:ConfigIgnore("Section Background")
themepickers["Section Border"] =
    customtheme:ColorPicker {
    Name = "Section Border",
    Default = library.theme["Section Border"],
    Flag = "Section Border",
    Callback = function(color)
        library:ChangeThemeOption("Section Border", color)
    end
}
library:ConfigIgnore("Section Border")
themepickers["Text"] =
    customtheme:ColorPicker {Name = "Text", Default = library.theme["Text"], Flag = "Text", Callback = function(color)
        library:ChangeThemeOption("Text", color)
    end}
library:ConfigIgnore("Text")
themepickers["Disabled Text"] =
    customtheme:ColorPicker {
    Name = "Disabled Text",
    Default = library.theme["Disabled Text"],
    Flag = "Disabled Text",
    Callback = function(color)
        library:ChangeThemeOption("Disabled Text", color)
    end
}
library:ConfigIgnore("Disabled Text")
themepickers["Object Background"] =
    customtheme:ColorPicker {
    Name = "Object Background",
    Default = library.theme["Object Background"],
    Flag = "Object Background",
    Callback = function(color)
        library:ChangeThemeOption("Object Background", color)
    end
}
library:ConfigIgnore("Object Background")
themepickers["Object Border"] =
    customtheme:ColorPicker {
    Name = "Object Border",
    Default = library.theme["Object Border"],
    Flag = "Object Border",
    Callback = function(color)
        library:ChangeThemeOption("Object Border", color)
    end
}
library:ConfigIgnore("Object Border")
themepickers["Dropdown Option Background"] =
    customtheme:ColorPicker {
    Name = "Dropdown Option Background",
    Default = library.theme["Dropdown Option Background"],
    Flag = "Dropdown Option Background",
    Callback = function(color)
        library:ChangeThemeOption("Dropdown Option Background", color)
    end
}
library:ConfigIgnore("Dropdown Option Background")
local configsection = configs:Section {Name = "Configs", Side = "Left"}
local configlist = configsection:Dropdown {Name = "Configs", Content = library:GetConfigs(), Flag = "Config Dropdown"}
library:ConfigIgnore("Config Dropdown")
local loadconfig = configsection:Button {Name = "Load Config", Callback = function()
        library:LoadConfig(library.flags["Config Dropdown"])
    end}
local delconfig = configsection:Button {Name = "Delete Config", Callback = function()
        library:DeleteConfig(library.flags["Config Dropdown"])
    end}
local configbox = configsection:Box {Name = "Config Name", Placeholder = "Config Name", Flag = "Config Name"}
library:ConfigIgnore("Config Name")
local save = configsection:Button {Name = "Save Config", Callback = function()
        library:SaveConfig(library.flags["Config Name"])
        configlist:Refresh(library:GetConfigs())
    end}

local infotab = main:Tab("information")

local infotab = infotab:Section {Name = "information", Side = "Left"}

infotab:Label("Game Version " .. GetVersion())

infotab:Label("Script Version " .. Version)

print("Loaded Script")

Here’s a step-by-step guide to using the Oaklands Script Roblox from Pastebin:

  • Click on the “COPY” button to automatically copy the script.
  • Paste the copied script into your script application.
  • Run the script and you’re all set.

These simple instructions allow players to quickly and easily utilize the script to enhance their Oaklands Script Roblox gaming experience.

If you are unable to copy or you do not want to use this script now, then you can download this script, click on the download button below to download.

What is the Oaklands Script Roblox?

The Roblox Oaklands Script is a revolutionary piece of programming created to improve gaming. It adds a variety of dynamic dynamics, interactive components, and immersive features to their Roblox games and is specifically designed for developers. This script gives developers the tools they need to create complex stories, fascinating challenges, and captivating settings in the Roblox virtual world. Developers may take their games to new heights and provide gamers an amazing experience by utilizing the Oaklands Script.

The Role of Oaklands Script Roblox in Gaming?

Roblox’s Oaklands Script, a flexible toolbox for developers, changes gameplay. It gives them the ability to incorporate dynamic gaming processes, engaging storyline, and realistic settings into their works. With the help of this script, it will be possible to create interesting missions, interesting questions, and realistic simulations that will increase user involvement. The Oaklands Script transforms Roblox games into imaginative worlds where imagination abounds, allowing creators to create one-of-a-kind, enduring, and custom gaming experiences for a wide audience.

Relative You tube Video

Disclaimer

Thebloxscript.com is a fan site and is not associated with, promoted by, or authorized by Roblox Scripts, or any other business or brand. This website was made with education in mind. We do not endorse or support any form of illicit software, software piracy, etc.

Contact Us: [email protected]

Conclusion

The Oaklands Script stands out as a unique trigger on the vast Roblox canvas. It gives developers the freedom to create engaging gameplay that connects with gamers beyond traditional bounds. This script heralds a new era in which inventiveness and inspiration mix to produce engrossing stories, engaging puzzles, and dynamic environments. The Oaklands Script is the starting point for creating amazing gaming moments that last after the virtual journey is over.

Sharing Is Caring:

Leave a Comment