-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Parkour on traverse #4847
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
base: 1.19.4
Are you sure you want to change the base?
Parkour on traverse #4847
Conversation
@leijurv
From how I see it, the time it takes to actually reach the goal is reduced enough that the increased calculation time is worth it. If you still don't think so, I could also take out diagonal parkour and keep everything else. This would bring down the movement options to only 16. The code that I have right now is full of commented out stuff that I will implement again eventually. I just want to see if this idea will even be considered for merging before I devote even more time to it. The only two |
@leijurv Any comment on this? |
Hey I am not a dev or anything but can you provide a video of this? I would really like that |
@flowerey Sure, but if this is because you want to use these changes, you'll be pretty disappointed. Right now I'm just in a limbo waiting for @leijurv to confirm that this idea is worth implementing. I developed a base for the whole restructure, but this involves removing a bunch of functionality to later re-implement it. Functionality that includes every movement that isn't parkour or traverse. Additionally this probably breaks a lot of things, an example being parkour. Since my main focus right now has been the A* side of things, I haven't devoted the most time to making sure the path is followed correctly after calculation. I'll get to it if the PR idea is approved by leijurv but I remember hearing something about leijurv not being open to changing pathfinding? Maybe that was a conversation about A* to D* lite or something idrk. I just thought it would be best to check. If you want a tldr of the changes here, it's basically a switch from a static set of individual goals each defined in an enum to each movement returning a list to goals. In theory this should be a LOT better since we were using...some unconventional ways to get around this restriction beforehand ( 2025-09-30.21-49-08.mp4 |
oh i see, thanks :) |
@leijurv stop ghosting me :( |
xD |
I'd also talked to them about accomplishing something similar and may be able to help on the path-following side of things if this ends up happening (I've done a little bit of research on that already). Though I am curious if you have a plan to potentially handle non-integer jump positions, or are leaving that for later (or delegating that to the path executor)? Ground contact points when sprint jumping are usually not aligned to a block if just holding down forward. |
I was just going to think about that later. I kind of want to start back up on this even though leijurv doesn't seem to care. Maybe it can be calculated at runtime, maybe not. I forgot when cost calc happened since it's been a while since I've looked at this. |
I've thought about it a little more and it can probably be calculated at the cost calculation stage, which is ideal. Since cost recalculation takes place as the path is running, it seems doable. I have a lot of PRs open right now though, and this one (while being the most rewarding) is definitely the hardest. It's going to be annoying to take into account delta movement, friction, and whatever else I need to look at. |
Allow for parkour on open terrains, which should be slightly faster.