Centaur/quadruped collision

Could you please help me with the collision of a centaur in my game. I used the Quadruped Fantasy Creatures and a basic third person character. The centaur’s back end is going through walls I have tried to add collision components set to BlockAll but that was unsuccessful. Do I need to use a Pawn or make my own collision component? My Character collision setup is below.

The way the Character class and CharacterMovement class are built, the collision is bound to the CapsuleComponent. As is the entire movement class. I’m not sure if you can add an additional collision volume and weld it successfully, by turning on auto weld. It’s been some time since I worked with quadrupeds. If that does not work, you might have to do a lot of ground work (write your own movement component & character class), or rescale the capsule to be way to wide.

Unless I missed updates on this in the past 2 years.

Would it work to put the capsule over just the front part of the centaur, as if the horse end wasn’t there, then make sure the skeletal mesh has a Physics Asset for his hindquarters, and test collisions against that? Do a blend between physical simulation and animation like they did on the one Epic livestream where they made drunk spinning zombies?

Then it can try to animate as it will, but will also be pushed around by terrain and other things it bumps into, as long as it is less massive than they. That approach brings its own complications with it though I suppose.

Yesterday I put a Wolf character into a game I’m making for my kid. Same problem. I just put a capsule in the center and added two or three box collision components to the general area where its body and neck/head would be. Made a nice flat platform for the player to ride on top of the Wolf (not straddling though. The player is a kitten). Not sure how well it handles colliding with the world when the wolf is moving though.

If that doesn’t work, you could try capsule tracing backward every Tick from the front capsule, and push the character away or turn their mesh in response to the back end hitting terrain.

I remember someone offering an IK quadruped solution on the marketplace, for realistic joint adjustments when walking on slopes or uneven terrain. Maybe they know how to solve the backside-into-the-wall problem.

I have tried to add extra collision volumes but they were ignored by the movement component, do you have any idea how to rewrite the movement component?

Do the other collision volumes have the same collision channel settings and and collision object type?

I had rewritten the Character + MovementComponent classes once (in C++), so they would use the mesh as a root component, thus using the physics asset for collision. Sadly I was depending highly on already existing code, some of which got changed after an engine update. I decided to not go through ~ 15,000 lines of code and comments again and instead wait with this task for our project, until we really needed it, and then build it from the ground up.

However! You could try replacing the capsule collision with a box collision in C++. (I do not recommend building a new character class entirely in blueprints)

If you need pointers on rewriting the C++ class, I can try to tell you what to do.

All collision volumes on the same actor share the collision of the root component. Tracing works independently though.