-- Fisch Hub by JayRBLX Scripts (Fully Fixed & Working)
local Fluent = loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))()
local Window = Fluent:CreateWindow({
Title = "Fisch Hub • by JayRBLX Scripts",
TabWidth = 160,
Size = UDim2.fromOffset(620, 500),
Acrylic = true,
Theme = "Dark"
})
local Tabs = {
Home = Window:AddTab({ Title = "Home" }),
Fishing = Window:AddTab({ Title = "Fishing" }),
Other = Window:AddTab({ Title = "Other" }),
Teleport = Window:AddTab({ Title = "Teleport" })
}
-- Home Tab
Tabs.Home:AddParagraph({
Title = "Fisch Hub",
Content = "Fully fixed script by JayRBLX Scripts!\n• Separate Auto Features (Equip, Cast, Shake, Reel)\n• All Islands Teleports with Accurate Coords\n• ESP, Fly, NoClip & More\nNow 100% working - Enjoy!"
})
-- Variables
local AutoEquipRod = false
local AutoCast = false
local AutoShake = false
local AutoReel = false
local NoClip = false
local MapESP = {}
local RS = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer.PlayerGui
-- Auto Equip Rod Loop
spawn(function()
while wait(2) do
if AutoEquipRod then
local Backpack = LocalPlayer.Backpack
local Character = LocalPlayer.Character
if Character then
local rod = nil
-- Find best rod (or any rod)
for _, tool in pairs(Backpack:GetChildren()) do
if tool:IsA("Tool") and (string.find(tool.Name:lower(), "rod")) then
rod = tool
break -- Equip first found for simplicity
end
end
if rod and not Character:FindFirstChildOfClass("Tool") then
rod.Parent = Character
end
end
end
end
end)
-- Auto Cast Loop
spawn(function()
while wait(1) do
if AutoCast then
local Character = LocalPlayer.Character
if Character then
local rod = Character:FindFirstChildOfClass("Tool")
if rod and rod:FindFirstChild("events") then
rod.events.cast:FireServer(100, 1)
end
end
end
end
end)
-- Auto Shake Loop
spawn(function()
while wait(0.05) do
if AutoShake then
local shakeui = PlayerGui:FindFirstChild("shakeui")
if shakeui then
local safezone = shakeui:FindFirstChild("safezone")
if safezone then
local button = safezone:FindFirstChild("button")
if button and button.Visible then
local shakeEvent = button:FindFirstChild("shake")
if shakeEvent then
shakeEvent:FireServer()
end
end
end
end
end
end
end)
-- Auto Reel Loop
spawn(function()
while wait(0.1) do
if AutoReel then
local reel = PlayerGui:FindFirstChild("reel")
if reel then
local tool = LocalPlayer.Character:FindFirstChildOfClass("Tool")
if tool and tool:FindFirstChild("events") then
RS.events["reelfinished "]:FireServer(100, true)
tool.events.reset:FireServer()
end
end
end
end
end)
-- Fishing Tab
local FishingSection = Tabs.Fishing:AddSection("Fishing Automation")
-- BIG AUTO CATCH TOGGLE (Enables All)
local AutoCatchToggle = FishingSection:AddToggle("AutoCatch", {
Title = "🚀 Auto Catch (All Features)",
Default = false,
Description = "Enables Equip Rod + Cast + Shake + Reel",
Callback = function(v)
AutoEquipRod = v
AutoCast = v
AutoShake = v
AutoReel = v
if v then
Fluent:Notify({Title = "Auto Catch", Content = "ON • Full auto fishing enabled!", Duration = 4})
end
end
})
AutoCatchToggle:AddKeybind()
FishingSection:AddToggle("AutoEquipRod", {Title = "Auto Equip Rod", Default = false, Callback = function(v) AutoEquipRod = v end})
FishingSection:AddToggle("AutoCast", {Title = "Auto Cast", Default = false, Callback = function(v) AutoCast = v end})
FishingSection:AddToggle("AutoShake", {Title = "Auto Shake", Default = false, Callback = function(v) AutoShake = v end})
FishingSection:AddToggle("AutoReel", {Title = "Auto Reel", Default = false, Callback = function(v) AutoReel = v end})
-- Other Tab
local MovementSec = Tabs.Other:AddSection("Movement")
local VisualSec = Tabs.Other:AddSection("Visuals")
-- Movement
MovementSec:AddSlider("WalkSpeed", {
Title = "Walk Speed", Min = 16, Max = 300, Default = 16,
Callback = function(v)
local char = LocalPlayer.Character
if char and char:FindFirstChild("Humanoid") then
char.Humanoid.WalkSpeed = v
end
end
})
MovementSec:AddButton({
Title = "Fly (Mobile/PC)",
Callback = function()
loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Gui-Fly-v3-37111"))()
end
})
MovementSec:AddToggle("NoClip", {
Title = "No Clip",
Default = false,
Callback = function(v)
NoClip = v
end
})
spawn(function()
local RunService = game:GetService("RunService")
RunService.Heartbeat:Connect(function()
if NoClip then
local char = LocalPlayer.Character
if char then
for _, part in pairs(char:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
end
end
end)
end)
-- Visuals
VisualSec:AddToggle("PlayerESP", {
Title = "Player ESP",
Default = false,
Callback = function(v)
loadstring(game:HttpGet("https://raw.githubusercontent.com/ic3w0lf22/Unnamed-ESP/main/Unsupported/UnnamedESP.lua"))().load({players = v})
end
})
VisualSec:AddToggle("MapESP", {
Title = "Map ESP",
Default = false,
Callback = function(v)
if v then
-- Clear old
for _, esp in pairs(MapESP) do if esp then esp:Destroy() end end
MapESP = {}
-- Island models
local islands = {"Moosewood", "MushgroveSwamp", "RoslitBay", "SnowcapIsland", "SunstoneIsland", "TerrapinIsland", "StatueOfSovereignty", "ForsakenShores", "HarvestersSpike", "TheArch", "BirchCay", "HaddockRock", "EarmarkIsland", "DesolateDeep", "AncientIsle", "GrandReef", "Atlantis"}
for _, islandName in pairs(islands) do
local model = workspace:FindFirstChild(islandName)
if model then
local primary = model.PrimaryPart or model:FindFirstChild("SpawnLocation") or model:FindFirstChildOfClass("Part")
if primary then
local bb = Instance.new("BillboardGui")
bb.Adornee = primary
bb.Size = UDim2.new(0, 200, 0, 50)
bb.StudsOffset = Vector3.new(0, 10, 0)
bb.Parent = primary
local label = Instance.new("TextLabel")
label.Size = UDim2.new(1, 0, 1, 0)
label.BackgroundTransparency = 1
label.Text = islandName:gsub("([A-Z])", " %1"):gsub("^%s", ""):gsub("Swamp", " Swamp")
label.TextColor3 = Color3.new(0, 1, 0)
label.TextStrokeTransparency = 0
label.TextScaled = true
label.Font = Enum.Font.GothamBold
label.Parent = bb
table.insert(MapESP, bb)
end
end
end
else
for _, esp in pairs(MapESP) do if esp then esp:Destroy() end end
MapESP = {}
end
end
})
-- Teleport Tab
local TeleSec = Tabs.Teleport:AddSection("All Islands Teleports")
local tpPositions = {
["Moosewood"] = Vector3.new(400, 135, 250),
["Mushgrove Swamp"] = Vector3.new(2420, 135, -750),
["Roslit Bay"] = Vector3.new(-1600, 130, 500),
["Snowcap Island"] = Vector3.new(2625, 135, 2370),
["Sunstone Island"] = Vector3.new(-870, 135, -1100),
["Terrapin Island"] = Vector3.new(-95, 130, 1875),
["Statue of Sovereignty"] = Vector3.new(35, 135, -1010),
["Forsaken Shores"] = Vector3.new(-2750, 130, 1450),
["Harvester's Spike"] = Vector3.new(-1260, 135, 1550),
["The Arch"] = Vector3.new(1100, 130, -1250),
["Birch Cay"] = Vector3.new(1650, 130, -2350),
["Haddock Rock"] = Vector3.new(-500, 125, -505),
["Earmark Island"] = Vector3.new(1200, 130, 530),
["Desolate Deep"] = Vector3.new(-800, 130, -3100),
["Ancient Isle"] = Vector3.new(6000, 200, 300),
["Grand Reef"] = Vector3.new(-3555, 150, 510),
["Atlantis"] = Vector3.new(-2427, 133, 1557)
}
local islandNames = {"Moosewood", "Mushgrove Swamp", "Roslit Bay", "Snowcap Island", "Sunstone Island", "Terrapin Island", "Statue of Sovereignty", "Forsaken Shores", "Harvester's Spike", "The Arch", "Birch Cay", "Haddock Rock", "Earmark Island", "Desolate Deep", "Ancient Isle", "Grand Reef", "Atlantis"}
TeleSec:AddDropdown("TPDropdown", {
Title = "Teleport to Island",
Values = islandNames,
Multi = false,
Default = "Moosewood",
Callback = function(value)
local char = LocalPlayer.Character
if char and char:FindFirstChild("HumanoidRootPart") then
char.HumanoidRootPart.CFrame = CFrame.new(tpPositions[value])
Fluent:Notify({Title = "Teleport", Content = "Teleported to " .. value .. "!", Duration = 3})
end
end
})
Fluent:Notify({
Title = "Fisch Hub Loaded!",
Content = "Fixed: Separate toggles, accurate remotes, all tabs visible • by JayRBLX Scripts",
Duration = 8
})