Auto Clicker
Key RequiredUniversal

Auto Clicker

Universal Scriptsodrimaz331sodrimaz331 7.9K views 1.5K executesUpdated Feb 21, 2026
5.0/ 5(2 votes)
20100% Positive
Lua Script•305 lines (9996 chars)
local UIS = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local CoreGui = game:GetService("CoreGui")

-- [[ DİL VE MARKA AYARLARI ]]
local langs = {"TR", "EN", "DE", "ES"}
local currentLangIdx = 1
local brandName = "ECHO HAX" -- İsim Echo Hax olarak güncellendi

local Localization = {
    ["TR"] = {start="BAŞLAT", stop="DURDUR", bind="Tuş: ", unstop="LİMİTSİZ MOD", unstop_on="MOD: AÇIK", clicks="TIK: ", warn="!! KASMA UYARISI !!", ask="Emin misin?\n(Limit Kalkar)", yes="EVET", no="HAYIR"},
    ["EN"] = {start="START", stop="STOP", bind="Bind: ", unstop="UNSTOPPABLE", unstop_on="MODE: ON", clicks="CLICKS: ", warn="!! LAGGING !!", ask="Are you sure?\n(No CPS Limit)", yes="YES", no="NO"},
    ["DE"] = {start="START", stop="STOPP", bind="Taste: ", unstop="UNSTOPPABLE", unstop_on="MODUS: AN", clicks="KLICKS: ", warn="!! LAG-WARNUNG !!", ask="Bist du sicher?\n(Kein Limit)", yes="JA", no="NEIN"},
    ["ES"] = {start="INICIAR", stop="PARAR", bind="Tecla: ", unstop="IMPARABLE", unstop_on="MODO: ACT.", clicks="CLICKS: ", warn="!! ADVERTENCIA !!", ask="¿Estás seguro?\n(Sin límite)", yes="SÍ", no="NO"}
}

local clicking = false
local cps = 10
local maxCPS = 3000
local totalClicks = 0
local keybind = Enum.KeyCode.F
local unstoppable = false
local minimized = false
local running = true 
local settingBind = false

if CoreGui:FindFirstChild("EchoHax_Ultra") then CoreGui.EchoHax_Ultra:Destroy() end

local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "EchoHax_Ultra"
ScreenGui.Parent = CoreGui

local Main = Instance.new("Frame")
Main.Name = "Main"
Main.Parent = ScreenGui
Main.BackgroundColor3 = Color3.fromRGB(15, 15, 15)
Main.Position = UDim2.new(0.5, -125, 0.5, -180)
Main.Size = UDim2.new(0, 250, 0, 380)
Main.Active = true
Main.Draggable = true
Main.ClipsDescendants = true 
Instance.new("UICorner", Main).CornerRadius = UDim.new(0, 10)

local Stroke = Instance.new("UIStroke", Main)
Stroke.Thickness = 3
Stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border

task.spawn(function()
	while running do
		for i = 0, 1, 0.01 do
			if not running then break end
			Stroke.Color = Color3.fromHSV(i, 0.8, 1)
			task.wait(0.05)
		end
	end
end)

local TopBar = Instance.new("Frame", Main)
TopBar.Size = UDim2.new(1, 0, 0, 45)
TopBar.BackgroundTransparency = 1
TopBar.ZIndex = 5

local Title = Instance.new("TextLabel", TopBar)
Title.Size = UDim2.new(1, 0, 1, 0)
Title.Text = brandName
Title.TextColor3 = Color3.new(1, 1, 1)
Title.TextSize = 18
Title.Font = Enum.Font.LuckiestGuy
Title.BackgroundTransparency = 1
Title.ZIndex = 5

-- [[ DİL BUTONU - MENÜYLE UYUMLU ]]
local LangBtn = Instance.new("TextButton", TopBar)
LangBtn.Size = UDim2.new(0, 32, 0, 25)
LangBtn.Position = UDim2.new(1, -75, 0, 10)
LangBtn.Text = "TR"
LangBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
LangBtn.TextColor3 = Color3.new(1,1,1)
LangBtn.TextSize = 12
LangBtn.Font = Enum.Font.GothamBold
LangBtn.ZIndex = 6
local LCorner = Instance.new("UICorner", LangBtn)
LCorner.CornerRadius = UDim.new(0, 5)
local LStroke = Instance.new("UIStroke", LangBtn)
LStroke.Color = Color3.fromRGB(100, 100, 100)
LStroke.Thickness = 1

local MiniBtn = Instance.new("TextButton", TopBar)
MiniBtn.Size = UDim2.new(0, 25, 0, 25)
MiniBtn.Position = UDim2.new(0, 10, 0, 10)
MiniBtn.Text = "-"
MiniBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
MiniBtn.TextColor3 = Color3.new(1,1,1)
MiniBtn.ZIndex = 6
Instance.new("UICorner", MiniBtn).CornerRadius = UDim.new(1, 0)

