
Key Required
auto walker/boss farm/auto sayian activation
Lua Script•298 lines (11165 chars)
-- Waypoint Walker Script
local UserInputService = game:GetService("UserInputService")
local Players = game:GetService("Players")
local VirtualUser = game:GetService("VirtualUser")
local InventoryService = game:GetService("ReplicatedStorage").Packages._Index["leifstout_networker@0.3.1"].networker._remotes.InventoryService.RemoteEvent
local NotificationService = game:GetService("ReplicatedStorage").Packages._Index["leifstout_networker@0.3.1"].networker._remotes.NotificationService.RemoteEvent
local GlobalBossService = game:GetService("ReplicatedStorage").Packages._Index["leifstout_networker@0.3.1"].networker._remotes.GlobalBossService.RemoteEvent
local TransformationService = game:GetService("ReplicatedStorage").Packages._Index["leifstout_networker@0.3.1"].networker._remotes.TransformationService.RemoteFunction
-- Configuration
local TOGGLE_KEY = Enum.KeyCode.V -- Press V to start walking
local SET_WAYPOINT_KEY = Enum.KeyCode.P -- Press P to set waypoint
local CLEAR_KEY = Enum.KeyCode.C -- Press C to clear all waypoints
local SHOW_POS_KEY = Enum.KeyCode.F -- Press F to show current position
local WALK_SPEED = 16.5 -- Walking speed (default is 16.5)
local DAMAGE_IDLE_TIME = 3 -- Seconds without damage before teleporting back
-- Boss state tracking
local bossState = {
FriezaActive = false,
lastFriezaDamageTime = 0,
NineTailedFoxActive = false,
lastNineTailedFoxDamageTime = 0,
wasWalkerActive = false
}
-- Boss configurations with hard coded destinations
local BOSSES = {
Frieza = {
eventName = "GoldenFrieza",
destination = Vector3.new(-511.7, 148.63, 4293.9)
},
NineTailedFox = {
eventName = "NineTailedFox",
destination = Vector3.new(246.4, -436.13, 721.56)
}
}
-- Meditation location (for when potion runs out)
local MEDITATION_LOCATION = Vector3.new(356.03, -13.3, 305.74)
-- Waypoints (hardcoded)
local WAYPOINTS = {
Vector3.new(284.22, -436.13, 671.65),
Vector3.new(194.04, -436.13, 675.83),
Vector3.new(196.38, -436.13, 578.61),
Vector3.new(280.34, -436.13, 580.05)
}
local preTPPosition = nil
-- Storage
local isActive = false
local currentWaypointIndex = 1
-- Print instructions
print("[V] start/stop | [F] show position | [C] info")
print("[Boss TP] Both: notification triggers TP, damage detection tracks if alive")
print("[Potion] When AuraSize2xPotion runs out → Auto TP to meditation")
print("[Waypoints]")
for i, waypoint in ipairs(WAYPOINTS) do
print("Waypoint " .. i .. ": X: " .. math.floor(waypoint.X * 100) / 100 .. " | Y: " .. math.floor(waypoint.Y * 100) / 100 .. " | Z: " .. math.floor(waypoint.Z * 100) / 100)
end
-- Anti-AFK: Prevent disconnect while farming
Players.LocalPlayer.Idled:connect(function()
VirtualUser:CaptureController()
VirtualUser:ClickButton2(Vector2.new())
end)
-- Function to toggle potions
local function togglePotions()
InventoryService:FireServer("TogglePotionPaused", "AuraSize2xPotion")
InventoryService:FireServer("TogglePotionPaused", "WalkspeedPotion")
end
-- Get player
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local humanoid = character:WaitForChild("Humanoid")
-- Handle character respawn
player.CharacterAdded:Connect(function(newCharacter)
character = newCharacter
humanoidRootPart = character:WaitForChild("HumanoidRootPart")
humanoid = character:WaitForChild("Humanoid")
-- Stop walking and toggle potions off if active
if isActive then
isActive = false
togglePotions()
end
currentWaypointIndex = 1
end)
-- Transformation activation loop (runs every 40 seconds)
coroutine.wrap(function()
while true do
wait(40)
local success, result = pcall(function()
return TransformationService:InvokeServer("ActivateTransformation")
end)
if success then
print("[Transformation] Activated!")
else
print("[Transformation] Failed: " .. tostring(result))
end
end
end)()
-- Toggle on key press
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
-- Show current position
if input.KeyCode == SHOW_POS_KEY then
local pos = humanoidRootPart.Position
print("[Current Position]")
print("X: " .. math.floor(pos.X * 100) / 100)
print("Y: " .. math.floor(pos.Y * 100) / 100)
print("Z: " .. math.floor(pos.Z * 100) / 100)
end
-- Clear waypoints
if input.KeyCode == CLEAR_KEY then
-- Waypoints are hardcoded, cannot clear
print("[Info] Waypoints are hardcoded and cannot be cleared")
end
-- Toggle walking
if input.KeyCode == TOGGLE_KEY then
isActive = not isActive
togglePotions()
end
end)
-- Listen for potion run out notifications
NotificationService.OnClientEvent:Connect(function(eventName, notificationData)
if eventName == "ShowNotification" then
-- Check if potion ran out
local lines = notificationData.Lines or {}
local potionRanOut = false
for _, line in ipairs(lines) do
if type(line) == "string" and line:find("AuraSize2xPotion") then
potionRanOut = true
break
elseif type(line) == "table" and line.Text then
if line.Text:find("AuraSize2xPotion") or line.Text:find("Potion") and line.Text:find("ran out") then
potionRanOut = true
break
end
end
end
-- Handle potion ran out
if potionRanOut then
print("[Potion] AuraSize2xPotion ran out! Going to meditation...")
if isActive then
isActive = false
togglePotions()
end
humanoidRootPart.CFrame = CFrame.new(MEDITATION_LOCATION)
print("[Meditation] Teleported to meditation location!")
end
end
end)
-- Listen for boss damage events (only to track if boss is alive)
GlobalBossService.OnClientEvent:Connect(function(eventName, bossName, damage)
if eventName == "DamageDealt" then
-- Track Frieza damage
if bossName == BOSSES.Frieza.eventName and bossState.FriezaActive then
bossState.lastFriezaDamageTime = tick()
end
-- Track Nine-Tailed Fox damage
if bossName == BOSSES.NineTailedFox.eventName and bossState.NineTailedFoxActive then
bossState.lastNineTailedFoxDamageTime = tick()
end
end
end)
-- Listen for boss spawn notifications
NotificationService.OnClientEvent:Connect(function(eventName, notificationData)
if eventName == "ShowNotification" then
-- Check if boss spawned
local lines = notificationData.Lines or {}
local isFriezaSpawn = false
local isNineTailedFoxSpawn = false
for _, line in ipairs(lines) do
if type(line) == "table" and line.Text then
if line.Text:find("Golden Frieza") then
isFriezaSpawn = true
elseif line.Text:find("Nine-Tailed Fox") or line.Text:find("spirit awakening") then
isNineTailedFoxSpawn = true
end
end
end
-- Handle Frieza spawn
if isFriezaSpawn and BOSSES.Frieza.destination then
print("[Boss] Frieza spawned! Pausing walker...")
bossState.wasWalkerActive = isActive
if isActive then
isActive = false
togglePotions()
end
preTPPosition = humanoidRootPart.Position
humanoidRootPart.CFrame = CFrame.new(BOSSES.Frieza.destination)
bossState.FriezaActive = true
bossState.lastFriezaDamageTime = tick()
print("[Boss] Teleported! Waiting for damage events...")
end
-- Handle Nine-Tailed Fox spawn
if isNineTailedFoxSpawn and BOSSES.NineTailedFox.destination then
print("[Boss] Nine-Tailed Fox spawned! Pausing walker...")
bossState.wasWalkerActive = isActive
if isActive then
isActive = false
togglePotions()
end
preTPPosition = humanoidRootPart.Position
humanoidRootPart.CFrame = CFrame.new(BOSSES.NineTailedFox.destination)
bossState.NineTailedFoxActive = true
bossState.lastNineTailedFoxDamageTime = tick()
print("[Boss] Teleported! Waiting for damage events...")
end
end
end)
-- Main walking loop
while true do
wait(0.1)
-- Check if Frieza damage has stopped
if bossState.FriezaActive then
local timeSinceLastDamage = tick() - bossState.lastFriezaDamageTime
if timeSinceLastDamage > DAMAGE_IDLE_TIME then
bossState.FriezaActive = false
if #WAYPOINTS > 0 then
humanoidRootPart.CFrame = CFrame.new(WAYPOINTS[1])
print("[Boss] Frieza defeated! Teleported to waypoint 1!")
else
humanoidRootPart.CFrame = CFrame.new(preTPPosition)
print("[Boss] Frieza defeated! Teleported back!")
end
-- Resume walker if it was active before boss spawn
if bossState.wasWalkerActive then
isActive = true
togglePotions()
print("[Walker] Resumed!")
end
end
end
-- Check if Nine-Tailed Fox damage has stopped
if bossState.NineTailedFoxActive then
local timeSinceLastDamage = tick() - bossState.lastNineTailedFoxDamageTime
if timeSinceLastDamage > DAMAGE_IDLE_TIME then
bossState.NineTailedFoxActive = false
if #WAYPOINTS > 0 then
humanoidRootPart.CFrame = CFrame.new(WAYPOINTS[1])
print("[Boss] Nine-Tailed Fox defeated! Teleported to waypoint 1!")
else
humanoidRootPart.CFrame = CFrame.new(preTPPosition)
print("[Boss] Nine-Tailed Fox defeated! Teleported back!")
end
-- Resume walker if it was active before boss spawn
if bossState.wasWalkerActive then
isActive = true
togglePotions()
print("[Walker] Resumed!")
end
end
end
if isActive then
local currentWaypoint = WAYPOINTS[currentWaypointIndex]
local distance = (humanoidRootPart.Position - currentWaypoint).Magnitude
-- Walk to waypoint
humanoid:MoveTo(currentWaypoint)
-- Check if reached waypoint
if distance < 5 then
-- Move to next waypoint
currentWaypointIndex = currentWaypointIndex + 1
if currentWaypointIndex > #WAYPOINTS then
currentWaypointIndex = 1
end
wait(0.005) -- Minimal delay before walking to next waypoint
end
end
endFeatures & Information
Auto walks and enables the 2x Aura size potion and also tps to kuruma and frieza and every 40 seconds it tries to activate your "sayian form" (just to farm exp) (made by claude and will prob not update anymore)
keybinds (as there is no gui)
start walker: V
set new "waypoints" (places the walker will walk to): P
clear "waypoints": C
Show position: F
(havent tested clearing or setting new waypoints as i hardcoded the positions i always use)
Community Comments (0)
No comments yet for this script.
