mojira.dev
MCPE-170342

Player model is offset when crouching

The sneaking animation used to be centered around the head and match Java Edition, but when the player's model and animations were made data driven, the sneaking animation was broken.

Steps to Reproduce:

  1. Look up in third person front view or look down in third person back view;

  2. Crouch and observe the way your head shifts;

  3. Use characters of differing heights and compare.

Observed Results:
The head shifts forwards or backwards depending on the height of the character.

Expected Results:
The head remains centered.

Screenshots/Videos attached: Yes

[media]

Notes: There are other issues with the animation such as shorter characters slightly hovering over the ground instead of touching it, as well as some minor differences when compared to the original animation. Both of those are addressed in the suggested fix.

This can be fixed by changing the animation from this...

"animation.player.sneaking" : {
			"loop" : true,
			"bones" : {
				"body" : {
					"position" : [ 0.0, -2.0, 0.0 ]
				},
				"head" : {
					"position" : [ 0.0, -1.0, 0.0 ]
				},
				"leftarm" : {
					"rotation" : [ -5.7, 0.0, 0.0 ]
				},
				"leftleg" : {
					"rotation" : [ -28.0, 0.0, 0.0 ]
				},
				"rightarm" : {
					"rotation" : [ -5.7, 0.0, 0.0 ]
				},
				"rightleg" : {
					"rotation" : [ -28.0, 0.0, 0.0 ]
				},
				"root" : {
					"position" : [ 0.0, 1.25, 9.0 ],
					"rotation" : [ "28.0 - this", 0.0, 0.0 ]
				}
			}
		}

to this:

"animation.player.sneaking" : {
			"loop" : true,
			"bones" : {
				"body" : {
					"position" : [ 0.0, "(query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('rightleg',1)) * -0.12241 - 1.53108", 0.0 ],
					"rotation" : [ 28.64788, 0.0, 0.0 ]
				},
				"head" : {
					"position" : [ 0.0, -0.87758, -0.47942 ]
				},
				"leftarm" : {
					"position" : [ 0.0, 0.24483, -0.95885 ],
					"rotation" : [ -5.72957, 0.0, 0.0 ]
				},
				"leftleg" : {
					"position" : [ 0.0, 0.0, "(query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('leftleg',1)) * 0.47942 - 1.75304" ]
				},
				"rightarm" : {
					"position" : [ 0.0, 0.24483, -0.95885 ],
					"rotation" : [ -5.72957, 0.0, 0.0 ]
				},
				"rightleg" : {
					"position" : [ 0.0, 0.0, "(query.get_default_bone_pivot('body',1) - query.get_default_bone_pivot('rightleg',1)) * 0.47942 - 1.75304" ]
				}
			}
		}
[media]

Linked issues

Attachments

Comments 1

Thank you for your report!
After consideration, the issue is being closed as Won't Fix.

Please note that this is not the same as Working as Intended, as this bug report correctly describes behavior in the game that might not be the intended or desirable behavior, but it will not be fixed right now. Sometimes, this is because the issue reported is minor and/or impossible to change without large architectural changes to the code base.

Quick Links:
📓 Bug Tracker Guidelines – 💬 Community Support – 📧 Mojang Support (Technical Issues) – 📧 Microsoft Support (Account Issues)
📓 Project Summary – ✍️ Feedback and Suggestions – 📖 Game Wiki

[Mod] LateLag

(Unassigned)

1030075

Confirmed

Multiple

1.20.0.23 Preview, 1.19.81 Hotfix

Retrieved