local CloseBtn = Instance.new("TextButton", TopBar)
CloseBtn.Size = UDim2.new(0, 25, 0, 25)
CloseBtn.Position = UDim2.new(1, -35, 0, 10)
CloseBtn.Text = "X"
CloseBtn.BackgroundColor3 = Color3.fromRGB(120, 0, 0)
CloseBtn.TextColor3 = Color3.new(1,1,1)
CloseBtn.ZIndex = 6
Instance.new("UICorner", CloseBtn).CornerRadius = UDim.new(1, 0)

local Content = Instance.new("Frame", Main)
Content.Name = "Content"
Content.Position = UDim2.new(0, 0, 0, 45)
Content.Size = UDim2.new(1, 0, 1, -45)
Content.BackgroundTransparency = 1
Content.ZIndex = 2

local CPSInput = Instance.new("TextBox", Content)
CPSInput.Position = UDim2.new(0.1, 0, 0.05, 0)
CPSInput.Size = UDim2.new(0.8, 0, 0, 40)
CPSInput.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
CPSInput.Text = "10"
CPSInput.TextColor3 = Color3.new(1,1,1)
CPSInput.Font = Enum.Font.Code
CPSInput.ZIndex = 3
Instance.new("UICorner", CPSInput)

local Tooltip = Instance.new("TextLabel", Content)
Tooltip.Size = UDim2.new(0.8, 0, 0, 20)
Tooltip.Position = UDim2.new(0.1, 0, 0.16, 0)
Tooltip.TextColor3 = Color3.fromRGB(255, 50, 50)
Tooltip.TextSize = 12
Tooltip.Font = Enum.Font.GothamBold
Tooltip.BackgroundTransparency = 1
Tooltip.Visible = false
Tooltip.ZIndex = 3

local StartBtn = Instance.new("TextButton", Content)
StartBtn.Position = UDim2.new(0.1, 0, 0.28, 0)
StartBtn.Size = UDim2.new(0.8, 0, 0, 50)
StartBtn.BackgroundColor3 = Color3.fromRGB(80, 0, 180)
StartBtn.TextColor3 = Color3.new(1,1,1)
StartBtn.Font = Enum.Font.GothamBold
StartBtn.ZIndex = 3
Instance.new("UICorner", StartBtn)

local BindBtn = Instance.new("TextButton", Content)
BindBtn.Position = UDim2.new(0.1, 0, 0.48, 0)
BindBtn.Size = UDim2.new(0.8, 0, 0, 40)
BindBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
BindBtn.TextColor3 = Color3.new(1,1,1)
BindBtn.ZIndex = 3
Instance.new("UICorner", BindBtn)

local UnstopBtn = Instance.new("TextButton", Content)
UnstopBtn.Position = UDim2.new(0.1, 0, 0.68, 0)
UnstopBtn.Size = UDim2.new(0.8, 0, 0, 40)
UnstopBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 100)
UnstopBtn.TextColor3 = Color3.new(1,1,1)
UnstopBtn.BackgroundTransparency = 0.5
UnstopBtn.ZIndex = 3
Instance.new("UICorner", UnstopBtn)

local ClickDisplay = Instance.new("TextLabel", Content)
ClickDisplay.Size = UDim2.new(1, 0, 0, 30)
ClickDisplay.Position = UDim2.new(0, 0, 0.85, 0)
ClickDisplay.TextColor3 = Color3.new(1,1,1)
ClickDisplay.Font = Enum.Font.GothamBold
ClickDisplay.BackgroundTransparency = 1
ClickDisplay.ZIndex = 3

local function updateLanguage()
    local code = langs[currentLangIdx]
    local data = Localization[code]
    LangBtn.Text = code
    StartBtn.Text = clicking and data.stop or data.start
    BindBtn.Text = data.bind .. keybind.Name
    UnstopBtn.Text = unstoppable and data.unstop_on or data.unstop
    ClickDisplay.Text = data.clicks .. totalClicks
    Tooltip.Text = data.warn
end

LangBtn.MouseButton1Click:Connect(function()
    currentLangIdx = currentLangIdx + 1
    if currentLangIdx > #langs then currentLangIdx = 1 end
    updateLanguage()
end)

local WarnFrame = Instance.new("Frame", ScreenGui)
WarnFrame.Size = UDim2.new(0, 220, 0, 120)
WarnFrame.Position = UDim2.new(0.5, -110, 0.5, -60)
WarnFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 10)
WarnFrame.Visible = false
WarnFrame.ZIndex = 20
Instance.new("UICorner", WarnFrame)

