I want to have collision around my water that stops a player when they walk near it - but allows them to jump into it (or onto a stone that is further in the water). Seems simple enough and I was going to use “IsFalling” to determine if the character can move past the collider. However my issue is that I was trying to change the Collider from Block Pawn to Ignore Pawn. This doesn’t work because When it is set to Block - it doesn’t seem to take further overlap events. Basically I want the collision to Block but still accept overlap events… and the collider has Generate overlap events set so I’m a bit confused.
Hey @JIMMYMANGO69!
So what I would suggest here is this:
Go into your project settings and make a new collision channel. I’d call it jump blocker or something. Set it to ignore all.
Next, make an invisible barrier around your water, and give that the collision of “Jump Blocker”.
Now, on your Character, not the wall, you’ll set collision of your character to block “Jump blocker” normally. On jump, you’ll use Set Collision Response to Channel to set the response to “Jump Blocker” to ignore, and then use an additional Set Collision Response to Channel on landing to set it back to block! ![]()
Thank-You!- got it working but had to mention a variation to your advice (for others who read this). Because Unreal compares both collision types from BOTH objects - if you set the “Jump Blocker” to “ignore all” (including the Pawn type) … even when you change the collision type to Block on the CHARACTER… Unreal takes the LESSER of the collision types - IE … the IGNORE type from the Jump Blocker will STILL prevail. So your advice took me to the correct place - however, I just needed to set IGNORE ALL for all BUT the PAWN type that my character Capsule was using and set that to BLOCK and then also set PAWN default to BLOCK the NEW object collision type I made: Jump Blocker. And THEN set the PAWN collision from the character to IGNORE the JumpBlocker object type on jump. So basically what you suggested with that small caveat. Thanks!