I've always enjoyed fishing in video games which is funny because I've never really spawned an interest in fishing outdoors. Don't get me wrong, I love being out in nature but for some reason fishing has never baited me in. I think it has something to do with all of the waiting. You select your bait, cast and wait.
I'm not a gambling man and maybe that's why even catching a fish doesn't thrill me. Perhaps there is some skill involved but I mostly ascribe the accomplishment to luck. I want my fishing to involve more of the tactical and less of the random.
My favorite fishing scenarios in video games allow control that gives a sense of accomplishment more than that of a dice roll.

One of my earliest experiences with fishing in video games was in Breath of Fire 2. There was a bit of randomness in the type of fish that would spawn and simply finding a fishing spot was sometimes an exercise in frustration. In the end I found it very enjoyable, especially as you discovered the tactics available to catch the fish you wanted.
The perspective was from a side view so you could see exactly what fish were available. You could try and cast directly above the fish you wanted to catch. You would also learn that casting closer was better because while dragging in the fish the line would sometimes break. If the fish was close to begin with it was an almost guaranteed catch.
Even in Zelda Ocarina of Time's fishing your line would occasionally break. I suppose it was intended to add to the thrill of the catch and make it seem more challenging. To me it seemed more like an arbitrary difficulty factor that had nothing to do with my skill as a player.
Wait for it...
A more recent experience I had was in Torchlight and that was a complete pull on the proverbial slot machine. Firstly it was a reflex test as catching the fish involved tapping the button at the exact time the two circles overlapped. The worst part was that said circle would often fake you out when nearing an overlap and suddenly change directions at the last millisecond. You would click and you would fail. The game designers must have had a laugh when they programmed that behavior.
When you actually caught a fish it was completely random as to what type of fish you pulled up. The variety of fish was discovered through a random dice roll and thus you would pull up the most common of the fish most of the time. It made it seem like there was a small variety of fish whether that was actually the case or not.
Even with it's flaws it was still fishing and I appreciated it though it definitely wasn't the best example out there.
Getting it right
In Catapult for Hire fishing is core to the game. Some of the best catapults and upgrades require you to find some of the more rare species. As such I need to make sure it is an enjoyable experience. Unlike Torchlight where you still had an enjoyable game with a sub-par fishing system I feel that this game lives or dies in getting the fishing right. So, let's address each of the issues I've identified as not fun and how Catapult for Hire is different.
Looks tasty!
Variety
Each of the Fish are unique. Some fish are heavier than others. Some like sparkly things and other fear them. Each has interest in certain payloads and hooks and some will only show up when they're interested. Even when you discover a way to catch a particular fish there are still other, sometimes more efficient, ways to get them out of the water and into your inventory. Each fish yields components that can be crafted into better equipment and some are extremely rare.
Some of the fish in Catapult for Hire
Choice
Locating fish in a 3D fishing game was an interesting proposition. In Zelda you would have Navi there to hover above the fish through z-targetting. In Catapult for Hire I've tried to simplify all of the systems to the core of the game, throwing.
There isn't an aerial camera mode, there isn't a fishing mode, there is no need to switch into a different mode. Learn how to throw and you understand the whole game. How do you explore levels? You throw. How do you find fish? You throw. Essentially you are throwing the camera into the environment. As your payload sinks into the water you can watch as you not only discover the location of the various fish, you also discover how they respond to that particular payload.
Nighttime fishing
Random
Catching a fish involves learning how the fish behave. Each of the fish species has it's own likes / dislikes. The skill and difficulty isn't introduced by hoping you will catch the fish, it is in exploring and understanding the world. Your intuition as a fisherman is what will score you the fish, not Math.rand().
All of these things will (I hope) contribute to creating a believable world full of life and wonder with the intrinsic motivation that comes from wanting to discover new things.
Thanks for reading and I would love to hear if you have any thoughts or ideas for what you would like to see in a fishing game. Also, thanks for your patience with me in completing this game. I'm dedicated to making it the best that I can and sometimes the best things take a lot of time. Cheers!