Log in

View Full Version : Recent path node issue


provocating
01-30-2016, 12:54 AM
I just started noticing this with the latest source, keep in mind my last update was January 2015. I notice that now when a mob is going along is pathing, not waypoints it will move past it's path node a bit like it is ghosting and then it will hit it's next one. I noticed it immediately when I started running the newest source. I am trying to go through mob_ai.cpp and look for any changes. I would think this is where it would reside. If anyone knows a specific change that was put in that would cause this please let me know.

provocating
01-30-2016, 01:22 AM
Well it did not take long to figure it out. This maybe already fixed but if not I will share my findings. Things like pet guard will cause the pet to keep on walking. Anything using pathing will kind of ghost between path nodes. This fixed it for me. In mob_ai.cpp when there is a SetCurrentSpeed(0) there really needs to follow a moved = false. As soon as I added a moved =false with it, the problem completely went away. I checked my old source and there was normally a SetMoving(false), but this seems to be equivalent. Just my 2 cents, it worked wonders for me. Pathing was quirky before I added that.

N0ctrnl
01-30-2016, 02:09 AM
Pull request it? :)

provocating
01-30-2016, 10:00 AM
I am not sure I have rights to do that? I can just tell Uleat what i did and he can post the changes.

Uleat
01-30-2016, 02:41 PM
I've noticed this with bots as well..so, it may be more pervasive.

The 'nomadic' pet issue I've seen as well. Usually, the pet is where it should be server-side..it's just the client that doesn't receive the final position update.
I had always attributed it to packet-loss..but, maybe not?

provocating
01-30-2016, 02:51 PM
Maybe not.

Figback65
04-23-2016, 03:48 AM
Provacating, did you add moved = false before or after every single SetCurrentSpeed(0); in mob_ai? I noticed there is quite a few. Some already have moved = false before and one has moved = false after. Just want to verify before I change mine. I have been doing pathing nodes and the ghosting is driving me insane lol

provocating
04-23-2016, 09:31 AM
PM me your email address and I will mail you my entire mob_ai.cpp file

N0ctrnl
04-23-2016, 11:26 AM
https://github.com/N0ctrnl/VAServer/blob/master/zone/mob_ai.cpp

Figback65
04-23-2016, 11:43 AM
https://github.com/N0ctrnl/VAServer/blob/master/zone/mob_ai.cpp

I just tried this and I get compile errors.

line 857 slotprimary
865 slotsecondary
1129 target, slotprimary
1983 slotprimary

all undefined. Must need some other changes in other files for this one to work with my build which is of this year.

EDIT : hmmm I'm looking through to see whats up, looking at my original mob_ai.cpp, it has those same declarations but they are defined. Tryen to see whats different or what I'm not doing right.

EDIT : Ya, I believe its user error. Is there something special I must do that I have not learned yet? I just copy pasted the entire code in. Is there a special way to do this? Or something I need to do after I paste it in? I tried Rescan Solution but that didn't fix it declarations.

N0ctrnl
04-23-2016, 05:39 PM
How new is your source? Sounds like some of the new stuff Uleat messed with. Maybe (?)

Uleat
04-23-2016, 05:49 PM
line 857 slotprimary
865 slotsecondary
1129 target, slotprimary
1983 slotprimary

I'm assuming those are 'SlotPrimary' and 'SlotSecondary' ?

Yes..I've delinked the existing inventory slot enumeration in preparation of the new inventory system.


You will need to use:

EQEmu::legacy::SLOT_PRIMARY
EQEmu::legacy::SLOT_SECONDARY



for ref: https://github.com/EQEmu/Server/blob/master/common/emu_legacy.h#L28