SPIRIT
Key Required

SPIRIT

One Fighting Spiritlalanonelalanone 7.5K views 7.7K executesUpdated Jan 24, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•225 lines (6022 chars)
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local UserInputService = game:GetService("UserInputService")

local LocalPlayer = Players.LocalPlayer

local PlayerGui = game.CoreGui

local PlayerState = {}

local function GetState(player)
	if not PlayerState[player.UserId] then
		PlayerState[player.UserId] = {
			LoopDamage = false,
			Godmode = false
		}
	end
	return PlayerState[player.UserId]
end

local function Fire(player, d)
	if not player.Character then return end
	ReplicatedStorage:WaitForChild("ALLREMBINDS")
		:WaitForChild("Pls_Dont_Hack_Plssssssssss")
		:FireServer(
			"EMMFOSS__!ZCNSJNXCSDWQSANBX",
			"Main_Damger_OC_R",
			{player.Character, {D = d, F = Instance.new("Model")}}
		)
end

local ScreenGui = Instance.new("ScreenGui", PlayerGui)
ScreenGui.ResetOnSpawn = false

local ToggleUI = Instance.new("TextButton", ScreenGui)
ToggleUI.Size = UDim2.fromScale(0.18, 0.06)
ToggleUI.Position = UDim2.fromScale(0.03, 0.05)
ToggleUI.Text = "Toggle UI"
ToggleUI.Transparency = 0.6

local Main = Instance.new("Frame", ScreenGui)
Main.Size = UDim2.fromScale(0.55, 0.65)
Main.Position = UDim2.fromScale(0.225, 0.18)
Main.BackgroundColor3 = Color3.fromRGB(30,30,30)

local Title = Instance.new("TextLabel", Main)
Title.Size = UDim2.fromScale(1, 0.1)
Title.Text = "SPIRIT"
Title.TextScaled = true
Title.TextColor3 = Color3.fromRGB(0,140,255)
Title.BackgroundTransparency = 1

ToggleUI.MouseButton1Click:Connect(function()
	Main.Visible = not Main.Visible
end)

local dragging, dragStart, startPos

Main.InputBegan:Connect(function(i)
	if i.UserInputType == Enum.UserInputType.MouseButton1 then
		dragging = true
		dragStart = i.Position
		startPos = Main.Position
	end
end)

Main.InputEnded:Connect(function(i)
	if i.UserInputType == Enum.UserInputType.MouseButton1 then
		dragging = false
	end
end)

UserInputService.InputChanged:Connect(function(i)
	if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then
		local delta = i.Position - dragStart
		Main.Position = UDim2.new(
			startPos.X.Scale,
			startPos.X.Offset + delta.X,
			startPos.Y.Scale,
			startPos.Y.Offset + delta.Y
		)
	end
end)

local Content = Instance.new("Frame", Main)
Content.Size = UDim2.fromScale(1, 0.9)
Content.Position = UDim2.fromScale(0, 0.1)
Content.BackgroundTransparency = 1

local DBox = Instance.new("TextBox", Content)
DBox.Size = UDim2.fromScale(0.9, 0.08)
DBox.Position = UDim2.fromScale(0.05, 0.02)
DBox.Text = "250000"

local AllBtn = Instance.new("TextButton", Content)
AllBtn.Size = UDim2.fromScale(0.9, 0.08)
AllBtn.Position = UDim2.fromScale(0.05, 0.12)
AllBtn.Text = "ALL"
AllBtn.BackgroundColor3 = Color3.fromRGB(170,40,40)

local LocalBtn = Instance.new("TextButton", Content)
LocalBtn.Size = UDim2.fromScale(0.9, 0.08)
LocalBtn.Position = UDim2.fromScale(0.05, 0.22)
LocalBtn.Text = "LOCAL"

AllBtn.MouseButton1Click:Connect(function()
	for _, p in pairs(Players:GetPlayers()) do
		if p ~= LocalPlayer then
			Fire(p, tonumber(DBox.Text) or 0)
		end
	end
end)

LocalBtn.MouseButton1Click:Connect(function()
	Fire(LocalPlayer, tonumber(DBox.Text) or 0)
end)

