Using a shape as a trigger

Hey All! I am trying to make a trigger so that, if i am overlapping with a shape, It updates a variable that makes the character jump. I have done so with a basic cube trigger, But i am now trying to do this with a loop shape: Cubes arent specific enough for this.

I made the loop on screen have a trigger collision preset (As i was going to move it to where the other loop is for invisible detection purposes). However, Nothing triggers.

Any idea where i went wrong?

Change the capsule to your static mesh component and set the jump duration to how much time it takes for the jump to finish.

Hello! I tried what you said (In the loop blueprint, Have not set up jump duration yet), And there is still no jump (Only using jump to test as it seems printstring does not work for me), Nor collision. Do i change the loop from a trigger to something else?
Thanks

Found a way to do it without the jump duration using the event on landed node. Also, try setting the collision preset to BlockAll, then it should work.

Cool. But, Uh, I set it to block all, then collided with it and checked the errorlog…

Put this in your character blueprint. The capsule component has to be the character’s default CapsuleComponent and instead of Loop Actor select your loop actor. Hopefully this one works

Select the loop class in the == node. If this doesn’t work either, connect the On Component Hit to a print string node, it might not be detecting the collision. Also, look at the loop in the static mesh editor and check if it has a collision assigned.

No jump happening, strangely enough. Although maybe I referenced the loop in the wrong way.
Thanks for your patience.

In the mesh settings, of the track, select “use collision complex as simple”. The collision of the character does not detect the mesh itself, but the collision mesh (you can click on the collision button to view the avalaible collisions, or press CTRL + C to view collisions in viewport). A track like this, is going to have really screwed up collisions.

The reason that the collision doesn’t work then, is that you probably didn’t check “generate hit events” in the static mesh settings.
It’s automatically enabled for overlap events, but not for hit events.
Then, in the Track BP, from the hit event, take out the “Other actor” and cast it to you character BP. From the “As character BP” pin call your jump event. Before that you need to have “Do once” though, which you can reset from the character BP by, for example, when the character is not in air anymore (isFalling boolean, or notify event from anim BP?)
I tried to upload an image but didn’t work.

In the mesh settings, of the track, select “use collision complex as simple”. The collision of the character does not detect the mesh itself, but the collision mesh (you can click on the collision button to view the avalaible collisions, or press CTRL + C to view collisions in viewport). A track like this, is going to have really screwed up collisions.

The reason that the collision doesn’t work then, is that you probably didn’t check “generate hit events” in the static mesh settings.
It’s automatically enabled for overlap events, but not for hit events.
Then, in the Track BP, from the hit event, take out the “Other actor” and cast it to you character BP. From the “As character BP” pin call your jump event. Before that you need to have “Do once” though, which you can reset from the character BP by, for example, when the character is not in air anymore (isFalling boolean, or notify event from anim BP?)

Couldn’t seem to find the the mesh setting’s, Let alone the simple collision. But the other answer worked. I like the ResetFromAnimation BP, Though. Thanks!

It works! It seems using a class made it work. Huh.

Don’t forget to accept the answer if everything works correctly :slight_smile: