Fishing issue
Is anyone else experiencing a problem with fishing? I have tried multiple zones, multiple fishing rods and different kinds of bait and it always tells me, 'Trying to catch land sharks perhaps?' even when I am levitating over a huge body of water. It was working a few days ago and all I have changed are some trade skill recipes. (UF client)
|
Not sure what your exact issue is, but here's the Client::CanFish code in forage.cpp, the code giving your error is green. Maybe you could un-comment the yellow and recompile and see what it sends you?:
Code:
bool Client::CanFish() { |
I will give that a shot. Thanks Kingly. I don't have any levitate on and if I step in the water it tells me I must be on dry land to fish but when I take a step back out of the water, I get the land shark message. It is almost as if it is not recognizing the water as water.
EDIT: I compared your code above to my forage.cpp file which has a date of 09/08/2014 and the only difference I see is the line three lines above the Message you told me to uncomment. Mine had + 4 at the end instead of - 1. (Recompiling as I type this.) |
Okay, feel free to comment back with a screenshot or whatever of the information the debug sends you (I assume you removed the // in front of the Message to allow it to send?).
|
I believe KLS recently made a change to FindBestZ. That could be a possibility to the issue you're facing.
|
I enabled the message as you suggested, Kingly and it says:
Rod is at 1455.046, 1.128, -122.000, InWater says 0, InLava says 0 This attempt was done in PoK in the small pool by the fishing vendors. I also changed the + 4 to - 1 and recompiled and this makes fishing work again. Not sure what affects that may have on other things. |
The issue is the old code basically relied on the water's surface acting as a solid "floor".
If you look at the code what it does is cast out z + 10 above you and tries to find the bestz (hoping to hit the water surface). It then subtracts a small amount and hopes that the bobber is in the water. I have the info in the maps to fix this so they don't have to be regenerated but it's not currently coded in. For now the "RodZ = zone->zonemap->FindBestZ(dest, nullptr) + 4;" hack makes it work for *most* pools of water but I need to go back and recode the maps so we can do it as intended. |
Thanks for the info KLS. I must just have really bad luck in picking the pools because the four I used didn't work. That's the way my luck generally runs though.
|
I just ran into this on my server. So what is the real fix? Can I just run azone2 again on my maps and will that fix the problem or am I going to have to hack my code?
|
All times are GMT -4. The time now is 08:05 PM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.