New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing smooth waypoint features #22863
Comments
The first major difference between this and the previous discussions is: the smooth waypoint movement does NOT generate an entire path from all points in one strike. It is still point to point movement but with smooth transitions by using the extra long pathings and smoothing out curves. |
The more close of retail behavior, is treeston goodhack movement (long spline or something like that) xd |
#17946 for previous discussion |
Is there no way to try to get how movement is developed through flight path and copy the behaviour onto normal waypaths? I know for a fact that the smoothing is done when transitioning from one waypoint to another during flight paths. |
iirc flight path waypoints are in dbcs, animation is done fully client side |
So basically we can't. I can tell as well that sometimes when npcs are trying to get involved in combat or when leaving a fight to get back to their waypath, these do transition smoothly between their position to the next waypoint of their pathing. It's rare to be seen since certain conditions are supposed to be met but I've noticed it a few times now. |
We already have a PR #23864 for this issue, it works fine in cata as you can see in the video, but not in wotlk for some reason. |
I've tried that solution in WoTLK branch but it seems to be making the npcs do weird stuff in pathing, literally rolling back and in the whole time. As for any other branch, I can tell it doesn't work on the WoD one either. |
Long story short on how to achieve smooth movement:
|
Description:
Let's turn this into a documentation about what features has been added and what are missing.
Since the rework of the waypoint movement the node-to-node movement works pretty much as it should and serves as a perfect base for the implementation of the missing parts.
There are yet two missing features that needs to be added:
Current behaviour:
This is the current state. It's a very simple point to point movement with multiple spline points between the start point and destination that are being generated by the pathfinding.
Expected behaviour:
This is the state as it happens to be on retail. The first difference is:
This would look like this then:
There has been done some explaination by Treeston about that when he was adding the spline-chain system which is basically a hack since it merely reproduces the movement from static data that usually should be generated by the core on its own.
Summary:
Waypoints are no real waypoints. In fact they are segment markers. These segment markers are used by the spline system to calculate one giant path in one stroke and split the generated spline points into smaller segments that are split by the waypoint nodes. Why? To send smaller monster move packets and of course for scripting purposes. This also explains how they handle the one spline point ahead case. It's the first spline point of the next path segment.
Steps to reproduce the problem:
Branch(es):
both
TC rev. hash/commit:
master: e9bcae1
335: 9a924fb
The text was updated successfully, but these errors were encountered: