-- please credit me if you modify ts -- dsc elois108 pcall(function() game:GetService("StarterGui"):SetCore("SendNotification", { Title = "loaded", Text = "dsc: @elois108", Duration = 5, Button1 = "Okay" }) end) local function getBagCapacity() local lp = game.Players.LocalPlayer local pg = lp and lp:FindFirstChild("PlayerGui") local main = pg and pg:FindFirstChild("Main") local info = main and main:FindFirstChild("Info") local text = info and info:FindFirstChild("TextLabel") if text and text.Text then local currentStr, maxStr = string.match(string.lower(text.Text), "([%d%.]+)%s*/%s*([%d%.]+)%s*kg") if currentStr and maxStr then return tonumber(maxStr) or 10 end end return 10 end local function getCurrentBagWeight() local lp = game.Players.LocalPlayer local pg = lp and lp:FindFirstChild("PlayerGui") local main = pg and pg:FindFirstChild("Main") local info = main and main:FindFirstChild("Info") local text = info and info:FindFirstChild("TextLabel") if text and text.Text then local currentStr, maxStr = string.match(string.lower(text.Text), "([%d%.]+)%s*/%s*([%d%.]+)%s*kg") if currentStr then return tonumber(currentStr) or 0 end end return 0 end local function getCrystalWeight(crystal) local w = crystal:GetAttribute("WeightKg") if w then return tonumber(w) end local prompt = crystal:FindFirstChildOfClass("ProximityPrompt") if prompt and prompt.ObjectText then local match = string.match(string.lower(prompt.ObjectText), "([%d%.]+)%s*kg") if match then return tonumber(match) end end return math.huge end local CoreGui = game:GetService("CoreGui") for _, child in ipairs(CoreGui:GetChildren()) do pcall(function() if string.find(child.Name, "ENI") or string.find(child.Name, "Orion") or child.Name == "TestGui" or child.Name == "ENI_PLAYER_ESP" then child:Destroy() end if child:IsA("ScreenGui") then local f = child:FindFirstChild("Frame") if f then local t = f:FindFirstChildOfClass("TextLabel") if t and (string.find(t.Text or "", "ENI") or string.find(t.Text or "", "Mountain") or string.find(t.Text or "", "Advanced")) then child:Destroy() end end end end) end task.wait(0.2) local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local RunService = game:GetService("RunService") local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local LocalPlayer = Players.LocalPlayer local Remotes = ReplicatedStorage:WaitForChild("Remotes") local Things = workspace:WaitForChild("Things") local Crystals = Things:WaitForChild("Crystals") local SellProx = Things:WaitForChild("SellProx") getgenv().eni_espEnabled = true getgenv().eni_autoFarm = false getgenv().eni_godMode = true getgenv().eni_playerEspEnabled = false getgenv().eni_playerNames = true getgenv().eni_playerBox = true getgenv().eni_playerOutline = true if not getgenv().eni_espTiers then getgenv().eni_espTiers = { ["Mythic"] = true, ["Legendary"] = true, ["Epic"] = false, ["Rare"] = false, ["Uncommon"] = false, ["Common"] = false, } end local isBackpackFull = false pcall(function() if Remotes:FindFirstChild("BackpackFull") then Remotes.BackpackFull.OnClientEvent:Connect(function() isBackpackFull = true end) end end) local blacklistedCrystals = {} local oldNamecall oldNamecall = hookmetamethod(game, "__namecall", function(self, ...) local method = getnamecallmethod() if method == "FireServer" and getgenv().eni_godMode then local name = tostring(self) if name == "FallDamage" or name == "FreezeDamage" then return nil end end return oldNamecall(self, ...) end) local function getBackpackWeightInfo() local maxWeight = 76 local currentWeight = 0 local pd = LocalPlayer:FindFirstChild("PlayerData") if pd then local rs = pd:FindFirstChild("RealStats") if rs then local cw = rs:FindFirstChild("CarryWeight") if cw then maxWeight = cw.Value end end local inv = pd:FindFirstChild("Inventory") if inv then local crys = inv:FindFirstChild("Crystals") if crys then for _, child in ipairs(crys:GetChildren()) do currentWeight = currentWeight + (child:GetAttribute("WeightKg") or 0) end end end end return currentWeight, maxWeight end local function equipPickaxe() local char = LocalPlayer.Character if not char then return nil end local hum = char:FindFirstChildOfClass("Humanoid") if not hum then return nil end local holding = char:FindFirstChildOfClass("Tool") if holding and holding:FindFirstChild("ToolHandler") then return holding end for _, item in ipairs(LocalPlayer.Backpack:GetChildren()) do if item:IsA("Tool") and item:FindFirstChild("ToolHandler") then hum:EquipTool(item) task.wait(0.2) return item end end return nil end local function clearRocksAround(pos) local tool = equipPickaxe() if tool then local toolName = tool.Name for _, offset in ipairs({Vector3.zero, Vector3.new(0, 3, 0), Vector3.new(0, -3, 0), Vector3.new(3, 0, 0), Vector3.new(-3, 0, 0), Vector3.new(0, 0, 3), Vector3.new(0, 0, -3)}) do pcall(function() for i = 1, 5 do Remotes.DigRequest:FireServer(toolName, pos + offset) end end) end end end local function findClearMiningSpot(crystal) local crystalPos = crystal.Position local offsets = { Vector3.new(0, 0, 0), Vector3.new(3, 0, 0), Vector3.new(-3, 0, 0), Vector3.new(0, 0, 3), Vector3.new(0, 0, -3), Vector3.new(0, 5, 0), Vector3.new(0, -2, 0) } local params = RaycastParams.new() params.FilterType = Enum.RaycastFilterType.Exclude local excludeList = {LocalPlayer.Character} if workspace:FindFirstChild("Things") and workspace.Things:FindFirstChild("Crystals") then for _, v in ipairs(workspace.Things.Crystals:GetChildren()) do table.insert(excludeList, v) end end params.FilterDescendantsInstances = excludeList for _, offset in ipairs(offsets) do local checkPos = crystalPos + offset local result = workspace:Raycast(crystalPos + Vector3.new(0, 2, 0), (checkPos - (crystalPos + Vector3.new(0, 2, 0))), params) if not result then return checkPos end end return crystalPos + Vector3.new(0, 3, 0) end local function getTargetCFrameForCrystal(crystal) return CFrame.new(findClearMiningSpot(crystal)) end local function resetCharacterPhysics() local char = LocalPlayer.Character if char then local hrp = char:FindFirstChild("HumanoidRootPart") local hum = char:FindFirstChild("Humanoid") if hrp then hrp.AssemblyLinearVelocity = Vector3.zero hrp.AssemblyAngularVelocity = Vector3.zero hrp.CFrame = CFrame.new(hrp.Position) end if hum then hum:ChangeState(Enum.HumanoidStateType.Running) end end end local activeTween = nil local function teleportTo(targetCFrame, speed, keepAnchored) local char = LocalPlayer.Character if not char then return nil, nil end local hrp = char:FindFirstChild("HumanoidRootPart") if not hrp then return nil, nil end getgenv().eni_teleporting = true pcall(function() if hrp:FindFirstChild("LinearVelocity") then hrp.LinearVelocity:Destroy() end end) for _, v in ipairs(char:GetDescendants()) do if v:IsA("BasePart") then pcall(function() v.CanCollide = false end) end end hrp.Anchored = true local startPos = hrp.Position local targetPos = targetCFrame.Position local distance = (targetPos - startPos).Magnitude local timeToTween = math.max(distance / speed, 0.1) local stepSize = 27 local steps = math.ceil(distance / stepSize) if steps == 0 then steps = 1 end local waitTime = timeToTween / steps local tpPlatform = Instance.new("Part") tpPlatform.Size = Vector3.new(5, 1, 5) tpPlatform.Anchored = true tpPlatform.Transparency = 1 tpPlatform.Parent = workspace task.spawn(function() for i = 1, steps do if not getgenv().eni_teleporting then break end if not char or not char:FindFirstChild("HumanoidRootPart") then break end local alpha = i / steps local currentTarget = startPos:Lerp(targetPos, alpha) hrp.CFrame = CFrame.new(currentTarget) hrp.AssemblyLinearVelocity = Vector3.zero hrp.AssemblyAngularVelocity = Vector3.zero tpPlatform.Position = currentTarget - Vector3.new(0, 3.1, 0) task.wait(waitTime) end if not getgenv().eni_teleporting then return end for _, v in ipairs(char:GetDescendants()) do if v:IsA("BasePart") then pcall(function() v.CanCollide = true end) end end if not keepAnchored then hrp.Anchored = false end pcall(function() tpPlatform:Destroy() end) resetCharacterPhysics() getgenv().eni_teleporting = false end) return activeTween, timeToTween end local function unanchor() getgenv().eni_teleporting = false local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then local hrp = char.HumanoidRootPart hrp.Anchored = false for _, v in ipairs(char:GetDescendants()) do if v:IsA("BasePart") then pcall(function() v.CanCollide = true end) end end end resetCharacterPhysics() end local function instantTeleportTo(targetCFrame) unanchor() local char = LocalPlayer.Character if char then char:PivotTo(CFrame.new(targetCFrame.Position)) resetCharacterPhysics() end end getgenv().eni_targetMethod = getgenv().eni_targetMethod or "Value" local function getBestCrystal(specificTier) local remainingSpace = getBagCapacity() local best, bestScore = nil, -1 for _, crystal in ipairs(Crystals:GetChildren()) do if crystal:IsA("BasePart") and crystal:FindFirstChildOfClass("ProximityPrompt") then if blacklistedCrystals[crystal] and os.clock() - blacklistedCrystals[crystal] < 60 then continue end local tier = crystal:GetAttribute("TierName") or "Common" local valid = false if specificTier then valid = (tier == specificTier) else local anyOn = false for _, v in pairs(getgenv().eni_espTiers) do if v then anyOn = true break end end valid = (not anyOn or getgenv().eni_espTiers[tier]) end if valid then local weight = getCrystalWeight(crystal) if weight <= remainingSpace then local value = crystal:GetAttribute("Value") or 0 local score = (getgenv().eni_targetMethod == "Value") and value or (value / weight) if score > bestScore then bestScore = score best = crystal end end end end end return best end local espFolder = Instance.new("Folder") espFolder.Name = "ENI_ESP" espFolder.Parent = CoreGui local function createESP(crystal) if not crystal or not crystal:IsA("BasePart") then return end local tier = crystal:GetAttribute("TierName") or "Common" if not getgenv().eni_espTiers[tier] then return end local name = crystal:GetAttribute("CrystalName") or "Crystal" local value = crystal:GetAttribute("Value") or 0 local weight = crystal:GetAttribute("WeightKg") or 1 local r = crystal:GetAttribute("TierColorR") or 255 local g = crystal:GetAttribute("TierColorG") or 255 local b = crystal:GetAttribute("TierColorB") or 255 local color = Color3.fromRGB(r, g, b) local hl = Instance.new("Highlight") hl.Name = crystal.Name .. "_HL" hl.Adornee = crystal hl.FillTransparency = 1 hl.OutlineColor = color hl.OutlineTransparency = 0 hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop hl.Parent = espFolder local bb = Instance.new("BillboardGui") bb.Name = crystal.Name; bb.Adornee = crystal bb.Size = UDim2.new(0, 150, 0, 50); bb.StudsOffset = Vector3.new(0, -1.5, 0); bb.AlwaysOnTop = true local lbl = Instance.new("TextLabel"); lbl.Parent = bb lbl.Size = UDim2.new(1, 0, 1, 0); lbl.BackgroundTransparency = 1 local function formatPrice(v) if v >= 1e12 then return string.format("%.1fT", v / 1e12) elseif v >= 1e9 then return string.format("%.1fB", v / 1e9) elseif v >= 1e6 then return string.format("%.1fM", v / 1e6) elseif v >= 1000 then return string.format("%.1fK", v / 1000) else return tostring(v) end end lbl.Text = "$" .. formatPrice(value) lbl.TextColor3 = color; lbl.TextStrokeTransparency = 0 lbl.Font = Enum.Font.GothamBold; lbl.TextSize = 13 bb.Parent = espFolder end local function refreshESP() espFolder:ClearAllChildren() if not getgenv().eni_espEnabled then return end for _, c in ipairs(Crystals:GetChildren()) do createESP(c) end end Crystals.ChildAdded:Connect(function(c) if getgenv().eni_espEnabled then task.wait(0.1); createESP(c) end end) refreshESP() local playerEspFolder = Instance.new("Folder") playerEspFolder.Name = "ENI_PLAYER_ESP" playerEspFolder.Parent = CoreGui local function getPlayerColor(player) local char = LocalPlayer.Character local targetChar = player.Character if char and targetChar then local hrp = char:FindFirstChild("HumanoidRootPart") local targetHrp = targetChar:FindFirstChild("HumanoidRootPart") if hrp and targetHrp then local dist = (hrp.Position - targetHrp.Position).Magnitude if dist < 50 then return Color3.fromRGB(255, 80, 80) -- red elseif dist <= 200 then return Color3.fromRGB(255, 160, 50) -- orange else return Color3.fromRGB(80, 220, 120) -- green end end end return Color3.fromRGB(255, 255, 255) end local function cleanPlayerESP(player) local name = player.Name local existingHighlight = playerEspFolder:FindFirstChild(name .. "_Highlight") if existingHighlight then pcall(function() existingHighlight:Destroy() end) end local existingBillboard = playerEspFolder:FindFirstChild(name .. "_Billboard") if existingBillboard then pcall(function() existingBillboard:Destroy() end) end end local function updatePlayerESP() if not getgenv().eni_playerEspEnabled then playerEspFolder:ClearAllChildren() return end for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer then local char = p.Character if char and char:FindFirstChild("HumanoidRootPart") and char:FindFirstChild("Humanoid") and char.Humanoid.Health > 0 then local color = getPlayerColor(p) local highlight = playerEspFolder:FindFirstChild(p.Name .. "_Highlight") if not highlight then highlight = Instance.new("Highlight") highlight.Name = p.Name .. "_Highlight" highlight.Parent = playerEspFolder end highlight.Adornee = char highlight.FillColor = color highlight.OutlineColor = color highlight.FillTransparency = getgenv().eni_playerBox and 0.5 or 1 highlight.OutlineTransparency = getgenv().eni_playerOutline and 0 or 1 local billboard = playerEspFolder:FindFirstChild(p.Name .. "_Billboard") if not billboard then billboard = Instance.new("BillboardGui") billboard.Name = p.Name .. "_Billboard" billboard.Size = UDim2.new(0, 150, 0, 30) billboard.StudsOffset = Vector3.new(0, 3.5, 0) billboard.AlwaysOnTop = true local lbl = Instance.new("TextLabel") lbl.Name = "Label" lbl.Size = UDim2.new(1, 0, 1, 0) lbl.BackgroundTransparency = 1 lbl.Font = Enum.Font.GothamBold lbl.TextSize = 12 lbl.TextStrokeTransparency = 0.3 lbl.Parent = billboard end billboard.Adornee = char.HumanoidRootPart billboard.Enabled = getgenv().eni_playerNames local dist = 0 local lpChar = LocalPlayer.Character if lpChar and lpChar:FindFirstChild("HumanoidRootPart") then dist = (lpChar.HumanoidRootPart.Position - char.HumanoidRootPart.Position).Magnitude end local lbl = billboard:FindFirstChild("Label") if lbl then lbl.Text = string.format("%s [%d m]", p.Name, math.floor(dist)) lbl.TextColor3 = color end billboard.Parent = playerEspFolder else cleanPlayerESP(p) end end end for _, child in ipairs(playerEspFolder:GetChildren()) do local pName = string.match(child.Name, "^(.*)_[Highlight|Billboard]") if pName then local p = Players:FindFirstChild(pName) if not p or not p.Character then pcall(function() child:Destroy() end) end end end end task.spawn(function() while true do pcall(updatePlayerESP) task.wait(0.1) end end) if not getgenv().eni_remoteHook then getgenv().eni_remoteHook = true local oldNamecall oldNamecall = hookmetamethod(game, "__namecall", function(self, ...) local method = getnamecallmethod() if not getgenv().eni_godMode then return oldNamecall(self, ...) end if method == "FireServer" and self.Name == "FallDamage" then return end if method == "FireServer" and self.Name == "RagdollRequest" then return end if method == "FireServer" and self.Name == "IceDamage" then return end if method == "FireServer" and self.Name == "PushFire" then return end if method == "FireServer" and self.Name == "FreezeDamage" then return end if method == "FireServer" and self.Name == "CrystalDropRequest" then return end return oldNamecall(self, ...) end) end getgenv().eni_noFall = false local noFallPlatform = nil RunService.RenderStepped:Connect(function() if getgenv().eni_noFall then local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then local hrp = char.HumanoidRootPart if not noFallPlatform or not noFallPlatform.Parent then noFallPlatform = Instance.new("Part") noFallPlatform.Name = "ENI_NOFALL" noFallPlatform.Size = Vector3.new(15, 1, 15) noFallPlatform.Anchored = true noFallPlatform.Transparency = 1 noFallPlatform.CanCollide = true noFallPlatform.Parent = workspace end local currentY = noFallPlatform.Position.Y local targetY = hrp.Position.Y - 3.5 if targetY > currentY + 1 or targetY < currentY - 20 then currentY = targetY end noFallPlatform.Position = Vector3.new(hrp.Position.X, currentY, hrp.Position.Z) end else if noFallPlatform then noFallPlatform:Destroy() noFallPlatform = nil end end end) if not getgenv().eni_healthLoop then getgenv().eni_healthLoop = true local function disableLavaOnce() for _, v in ipairs(workspace:GetDescendants()) do pcall(function() if v:IsA("BasePart") and (v.Name:match("Lava") or v.Name:match("Fire")) then v.CanTouch = false end end) end end local lavaDisabled = false RunService.Heartbeat:Connect(function() if getgenv().eni_godMode then if not lavaDisabled then disableLavaOnce() lavaDisabled = true end local char = LocalPlayer.Character if char then local hum = char:FindFirstChild("Humanoid") if hum and hum.Health > 0 and hum:GetState() ~= Enum.HumanoidStateType.Dead then if getgenv().eni_godMode then hum.Health = hum.MaxHealth end if getgenv().eni_speedBoost then hum.WalkSpeed = 60 else hum.WalkSpeed = 16 end if getgenv().eni_superJump then hum.JumpPower = 120; hum.UseJumpPower = true else hum.JumpPower = 50 end end end else lavaDisabled = false end end) end local COLORS = { bg = Color3.fromRGB(18, 18, 22), sidebar = Color3.fromRGB(24, 24, 30), topbar = Color3.fromRGB(14, 14, 18), content = Color3.fromRGB(30, 30, 38), accent = Color3.fromRGB(130, 80, 255), accentDark = Color3.fromRGB(90, 50, 200), on = Color3.fromRGB(80, 200, 120), off = Color3.fromRGB(60, 60, 70), text = Color3.fromRGB(230, 230, 240), textDim = Color3.fromRGB(140, 140, 160), btnHover = Color3.fromRGB(45, 45, 55), } local SG = Instance.new("ScreenGui") SG.Name = "els_hub" SG.ResetOnSpawn = false SG.ZIndexBehavior = Enum.ZIndexBehavior.Sibling SG.Parent = CoreGui local Main = Instance.new("Frame") Main.Size = UDim2.new(0, 520, 0, 340) Main.Position = UDim2.new(0.5, -260, 0.5, -170) Main.BackgroundColor3 = COLORS.bg Main.BorderSizePixel = 0 Main.Parent = SG Instance.new("UICorner", Main).CornerRadius = UDim.new(0, 10) local Shadow = Instance.new("ImageLabel") Shadow.Size = UDim2.new(1, 30, 1, 30) Shadow.Position = UDim2.new(0, -15, 0, -15) Shadow.BackgroundTransparency = 1 Shadow.Image = "rbxassetid://6014261993" Shadow.ImageColor3 = Color3.fromRGB(0, 0, 0) Shadow.ImageTransparency = 0.5 Shadow.ScaleType = Enum.ScaleType.Slice Shadow.SliceCenter = Rect.new(49, 49, 450, 450) Shadow.ZIndex = -1 Shadow.Parent = Main local TopBar = Instance.new("Frame") TopBar.Size = UDim2.new(1, 0, 0, 36) TopBar.BackgroundColor3 = COLORS.topbar TopBar.BorderSizePixel = 0 TopBar.Parent = Main local TopCorner = Instance.new("UICorner", TopBar) TopCorner.CornerRadius = UDim.new(0, 8) local TitleLabel = Instance.new("TextLabel") TitleLabel.Size = UDim2.new(1, -60, 1, 0); TitleLabel.Position = UDim2.new(0, 16, 0, 0) TitleLabel.BackgroundTransparency = 1; TitleLabel.Text = "Elois Script" TitleLabel.TextColor3 = COLORS.accent; TitleLabel.Font = Enum.Font.GothamBold; TitleLabel.TextSize = 14 TitleLabel.TextXAlignment = Enum.TextXAlignment.Left; TitleLabel.Parent = TopBar local CloseBtn = Instance.new("TextButton") CloseBtn.Size = UDim2.new(0, 30, 0, 30) CloseBtn.Position = UDim2.new(1, -34, 0, 3) CloseBtn.BackgroundTransparency = 1 CloseBtn.Text = "X" CloseBtn.TextColor3 = COLORS.textDim CloseBtn.Font = Enum.Font.GothamBold CloseBtn.TextSize = 16 CloseBtn.Parent = TopBar local NotifGUI = Instance.new("ScreenGui") NotifGUI.Name = "ENI_Notif" NotifGUI.Parent = CoreGui local NotifLabel = Instance.new("TextLabel") NotifLabel.Size = UDim2.new(0, 300, 0, 40) NotifLabel.Position = UDim2.new(0.5, -150, 0, 50) NotifLabel.BackgroundColor3 = Color3.fromRGB(20, 20, 20) NotifLabel.TextColor3 = Color3.fromRGB(255, 255, 255) NotifLabel.Font = Enum.Font.GothamBold NotifLabel.TextSize = 14 NotifLabel.Text = "Menu minimized, press Rshift to open." NotifLabel.BackgroundTransparency = 1 NotifLabel.TextTransparency = 1 NotifLabel.Parent = NotifGUI local NotifCorner = Instance.new("UICorner", NotifLabel) NotifCorner.CornerRadius = UDim.new(0, 8) getgenv().eni_toggleKey = Enum.KeyCode.RightShift CloseBtn.MouseButton1Click:Connect(function() Main.Visible = false NotifLabel.BackgroundTransparency = 0.3 NotifLabel.TextTransparency = 0 NotifLabel.Text = "Menu minimized. Press " .. getgenv().eni_toggleKey.Name .. " to open." local ts = game:GetService("TweenService") task.delay(2, function() ts:Create(NotifLabel, TweenInfo.new(1), {BackgroundTransparency = 1, TextTransparency = 1}):Play() end) end) local Sidebar = Instance.new("Frame") local dragging, dragStart, startPos TopBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true; dragStart = input.Position; startPos = Main.Position end end) UserInputService.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - dragStart Main.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) local Sidebar = Instance.new("Frame") Sidebar.Size = UDim2.new(0, 120, 1, -36); Sidebar.Position = UDim2.new(0, 0, 0, 36) Sidebar.BackgroundColor3 = COLORS.sidebar; Sidebar.BorderSizePixel = 0; Sidebar.Parent = Main local SideLayout = Instance.new("UIListLayout"); SideLayout.Padding = UDim.new(0, 2) SideLayout.SortOrder = Enum.SortOrder.LayoutOrder; SideLayout.Parent = Sidebar local Content = Instance.new("Frame") Content.Size = UDim2.new(1, -120, 1, -36); Content.Position = UDim2.new(0, 120, 0, 36) Content.BackgroundColor3 = COLORS.content; Content.BorderSizePixel = 0; Content.Parent = Main local tabs = {} local activeTab = nil local function makeTab(name, icon) local tabBtn = Instance.new("TextButton") tabBtn.Size = UDim2.new(1, 0, 0, 38); tabBtn.BackgroundTransparency = 1; tabBtn.BorderSizePixel = 0 tabBtn.Text = (icon or "") .. " " .. name; tabBtn.TextColor3 = COLORS.textDim tabBtn.Font = Enum.Font.GothamSemibold; tabBtn.TextSize = 13 tabBtn.TextXAlignment = Enum.TextXAlignment.Left tabBtn.Parent = Sidebar local tabPadding = Instance.new("UIPadding"); tabPadding.PaddingLeft = UDim.new(0, 12); tabPadding.Parent = tabBtn local tabContent = Instance.new("ScrollingFrame") tabContent.Size = UDim2.new(1, -16, 1, -16); tabContent.Position = UDim2.new(0, 8, 0, 8) tabContent.BackgroundTransparency = 1; tabContent.ScrollBarThickness = 3 tabContent.ScrollBarImageColor3 = COLORS.accent; tabContent.Visible = false tabContent.AutomaticCanvasSize = Enum.AutomaticSize.Y tabContent.CanvasSize = UDim2.new(0, 0, 0, 0) tabContent.Parent = Content local contentLayout = Instance.new("UIListLayout"); contentLayout.Padding = UDim.new(0, 6) contentLayout.SortOrder = Enum.SortOrder.LayoutOrder; contentLayout.Parent = tabContent local entry = {btn = tabBtn, content = tabContent, name = name} table.insert(tabs, entry) tabBtn.MouseButton1Click:Connect(function() for _, t in ipairs(tabs) do t.content.Visible = false t.btn.BackgroundTransparency = 1 t.btn.TextColor3 = COLORS.textDim end tabContent.Visible = true tabBtn.BackgroundTransparency = 0.85 tabBtn.BackgroundColor3 = COLORS.accent tabBtn.TextColor3 = COLORS.text activeTab = entry end) tabBtn.MouseEnter:Connect(function() if activeTab ~= entry then TweenService:Create(tabBtn, TweenInfo.new(0.15), {BackgroundTransparency = 0.9, BackgroundColor3 = COLORS.btnHover}):Play() end end) tabBtn.MouseLeave:Connect(function() if activeTab ~= entry then TweenService:Create(tabBtn, TweenInfo.new(0.15), {BackgroundTransparency = 1}):Play() end end) return tabContent end local function addToggle(parent, text, default, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, 0, 0, 34); frame.BackgroundColor3 = COLORS.bg frame.BorderSizePixel = 0; frame.Parent = parent Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 6) local label = Instance.new("TextLabel") label.Size = UDim2.new(1, -60, 1, 0); label.Position = UDim2.new(0, 10, 0, 0) label.BackgroundTransparency = 1; label.Text = text label.TextColor3 = COLORS.text; label.Font = Enum.Font.Gotham; label.TextSize = 13 label.TextXAlignment = Enum.TextXAlignment.Left; label.Parent = frame local toggleBtn = Instance.new("TextButton") toggleBtn.Size = UDim2.new(0, 42, 0, 22); toggleBtn.Position = UDim2.new(1, -52, 0.5, -11) toggleBtn.Text = ""; toggleBtn.Parent = frame Instance.new("UICorner", toggleBtn).CornerRadius = UDim.new(1, 0) local circle = Instance.new("Frame") circle.Size = UDim2.new(0, 16, 0, 16); circle.BackgroundColor3 = Color3.new(1, 1, 1) circle.Parent = toggleBtn Instance.new("UICorner", circle).CornerRadius = UDim.new(1, 0) local state = default local function updateVisual() if state then TweenService:Create(toggleBtn, TweenInfo.new(0.2), {BackgroundColor3 = COLORS.on}):Play() TweenService:Create(circle, TweenInfo.new(0.2), {Position = UDim2.new(1, -19, 0.5, -8)}):Play() else TweenService:Create(toggleBtn, TweenInfo.new(0.2), {BackgroundColor3 = COLORS.off}):Play() TweenService:Create(circle, TweenInfo.new(0.2), {Position = UDim2.new(0, 3, 0.5, -8)}):Play() end end updateVisual() toggleBtn.MouseButton1Click:Connect(function() state = not state updateVisual() if callback then callback(state) end end) return {setState = function(v) state = v; updateVisual() end} end local function addButton(parent, text, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 32); btn.BackgroundColor3 = COLORS.bg btn.Text = text; btn.TextColor3 = COLORS.text btn.Font = Enum.Font.GothamSemibold; btn.TextSize = 13 btn.BorderSizePixel = 0; btn.Parent = parent Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 6) btn.MouseEnter:Connect(function() TweenService:Create(btn, TweenInfo.new(0.15), {BackgroundColor3 = COLORS.accentDark}):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(btn, TweenInfo.new(0.15), {BackgroundColor3 = COLORS.bg}):Play() end) btn.MouseButton1Click:Connect(callback) end local function addLabel(parent, text, color) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, 0, 0, 24); lbl.BackgroundTransparency = 1 lbl.Text = text; lbl.TextColor3 = color or COLORS.text lbl.Font = Enum.Font.GothamBold; lbl.TextSize = 12 lbl.TextWrapped = true; lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Parent = parent end local function addLine(parent) local container = Instance.new("Frame") container.Size = UDim2.new(1, 0, 0, 16); container.BackgroundTransparency = 1 container.Parent = parent local line = Instance.new("Frame") line.Size = UDim2.new(1, -20, 0, 1); line.Position = UDim2.new(0, 10, 0.5, 0) line.BackgroundColor3 = COLORS.off; line.BorderSizePixel = 0 line.Parent = container end local function addTextBox(parent, text, placeholder, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, 0, 0, 32); frame.BackgroundColor3 = COLORS.bg frame.BorderSizePixel = 0; frame.Parent = parent Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 6) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(0.5, 0, 1, 0); lbl.Position = UDim2.new(0, 12, 0, 0) lbl.BackgroundTransparency = 1; lbl.Text = text lbl.TextColor3 = COLORS.text; lbl.Font = Enum.Font.GothamSemibold; lbl.TextSize = 13 lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = frame local txt = Instance.new("TextBox") txt.Size = UDim2.new(0.45, 0, 0, 24); txt.Position = UDim2.new(0.55, -12, 0, 4) txt.BackgroundColor3 = COLORS.topbar; txt.BorderSizePixel = 0 txt.Text = ""; txt.PlaceholderText = placeholder txt.TextColor3 = COLORS.text; txt.PlaceholderColor3 = COLORS.textDim txt.Font = Enum.Font.Gotham; txt.TextSize = 12 txt.Parent = frame Instance.new("UICorner", txt).CornerRadius = UDim.new(0, 4) txt.FocusLost:Connect(function() if callback then callback(txt.Text) end end) end local function addKeybind(parent, text, default, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, 0, 0, 32); frame.BackgroundColor3 = COLORS.bg frame.BorderSizePixel = 0; frame.Parent = parent Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 6) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -60, 1, 0); lbl.Position = UDim2.new(0, 12, 0, 0) lbl.BackgroundTransparency = 1; lbl.Text = text lbl.TextColor3 = COLORS.text; lbl.Font = Enum.Font.GothamSemibold; lbl.TextSize = 13 lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = frame local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 60, 0, 24); btn.Position = UDim2.new(1, -68, 0, 4) btn.BackgroundColor3 = COLORS.topbar; btn.BorderSizePixel = 0 btn.Text = default.Name; btn.TextColor3 = COLORS.textDim btn.Font = Enum.Font.Gotham; btn.TextSize = 12 btn.Parent = frame Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 4) local listening = false btn.MouseButton1Click:Connect(function() listening = true btn.Text = "..." btn.TextColor3 = COLORS.accent end) UserInputService.InputBegan:Connect(function(input) if listening and input.UserInputType == Enum.UserInputType.Keyboard then listening = false btn.Text = input.KeyCode.Name btn.TextColor3 = COLORS.textDim if callback then callback(input.KeyCode) end end end) end local function addDropdown(parent, text, optionsGetter, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, 0, 0, 32); frame.BackgroundColor3 = COLORS.bg frame.BorderSizePixel = 0; frame.Parent = parent frame.ClipsDescendants = true Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 6) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -40, 1, 0); lbl.Position = UDim2.new(0, 12, 0, 0) lbl.BackgroundTransparency = 1; lbl.Text = text .. ": Select" lbl.TextColor3 = COLORS.text; lbl.Font = Enum.Font.GothamSemibold; lbl.TextSize = 13 lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = frame local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 32); btn.BackgroundTransparency = 1 btn.Text = ""; btn.Parent = frame btn.ZIndex = 2 local icon = Instance.new("TextLabel") icon.Size = UDim2.new(0, 20, 0, 32); icon.Position = UDim2.new(1, -30, 0, 0) icon.BackgroundTransparency = 1; icon.Text = "▼" icon.TextColor3 = COLORS.textDim; icon.Font = Enum.Font.Gotham; icon.TextSize = 12 icon.Parent = frame local isOpen = false local container = nil btn.MouseButton1Click:Connect(function() isOpen = not isOpen if isOpen then icon.Text = "▲" local options = type(optionsGetter) == "function" and optionsGetter() or optionsGetter local count = #options container = Instance.new("Frame") container.Size = UDim2.new(1, 0, 0, count * 26 + 4) container.Position = UDim2.new(0, 0, 0, 32) container.BackgroundColor3 = COLORS.topbar; container.BorderSizePixel = 0 container.ZIndex = 10; container.Parent = frame local list = Instance.new("UIListLayout", container) list.SortOrder = Enum.SortOrder.LayoutOrder frame.Size = UDim2.new(1, 0, 0, 32 + (count * 26 + 4)) for _, opt in ipairs(options) do local optBtn = Instance.new("TextButton") optBtn.Size = UDim2.new(1, 0, 0, 26); optBtn.BackgroundTransparency = 1 optBtn.Text = " " .. opt.name; optBtn.TextColor3 = COLORS.textDim optBtn.Font = Enum.Font.Gotham; optBtn.TextSize = 12 optBtn.TextXAlignment = Enum.TextXAlignment.Left; optBtn.ZIndex = 11 optBtn.Parent = container optBtn.MouseEnter:Connect(function() optBtn.TextColor3 = COLORS.text end) optBtn.MouseLeave:Connect(function() optBtn.TextColor3 = COLORS.textDim end) optBtn.MouseButton1Click:Connect(function() lbl.Text = text .. ": " .. opt.name isOpen = false icon.Text = "▼" frame.Size = UDim2.new(1, 0, 0, 32) container:Destroy() if callback then callback(opt.value) end end) end else icon.Text = "▼" frame.Size = UDim2.new(1, 0, 0, 32) if container then container:Destroy() end end end) end local farmTab = makeTab("Farm") local espTab = makeTab("ESP") local autoTab = makeTab("Auto") local tpTab = makeTab("TP") local miscTab = makeTab("Misc") local setTab = makeTab("Settings") tabs[1].btn.BackgroundTransparency = 0.85 tabs[1].btn.BackgroundColor3 = COLORS.accent tabs[1].btn.TextColor3 = COLORS.text tabs[1].content.Visible = true activeTab = tabs[1] local CrystalHoldComplete = Remotes:FindFirstChild("CrystalHoldComplete") local SellRemote = Remotes:FindFirstChild("SellRequest") addToggle(farmTab, "Auto-Farm", getgenv().eni_autoFarm, function(val) getgenv().eni_autoFarm = val if val then task.spawn(function() while getgenv().eni_autoFarm do local remainingSpace = getBagCapacity() if isBackpackFull or remainingSpace <= 0.5 then instantTeleportTo(SellProx.CFrame + Vector3.new(0, 3, 0)) task.wait(0.3) local sp = SellProx:FindFirstChildOfClass("ProximityPrompt") if sp then sp.MaxActivationDistance = 9999 fireproximityprompt(sp) end if SellRemote then SellRemote:FireServer() end task.wait(0.5) isBackpackFull = false else local target = getBestCrystal() if target then local tc = getTargetCFrameForCrystal(target) teleportTo(tc, 450, true) local breakStart = tick() while target and target.Parent and (tick() - breakStart) < 2 and getgenv().eni_autoFarm do if (LocalPlayer.Character.HumanoidRootPart.Position - tc.Position).Magnitude > 5 then teleportTo(tc, 450, true) end clearRocksAround(target.Position) local p = target:FindFirstChildOfClass("ProximityPrompt") if p then p.MaxActivationDistance = 9999 p.RequiresLineOfSight = false fireproximityprompt(p) end task.wait(0.1) end unanchor() end end task.wait(0.1) end unanchor() end) else unanchor() end end) addLine(farmTab) addDropdown(farmTab, "Target Method", function() return { {name = "Value", value = "Value"}, {name = "Ratio", value = "Ratio"} } end, function(v) getgenv().eni_targetMethod = v end) addLabel(farmTab, "Rarity Teleports") local rarityTypes = { "Select", "Mythic", "Legendary", "Epic", "Rare", "Uncommon", "Common", "Coal" } for i, rType in ipairs(rarityTypes) do if i > 1 then addButton(farmTab, "Fly to Best " .. rType, function() local target = getBestCrystal(rType) if target then teleportTo(getTargetCFrameForCrystal(target), 400) end end) end end addToggle(espTab, "ESP", getgenv().eni_espEnabled, function(v) getgenv().eni_espEnabled = v; refreshESP() end) for _, tier in ipairs({"Mythic", "Legendary", "Epic", "Rare", "Uncommon", "Common"}) do addToggle(espTab, tier, getgenv().eni_espTiers[tier], function(v) getgenv().eni_espTiers[tier] = v; refreshESP() end) end addLine(espTab) addToggle(espTab, "Xray", getgenv().eni_crystalEsp, function(v) getgenv().eni_crystalEsp = v end) addToggle(espTab, "Player ESP", getgenv().eni_playerEspEnabled, function(v) getgenv().eni_playerEspEnabled = v end) addToggle(espTab, "Usernames", getgenv().eni_playerNames, function(v) getgenv().eni_playerNames = v end) addToggle(espTab, "Boxes", getgenv().eni_playerBox, function(v) getgenv().eni_playerBox = v end) addToggle(espTab, "Outlines", getgenv().eni_playerOutline, function(v) getgenv().eni_playerOutline = v end) local crystalColors = { ["Coal"] = Color3.fromRGB(30, 30, 30), ["Copper"] = Color3.fromRGB(184, 115, 51), ["Iron"] = Color3.fromRGB(161, 157, 148), ["Silver"] = Color3.fromRGB(192, 192, 192), ["Gold"] = Color3.fromRGB(255, 215, 0), ["Platinum"] = Color3.fromRGB(229, 228, 226), ["Diamond"] = Color3.fromRGB(185, 242, 255), ["Emerald"] = Color3.fromRGB(80, 200, 120), ["Ruby"] = Color3.fromRGB(224, 17, 95), ["Sapphire"] = Color3.fromRGB(15, 82, 186), ["Amethyst"] = Color3.fromRGB(153, 102, 204), ["Topaz"] = Color3.fromRGB(255, 200, 124), ["Opal"] = Color3.fromRGB(168, 195, 188), ["Obsidian"] = Color3.fromRGB(54, 69, 79), ["Mythic"] = Color3.fromRGB(255, 50, 50), ["Void"] = Color3.fromRGB(100, 0, 150) } task.spawn(function() while true do if getgenv().eni_crystalEsp then local pGui = LocalPlayer:FindFirstChild("PlayerGui") if pGui and pGui:FindFirstChild("CrystalNameCursor") then pGui.CrystalNameCursor.Enabled = false end if workspace:FindFirstChild("Things") and workspace.Things:FindFirstChild("Crystals") then for _, c in ipairs(workspace.Things.Crystals:GetChildren()) do local name = c.Name:gsub("%d+$", ""):gsub("_", "") local color = Color3.fromRGB(255, 255, 255) local isWanted = false for k, v in pairs(crystalColors) do if name:match(k) then color = v if getgenv().eni_espTiers[k] then isWanted = true end break end end if isWanted then local hl = c:FindFirstChild("ENI_C_HL") if not hl then hl = Instance.new("Highlight") hl.Name = "ENI_C_HL" hl.FillTransparency = 1 hl.OutlineTransparency = 0 hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop hl.Parent = c end hl.OutlineColor = color local val = c:GetAttribute("Value") or 0 local bb = c:FindFirstChild("ENI_C_BB") if not bb then bb = Instance.new("BillboardGui") bb.Name = "ENI_C_BB" bb.AlwaysOnTop = true bb.Size = UDim2.new(0, 100, 0, 20) bb.ExtentsOffset = Vector3.new(0, -1, 0) bb.Parent = c local txt = Instance.new("TextLabel") txt.Name = "PriceTxt" txt.Size = UDim2.new(1, 0, 1, 0) txt.BackgroundTransparency = 1 txt.Font = Enum.Font.GothamBold txt.TextSize = 12 txt.TextStrokeTransparency = 0.5 txt.Parent = bb end local formatVal = val if val >= 1000000000 then formatVal = string.format("%.1fB", val / 1000000000) elseif val >= 1000000 then formatVal = string.format("%.1fM", val / 1000000) elseif val >= 1000 then formatVal = string.format("%.1fK", val / 1000) else formatVal = tostring(math.floor(val)) end bb.PriceTxt.Text = "$" .. formatVal bb.PriceTxt.TextColor3 = Color3.fromRGB(80, 255, 80) else if c:FindFirstChild("ENI_C_HL") then c.ENI_C_HL:Destroy() end if c:FindFirstChild("ENI_C_BB") then c.ENI_C_BB:Destroy() end end end end else local pGui = LocalPlayer:FindFirstChild("PlayerGui") if pGui and pGui:FindFirstChild("CrystalNameCursor") then pGui.CrystalNameCursor.Enabled = true end if workspace:FindFirstChild("Things") and workspace.Things:FindFirstChild("Crystals") then for _, c in ipairs(workspace.Things.Crystals:GetChildren()) do if c:FindFirstChild("ENI_C_HL") then c.ENI_C_HL:Destroy() end if c:FindFirstChild("ENI_C_BB") then c.ENI_C_BB:Destroy() end end end end task.wait(0.5) end end) addButton(tpTab, "TP to sell area", function() instantTeleportTo(SellProx.CFrame + Vector3.new(0, 3, 0)) end) local shopProx = Things:FindFirstChild("ShopProx") if shopProx then addButton(tpTab, "TP to shop", function() instantTeleportTo(shopProx.CFrame + Vector3.new(0, 3, 0)) end) end addLine(tpTab) local selectedPlayer = nil addDropdown(tpTab, "Target", function() local options = {} local lp = game.Players.LocalPlayer local hrp = lp.Character and lp.Character:FindFirstChild("HumanoidRootPart") for _, p in ipairs(game.Players:GetPlayers()) do if p ~= lp and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then local dist = hrp and (p.Character.HumanoidRootPart.Position - hrp.Position).Magnitude or math.huge table.insert(options, {name = p.Name .. " [" .. math.floor(dist) .. "s]", value = p, dist = dist}) end end table.sort(options, function(a, b) return a.dist < b.dist end) if #options == 0 then table.insert(options, {name = "No players found", value = nil, dist = 0}) end return options end, function(plr) selectedPlayer = plr end) addButton(tpTab, "Teleport to Player", function() if selectedPlayer and selectedPlayer.Character and selectedPlayer.Character:FindFirstChild("HumanoidRootPart") then local targetCF = selectedPlayer.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -5) targetCF = CFrame.new(targetCF.Position, selectedPlayer.Character.HumanoidRootPart.Position) teleportTo(targetCF, 400, false) end end) addToggle(miscTab, "God Mode", getgenv().eni_godMode, function(v) getgenv().eni_godMode = v end) addToggle(miscTab, "NoFall", getgenv().eni_noFall, function(v) getgenv().eni_noFall = v end) getgenv().eni_flyEnabled = false getgenv().eni_flySpeed = 100 local flyKeys = {W = false, A = false, S = false, D = false, Space = false, LeftControl = false} RunService.RenderStepped:Connect(function(dt) if getgenv().eni_flyEnabled then getgenv()._eni_wasFlying = true local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then hrp.Anchored = true for _, v in ipairs(char:GetDescendants()) do if v:IsA("BasePart") then pcall(function() v.CanCollide = false end) end end local cam = workspace.CurrentCamera local moveVector = Vector3.zero if flyKeys.W then moveVector = moveVector + cam.CFrame.LookVector end if flyKeys.S then moveVector = moveVector - cam.CFrame.LookVector end if flyKeys.A then moveVector = moveVector - cam.CFrame.RightVector end if flyKeys.D then moveVector = moveVector + cam.CFrame.RightVector end if flyKeys.Space then moveVector = moveVector + Vector3.new(0, 1, 0) end if flyKeys.LeftControl then moveVector = moveVector - Vector3.new(0, 1, 0) end if moveVector.Magnitude > 0 then moveVector = moveVector.Unit hrp.CFrame = hrp.CFrame + (moveVector * getgenv().eni_flySpeed * dt) end hrp.AssemblyLinearVelocity = Vector3.zero hrp.AssemblyAngularVelocity = Vector3.zero end else if getgenv()._eni_wasFlying then unanchor() getgenv()._eni_wasFlying = false end end end) addToggle(autoTab, "AutoBuy Pickaxe", getgenv().eni_autoPickaxe, function(v) getgenv().eni_autoPickaxe = v end) addToggle(autoTab, "AutoBuy Storage", getgenv().eni_autoStorage, function(v) getgenv().eni_autoStorage = v end) addToggle(autoTab, "AutoBuy Warmth", getgenv().eni_autoWarmth, function(v) getgenv().eni_autoWarmth = v end) addToggle(autoTab, "Auto Sell", getgenv().eni_autoSellSolo, function(v) getgenv().eni_autoSellSolo = v end) task.spawn(function() while task.wait(1) do if getgenv().eni_autoSellSolo then if getBagCapacity() <= 0.5 or isBackpackFull then local oldCF = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and LocalPlayer.Character.HumanoidRootPart.CFrame instantTeleportTo(SellProx.CFrame + Vector3.new(0, 3, 0)) task.wait(0.3) if SellProx:FindFirstChildOfClass("ProximityPrompt") then fireproximityprompt(SellProx:FindFirstChildOfClass("ProximityPrompt")) end if Remotes:FindFirstChild("SellRequest") then Remotes.SellRequest:FireServer() end task.wait(0.5) if oldCF then instantTeleportTo(oldCF) end end end if getgenv().eni_autoPickaxe or getgenv().eni_autoStorage or getgenv().eni_autoWarmth then if Remotes:FindFirstChild("UpgradeBuy") then if getgenv().eni_autoStorage then for i = 1, 15 do pcall(function() Remotes.UpgradeBuy:FireServer("Capacity", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("Bag", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("Storage", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("CarryWeight", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("MaxWeight", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("Backpack", i) end) end end if getgenv().eni_autoWarmth then for i = 1, 15 do pcall(function() Remotes.UpgradeBuy:FireServer("Warmth", i) end) pcall(function() Remotes.UpgradeBuy:FireServer("Air", i) end) end end end if Remotes:FindFirstChild("ShopBuy") and getgenv().eni_autoPickaxe then for i = 1, 25 do pcall(function() Remotes.ShopBuy:FireServer(i) end) end end end end end) local cfgName = "Default" local function getConfigs() if not isfolder("eloisko") then makefolder("eloisko") end local files = listfiles("eloisko") local arr = {} for _, f in ipairs(files) do table.insert(arr, {name = f:match("([^/\\]+)%.json$") or "Unknown", value = f}) end if #arr == 0 then table.insert(arr, {name = "No Configs", value = ""}) end return arr end addLabel(setTab, "Configuration") addTextBox(setTab, "Config Name", "Default", function(v) cfgName = v end) addButton(setTab, "Save Config", function() if not isfolder("eloisko") then makefolder("eloisko") end local data = {} for k, v in pairs(getgenv()) do if type(k) == "string" and k:sub(1, 4) == "eni_" and type(v) ~= "function" and type(v) ~= "userdata" then data[k] = v end end writefile("eloisko/" .. cfgName .. ".json", game:GetService("HttpService"):JSONEncode(data)) warn("Config saved: " .. cfgName) end) local selectedCfg = "" addDropdown(setTab, "Load Config", getConfigs, function(v) selectedCfg = v end) addButton(setTab, "Load Selected", function() if selectedCfg ~= "" and isfile(selectedCfg) then local s, data = pcall(function() return game:GetService("HttpService"):JSONDecode(readfile(selectedCfg)) end) if s and type(data) == "table" then for k, v in pairs(data) do getgenv()[k] = v end warn("Config loaded!") end end end) addButton(setTab, "Delete Selected", function() if selectedCfg ~= "" and isfile(selectedCfg) then delfile(selectedCfg) warn("Config deleted!") end end) local function updateTheme(isLight) local palette = isLight and { bg = Color3.fromRGB(235, 235, 240), topbar = Color3.fromRGB(225, 225, 230), content = Color3.fromRGB(245, 245, 250), sidebar = Color3.fromRGB(230, 230, 235), text = Color3.fromRGB(30, 30, 35), textDim = Color3.fromRGB(110, 110, 120), accent = Color3.fromRGB(60, 120, 255), on = Color3.fromRGB(60, 200, 100), off = Color3.fromRGB(180, 180, 180), btnHover = Color3.fromRGB(180, 200, 255), accentDark = Color3.fromRGB(140, 180, 255) } or { bg = Color3.fromRGB(20, 20, 25), topbar = Color3.fromRGB(30, 30, 35), content = Color3.fromRGB(25, 25, 30), sidebar = Color3.fromRGB(15, 15, 20), text = Color3.fromRGB(255, 255, 255), textDim = Color3.fromRGB(180, 180, 180), accent = Color3.fromRGB(140, 80, 255), on = Color3.fromRGB(80, 255, 120), off = Color3.fromRGB(60, 60, 65), btnHover = Color3.fromRGB(40, 40, 45), accentDark = Color3.fromRGB(110, 60, 200) } local oldPalette = COLORS COLORS = palette local function cMatch(c1, c2) return math.abs(c1.R - c2.R) < 0.05 and math.abs(c1.G - c2.G) < 0.05 and math.abs(c1.B - c2.B) < 0.05 end Main.BackgroundColor3 = palette.bg Sidebar.BackgroundColor3 = palette.sidebar TopBar.BackgroundColor3 = palette.topbar Content.BackgroundColor3 = palette.content TitleLabel.TextColor3 = palette.accent CloseBtn.TextColor3 = palette.textDim for _, v in ipairs(Main:GetDescendants()) do if v:IsA("TextLabel") or v:IsA("TextButton") or v:IsA("TextBox") then if cMatch(v.TextColor3, oldPalette.text) then v.TextColor3 = palette.text end if cMatch(v.TextColor3, oldPalette.textDim) then v.TextColor3 = palette.textDim end if cMatch(v.TextColor3, oldPalette.accent) then v.TextColor3 = palette.accent end if cMatch(v.BackgroundColor3, oldPalette.bg) then v.BackgroundColor3 = palette.bg end if cMatch(v.BackgroundColor3, oldPalette.topbar) then v.BackgroundColor3 = palette.topbar end if cMatch(v.BackgroundColor3, oldPalette.btnHover) then v.BackgroundColor3 = palette.btnHover end if cMatch(v.BackgroundColor3, oldPalette.accentDark) then v.BackgroundColor3 = palette.accentDark end elseif v:IsA("Frame") then if cMatch(v.BackgroundColor3, oldPalette.bg) then v.BackgroundColor3 = palette.bg end if cMatch(v.BackgroundColor3, oldPalette.topbar) then v.BackgroundColor3 = palette.topbar end if cMatch(v.BackgroundColor3, oldPalette.content) then v.BackgroundColor3 = palette.content end if cMatch(v.BackgroundColor3, oldPalette.off) then v.BackgroundColor3 = palette.off end if cMatch(v.BackgroundColor3, oldPalette.btnHover) then v.BackgroundColor3 = palette.btnHover end if cMatch(v.BackgroundColor3, oldPalette.accentDark) then v.BackgroundColor3 = palette.accentDark end elseif v:IsA("ScrollingFrame") then if cMatch(v.ScrollBarImageColor3, oldPalette.accent) then v.ScrollBarImageColor3 = palette.accent end end end end addToggle(setTab, "Light Theme", getgenv().eni_lightTheme, function(v) getgenv().eni_lightTheme = v updateTheme(v) end) addKeybind(setTab, "Menu Keybind", getgenv().eni_toggleKey, function(val) getgenv().eni_toggleKey = val end) addLine(setTab) addToggle(setTab, "Low graphics", getgenv().eni_perfMode, function(val) getgenv().eni_perfMode = val if val then pcall(function() local terrain = workspace:FindFirstChildOfClass("Terrain") if terrain then terrain.WaterWaveSize = 0 terrain.WaterWaveSpeed = 0 terrain.WaterReflectance = 0 terrain.WaterTransparency = 0 end local Lighting = game:GetService("Lighting") Lighting.GlobalShadows = false Lighting.FogEnd = 9e9 Lighting.ShadowSoftness = 0 settings().Rendering.QualityLevel = 1 settings().Rendering.MeshPartDetailLevel = Enum.MeshPartDetailLevel.Level04 for _, v in ipairs(game:GetDescendants()) do if v:IsA("MeshPart") then v.RenderFidelity = 2 v.Reflectance = 0 v.Material = Enum.Material.Plastic v.TextureID = "" elseif v:IsA("BasePart") and not v:IsA("MeshPart") then v.Material = Enum.Material.Plastic v.Reflectance = 0 elseif v:IsA("Decal") or v:IsA("Texture") or v:IsA("SurfaceAppearance") then v:Destroy() elseif v:IsA("ParticleEmitter") or v:IsA("Trail") or v:IsA("Smoke") or v:IsA("Fire") or v:IsA("Sparkles") then v.Enabled = false elseif v:IsA("PostEffect") then v.Enabled = false elseif v:IsA("Explosion") then v.Visible = false end end end) end end) addLine(miscTab) addLine(miscTab) addToggle(miscTab, "Speed Boost", getgenv().eni_speedBoost, function(v) getgenv().eni_speedBoost = v end) addToggle(miscTab, "Super Jump", getgenv().eni_superJump, function(v) getgenv().eni_superJump = v end) addToggle(miscTab, "Fly", getgenv().eni_flyEnabled, function(v) getgenv().eni_flyEnabled = v end) UserInputService.InputBegan:Connect(function(input, gpe) if gpe then return end if input.KeyCode == (getgenv().eni_toggleKey or Enum.KeyCode.RightShift) then Main.Visible = not Main.Visible end if input.KeyCode == Enum.KeyCode.W then flyKeys.W = true elseif input.KeyCode == Enum.KeyCode.A then flyKeys.A = true elseif input.KeyCode == Enum.KeyCode.S then flyKeys.S = true elseif input.KeyCode == Enum.KeyCode.D then flyKeys.D = true elseif input.KeyCode == Enum.KeyCode.Space then flyKeys.Space = true elseif input.KeyCode == Enum.KeyCode.LeftControl then flyKeys.LeftControl = true end end) UserInputService.InputEnded:Connect(function(input, gpe) if gpe then return end if input.KeyCode == Enum.KeyCode.W then flyKeys.W = false elseif input.KeyCode == Enum.KeyCode.A then flyKeys.A = false elseif input.KeyCode == Enum.KeyCode.S then flyKeys.S = false elseif input.KeyCode == Enum.KeyCode.D then flyKeys.D = false elseif input.KeyCode == Enum.KeyCode.Space then flyKeys.Space = false elseif input.KeyCode == Enum.KeyCode.LeftControl then flyKeys.LeftControl = false end end) Main.Size = UDim2.new(0, 520, 0, 0) TweenService:Create(Main, TweenInfo.new(0.3, Enum.EasingStyle.Back), {Size = UDim2.new(0, 520, 0, 340)}):Play()