- 2026-10-13 — Added Script #6: Updated for Auto Fishing, Instant Reel & Auto Shake Update.
- 2026-10-09 — Added Script #5: Auto Farm & More.
- 2026-10-09 — Added Script #4: Auto Farm & More.
- 2026-10-09 — Added Script #3: ShieldTeam Hub.
Key Features:
- Auto Fish – Automatically catches fish without your help
- Auto Reel – Reels in line right after fish bites
- Auto Cast – Automatically throws your line in water
- Instant Reel – Reels instantly after fish is caught
- Instant Fisch Settings – Adjust settings for faster fishing results
- Webhook Support – Sends updates to your Discord or server
- Fix Maps – Repairs broken or glitched fishing areas
- Teleport to Treasure – Move straight to hidden treasure fast
- Auto Appraise – Instantly checks item value when found
- Buy Rods Anywhere – Get new rods without visiting shop
- Walk on Water – Lets you walk across lakes or rivers
- Teleports – Quickly move to any saved location
- Teleport on Event – Auto joins events with instant teleport
- Auto Bait – Applies bait to rod without doing anything manually
Fisch Script FREE:
NO KEY
loadstring(Game:HttpGet("https://pastebin.com/raw/zpcAiB5c"))()repeat
wait()
until game:IsLoaded()
local Players = game:GetService("Players")
local GuiService = game:GetService("GuiService")
local VIM = game:GetService("VirtualInputManager")
local TweenService = game:GetService("TweenService")
local VirtualUser = game:GetService("VirtualUser")
local WorldFolder = workspace:FindFirstChild("world")
local ActiveFolder = workspace:FindFirstChild('active')
local ZoneFolder = workspace:FindFirstChild('zones')
local LocalPlayerPawn = Players.LocalPlayer
local Hint = Instance.new("Hint", game.CoreGui)
Hint.Text = "Vixie | Waiting for game to load..."
LocalPlayerPawn.Idled:Connect(function()
VirtualUser:CaptureController()
VirtualUser:ClickButton2(Vector2.new())
end)
if WorldFolder == nil then
LocalPlayerPawn:Kick("[VIXIE] Sorry but couldn't find world folder, Did Fisch have an update?")
return
end
if ActiveFolder == nil then
LocalPlayerPawn:Kick("[VIXIE] Sorry but couldn't find active folder, Did Fisch have an update?")
return
end
if ZoneFolder == nil then
LocalPlayerPawn:Kick("[VIXIE] Sorry but couldn't find zone folder, Did Fisch have an update?")
return
end
local TpFolder = WorldFolder:WaitForChild("spawns"):WaitForChild("TpSpots")
local NpcFolder = WorldFolder:WaitForChild("npcs")
local tp_locations = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/TeleportAreas.lua"))()
local worldevents =loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/WorldEvents.lua"))()
local roddata = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/RodData.lua"))()
local baitdata = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/BaitData.lua"))()
local AppraisialData = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/AppraisalData.lua"))()
local FishData = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Fisch/FishData.lua"))()
local lib = loadstring(game:HttpGet("https://raw.githubusercontent.com/ProjektEta/Vixie.lua/refs/heads/main/Tools/Universal/UI.lua"))()
local Window = lib:Window({
Name = "Vixie.lua",
Version = "<font color=\"#FFC0CB\">version: </font> keyless | v1.1"
})
local pointers = Window.Flags
getgenv().VIXIE_GLOBALS = {
getBait = function()
local best, bvalue = nil, -math.huge
for _,v in pairs(game.ReplicatedStorage.playerstats[LocalPlayerPawn.Name].Stats.bait:GetChildren()) do
if v.Value == 0 then continue end
if pointers['autobait_type'] == "Quantity" then
local cvalue = v.Value
if pointers["autobait_filtertype"] == "Worst" then
if cvalue < bvalue or bvalue == -math.huge then
bvalue = cvalue
best = v.Name
end
else
if cvalue > bvalue then
bvalue = cvalue
best = v.Name
end
end
elseif pointers['autobait_type'] == "Universal Luck" then
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if tonumber(cvalue.Luck) < bvalue or bvalue == -math.huge then
bvalue = tonumber(cvalue.Luck)
best = v.Name
end
else
if tonumber(cvalue.Luck) > bvalue then
bvalue = tonumber(cvalue.Luck)
best = v.Name
end
end
elseif pointers['autobait_type'] == "Luck" then
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if tonumber(cvalue.Luck) < bvalue or bvalue == -math.huge then
bvalue = tonumber(cvalue.Luck)
best = v.Name
end
else
if tonumber(cvalue.Luck) > bvalue then
bvalue = tonumber(cvalue.Luck)
best = v.Name
end
end
elseif pointers['autobait_type'] == "Lure Speed" then
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if tonumber(cvalue.LureSpeed) < bvalue or bvalue == -math.huge then
bvalue = tonumber(cvalue.LureSpeed)
best = v.Name
end
else
if tonumber(cvalue.LureSpeed) > bvalue then
bvalue = tonumber(cvalue.LureSpeed)
best = v.Name
end
end
elseif pointers['autobait_type'] == "Resilience" then
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if tonumber(cvalue.Resilience) < bvalue or bvalue == -math.huge then
bvalue = tonumber(cvalue.Resilience)
best = v.Name
end
else
if tonumber(cvalue.Resilience) > bvalue then
bvalue = tonumber(cvalue.Resilience)
best = v.Name
end
end
elseif pointers['autobait_type'] == "Resilience" then
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if tonumber(cvalue.Resilience) < bvalue or bvalue == -math.huge then
bvalue = tonumber(cvalue.Resilience)
best = v.Name
end
else
if tonumber(cvalue.Resilience) > bvalue then
bvalue = tonumber(cvalue.Resilience)
best = v.Name
end
end
elseif pointers['autobait_type'] == "Rarity" then
local rarValue = {
["Common"] = 1,
["Uncommon"] = 1.5,
["Unusual"] = 2,
["Rare"] = 3,
["Legendary"] = 4,
["Mythical"] = 5,
}
local cvalue = baitdata[string.split(v.Name, "_")[2]]
if not cvalue then continue end
if pointers['autobait_filtertype'] == "Worst" then
if cvalue == nil then continue end
if rarValue[cvalue.Rarity] < bvalue or bvalue == -math.huge then
bvalue = rarValue[cvalue.Rarity]
best = v.Name
end
else
if rarValue[cvalue.Rarity] > bvalue then
bvalue = rarValue[cvalue.Rarity]
best = v.Name
end
end
end
end
if best then
if LocalPlayerPawn.PlayerGui:FindFirstChild("reel") then
repeat
task.wait()
until not LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
end
local __equippedItem = LocalPlayerPawn.Character:FindFirstChildWhichIsA("Tool")
LocalPlayerPawn.Character.Humanoid:UnequipTools()
task.wait(.1)
LocalPlayerPawn.Backpack['Equipment Bag'].Parent = LocalPlayerPawn.Character
task.wait(.1)
warn(best)
game.ReplicatedStorage.packages.Net['RE/Bait/Equip']:FireServer(string.split(best, "_")[2])
task.wait(.1)
LocalPlayerPawn.Character.Humanoid:UnequipTools()
task.wait(.5)
if __equippedItem then
__equippedItem.Parent = LocalPlayerPawn.Character
end
return
end
end
}
local AutomationPage = Window:Page({
Name = "Automation"
})
local ClientPage = Window:Page({
Name = "Client"
})
local WorldPage = Window:Page({
Name = "World"
})
local MiscPage = Window:Page({
Name = "Misc"
})
do -- AutomationPage
local AutomationSec = AutomationPage:Section({
Name = "Automation",
LeftTitle = "Options",
RightTitle = "Settings"
})
local AutoAppraise = AutomationPage:Section({
Name = "Auto Appraise",
LeftTitle = "Options",
RightTitle = "Settings"
})
AutoAppraise:Toggle({
State = false,
Flag = "autopraise_enabled",
Side = "Left",
Name = "Auto Appraise",
Callback = function(v)
if v == true and not pointers['autofish_enabled'] then
local heldFish = LocalPlayerPawn.Character:FindFirstChildWhichIsA("Tool")
local v = nil
if heldFish and heldFish:FindFirstChild("link") then
v = heldFish.link.Value
else
return
end
if not v then return end
local _oldCF = LocalPlayerPawn.Character.HumanoidRootPart.CFrame
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = CFrame.new(448.253815, 150.538727, 206.717392, 0.0551895462, -4.95227894e-08, -0.998475909, 3.75087801e-08, 1, -4.75251305e-08, 0.998475909, -3.4828723e-08, 0.0551895462)
local hasMutation = false
repeat
local WantedMutation = pointers['autoAppraiseType']
local curMutation = "NULL"
if heldFish and heldFish:FindFirstChild("link") then
v = heldFish.link.Value
else
break
end
if not v then break end
task.wait(.1)
workspace:WaitForChild("world"):WaitForChild("npcs"):WaitForChild("Appraiser"):WaitForChild("appraiser"):WaitForChild("appraise"):InvokeServer()
if v:FindFirstChild("Mutation") == nil then
curMutation = "NULL"
else
curMutation = v.Mutation.Value
end
if curMutation == WantedMutation then
hasMutation = true
end
task.wait(.3)
heldFish.Parent = LocalPlayerPawn.Character
if game.ReplicatedStorage.playerstats[LocalPlayerPawn.Name].Stats.coins.Value <= 250 then
break
end
until hasMutation or pointers['autopraise_enabled'] == false
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = _oldCF
end
end
})
AutoAppraise:List({
Options = AppraisialData,
Max = #AppraisialData,
State = "",
Flag = "autoAppraiseType",
Side = "Right",
Name = "Auto Appraise",
})
AutomationSec:Toggle({
State = false,
Flag = "autofish_enabled",
Side = "Left",
Name = "Autofish",
})
AutomationSec:Toggle({
State = false,
Flag = "autosell_enabled",
Side = "Left",
Name = "Auto Sell",
})
AutomationSec:Toggle({
State = false,
Flag = "autobait_enabled",
Side = "Left",
Name = "Auto Bait",
})
AutomationSec:List({
Options = {
"GuiService",
},
Max = 1,
State = "GuiService",
Flag = "autoshake_type",
Side = "Left",
Name = "Auto Shake Type",
})
AutomationSec:List({
Options = {
"Always Perfect",
"Legit",
"Instant",
"Legit Instant"
},
Max = 4,
State = "Instant",
Flag = "autoreel_type",
Side = "Left",
Name = "Auto Reel Type",
})
AutomationSec:List({
Options = {
"Quantity",
"Universal Luck",
"Lure Speed",
"Luck",
"Resilience",
"Rarity"
},
Max = 6,
State = "Quantity",
Flag = "autobait_type",
Side = "Right",
Name = "Auto bait Filter",
})
AutomationSec:List({
Options = {
"Worst",
"Best"
},
Max = 2,
State = "Best",
Flag = "autobait_filtertype",
Side = "Right",
Name = "Auto bait Filter Type",
})
AutomationSec:Slider({
Name = "Cast Delay",
Min = 1,
State = 2,
Max = 5,
Suffix = "s",
Side = "Right",
Decimals = .1,
Flag = "autocast_delay"
})
AutomationSec:Slider({
Name = "Shake Delay",
Min = 0,
State = 0,
Max = 500,
Suffix = "ms",
Side = "Right",
Decimals = 5,
Flag = "autoshake_delay"
})
AutomationSec:Slider({
Name = "Instant Reel Delay",
Min = 1,
State = 2,
Max = 5,
Suffix = "s",
Side = "Right",
Decimals = .1,
Flag = "autoreel_delay"
})
AutomationSec:Slider({
Name = "Instant Perfect Chance",
Min = 0,
State = 50,
Max = 100,
Suffix = "%",
Side = "Right",
Decimals = 1,
Flag = "autoreel_pchance"
})
end
do -- client section
local ClientSec = ClientPage:Section({
Name = "Client",
LeftTitle = "Local Character",
RightTitle = "Interactions"
})
local UISec = ClientPage:Section({
Name = "UI",
LeftTitle = "UI",
RightTitle = ""
})
local uiDeathConn = false
UISec:Toggle({
State = false,
Flag = "ui_death_toggle",
Side = "Left",
Name = "Anti-Death UI",
Callback = function(v)
if v == true then
uiDeathConn = LocalPlayerPawn.PlayerGui:WaitForChild("death")
uiDeathConn = uiDeathConn:GetPropertyChangedSignal("Enabled"):Connect(function(v)
if v == true then LocalPlayerPawn.PlayerGui.death.Enabled = false end
end)
elseif uiDeathConn then
uiDeathConn:Disconnect()
end
end
})
UISec:Button({
Side = "Left",
Name = "Spoof Player Name",
Callback = function()
LocalPlayerPawn.Character.HumanoidRootPart.user.level.Text = "BEST FREE SCRIPT"
LocalPlayerPawn.Character.HumanoidRootPart.user.user.Text = "VIXIE USER"
LocalPlayerPawn.Character.HumanoidRootPart.user.streak.Text = "VIXIE.LUA FREE"
LocalPlayerPawn.Character.HumanoidRootPart.user.title.Text = "BEST FREE SCRIPT"
LocalPlayerPawn.Character.HumanoidRootPart.user.fish:Destroy()
LocalPlayerPawn.Character.HumanoidRootPart.user.fire:Destroy()
end
})
local __freezeCFrame = CFrame.new(0,0,0)
local freezeCon = nil
ClientSec:Toggle({
State = false,
Flag = "freezechar_enabled",
Side = "Left",
Name = "Freeze Character",
Callback = function(v)
__freezeCFrame = LocalPlayerPawn.Character.HumanoidRootPart.CFrame
if v == true then
freezeCon = game:GetService("RunService").RenderStepped:Connect(function()
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = __freezeCFrame
end)
else
if freezeCon then
freezeCon:Disconnect()
end
end
end
})
local CharAntiDrownCon = nil
ClientSec:Toggle({
State = false,
Flag = "infoxygen_enabled",
Side = "Left",
Name = "No Drowning",
Callback = function(v)
local s,e = pcall(function()
if v == true then
LocalPlayerPawn.Character.Resources.oxygen.Enabled = false
LocalPlayerPawn.Character.Resources["oxygen(peaks)"].Enabled = false
CharAntiDrownCon = LocalPlayerPawn.Character.CharacterAdded:Connect(function()
LocalPlayerPawn.Character.Resources.oxygen.Enabled = false
LocalPlayerPawn.Character.Resources["oxygen(peaks)"].Enabled = false
end)
else
LocalPlayerPawn.Character.Resources.oxygen.Enabled = true
LocalPlayerPawn.Character.Resources["oxygen(peaks)"].Enabled = true
if CharAntiDrownCon then
CharAntiDrownCon:Disconnect()
end
end
end)
end
})
local AntiTempCharConn = nil
ClientSec:Toggle({
State = false,
Flag = "inftemp_enabled",
Side = "Left",
Name = "No Freezing",
Callback = function(v)
local s,e = pcall(function()
if v == true then
LocalPlayerPawn.Character.Resources.temperature.Enabled = false
LocalPlayerPawn.Character.Resources["temperature(heat)"].Enabled = false
AntiTempCharConn = LocalPlayerPawn.Character.CharacterAdded:Connect(function()
LocalPlayerPawn.Character.Resources.temperature.Enabled = false
LocalPlayerPawn.Character.Resources["temperature(heat)"].Enabled = false
end)
else
LocalPlayerPawn.Character.Resources.temperature.Enabled = true
LocalPlayerPawn.Character.Resources["temperature(heat)"].Enabled = true
if AntiTempCharConn then
AntiTempCharConn:Disconnect()
end
end
end)
end
})
ClientSec:Button({
Side = "Right",
Name = "Sell Held Fish",
Callback = function(v)
game:GetService("ReplicatedStorage"):WaitForChild("events"):WaitForChild("Sell"):InvokeServer()
end
})
ClientSec:Button({
Side = "Right",
Name = "Sell All Fish",
Callback = function(v)
game:GetService("ReplicatedStorage"):WaitForChild("events"):WaitForChild("SellAll"):InvokeServer()
end
})
ClientSec:Button({
Side = "Right",
Name = "Appraise Held Fish (450)",
Callback = function(v)
local _oldCF = LocalPlayerPawn.Character.HumanoidRootPart.CFrame
task.wait()
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = CFrame.new(448.253815, 150.538727, 206.717392, 0.0551895462, -4.95227894e-08, -0.998475909, 3.75087801e-08, 1, -4.75251305e-08, 0.998475909, -3.4828723e-08, 0.0551895462)
workspace:WaitForChild("world"):WaitForChild("npcs"):WaitForChild("Appraiser"):WaitForChild("appraiser"):WaitForChild("appraise"):InvokeServer()
task.wait()
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = _oldCF
end
})
ClientSec:Button({
Side = "Right",
Name = "Fix Held Map (250)",
Callback = function(v)
local _oldCF = LocalPlayerPawn.Character.HumanoidRootPart.CFrame
task.wait()
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = CFrame.new(-2823.90112, 214.34288, 1515.54041, -0.20666413, -3.82791967e-08, 0.978411973, 5.99187189e-08, 1, 5.17800807e-08, -0.978411973, 6.93262763e-08, -0.20666413)
workspace:WaitForChild("world"):WaitForChild("npcs"):WaitForChild("Jack Marrow"):WaitForChild("treasure"):WaitForChild("repairmap"):InvokeServer()
task.wait()
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = _oldCF
end
})
local listA = {}
local listB = {}
local pvr = ClientSec:List({
Options = {},
Max = 0,
State = "",
Flag = "purcahseValidRods",
Side = "Right",
Name = "Purchase Rod",
Callback = function(v)
if v == nil or v == "" then return end
local rodName = listB[v][1]
local rodPrice = listB[v][2]
if tonumber(rodPrice) > game.ReplicatedStorage.playerstats[LocalPlayerPawn.Name].Stats.coins.Value then
return
end
game.ReplicatedStorage.events.purchase:FireServer(rodName, "Rod", rodPrice, 1)
table.remove(listA, table.find(listA, v))
end
})
for rodName, rodData in pairs(roddata) do
if rodData.Price ~= "inf" and rodData.Price ~= "No Price" then
if game.ReplicatedStorage.playerstats[LocalPlayerPawn.Name].Rods:FindFirstChild(rodName) then
continue
end
table.insert(listA, rodName.." ($"..rodData.Price..")")
listB[rodName.." ($"..rodData.Price..")"] = {rodName, rodData.Price}
end
end
task.spawn(function()
while task.wait(5) do pvr:Refresh(listA) end
end)
end
do -- World
local WorldSection = WorldPage:Section({
Name = "World",
LeftTitle = "Teleports",
RightTitle = "Ocean"
})
local MiscSection = WorldPage:Section({
Name = "Misc",
LeftTitle = "Account Values",
RightTitle = ""
})
local __t = {}
local accV = MiscSection:List({
Options = __t,
Max = #__t,
State = "",
Flag = "accountValuechecker",
Side = "Left",
Name = "Check Account Value",
Callback = function(v)
if v == nil or v == "" then return end
local data = game.ReplicatedStorage.playerstats:FindFirstChild(v)
if not data then return end
data = data.Inventory:GetChildren()
local curValue = 0
for _,v in pairs(data) do
if FishData.Fish[v.Value] then
if v:FindFirstChild("Mutation") then
local fV = tonumber(FishData.Fish[v.Value].Price) * v.Stack.Value
if FishData.Mutations[v.Mutation.Value] then
fV *= tonumber(FishData.Mutations[v.Mutation.Value].PriceMultiply)
end
curValue += fV
else
curValue += tonumber(FishData.Fish[v.Value].Price) * v.Stack.Value
end
end
end
Hint.Text = "Vixie | "..v.."'s Account is worth~: "..curValue.." C$"
print("Vixie | "..v.."'s Account is worth~: "..curValue.." C$")
end
})
game.ReplicatedStorage.playerstats.ChildAdded:Connect(function(c)
table.insert(__t, c.Name)
accV:Refresh(__t)
end)
game.ReplicatedStorage.playerstats.ChildRemoved:Connect(function(c)
table.remove(__t, table.find(__t, c))
accV:Refresh(__t)
end)
for _,v in pairs(game.ReplicatedStorage.playerstats:GetChildren()) do
table.insert(__t, v.Name)
end
accV:Refresh(__t)
WorldSection:Toggle({
State = false,
Flag = "walkOnWater",
Side = "Right",
Name = "Walk on Water",
Callback = function(v)
for _,v in pairs(ZoneFolder:WaitForChild("fishing"):GetChildren()) do
if v:IsA("Part") then
v.CanCollide = v
end
end
end
})
WorldSection:Button({
Side = "Left",
Name = "Teleport to treasure map",
Callback = function()
local getTool = LocalPlayerPawn.Character:FindFirstChild("Treasure Map")
if getTool == nil and getTool.link.Value.Repaired.Value == false then
return
end
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(getTool.link.Value.x.Value, getTool.link.Value.y.Value, getTool.link.Value.z.Value))
end
})
local _tps = {}
for i,v in pairs(tp_locations) do
table.insert(_tps, i)
end
WorldSection:List({
Options = _tps,
Max = #_tps,
State = "",
Flag = "teleport_lcoation",
Side = "Left",
Name = "Teleports",
Callback = function(v)
if v == nil then
return
end
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = TpFolder[tp_locations[v]].CFrame + Vector3.new(0,4,0)
end
})
local ___tFolder1 = {}
local ___tFolder2 = {}
local WorldEvents = WorldSection:List({
Options = {},
Max = 0,
State = "",
Flag = "worldevent_tp",
Side = "Left",
Name = "World Events TP",
Callback = function(v)
if v == nil then
return
end
LocalPlayerPawn.Character.HumanoidRootPart.CFrame = ___tFolder1[v].CFrame + Vector3.new(0,4,0)
end
})
ZoneFolder.fishing.ChildAdded:Connect(function(child)
if worldevents[child.Name] then
___tFolder1[worldevents[child.Name]] = child
table.insert(___tFolder2, worldevents[child.Name])
WorldEvents:Refresh(___tFolder2)
end
end)
ZoneFolder.fishing.ChildRemoved:Connect(function(child)
if table.find(___tFolder1, child) then
local i = table.find(___tFolder1, child)
___tFolder1[i] = nil
table.remove(___tFolder2, table.find(___tFolder2, i))
WorldEvents:Refresh(___tFolder2)
end
end)
for _,child in pairs(ZoneFolder.fishing:GetChildren()) do
if worldevents[child.Name] then
___tFolder1[worldevents[child.Name]] = child
table.insert(___tFolder2, worldevents[child.Name])
WorldEvents:Refresh(___tFolder2)
end
end
end
do
local MiscSection = MiscPage:Section({
Name = "Misc",
LeftTitle = "Options",
RightTitle = "UI"
})
MiscSection:Button({
Side = "Left",
Name = "Join Our Discord",
Callback = function(v)
local s,e = pcall(function()
request({
Url = "http://127.0.0.1:6463/rpc?v=1",
Method = "POST",
Headers = {
["Content-Type"] = "application/json",
["Origin"] = "https://discord.com"
},
Body = game:GetService("HttpService"):JSONEncode({
cmd = "INVITE_BROWSER",
args = {
code = "x4RfPQZvs2"
},
nonce = game:GetService("HttpService"):GenerateGUID(false)
}),
})
end)
setclipboard("https://discord.gg/x4RfPQZvs2")
end
})
MiscSection:Toggle({
State = false,
Flag = "useWebhook",
Side = "Left",
Name = "Use Webhook",
})
MiscSection:Textbox({
State = "",
Flag = "discord_webhook",
Side = "Left",
Name = "Webhook URL",
holder = "",
Callback = function(v)
print(v)
end
})
MiscSection:Keybind({
State = Enum.KeyCode.End,
Mode = "Toggle",
Side = "Right",
Flag = "UI_Config_Toggle",
Name = "Menu Toggle",
Callback = function()
Window:SetOpen(not Window.Open)
end
})
end
local function mainLoop()
game:GetService("ReplicatedStorage"):WaitForChild("events"):WaitForChild("afk"):FireServer(false)
if pointers["autofish_enabled"] == false then return end
if pointers["autosell_enabled"] == true then
game:GetService("ReplicatedStorage"):WaitForChild("events"):WaitForChild("SellAll"):InvokeServer()
end
if pointers["autobait_enabled"] then
getgenv().VIXIE_GLOBALS.getBait()
end
task.wait(1)
local s,e = pcall(function()
local event;
for _,v in pairs(LocalPlayerPawn.Character:GetChildren()) do
if v:IsA("Tool") then event = v end
end
event.events.cast:FireServer(100, 1)
end)
if e then
warn(e)
return
end
local __db = 0
local ui = LocalPlayerPawn.PlayerGui:FindFirstChild("shakeui")
repeat
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("shakeui")
task.wait(.1)
__db += 1
if (__db > 20) then
return
end
until ui
repeat
if ui:FindFirstChild("safezone") then
if ui.safezone:FindFirstChild("button") then
pcall(function()
if pointers["autoshake_type"] == "GuiService" then
GuiService.SelectedObject = ui.safezone:FindFirstChild("button")
if GuiService.SelectedObject == ui.safezone:FindFirstChild("button") then
VIM:SendKeyEvent(true, Enum.KeyCode.Return, false, game)
VIM:SendKeyEvent(false, Enum.KeyCode.Return, false, game)
end
end
end)
end
end
task.wait(pointers["autoshake_delay"] / 1000)
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("shakeui")
if not (ui) then ui = false end
until not ui
print("Shake ui disappeared")
local bounceBack = 0
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
repeat
task.wait(.1)
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
bounceBack += 1
if bounceBack >= 20 then
print("protection")
return;
end
until ui
print("Found Reel UI")
if pointers["autoreel_type"] == "Always Perfect" then
repeat
task.wait()
if ui:FindFirstChild("bar") then
local b = ui:FindFirstChild("bar")
if b:FindFirstChild("fish") and b:FindFirstChild("playerbar") then
b:FindFirstChild("playerbar").Position = b:FindFirstChild("fish").Position
end
end
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
if not (ui) then ui = false end
until not ui
print("Finished!")
elseif pointers["autoreel_type"] == "Legit" then
repeat
task.wait()
if ui:FindFirstChild("bar") then
local b = ui:FindFirstChild("bar")
if b:FindFirstChild("fish") and b:FindFirstChild("playerbar") then
b:FindFirstChild("playerbar").Position = b:FindFirstChild("fish").Position
local x = TweenService:Create(b:FindFirstChild("playerbar"),
TweenInfo.new(1, Enum.EasingStyle.Elastic), {Position = b:FindFirstChild("fish").Position})
x:Play()
x.Completed:Wait()
end
end
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
if not (ui) then ui = false end
until not ui
print("Finished!")
elseif pointers["autoreel_type"] == "Instant" then
task.wait(pointers["autoreel_delay"])
repeat
task.wait()
if ui:FindFirstChild("bar") then
local b = ui:FindFirstChild("bar")
if b:FindFirstChild("fish") and b:FindFirstChild("playerbar") then
b:FindFirstChild("playerbar").Position = b:FindFirstChild("fish").Position
end
local isPerfect = math.random(1, 100) < pointers["autoreel_pchance"]
game.ReplicatedStorage.events["reelfinished "]:FireServer(100, isPerfect)
end
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
if not (ui) then ui = false end
until not ui
elseif pointers["autoreel_type"] == "Legit Instant" then
task.wait(pointers["autoreel_delay"])
repeat
task.wait()
if ui:FindFirstChild("bar") then
local b = ui:FindFirstChild("bar")
if b:FindFirstChild("fish") and b:FindFirstChild("playerbar") then
b:FindFirstChild("playerbar").Position = b:FindFirstChild("fish").Position
end
if b:FindFirstChild("progress") then
if b:FindFirstChild("progress").bar.Size.X.Scale > .5 then
local isPerfect = math.random(1, 100) < pointers["autoreel_pchance"]
game.ReplicatedStorage.events["reelfinished "]:FireServer(100, isPerfect)
end
end
end
ui = LocalPlayerPawn.PlayerGui:FindFirstChild("reel")
if not (ui) then ui = false end
until not ui
end
return;
end
local CpH = 0
local XpH = 0
local FpH = 0
local lXpH = 0
local lCpH = 0
local lastWebhook = os.time()
game.ReplicatedStorage.playerstats:FindFirstChild(LocalPlayerPawn.Name).Stats.coins.Changed:Connect(function(v)
CpH += v - lCpH
end)
game.ReplicatedStorage.playerstats:FindFirstChild(LocalPlayerPawn.Name).Stats.xp.Changed:Connect(function(v)
XpH += v - lXpH
end)
game.ReplicatedStorage.playerstats:FindFirstChild(LocalPlayerPawn.Name).Inventory.ChildAdded:Connect(function(newItem)
FpH += 1
if (pointers["usewebhooks"]) then
local s,e = pcall(function()
local _multi = 3600 / (os.time() - lastWebhook)
CpH *= _multi
XpH *= _multi
FpH *= _multi
lastWebhook = os.time()
local Mutation = newItem:FindFirstChild("Mutation")
if Mutation == nil then Mutation = "NULL" else Mutation = Mutation.Value end
request({
Url = pointers["webhookURL"],
Method = "Post",
Headers = {
['content-type'] = "application/json",
},
Body = game:GetService("HttpService"):JSONEncode({
['embeds'] = {{
['title'] = "__**VIXIE AUTO FISHER**__",
['description'] = "You have caught a fish...",
['type'] = "rich",
['color'] = tonumber(0xffffff),
['fields'] = {
{
["name"] = "You caught a "..newItem.Value,
["value"] = "Wighet: "..newItem:WaitForChild("Weight").Value.."KG \nMutation: "..Mutation
},
{
["name"] = LocalPlayerPawn.Name.." Stats",
["value"] = "C$: "..LocalPlayerPawn.leaderstats['C$'].Value.."\nLevel: "..LocalPlayerPawn.leaderstats['Level'].Value
},
{
["name"] = LocalPlayerPawn.Name.." Performance",
["value"] = "C$/h: "..CpH.."\nXP/h: "..XpH.."\nLevels/h: "..(XpH / 10000).."\nFishes/h: "..FpH
},
{
["name"] = "**ADVERTISEMENT**",
["value"] = "JOIN FEMSENSE NOW! https://discord.gg/x4RfPQZvs2"
},
},
['footer'] = {
['text'] = "Eta is best femboy ^^"
}
}}
})
})
lXpH = XpH / _multi
lCpH = CpH / _multi
CpH = 0
XpH = 0
FpH = 0
end)
if e then
warn(e)
end
end
end)
while task.wait(pointers["autocast_delay"]) do
local s,e = pcall(function()
mainLoop()
end)
if e then
warn(e)
end
endScript #3 ShieldTeam Hub
loadstring(game:HttpGet(('https://raw.githubusercontent.com/KAN-FISCH/tesss/refs/heads/main/allscript.lua'), true))()Script #4 Auto Farm & More
loadstring(game:HttpGet("https://gist.githubusercontent.com/Mur4exe/af4ce068bd4910ff0e5715cd0215c143/raw/f3f36618e23d29d064618d1c573ab29e2e407f71/F%25C4%25B0SHv2.lua"))()Script #5 Auto Farm & More
loadstring(game:HttpGet("https://hyperionteam.my.id/api/script.lua"))()Script #6 Auto Fish & More (Auto Fishing, Instant Reel & Auto Shake Update)
loadstring(game:HttpGet('https://raw.githubusercontent.com/KAN-FISCH/tesss/refs/heads/main/allscript.lua', true))()Updated and tested for the latest Auto Fishing, Instant Reel & Auto Shake Update, this script automates the newest event tasks so you can keep up without the extra grind.
How to run scripts?
You can get these scripts running in your Fisch game in less than a minute—just follow these simple steps.
- Grab a Trusted Executor
Install one of the big-name tools (MacSploit, AWP.GG, Delta, Fluxus or Codex). - Hook It Into the Game
Launch your executor and run Fisch from within the executor. - Load the Script
Copy your Lua code into the executor’s console. - Hit Execute
Press the execute button to let the features kick in—then jump back into the action.
Game Details:
- Name: Fisch
- Developer: Fisching
- Maturity: Minimal
- Genre: Simulation
- Subgenre: Tycoon
Frequently Asked Questions
What is a Fisch script?
A Fisch script is third-party Lua code intended to run alongside the Roblox game through a compatible script executor.
What features does this Fisch script include?
Different scripts contain different code. This version includes: Auto Farm, Teleport, Auto Sell, Auto Buy, Auto Fish.
How do you use the Fisch script?
Pick a compatible executor such as Hydrogen, MacSploit, AWP.GG, Delta, Fluxus, Codex, launch Roblox and join the game, copy the complete Lua code from the script card above, paste it into the executor’s editor, and click Run or Execute. Compatibility changes over time, so a name here doesn’t guarantee current support.
Can a Fisch script get your Roblox account banned?
Yes. Third-party scripts can violate Roblox rules and may put an account at risk. Only use code from a source you trust, never enter your Roblox password into a script or executor, and test on an alternate account first.
Does the Fisch script work on mobile?
Check whether both the executor and the script support your device and the current Roblox version. Mobile executor support does not guarantee that every script will work.