Fishing Rod

Fishing Rods are tools that are used for obtaining Fish.

Crafting
A fishing rod can be crafted from three sticks and two pieces of string. This makes fishing rods a Renewable resource.

History
When first added, they did not function. In Alpha 1.2.0, the Halloween Update, fishing rods were updated to be able to catch fish from any body of water. Fishing Rods were a stackable tool when released. This was unintentional and changed in Beta 1.6. Stacking Rods would allow the players to change the damage values of any rods stacked to the first rod. This could be exploited to have Fishing Rods that lasted forever.

Since Beta 1.6, there has been a sprite for the fishing rod without the line in items.png, though until 1.7, it was unused. This sprite is used when the bobber has been cast to show that it is no longer on the rod. Before 1.7, the stick texture was used for this purpose.

Usage
Players can cast the line using the right mouse button. Right-clicking again will reel the line in. The rod can be cast and reeled in 65 times before it will break. Casting it in water and reeling it up without a catch or reeling it up before it reaches its destination does reduce its durability. The line will be reeled in automatically if the player wanders more than 34 blocks away from the place the bobber is stuck in. If the fishing rod bobber lands on a wall/ground and is then reeled in, it will count as a double durability use (although this damage can be avoided by switching to another item instead of reeling in the bobber), while successfully reeling a fish counts as one use.

Fish can even be caught while the player is under water, either by entering the water after the rod is cast, or by casting while underwater (though there seems to be no benefit to doing so). If the rod is cast while under water, the bobber will float to the surface. Catching fish while under water operates the same way, and fish still fly towards the player when reeled in.

Also, in creative mode, you can make mobs/entities fly by flying, casting on a mob, and reeling in so strong, that, of course, makes the mob/entities "fly". If the player is very far off the ground, the mob/entities will die from fall damage. This makes the fishing rod a possible weapon in creative mode.

Catching Fish
It matters if you fish outside or inside. If the water can be struck by lightning (i.e. it has open air above it, as determined by the  method), the chance to catch a Raw Fish is 1/300 every tick (1/20 of a second). If you fish inside (i.e. there is no open air above it), the chance to catch a Raw Fish is 1/500. On average, you can catch a Raw Fish every 15 seconds when fishing outside, and one every 25 seconds while inside.



If the line is cast in any sort of water, whether player made or naturally formed, after a while, the bobber on the end of the line will sink briefly before bobbing back up to the surface and will play the splash sound. The line must be reeled in at that precise moment otherwise the caught fish will escape. The line can be left there to wait for another catch opportunity as long as needed. If successful, a Raw Fish will fly out of the water and land somewhere around the fisher, although it can sometimes fly over the player's head and land far behind them. The line will disappear after 60 seconds if nothing gets hooked, although this timer is reset every time the hook is cast in the water.

If the bobber is cast and collides with a solid block, it will get stuck and not be able to catch fish. This means player-made fishing pools need to be built accordingly. At minimum, the body of water should be 1 block by about 10 for casting distance. The water can be 1×1, but this requires the player to cast upwards so that the bobber will land in the water. This ensures the bobber's initial velocity is wasted moving up, so that it does not hit any blocks falling back down.

Usage on Entities
Fishing Rods can hook any mob and drag it towards the player (although Mobs in water or lava will not move far due to the fluid slowing them down). The hurt animation plays, and passive mobs will run away as if you attacked them; however, it deals no damage to the mob. Fishing Rods take triple durability damage when reeling a mob. Reeling it up will cause the mob to be pulled towards the caster at a very fast rate. Players can take advantage of this to impart vertical momentum onto the mob when reeled at great height, dealing enough fall damage for a guaranteed death (except for chickens, ghasts, blazes, iron golems, snow golems, and ocelots, as they do not take falling damage). It can also be used to drag enemies into lava or an Enderman into water. The fishing rod has a mostly aesthetic use on tamed wolves to act as a sort of leash, although it won't move the wolf anywhere for long. Bobbers can be hooked onto a wolf, and if it teleports back to the player, the bobber will still be present.

It can be assumed this functionality is for pulling future Fish mobs (such as the current mob, the Squid) out of water.

Unfortunately, fishing rods cannot be used to pull players, making them useless in PVP.

