Version / Update: v1.0.0
- Download / Script Link
- local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local Lighting = game:GetService("Lighting")
local lp = Players.LocalPlayer
local mouse = lp:GetMouse()
local core = {
Enabled = true,
Visible = true,
Minimized = false,
Connections = {},
ESP_Instances = {},
States = {
InfStamina = false,
PlayerESP = false,
Fullbright = false
}
}
local sg = Instance.new("ScreenGui")
sg.Name = "YmayCivHub"
sg.ResetOnSpawn = false
sg.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
sg.Parent = lp:WaitForChild("PlayerGui")
local main = Instance.new("Frame")
main.Name = "Main"
main.Size = UDim2.new(0, 500, 0, 350)
main.Position = UDim2.new(0.5, -250, 0.5, -175)
main.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
main.BorderSizePixel = 0
main.ClipsDescendants = true
main.Active = true
main.Parent = sg
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = main
local top = Instance.new("Frame")
top.Size = UDim2.new(1, 0, 0, 40)
top.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
top.BorderSizePixel = 0
top.Parent = main
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -120, 1, 0)
title.Position = UDim2.new(0, 15, 0, 0)
title.BackgroundTransparency = 1
title.Text = "Ymay Civilization Hub"
title.TextColor3 = Color3.new(1, 1, 1)
title.Font = Enum.Font.GothamBold
title.TextSize = 16
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = top
local function drag(frame, obj)
local dragging, dragInput, dragStart, startPos
obj.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = frame.Position
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
local delta = input.Position - dragStart
frame.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)
end
drag(main, top)
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 40, 0, 40)
closeBtn.Position = UDim2.new(1, -40, 0, 0)
closeBtn.BackgroundTransparency = 1
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.new(1, 0.2, 0.2)
closeBtn.Font = Enum.Font.GothamBold
closeBtn.TextSize = 18
closeBtn.Parent = top
local minBtn = Instance.new("TextButton")
minBtn.Size = UDim2.new(0, 40, 0, 40)
minBtn.Position = UDim2.new(1, -80, 0, 0)
minBtn.BackgroundTransparency = 1
minBtn.Text = "-"
minBtn.TextColor3 = Color3.new(1, 1, 1)
minBtn.Font = Enum.Font.GothamBold
minBtn.TextSize = 20
minBtn.Parent = top
local openArrow = Instance.new("TextButton")
openArrow.Size = UDim2.new(0, 30, 0, 60)
openArrow.Position = UDim2.new(0, -35, 0.5, -30)
openArrow.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
openArrow.Text = ">"
openArrow.TextColor3 = Color3.new(1, 1, 1)
openArrow.Font = Enum.Font.GothamBold
openArrow.TextSize = 20
openArrow.Parent = sg
Instance.new("UICorner", openArrow)
local function setVisibility(visible)
core.Visible = visible
if visible then
main:TweenPosition(UDim2.new(0.5, -250, 0.5, -175), "Out", "Quint", 0.4, true)
openArrow:TweenPosition(UDim2.new(0, -35, 0.5, -30), "Out", "Quint", 0.3, true)
else
main:TweenPosition(UDim2.new(0, -550, 0.5, -175), "Out", "Quint", 0.4, true)
task.wait(0.2)
openArrow:TweenPosition(UDim2.new(0, 5, 0.5, -30), "Out", "Quint", 0.3, true)
end
end
minBtn.MouseButton1Click:Connect(function() setVisibility(false) end)
openArrow.MouseButton1Click:Connect(function() setVisibility(true) end)
UserInputService.InputBegan:Connect(function(i, g)
if not g and i.KeyCode == Enum.KeyCode.K then
setVisibility(not core.Visible)
end
end)
local sidebar = Instance.new("Frame")
sidebar.Size = UDim2.new(0, 120, 1, -40)
sidebar.Position = UDim2.new(0, 0, 0, 40)
sidebar.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
sidebar.BorderSizePixel = 0
sidebar.Parent = main
local content = Instance.new("Frame")
content.Size = UDim2.new(1, -120, 1, -40)
content.Position = UDim2.new(0, 120, 0, 40)
content.BackgroundTransparency = 1
content.Parent = main
local layout = Instance.new("UIListLayout")
layout.Parent = sidebar
local tabs = {}
local function createTab(name)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(1, 0, 0, 40)
btn.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
btn.BorderSizePixel = 0
btn.Text = name
btn.TextColor3 = Color3.fromRGB(150, 150, 150)
btn.Font = Enum.Font.GothamMedium
btn.TextSize = 14
btn.Parent = sidebar
local page = Instance.new("ScrollingFrame")
page.Size = UDim2.new(1, 0, 1, 0)
page.BackgroundTransparency = 1
page.Visible = false
page.ScrollBarThickness = 0
page.CanvasSize = UDim2.new(0, 0, 0, 0)
page.AutomaticCanvasSize = Enum.AutomaticSize.Y
page.Parent = content
local pList = Instance.new("UIListLayout")
pList.Padding = UDim.new(0, 8)
pList.HorizontalAlignment = Enum.HorizontalAlignment.Center
pList.Parent = page
Instance.new("UIPadding", page).PaddingTop = UDim.new(0, 10)
btn.MouseButton1Click:Connect(function()
for _, t in pairs(tabs) do
t.Page.Visible = false
t.Btn.TextColor3 = Color3.fromRGB(150, 150, 150)
end
page.Visible = true
btn.TextColor3 = Color3.new(1, 1, 1)
end)
tabs[name] = {Btn = btn, Page = page}
return page
end
local function createToggle(page, text, callback)
local bg = Instance.new("Frame")
bg.Size = UDim2.new(0.9, 0, 0, 40)
bg.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
bg.Parent = page
Instance.new("UICorner", bg)
local l = Instance.new("TextLabel")
l.Size = UDim2.new(1, -60, 1, 0)
l.Position = UDim2.new(0, 10, 0, 0)
l.BackgroundTransparency = 1
l.Text = text
l.TextColor3 = Color3.new(0.8, 0.8, 0.8)
l.Font = Enum.Font.Gotham
l.TextSize = 14
l.TextXAlignment = Enum.TextXAlignment.Left
l.Parent = bg
local tBtn = Instance.new("TextButton")
tBtn.Size = UDim2.new(0, 40, 0, 20)
tBtn.Position = UDim2.new(1, -50, 0.5, -10)
tBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
tBtn.Text = ""
tBtn.Parent = bg
Instance.new("UICorner", tBtn).CornerRadius = UDim.new(1, 0)
local circle = Instance.new("Frame")
circle.Size = UDim2.new(0, 16, 0, 16)
circle.Position = UDim2.new(0, 2, 0.5, -8)
circle.BackgroundColor3 = Color3.new(1, 1, 1)
circle.Parent = tBtn
Instance.new("UICorner", circle).CornerRadius = UDim.new(1, 0)
local enabled = false
tBtn.MouseButton1Click:Connect(function()
enabled = not enabled
TweenService:Create(circle, TweenInfo.new(0.2), {Position = enabled and UDim2.new(1, -18, 0.5, -8) or UDim2.new(0, 2, 0.5, -8)}):Play()
TweenService:Create(tBtn, TweenInfo.new(0.2), {BackgroundColor3 = enabled and Color3.fromRGB(0, 200, 100) or Color3.fromRGB(60, 60, 60)}):Play()
callback(enabled)
end)
end
local function applyESP(obj, name, color)
if not obj or core.ESP_Instances[obj] then return end
local h = Instance.new("Highlight")
h.FillColor = Color3.new(0, 0, 0)
h.OutlineColor = Color3.new(0, 0, 0)
h.FillTransparency = 0.5
h.Parent = obj
local b = Instance.new("BillboardGui")
b.Size = UDim2.new(0, 100, 0, 20)
b.AlwaysOnTop = true
b.ExtentsOffset = Vector3.new(0, 3, 0)
b.Parent = obj
local t = Instance.new("TextLabel")
t.Size = UDim2.new(1, 0, 1, 0)
t.BackgroundTransparency = 1
t.Text = name
t.TextColor3 = color
t.Font = Enum.Font.GothamBold
t.TextSize = 12
t.Parent = b
core.ESP_Instances[obj] = {H = h, B = b}
end
local function removeESP(obj)
if core.ESP_Instances[obj] then
if core.ESP_Instances[obj].H then core.ESP_Instances[obj].H:Destroy() end
if core.ESP_Instances[obj].B then core.ESP_Instances[obj].B:Destroy() end
core.ESP_Instances[obj] = nil
end
end
local mainPage = createTab("Main")
local rockPage = createTab("Rock ESP")
local plantPage = createTab("Plant ESP")
local animalPage = createTab("Animal ESP")
createToggle(mainPage, "Infinite Stamina", function(v)
core.States.InfStamina = v
task.spawn(function()
while core.States.InfStamina do
local s = lp.Character and lp.Character:FindFirstChild("Stamina")
if s then s.Value = 100 end
RunService.Heartbeat:Wait()
end
end)
end)
createToggle(mainPage, "Player ESP", function(v)
core.States.PlayerESP = v
local function update()
for _, p in pairs(Players:GetPlayers()) do
if p ~= lp and p.Character then
local h = p.Character:FindFirstChild("YmayESP")
if core.States.PlayerESP then
if not h then
h = Instance.new("Highlight")
h.Name = "YmayESP"
h.FillColor = Color3.new(1, 1, 1)
h.FillTransparency = 0.5
h.Parent = p.Character
end
elseif h then h:Destroy() end
end
end
end
if v then
core.Connections.PEsp = RunService.Heartbeat:Connect(update)
elseif core.Connections.PEsp then
core.Connections.PEsp:Disconnect()
update()
end
end)
createToggle(mainPage, "Fullbright", function(v)
core.States.Fullbright = v
if v then
core.Connections.FB = RunService.RenderStepped:Connect(function()
Lighting.Brightness = 2
Lighting.ClockTime = 14
Lighting.OutdoorAmbient = Color3.new(1, 1, 1)
end)
elseif core.Connections.FB then
core.Connections.FB:Disconnect()
Lighting.Brightness = 1
Lighting.ClockTime = 12
end
end)
local rockRoot = workspace:WaitForChild("StructureLoader"):WaitForChild("MainMapSpawners"):WaitForChild("RockSpawners")
local oreList = {"Tin Rock", "Coal Rock", "Copper Rock", "Marble Rock", "Large Rock"}
local oreStates = {}
local function scanRocks()
for _, ore in ipairs(oreList) do
for _, s in pairs(rockRoot:GetDescendants()) do
if s.Name == "SpawnPlate" then
local r = s:FindFirstChild(ore)
if r then
if oreStates[ore] then applyESP(r, ore, Color3.new(0, 0, 0)) else removeESP(r) end
end
end
end
end
end
for _, ore in ipairs(oreList) do
createToggle(rockPage, ore, function(v)
oreStates[ore] = v
scanRocks()
end)
end
local plants = {"Berry Bush", "Carrot", "Corn", "Grass", "Pumpkin", "Strawberry Bush", "Sugar Cane", "Tree", "Wheat"}
local plantStates = {}
for _, p in ipairs(plants) do
createToggle(plantPage, p, function(v)
plantStates[p] = v
for _, obj in pairs(workspace:GetChildren()) do
if obj.Name == p then if v then applyESP(obj, p, Color3.new(0, 1, 0)) else removeESP(obj) end end
end
end)
end
local animals = {"Ghicken", "Gow"}
local animalStates = {}
local cowSpawners = workspace:WaitForChild("StructureLoader"):WaitForChild("CowSpawner")
local function updateAnimalESP()
for _, spawner in pairs(workspace.StructureLoader:GetChildren()) do
if spawner.Name == "CowSpawner" then
for _, animal in pairs(spawner:GetChildren()) do
if animalStates[animal.Name] then
applyESP(animal, animal.Name, Color3.new(1, 1, 1))
else
removeESP(animal)
end
end
end
end
end
for _, a in ipairs(animals) do
createToggle(animalPage, a, function(v)
animalStates[a] = v
updateAnimalESP()
end)
end
local infBtn = Instance.new("TextButton")
infBtn.Size = UDim2.new(0.9, 0, 0, 40)
infBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
infBtn.Text = "Load Infinite Yield"
infBtn.TextColor3 = Color3.new(1, 1, 1)
infBtn.Font = Enum.Font.GothamBold
infBtn.TextSize = 14
infBtn.Parent = mainPage
Instance.new("UICorner", infBtn)
infBtn.MouseButton1Click:Connect(function()
loadstring(game:HttpGet('https://raw.githubusercontent.com/DarkNetworks/Infinite-Yield/main/latest.lua'))()
end)
closeBtn.MouseButton1Click:Connect(function()
for _, c in pairs(core.Connections) do c:Disconnect() end
for obj, _ in pairs(core.ESP_Instances) do removeESP(obj) end
for _, p in pairs(Players:GetPlayers()) do if p.Character then local h = p.Character:FindFirstChild("YmayESP") if h then h:Destroy() end end end
sg:Destroy()
end)
tabs["Main"].Btn.TextColor3 = Color3.new(1, 1, 1)
tabs["Main"].Page.Visible = true[ View More ]
This is a menu built for "ymay civilization."Features:ESP: Highlights players, resources, and animals through walls.Rocks: Tin, Coal, Copper, Marble, and Large Rocks.Plants: Berry Bushes, Carrots, Corn, Grass, Pumpkins, Strawberry Bushes, Sugar Cane, Trees, and Wheat.Animals: Ghickens and GowsInfinite Stamina: Keeps your stamina at 100% so you never have to stop sprinting.Fullbright: Forces the game to 2:00 PM and maxes out ambient lighting to delete shadows and the night cycle, which can be toggled on and off.Infinite Yield: A built-in loader for infinite yield.Custom UI: Dragable menu, press K to open and close it (or press the minus button); and press X to unload. It'll remove all highlights and text before fully unloading.