-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Refine/fix block jump physics #16946
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: master
Are you sure you want to change the base?
Changes from 6 commits
cbf2d90
18b84c3
3a3fa5e
b3f283d
09185de
6448397
cf7d4f2
3c03ded
60a4e2d
a4b2d43
d6fa1cf
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8825,6 +8825,9 @@ child will follow movement and rotation of that bone. | |
| * `sneak_glitch`: whether player can use the new move code replications | ||
| of the old sneak side-effects: sneak ladders and 2 node sneak jump | ||
| (default: `false`) | ||
| * `upward_rejump`: legacy ability to jump again while contacting a jumpable surface mid-jump | ||
| (default: `false`) | ||
| * `loose_lips`: legacy step-up while jumping into the corner of a node (default: `false`) | ||
|
||
| * `new_move`: use new move/sneak code. When `false` the exact old code | ||
| is used for the specific old sneak behavior (default: `true`) | ||
| * Note: All numeric fields above modify a corresponding `movement_*` setting. | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -103,6 +103,8 @@ struct PlayerPhysicsOverride | |
|
|
||
| bool sneak = true; | ||
| bool sneak_glitch = false; | ||
| bool upward_rejump = false; | ||
|
||
| bool loose_lips = false; | ||
| // "Temporary" option for old move code | ||
| bool new_move = true; | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
based on the code, isn't the default
true(which it should be for backwards compatibility)? same forloose_lipsi'd also just remove the word "legacy" here. it suggests some sort of deprecation which is not the case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm pretty sure author intends deprecation, that's why I (and others) dislike this PR so much.
In other words, before we ask ourselves whether or not we could, we should ask ourselves whether or not we should. Because this PR looks like cargoculting MC physics to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
well, there are two ways this PR can go:
so simply put, i agree with you that (2) is not really an option.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@appgurueu regarding Mineclonia we have gotten one bug report about being able to jump over fences. There could be another one but that is what I could find. My impression is that people do not mind it that much. They mostly think it is weird and some find it convenient. Currently we have a policy of not trying to replicate MC physics because that is not feasible to do consistently.
One of our collaborators also created the mcl_localplayer clientmod which replicates MC physics among other things (requires special engine support). It feels like the long term solution for player physics is to make it customizable like that using SSCSM.
I am personally indifferent to this PR. I would mostly like a future SSCSM API were we could incorporate logic like the player physics from mcl_localplayer into the base game.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see. Thank you for your feedback. I will look at that clientmod.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not want this to feel like Minecraft. I just want jumping over ledges to feel intentional and not like there's some glitch that rapidly snaps you to the top. I like the physics for the most part, which is why I left the step-up when going down or sideways completely intact. Being able to cross over gaps is awesome.
I would very much like for this to be the default. I know changes get on people's nerves and I have no sway in this community though. My making this PR without asking if "most people" like it was rude on my part, and I deserve the flack I'm getting for that. But I think "most people" at best is the people that stick around after experiencing the jump jank.
Luanti has a lot to offer with regards to the tons of creative content and games that I very much enjoy. That's what makes it worth sticking around. And I am trying my best to make sure these games aren't unplayable and actually feel better. But if I'm just digging myself a grave over it, I'd rather just leave it up to a vote or something. To me, this is sneak glitch territory: not intended, not good, but some people like it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also like people to try the physics before making assumptions. I know that's a lot, but I've been accused in bad faith of cargo culting for Minecraft, which makes me think people aren't reading or trying it out in-game. I've been playing on parkour maps where the physics very much DO make a difference (like Glitch), and the changes don't break anything so far. I think the fear of disruption and pushback is getting in the way of making any progress.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just want to be clear, with or without this modification, fences remain jumpable. I don't want Luanti to be Minecraft. I just want it to not feel broken, unpolished, and unloved. Minecraft went down a road of useless additions, piling on bloat and breaking pretty much every mod with every new version.
I'm trying to say that I'm with you guys on not wanting to upset the community and break games. At the same time though, many games on ContentDB start out broken and remain unfinished. If this is only ever going to be an optional improvement, most creators won't even be aware it's an available improvement.