The fishing rod can be used to grab onto boats and minecarts and pull them towards the player. However, boats will often break in the process. The hook can also be used to activate Pressure Plates or even knock down Paintings from a distance. This aspect can be commonly seen in public puzzle maps, where the player is required to aim and activate the input. Strangely enough, the Ghast's Fireballs can also be hooked with the fishing rod.

Bugs

 * If a Fishing Rod is cast and the player moves to third person view and crouches, the string will not be attached to the rod.
 * If you cast the rod at a solid block and the bobber sticks into the block, it will remain in that position even if the said block is moved or destroyed.
 * If you spin or turn quickly, the end of the line will remain attached to a point while the sprite moves around it.
 * If you move the tip of the fishing rod next to the bobber, you can see that the line is angled oddly.
 * If you go into a boat with rod in hand, you will go in it, your line will be cast, and you'll be unable to move. After a short period, the player dies.
 * If the FOV is increased to higher than normal, the string will not be attached to the rod.
 * In third person view, the fishing rod texture is still the stick texture. This is most evident when using a texture pack.
 * If you swing the fishing rod while the bobber is out, the string flies upwards, opposite of the rod.
 * In Pre-Releases, when the fishing line in SMP was fixed, the lines appear to be at the player's feet when viewed from others.
 * (Happens on SSP and SMP) Using the Fishing Rod will not show the string-less sprite and the bobber and the line will be invisible, and no sound or particles will be played when a fish is caught. Also the first person view of the pole will remain the same. Even though, it is possible to fish if the player waits long enough for a fish to appear (no way to know when due to graphics and sound of the rod freezing).

Reeling Problems
The player should try to fish with a large obstruction behind him or her, or form a platform above the water. Fish fly towards the player with considerable speed when reeled in and may launch over the player, which can cause them to get lost. Jumping to catch the fish just before it flies overhead is a solution, but does not always work. Fishing from 4 blocks (4 has been tested, but other heights may also work) above the water will make the fish fly directly to the player. It is also recommended to have the fishing platform at least 8 blocks long and 4 blocks deep, as the hook will snag on any block it hits. The closer the player is to the bobber, the less the fish will fly.

The above has changed in one of the snapshots after 1.2.5. In 12w23a fish fly directly to the player standing on any height above the water.

Bug solutions
If the player looks directly at the hook when he/she is catching the fish, the fish will fly over their head. But if the player looks above or below the hook (even if they look left or right of the hook) then the fish will fly directly at the player, but sometimes the fish still can go slightly over the head. It is assumed that this is part of some "realistic" coding. Where in real life if you pull from a lower angle, the power of the pull is greatly increased, where as if you pulled it from a higher angle (aka looking above hook in minecraft) then there would be less force, therefore the less power you put into it then the more chance of getting it.

Trivia

 * Skeletons can be pulled into their own arrows.
 * Casting the rod into lava will set the bobber on fire and cause it to clip through and fall forever.
 * Casting the rod into fire will set the bobber on fire and cause it to stick to the fire block.
 * Using a fishing rod while in a minecart aimed at the minecart's front wall will cause the minecart to stop immediately and the player to exit it. No damage to either player or cart.
 * When casting the rod into a portal, the bobber may stick to it like a normal block or go through and travel through or stop on the next block.
 * The fishing rod is currently the only item in the game that is displayed mirrored when in the player's hand.
 * In multiplayer, if you cast the rod onto another player, the bobber will stick on them, and will hang on, even when they move around. This can be used in various ways.
 * If you cast the bobber into a waterfall, the bobber will float up the waterfall until it reaches the top where it will stay until the player pulls it back in or until a fish is caught on the line. If a fish is caught on the line, the bobber will then fall off from the waterfall making it much easier to visualize when to reel in.
 * Even if you are underwater, you can still catch fish.
 * The fishing rod bobber uses the billboard effect, meaning that the front of the bobber sprite faces the player from all angles, similar to older 3D games like DooM and Rise of the Triad.
 * Endermen will teleport when hooked, if the Enderman teleports close enough to the player, it will still be hooked.
 * If you stand directly in front of a column and cast your line onto a block above you, the line will fall downwards.