local PlayerList = Instance.new("ScrollingFrame", Content)
PlayerList.Size = UDim2.fromScale(0.9, 0.6)
PlayerList.Position = UDim2.fromScale(0.05, 0.34)
PlayerList.CanvasSize = UDim2.new(0,0,0,0)
PlayerList.ScrollBarImageTransparency = 0

local Layout = Instance.new("UIListLayout", PlayerList)
Layout.Padding = UDim.new(0, 6)

local function CreateRow(player)
	local state = GetState(player)

	local Row = Instance.new("Frame", PlayerList)
	Row.Size = UDim2.new(1,0,0,42)
	Row.BackgroundColor3 = player == LocalPlayer
		and Color3.fromRGB(35,55,80)
		or Color3.fromRGB(45,45,45)

	local Name = Instance.new("TextLabel", Row)
	Name.Size = UDim2.fromScale(0.35, 1)
	Name.Text = player == LocalPlayer
		and (player.DisplayName .. " (You)")
		or player.DisplayName
	Name.TextSize = 14
	Name.TextXAlignment = Enum.TextXAlignment.Left
	Name.BackgroundTransparency = 1
	Name.TextColor3 = Color3.new(1,1,1)

	local Damage = Instance.new("TextButton", Row)
	Damage.Size = UDim2.fromScale(0.2, 0.8)
	Damage.Position = UDim2.fromScale(0.38, 0.1)
	Damage.Text = "Damage"

	local LoopDamage = Instance.new("TextButton", Row)
	LoopDamage.Size = UDim2.fromScale(0.2, 0.8)
	LoopDamage.Position = UDim2.fromScale(0.6, 0.1)
	LoopDamage.Text = "LoopDamage"
	LoopDamage.BackgroundColor3 = Color3.fromRGB(60,60,60)

	local God = Instance.new("TextButton", Row)
	God.Size = UDim2.fromScale(0.18, 0.8)
	God.Position = UDim2.fromScale(0.82, 0.1)
	God.Text = "God"
	God.BackgroundColor3 = Color3.fromRGB(60,60,60)

	Damage.MouseButton1Click:Connect(function()
		Fire(player, tonumber(DBox.Text) or 0)
	end)

	LoopDamage.MouseButton1Click:Connect(function()
		state.LoopDamage = not state.LoopDamage
		if state.LoopDamage then
			LoopDamage.Text = "LoopDamage On"
			LoopDamage.BackgroundColor3 = Color3.fromRGB(200,120,0)
		else
			LoopDamage.Text = "LoopDamage"
			LoopDamage.BackgroundColor3 = Color3.fromRGB(60,60,60)
		end
	end)

	God.MouseButton1Click:Connect(function()
		state.Godmode = not state.Godmode
		God.Text = state.Godmode and "God On" or "God"
		God.BackgroundColor3 = state.Godmode
			and Color3.fromRGB(0,120,255)
			or Color3.fromRGB(60,60,60)
	end)
end

local function Refresh()
	for _, v in pairs(PlayerList:GetChildren()) do
		if v:IsA("Frame") then
			v:Destroy()
		end
	end

	for _, p in pairs(Players:GetPlayers()) do
		CreateRow(p)
	end

	task.wait()
	PlayerList.CanvasSize = UDim2.new(0,0,0,Layout.AbsoluteContentSize.Y + 10)
end

Players.PlayerAdded:Connect(Refresh)
Players.PlayerRemoving:Connect(function(p)
	PlayerState[p.UserId] = nil
	Refresh()
end)

Refresh()

task.spawn(function()
	while true do
		for _, p in pairs(Players:GetPlayers()) do
			local state = PlayerState[p.UserId]
			if state then
				if state.LoopDamage then
					Fire(p, tonumber(DBox.Text) or 0)
				end
				if state.Godmode then
					Fire(p, -math.huge)
				end
			end
		end
		task.wait()
	end
end)

Features & Information

Damage player Loopdamage Godmode (my fav) Damage others (Ignore the local button) Support games: One spirit fighting One spirit fighting 2 Steal a magic
#isnone#Chatgpt#Free

Community Comments (3)

angel39exeangel39exeJan 24, 2026

W script bro tysm

sarfjnsarfjnMar 8, 2026

w

TGK1AHMEDTGK1AHMEDMay 31, 2026

Guys please check out my steal a magic script

More Scripts for One Fighting Spirit