bCrouchMaintainsBaseLocation Doesn't Seem to work

I have a project based off of the Side Scroller template project that I recently attempted to add crouching to. I am using the crouching movement type built into ACharacter and UCharacterMovementComponent as well as the crouching animation from the Animation Starter Pack available on the Unreal Marketplace. So far many aspects of crouching are working as expected, however one issue I have run into is that bCrouchMaintainsBaseLocation doesn’t seem to work as advertised. What I mean is that when the capsule collider shrinks in size the bottom of the skeletal mesh clips through the level, from my understanding bCrouchMaintainsBaseLocation should prevent this by lowering the base of the capsule collider while shrinking the CapsuleHalfHeight, as it is it is not doing this. The following screenshot illustrates the problem:

This is what I want the crouching to look like:

Any idea what is going wrong here? If you need any more information let me know and I will provide it.

I am experiencing crouching nightmares and just want them to end. I need this to work but it doesn’t. I’ve tried every hacky workaround in the book but nothing is cutting it.

Yeah I haven’t had any luck fixing it so far either. Out of curiosity which version of UE4 are you using?

4.7. The best I can do is make a function which moves the mesh up by an offset which is called during the crouch function, but sometimes it doesn’t sync up and there’s a jitter where the mesh is in the wrong spot for a frame and it’s ugly. Sometimes it looks okay. This bool working would be a godsend for me at this point.

Yeah I am on 4.7 as well. I have tried similar things but to no avail. The bool still isn’t working, but I have a deadline tomorrow and more pressing matters to deal with currently and have put it on the back burner. I will try some other ways to fix it after tomorrow though, and if any of them work I will let you know and post the example code for what I did up here.

Unreal Tournament has normal networked crouching so there might be answers there. The other programmer working with me said there was a TODO in the get bCrouchMaintainsHeight function so maybe the getter isn’t coded properly or something (seems a little silly) but that might be somewhere to look. I similarly have a bit too much going on to really dig into this, but I’d really appreciate any insight towards progress you make.

Thanks for the lead, I am going to try to fix the crouching problem again in a couple of days, so I’ll start by looking there.