Torchlight 2
Torchlight 2 is an action role-playing game developed by Runic Games, released in 2012. It features fast-paced hack-and-slash gameplay, character customization, and a variety of quests and loot. Players can choose from four distinct classes: Engineer, Outlander, Berserker and Embermage. Each class has unique skills, abilities and gear. The game supports both single-player and multiplayer modes, allowing for cooperative play.

Fishing
Like many other RPG games before Torchlight 2, fishing is also a mechanic we can play here. Many games use fishing as a light hearted way to "play the lottery" and try to get free items and gear in exchange for some of your time. While in other games fishing can have deep strategy, with different fishing rods, lures and tactics, in Torchlight 2 is a simple wait-and-click minigame.
Fishing holes can be found throughout the world, clicking on one will start a timing-based minigame. A fish hook icon will appear, surrounded by a narrowing ring of light. Click your mouse when the ring is entirely within the hook icon. If your timing is perfect, you'll catch a fish! (or something else)
Feeding fish to your pets in combat can grant them unique new powers, transforming your pet into various creature types. Hovering your mouse over a fish in your inventory will show the type and duration of its benefits.
Making a bot
How fun would it be to write a bit of code and leave it overnight fishing, to wake up to pockets full of fish and loot? That is the idea behind this quick hack.
The bot is a PHP based CLI program running on background. In order to sense the game it takes a screenshot and then by looking at the photo it decides where in the loop we are and takes appropiate action. The loop is: start fishing -> wait -> fish baited -> reel in -> repeat.
46 minutes bot fishing speed up into 90 secondsFrom wet fish to shiny Gold
While most fish can be used to feed your pet, it can also be sold for a tiny bit of gold. Luckly for us the rare goldfish can be sold for a lot of gold!
I have clocked about 12k gold for 1 hour of fishing time. After each fishing session, we must find the nearest merchant NPC and sell everything we got.
Plenty of fish
Here is a list of all the fish that can be caught in Torchlight 2
Icon | Name | Description |
---|---|---|
![]() |
Jackal Bass | Transform into a Jackalbeast for 5 minutes. Increases poison armor by ~100% and grants a small amount of poison damage. |
![]() |
Big Jackal Bass | Transform into a Jackalbeast for 15 minutes. Increases poison armor by ~100% and grants a small amount of poison damage. |
![]() |
Giant Jackal Bass | Transform into a Jackalbeast permanently. Increases poison armor by ~100% and grants a small amount of poison damage. |
![]() |
Largemouth Bass | Transform into a Mimic for 5 minutes. +25% physical armor +66% elemental armor +50% hp + 33% damage (base) |
![]() |
Big Largemouth Bass |
Transform into a Mimic for 15 minutes.
+25% physical armor +66% elemental armor +50% hp + 33% damage (base) |
![]() |
Giant Largemouth Bass | Transform into a Mimic permanently. +25% physical armor +66% elemental armor +50% hp + 33% damage (base) |
![]() |
Warsnout | Transform into a Warbeast for 5 minutes. Increases base average damage by ~85%. |
![]() |
Big Warsnout | Transform into a Warbeast for 15 minutes. Increases base average damage by ~85%. |
![]() |
Giant Warsnout | Transform into a Warbeast permanently. Increases base average damage by ~85%. |
![]() |
Tunnel Shark | Transform into a Molebeast for 5 minutes. Grants chance to stun enemies. |
![]() |
Big Tunnel Shark | Transform Into a Molebeast for 15 minutes. Grants chance to stun enemies. |
![]() |
Giant Tunnel Shark | Transform Into a Molebeast permanently. Grants chance to stun enemies. |
![]() |
Web Fish | Transform into a Spider for 5 minutes. Grants immobilizing web attack. |
![]() |
Big Web Fish | Transform into a Spider for 15 minutes. Grants immobilizing web attack. |
![]() |
Giant Web Fish | Transform into a Spider permanently. Grants immobilizing web attack. |
![]() |
Flying Fish | Transform into a Swampflyer for 5 minutes. Grants chance to silence |
![]() |
Big Flying Fish | Transform into a Swampflyer for 15 minutes. Grants chance to silence |
![]() |
Giant Flying Fish | Transform into a Swampflyer permanently. Grants chance to silence |
![]() |
Bonefish | Transform into a Torso for 5 minutes. +20% damage +60% elemental armor +25% hp (base) shreds armor |
![]() |
Big Bonefish | Transform into a Torso for 15 minutes. +20% damage +60% elemental armor +25% hp (base) shreds armor |
![]() |
Crab Egg | Transform into a Heavily Armored Crab Warrior for 5 minutes. +100% physical armor, +100% elemental armor (base) |
![]() |
Big Crab Egg | Transform into a Heavily Armored Crab Warrior for 15 minutes. +100% physical armor, +100% elemental armor (base) |
![]() |
Giant Crab Egg | Transform into a Heavily Armored Crab Warrior permanently. +100% physical armor, +100% elemental armor (base) |
![]() |
Vampiric Spider Egg | Transform into a Vampiric Spider for 5 minutes. |
![]() |
Frenzy Fish |
+33% Faster Movement for 5 minutes. +33% Attack Speed for 5 minutes. |
![]() |
Gold Fish | Cannot be eaten but worth a lot of gold! |
![]() |
Prismatic Morey |
+25 Critical Hit Chance for 5 minutes. +100% to Fire Damage for 5 minutes. +100% to Poison Damage for 5 minutes. +100% to Ice Damage for 5 minutes. +100% to Electric Damage for 5 minutes. |
Next steps
The obvious next step would be to improve the bot so it can automatically walk to the nearest merchant and sell all the fish and loot when the player inventory is full. This way we can simply leave it running to automatically farm huge amounts of gold. In order to accomplish this we must first solve a number of steps:
- Inventory management. When is it full? What non-fished previous items should not be sold?
- Find the nearest merchant NPC. Not an easy task if we want the bot to work everywhere there is a fishing hole.
- Player navigation. Walking from the fishing hole to the merchant NPC and then navigate back.