WoW Fish Bot is a configurable Windows desktop automation tool for World of Warcraft fishing. It combines sound-triggered catch detection, bobber recognition, and customizable timing controls to help streamline fishing in both classic and newer WoW versions. The app includes Interact With Target mode for modern clients, bobber pattern calibration, optional bobber validation, selectable search areas, pixel tolerance settings, custom cast and click inputs, and saved settings for repeat use. It also supports catch sound recording, built-in logs, optional UI hide/show hotkeys, and an emergency stop with ESC, making it a practical and easy-to-configure fishing assistant for players who want a reliable automated workflow.
- β¨ Features
- π Changelog
- β Supported World of Warcraft Clients
- π Prerequisites
- π Setup Guide
- π» Preview
- π License
- β Sound-triggered automation
- β Support for newer WoW versions
- β Classic mode support
- β Interact With Target mode
- β Configurable cast, click, and performance delays
- β Bobber pattern calibration
- β Optional bobber validation
- β Selectable bobber search area
- β Pixel tolerance and match settings
- β Catch sound recording and playback
- β Window selection and process filtering
- β Custom cast key and click button support
- β Optional UI hide/show hotkey
- β Save and load settings
- β Built-in logs and status display
- β
Emergency stop with
ESC
This patch release simplifies the catch response after the bobber has already been detected.
- Removed the redundant bobber pixel recapture and validation after the catch sound is matched.
- The bot now clicks the coordinates saved during the initial bobber scan.
- Preserved the initial bobber detection and its configured validation settings.
- Kept Interact With Target mode behavior unchanged.
This maintenance release refines the application window and secondary dialogs for a cleaner, more consistent appearance.
- Added a thin light border around the main application window and secondary forms.
- Applied the shared theme border color consistently across all forms.
- Removed application icons from the main window, bobber calibration form, area-selection form, and key-combination capture form.
- Preserved existing custom title-bar dragging, resizing, and dialog behavior.
This update improves reliability across different Windows and WoW setups while adding a more polished desktop experience.
- Added a custom borderless title bar with minimize, maximize/restore, close, and window-resize support.
- Added persistent window size, position, maximized state, and log visibility settings.
- Added a compact layout option that hides the log panel for smaller screens.
- Added a scrollable options panel so all bot settings remain accessible as groups expand.
- Added a configurable performance delay to reduce unnecessary screen-capture and bobber-scan load.
- Added an optional calibration mode that allows selecting any three pixels without requiring red and blue bobber colors.
- Added a heart-shaped Ko-fi donate button to the title bar: ko-fi.com/nanidev.
- Applied a cohesive dark-fantasy theme to the main window and calibration, area-selection, and key-capture dialogs.
- Improved custom title-bar dragging, resize hit testing, and window-control accessibility.
- Improved bobber calibration for DPI scaling and different Windows 11 display configurations.
- Preserved saved RGB samples while allowing more flexible calibration pixel selection.
- Improved startup and shutdown handling for persisted window and log-panel state.
- Updated project metadata and build configuration for .NET 9.
- Updated GitHub Actions builds to use Node.js 24 and .NET 9.
- Added a framework-dependent single-file
win-x64publish artifact for Windows deployments.
This update adds support for newer WoW clients through Interact With Target mode.
- Added Interact With Target mode for newer WoW versions.
- The configured cast key is used to cast and then used again after the catch sound to reel in.
- Bobber scanning and mouse clicking are skipped in this mode.
- Fixed a startup crash caused by a missing
Performance Delaycontrol. - Improved build reliability by updating generated designer files for nullable context handling.
- Classic fishing mode still works as before.
- If using a newer WoW client, enable Interact With Target in the app settings.
For the full history, see the GitHub Releases page.
- β World of Warcraft 1.12.1 β Vanilla wow (Tested and working)
- β¬ World of Warcraft 2.4.3 β The Burning Crusade
- β¬ World of Warcraft 3.3.5a β Wrath of the Lich King
- β¬ World of Warcraft 4.3.4 β Cataclysm
- β¬ World of Warcraft 5.4.8 β Mists of Pandaria
- β¬ World of Warcraft 6.2.4 β Warlords of Draenor
- β¬ World of Warcraft 7.3.5 β Legion
- β¬ World of Warcraft 8.3.7 β Battle for Azeroth
- β¬ World of Warcraft 9.2.7 β Shadowlands
- β¬ World of Warcraft 10.2.7 β Dragonflight
- β¬ World of Warcraft 11.x β The War Within / current retail builds
Only 1.12.1 has been confirmed so far. If you test the bot on any other client version, your feedback helps improve compatibility and expand support for more World of Warcraft versions.
Before setting up the bot, make sure you have:
- Windows PC
- .NET 9 runtime or the ability to build and run the project from Visual Studio
- World of Warcraft installed and working
- A compatible WoW client
- A working sound output device
- A mouse and keyboard configured normally for gameplay
- Administrator access, if needed for running or debugging the app
- A clean audio recording tool such as Audacity for trimming the catch sound
- Enough screen space and a stable UI scale for bobber detection and calibration
It also helps to have:
- The game running in windowed mode or a stable full-screen setup
- A quiet environment for recording the catch sound
- The correct WoW window selected before starting the bot
This guide walks through the basic setup for the bot and how to get it ready for use.
Before starting, make sure you have:
- A compatible World of Warcraft client
- A working sound device for recording and playback
- A clean game window with the correct resolution and UI scale
- The bot built and launched successfully
If you are using a newer WoW client, enable Interact With Target mode later in the settings.
If you are using the tested classic client, use the standard classic workflow.
- Open the bot.
- Make sure the main window loads correctly.
- Confirm that the status area shows the app is ready.
- If the app does not start correctly, rebuild the project and try again.
The bot needs to know which game window to use.
- Open World of Warcraft.
- In the bot, select the correct WoW window from the window list.
- If the window does not appear, check:
- the game is running
- the process name filter is correct
- the window is not minimized or hidden
The catch sound is one of the most important parts of the setup.
The bot listens for this sound to know when the fish has been caught.
- In the bot, use the recording feature to capture the fish catch sound.
- Cast a line in game and let the audio recorder capture the full sound.
- Save the recording.
It is best to trim the recording so it contains only the actual fish catch sound and nothing extra.
A good program for this is Audacity:
- it is free
- easy to use
- good for trimming and cleaning short audio clips
- Open the recorded sound file.
- Find the section that contains only the catch sound.
- Remove:
- silence before the sound
- extra background noise
- any sound after the catch effect
- Export the trimmed file as a clean
.wavfile.
- Keep the file short and precise.
- Avoid long silence at the beginning.
- Avoid recording system sounds or microphone noise.
- Use a clean WAV file for best results.
The bot uses a bobber pattern to detect the fishing float on screen.
- Click the calibration button.
- Capture the bobber area on the screen.
- Select the important pixels in the bobber pattern.
- Save the pattern.
- Pick stable, visible parts of the bobber.
- Avoid selecting pixels that change often.
- Use the suggested color points carefully.
- If the bobber moves around, later enable validation if needed.
To improve accuracy, narrow the scan region to where the bobber usually appears.
- Open the search area selector.
- Drag out a rectangle around the fishing area.
- Save the region.
This helps:
- reduce false detections
- improve speed
- lower CPU usage
Adjust the key settings before running the bot.
Delay after casting before the bot starts scanning.
Delay before clicking after a catch is detected.
Pause between scans and actions to reduce CPU load.
How long the bot listens for a catch before stopping the current attempt.
Controls how much color difference is accepted in bobber detection.
Controls how many calibrated pixels must match before detection succeeds.
How long the catch-sound recording should be.
Use this for the older, tested client.
Use this for newer WoW versions.
This mode:
- uses the configured cast key
- reuses the key to reel in after the catch sound
- skips mouse clicking and bobber scanning
If you are on a newer client, this is usually the preferred mode.
Configure the inputs the bot will use:
- Cast key
- Click button
- Hide/show UI hotkey, if desired
Make sure the key you choose is easy to press and not already heavily used by another game action.
Once everything is configured:
- Save your settings.
- Close and reopen the app if needed.
- Confirm the settings are loaded correctly.
This makes future launches faster and easier.
Before using the bot normally:
- Start in a safe area.
- Cast once.
- Watch whether the bot detects the bobber correctly.
- Confirm it reacts to the catch sound.
- Check that the timing feels correct.
If something is off, adjust:
- the catch sound recording
- bobber calibration
- delay values
- pixel tolerance
- search area
- Re-record the sound
- Trim the audio more tightly in Audacity
- Lower background noise
- Confirm the correct WAV file is loaded
- Recalibrate the bobber pattern
- Use a tighter search region
- Increase or decrease pixel tolerance
- Try a different pattern selection
- Lower performance delay
- Reduce click delay
- Make sure the PC is not under heavy load
- Adjust cast delay
- Adjust click delay
- Recheck the audio clip timing
- Try Interact With Target for newer versions
- Confirm the correct client is selected
- Make sure the window is focused and visible
For best results, follow this order:
- Open the game
- Launch the bot
- Select the correct WoW window
- Record and trim the catch sound
- Calibrate the bobber pattern
- Set the search area
- Configure delays and thresholds
- Save settings
- Test once
- Fine-tune if needed
The best setup usually comes from small adjustments rather than large changes.
Start with the defaults, test one setting at a time, and refine the sound recording and bobber calibration until the bot behaves consistently.
For the cleanest audio results, Audacity is strongly recommended for trimming the catch sound down to only the exact fish catch moment.
Distributed under the GPL-3.0 License. See LICENSE for more information.

