open source
Key Required

open source

Animal Simulatorzetniksszetnikss 6.8K views 95 executesUpdated Jun 21, 2025
0.0/ 5(2 votes)
020% Positive
Lua Script•216 lines (7888 chars)
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local attackRemote = ReplicatedStorage:WaitForChild("jdskhfsIIIllliiIIIdchgdIiIIIlIlIli")
local dummiesFolder = workspace:WaitForChild("MAP"):WaitForChild("dummies")

local running = true
local attackRunning = true
local bossAttackRunning = true
local killAuraEnabled = true
local autoFarmKillsEnabled = true

local coinDelay = 1
local attackDelay = 0.1
local bossAttackDelay = 1
local killAuraDelay = 0.2

local currentTarget = nil
local hasTeleported = false
local normalWalkSpeed = 16

local bosses = {
    "ROCKY", "Griffin", "BOOSBEAR", "BOSSDEER",
    "CENTAUR", "CRABBOSS", "DragonGiraffe", "LavaGorilla"
}

local function getCharacterAndRoot()
    local character = player.Character
    if character then
        local rootPart = character:FindFirstChild("HumanoidRootPart")
        return character, rootPart
    end
    return nil, nil
end

local function getNearestEnemy()
    local closest, shortestDist = nil, math.huge
    for _, otherPlayer in pairs(Players:GetPlayers()) do
        if otherPlayer ~= player and otherPlayer.Character then
            local char = otherPlayer.Character
            local hrp = char:FindFirstChild("HumanoidRootPart")
            local hum = char:FindFirstChild("Humanoid")
            if hrp and hum and hum.Health > 0 then
                local dist = (player.Character.HumanoidRootPart.Position - hrp.Position).Magnitude
                if dist < 10 and dist < shortestDist then
                    shortestDist = dist
                    closest = otherPlayer
                end
            end
        end
    end
    return closest
end

local function collectCoins()
    while running do
        local coinContainer = workspace:FindFirstChild("CoinContainer")
        local coinEvent = ReplicatedStorage:FindFirstChild("Events") and ReplicatedStorage.Events:FindFirstChild("CoinEvent")
        if coinContainer and coinEvent then
            for _, template in pairs(coinContainer:GetChildren()) do
                local coin = template:FindFirstChild("Coin")
                if coin and (coin:IsA("Part") or coin:IsA("MeshPart")) then
                    coinEvent:FireServer()
                    task.wait(coinDelay)
                end
            end
        end
        task.wait(1)
    end
end

local function findFirstAliveDummy()
    for _, dummy in ipairs(dummiesFolder:GetChildren()) do
        if dummy.Name == "Dummy" and dummy:FindFirstChild("Humanoid") and dummy.Humanoid.Health > 0 then
            return dummy
        end
    end
    return nil
end

local function attackDummies()
    hasTeleported = false
    currentTarget = nil
    while attackRunning do
        local character, rootPart = getCharacterAndRoot()
        if not character or not rootPart then
            player.CharacterAdded:Wait()
            character, rootPart = getCharacterAndRoot()
        end
        if currentTarget and currentTarget.Parent and currentTarget:FindFirstChild("Humanoid") and currentTarget.Humanoid.Health > 0 then
            attackRemote:FireServer(currentTarget.Humanoid, 6)
            task.wait(attackDelay)
        else
            local dummy = findFirstAliveDummy()
            if dummy then
                currentTarget = dummy
                if not hasTeleported and rootPart then
                    local dummyRoot = dummy:FindFirstChild("HumanoidRootPart") or dummy.PrimaryPart
                    if dummyRoot then
                        rootPart.CFrame = dummyRoot.CFrame * CFrame.new(0, 0, 3)
                        hasTeleported = true
                        task.wait(attackDelay)
                    end
                end
            else
                task.wait(2)
            end
        end
    end
end

local function attackAllBosses()
    while bossAttackRunning do
        for _, bossName in ipairs(bosses) do
            local boss = workspace:FindFirstChild("NPC") and workspace.NPC:FindFirstChild(bossName)
            if boss and boss:FindFirstChild("Humanoid") and boss.Humanoid.Health > 0 then
                coroutine.wrap(function()
                    while bossAttackRunning and boss and boss:FindFirstChild("Humanoid") and boss.Humanoid.Health > 0 do
                        attackRemote:FireServer(boss.Humanoid, 5)
                        task.wait(bossAttackDelay)
                    end
                end)()
            end
        end
        task.wait(1)
    end
end

local function killAura()
    while killAuraEnabled do
        local character, root = getCharacterAndRoot()
        if not character or not root then
            player.CharacterAdded:Wait()
            character, root = getCharacterAndRoot()
        end
        local enemy = getNearestEnemy()
        if enemy and enemy.Character then
            local humanoid = enemy.Character:FindFirstChild("Humanoid")
            if humanoid and humanoid.Health > 0 then
                attackRemote:FireServer(humanoid, 1)
            end
        end
        task.wait(killAuraDelay)
    end
end

local function getAlivePlayers()
    local alivePlayers = {}
    for _, p in pairs(Players:GetPlayers()) do
        if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") and p.Character:FindFirstChild("Humanoid") and p.Character.Humanoid.Health > 0 then
            table.insert(alivePlayers, p)
        end
    end
    return alivePlayers
end

local function orbitAroundPlayer(targetHRP, myRoot)
    local radius = 5
    local angle = 0
    local center = targetHRP.Position
    local startTime = os.clock()
    while (os.clock() - startTime) < 1 do
        angle = angle + 0.1
        if angle >= 2 * math.pi then
            angle = 0
        end
        local offset = Vector3.new(math.cos(angle) * radius, 0, math.sin(angle) * radius)
        myRoot.CFrame = CFrame.new(center + offset)
        task.wait()
    end
end

local function autoFarmKills()
    player.CharacterAdded:Connect(function(char)
        local humanoid = char:WaitForChild("Humanoid")
        humanoid.Died:Wait()
        killAuraEnabled = false
    end)
    while autoFarmKillsEnabled do
        local myChar, myRoot = getCharacterAndRoot()
        if not myChar or not myRoot or myChar:FindFirstChild("Humanoid") == nil or myChar.Humanoid.Health <= 0 then
            player.CharacterAdded:Wait()
            task.wait(1)
        else
            local alivePlayers = getAlivePlayers()
            if #alivePlayers == 0 then
                task.wait(2)
            else
                for _, targetPlayer in pairs(alivePlayers) do
                    if not autoFarmKillsEnabled then break end
                    local targetChar = targetPlayer.Character
                    local targetHRP = targetChar and targetChar:FindFirstChild("HumanoidRootPart")
                    local targetHum = targetChar and targetChar:FindFirstChild("Humanoid")
                    if targetHRP and targetHum and targetHum.Health > 0 then
                        local tweenInfo = TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out, 0, false, 0)
                        local tween = TweenService:Create(myRoot, tweenInfo, {CFrame = targetHRP.CFrame * CFrame.new(0, 0, 3)})
                        tween:Play()
                        tween.Completed:Wait()
                        orbitAroundPlayer(targetHRP, myRoot)
                        killAuraEnabled = true
                        coroutine.wrap(killAura)()
                    end
                end
            end
        end
        task.wait(0.5)
    end
    killAuraEnabled = false
end

coroutine.wrap(collectCoins)()
coroutine.wrap(attackDummies)()
coroutine.wrap(attackAllBosses)()
coroutine.wrap(killAura)()
coroutine.wrap(autoFarmKills)()

Features & Information

HAHA KAHAN HUB COOKED EZZ

Community Comments (0)

No comments yet for this script.

More Scripts for Animal Simulator