local WarnLabel = Instance.new("TextLabel", WarnFrame)
WarnLabel.Size = UDim2.new(1, 0, 0.6, 0)
WarnLabel.Position = UDim2.new(0, 0, 0, 5)
WarnLabel.BackgroundTransparency = 1
WarnLabel.TextColor3 = Color3.new(1, 1, 1)
WarnLabel.TextSize = 14
WarnLabel.Font = Enum.Font.GothamBold
WarnLabel.ZIndex = 21

local Yes = Instance.new("TextButton", WarnFrame)
Yes.Size = UDim2.new(0.4, 0, 0.25, 0)
Yes.Position = UDim2.new(0.05, 0, 0.65, 0)
Yes.BackgroundColor3 = Color3.fromRGB(0, 120, 0)
Yes.TextColor3 = Color3.new(1,1,1)
Yes.Font = Enum.Font.GothamBold
Yes.ZIndex = 21
Instance.new("UICorner", Yes)

local No = Instance.new("TextButton", WarnFrame)
No.Size = UDim2.new(0.4, 0, 0.25, 0)
No.Position = UDim2.new(0.55, 0, 0.65, 0)
No.BackgroundColor3 = Color3.fromRGB(120, 0, 0)
No.TextColor3 = Color3.new(1,1,1)
No.Font = Enum.Font.GothamBold
No.ZIndex = 21
Instance.new("UICorner", No)

local function toggleClicker()
	clicking = not clicking
    updateLanguage()
	StartBtn.BackgroundColor3 = clicking and Color3.fromRGB(200, 0, 0) or Color3.fromRGB(80, 0, 180)
end

local function updateCPS()
	local val = tonumber(CPSInput.Text)
	if val then
		if not unstoppable then
			val = math.clamp(val, 1, maxCPS)
			CPSInput.Text = tostring(val)
		end
		cps = val
		Tooltip.Visible = (val >= 500)
	end
end

CPSInput.FocusLost:Connect(updateCPS)
StartBtn.MouseButton1Click:Connect(toggleClicker)

BindBtn.MouseButton1Click:Connect(function()
	settingBind = true
	BindBtn.Text = "..."
end)

UIS.InputBegan:Connect(function(input, processed)
	if processed then return end
	if settingBind and input.UserInputType == Enum.UserInputType.Keyboard then
		keybind = input.KeyCode
        updateLanguage()
		settingBind = false
	elseif input.KeyCode == keybind then
		toggleClicker()
	end
end)

MiniBtn.MouseButton1Click:Connect(function()
	minimized = not minimized
	local targetSize = minimized and UDim2.new(0, 250, 0, 45) or UDim2.new(0, 250, 0, 380)
	TweenService:Create(Main, TweenInfo.new(0.3, Enum.EasingStyle.Sine), {Size = targetSize}):Play()
	Content.Visible = not minimized
	MiniBtn.Text = minimized and "+" or "-"
end)

CloseBtn.MouseButton1Click:Connect(function()
	running = false
	ScreenGui:Destroy()
end)

UnstopBtn.MouseButton1Click:Connect(function() 
    local data = Localization[langs[currentLangIdx]]
    WarnLabel.Text = data.ask
    Yes.Text = data.yes
    No.Text = data.no
    WarnFrame.Visible = true 
end)

No.MouseButton1Click:Connect(function() WarnFrame.Visible = false end)
Yes.MouseButton1Click:Connect(function()
	unstoppable = true
	UnstopBtn.BackgroundTransparency = 0
    updateLanguage()
	WarnFrame.Visible = false
	updateCPS()
end)

local accumulator = 0
RunService.Heartbeat:Connect(function(dt)
	if not running then return end
	if clicking then
		local interval = 1 / cps
		accumulator = accumulator + dt
		while accumulator >= interval do
			if mouse1click then mouse1click() end
			totalClicks = totalClicks + 1
			ClickDisplay.Text = Localization[langs[currentLangIdx]].clicks .. totalClicks
			accumulator = accumulator - interval
			if not clicking or interval <= 0 then break end
		end
	else
		accumulator = 0
	end
end)

updateLanguage()

Features & Information

📜 Script Information Name: Echo Hax Ultra (Multi-Language) Supported Languages: 🇹🇷 Turkish, 🇺🇸 English, 🇩🇪 German, 🇪🇸 Spanish Keybind: F (Customizable) 🚀 Key Features Multi-Language UI: Switch between 4 different languages in real-time with the built-in "LNG" button. Ultra Fast Auto-Clicker: Supports up to 3000 CPS (Clicks Per Second). Unstoppable Mode: Bypass limits for maximum clicking speed (Warning: May cause lag). RGB Animated Border: Smooth rainbow stroke effect for a premium look. Minimized Mode: Compact UI design to save screen space while active. Universal Support: Works on almost all Roblox experiences and executors (Xeno, Wave, Solara, etc.).

Community Comments (1)

sanechka747sanechka747Mar 23, 2026

its so lagged

More Scripts for Universal Scripts