Fishing Calculator

Charlemagne

Terrarian
To start, here's the Google Sheet.

TL;DR: File --> Make a Copy. Enter your info, look at the top right of the screen. That's the loading bar. When it's done, you'll see your catch chances below.

Okay, here goes the full spiel.
________________________________________________________________________

What This Thing Does

This calculator uses a simple algorithm to calculate what each bite will actually catch. It runs this algorithm 1000 times, then looks at the results and gives you the statistics. Unfortunately, running a 130-part algorithm - each part made up of up to 20 sub-parts - 1000 times takes more time than you may be accustomed to. This calculator runs in about 17 seconds on a 3-year-old laptop with mediocre specs for its time. Your mileage may vary. Please note that the sheet is also set to recalculate every hour. You can change this in your copy by going to File --> Spreadsheet Settings --> Calculation. Unfortunately, you can't set a Google Sheet to not calculate every time you change something. It would work in Excel, but I decided to go with an easy-to-distribute model rather than the smoothest user experience.

This calculator handles Fishing Poles, Bait, the Angler Armor set, accessories that modify fishing skill, Fishing Potions, Crate Potions, Time of Day, Weather, Moon Phases, overlapping Biomes (mostly), Lava and Honey, Hardmode status, and Angler Quests. All of these have handy drop-down menus so you don't accidentally misspell something or divide by zero. The only input with no drop-down menu is Lake Size, since it can vary so widely. Some of the more confusing entries like Time and Angler Armor have helpful mouseover text. It might take a few seconds to appear, especially if the sheet is in the middle of recalculating.
________________________________________________________________________

What This Thing Does Not

There's a quirk in the game mechanics that's never made it to the wiki, as far as I can tell. You probably know that the minimum lake size to avoid penalties to your Fishing Power is 300 tiles. This is only mostly true. At high altitudes, the minimum lake size decreases nonlinearly with increasing altitude, bottoming out at 75 tiles of lake size (depending on world size, within 100 tiles of the top of the world). This calculator assumes you will build your sky lake below this altitude (or 300 tiles in size to avoid Junk anyway), and ignores this quirk in the mechanics. If you do choose to build your undersized sky lake above the threshold altitude, you will probably see an increase in the chance of rarer fish (at the expense of less-rare fish).

This calculator does not directly, explicitly calculate the chance of generating a given catch. Doing that calculation is technically possible, but it would be a lot of work and I didn't feel like it. This took me a few days to put together in my free time (instead of playing Terraria! D: ). As far as I know, this is better than what exists already. If someone else wants to do the direct calculation, find me on Reddit.

This calculator does not calculate the average time between cast and bite. Hopefully, that's coming Soon^^TM .

This calculator does not take into account the 1/7 chance that the line will break upon reeling in your catch. Since it applies evenly no matter what you caught, I chose not to include it. I may in the future, although it will make the user's burden a bit larger by requiring you to say whether you have the High Test Line or not.

This calculator does not prevent you from making some mistakes. For example, it has no problem with you telling it you're standing in Corruption and Hallow at the same time. In-game, this is impossible, as these two biomes cancel each other out. In this case, the calculator will catch Corruption catches before Hallow catches. As another example, you can't catch fish when standing in any liquid, whether it's the one you're fishing in or not. I consider this a mistake on your part, and the calculator assumes you're standing on a solid block.
_________________________________________________________________________

How To Use This Thing

1. Click the link to open the view-only version.

2. Click File --> Make a Copy and put the copy somewhere you can find it.

3. Open the copy. It should be editable. If you're certain it's the copy and you can't change anything, let me know and I'll see what I can do.

4. Refer to your game, and use the dropdown menus to change all the cells highlighted light-green between A2 and H14. Accessories like the Weather Radio, etc. may be helpful in determining some of this information. You'll have to type in Lake Size yourself. Note that it only accepts whole numbers larger than zero. You may notice that it takes some time to change the information. The sheet recalculates every time anything changes. I can't do anything about it. It should take anywhere from 5 seconds on a new gaming desktop to a whole minute on something that shouldn't be running Terraria in the first place.

5. When you're sure all the information is correct, look at the top right of the screen (on Google Sheets for Windows, anyway; I can't speak for other versions). There is likely a loading bar partly full of stripy gray and partly empty. When it fills, it will disappear, and your catch chances will be displayed below.

6. Please note that there will be some variability. You can observe this yourself by waiting for your computer's clock to reach the next hour (or changing any data) and seeing the sheet recalculate. This is a by-product of the method I used, which does not calculate probabilities explicitly, but performs the actual algorithm 1000 times. The only way to improve accuracy is to do the algorithm more times, and that would make it even slower. 1000 is a good balance between accurate and fast.

7. If you want to force the sheet to recalculate, pick an empty cell somewhere, put something in it, hit enter, then erase it.

8. You may notice that I said this calculator runs the fishing algorithm 1000 times, but there doesn't seem to be anywhere this algorithm is running at all. You may also notice that there are many hidden cells. Don't delete them, and nothing will break. If something breaks, make a new copy and fill in your information again. If it's still broken, then either you or I did something wrong.
__________________________________________________________________________

If you find that something is broken, please let me know as soon as possible and I'll do what I can to fix it. If you can't figure something out, comment here and someone will probably help you. Maybe me. For more general questions about how fishing works, please refer to the wiki. It's not perfect, but it's pretty good.

For instructions on how to build a compact fishing complex, my favorite source is this excellent post by PapaBear.
 
Back
Top Bottom