Projectile Collision blocks movement of target for split second before projectile is destroyed

This is a problem that I have been avoiding by utilizing overlap projectiles but I need the event hit and break hit as that provides phys material and a precise hit location. So here I am once again trying to get projectiles with block collision set but I can’t get around the same problem. I even tried simulating physics on the projectile and setting the mass to extremely low so the target would be virtually unaffected by a hit but I stopped halfway through when I realized I probably would have to simulate physics on the target as well but I’m not sure how to do that as that would cause the target to just collapse like a ragdoll.

Hey @dilpo!

Yes, if you are using something skeletal you’re looking at ragdolling. Can you be more specific with what it is you’re trying to get to happen from the player’s perspective? Physical blocks are always going to do something LIKE this.

Get back to us! :slight_smile:

The player shoots fast projectiles that have collision set to block pawns and the targets are pawns that are set to collide with the projectile object. I have it set to block so that I can use ‘on hit’ node along with it’s hit results. On impact the projectile runs a piece of code and then is deleted. However, for a split second, the projectile is in the way of the pawns movement path and the pawn stutters in its movement briefly and it’s noticeable.

For a long while, my solution was to set the projectile to overlap pawns and vice versa but that method was limited, such that ‘on event overlap’ does not have detailed information provided such as phys material and hit location (I found that using projectile location on event overlap did not yield accurate actual point of impact).

If anyone knows how to get ‘block’ collision projectiles to behave different, or has a separate solution that is not as limited as what I was encountering with overlap method, or even knows how to get more use out of the overlap method please let me know.

If they are fast moving (such as irl bullets) you want to use a “Line Trace by Channel”

From: bullet’s location last tick.
To: bullet’s current location this tick.
Check for blocking hits using the Line Trace by Channel. Set pawn reaction for the bullet’s mesh/collision to ignore pawn, and rely solely on the line trace for hits.

If the line trace by channel gets a blocking hit, use that logic branch from there (as if the bullet mesh had hit it).

The reason for this is that when something is moving too fast it can actually teleport THROUGH/PAST the blocking target. Unrelated to what you have going on but it’s only a matter of time, and puts you on a more useable path for your ‘on hit’ node with a great amount of hit options.

Hope that helps!

not like a bullet so line trace wouldn’t be a good substitution for actual projectile movement.

Could you give us a more accurate description of the projectile object, then? The reference to a bullet is its speed variable, not its size- the speed matters here. Especially if it’s a larger object (anything from fist-sized up) because it could teleport WITHIN the target and be colliding in multiple locations causing it to auto-correct through or to the side (it chooses the nearest available open spot).

Also it would not substitute for actual projectile movement- that part is integral, actually. It is a different style of detecting collision used for high-speed objects.

How fast are your projectiles moving and how often are they hitting (rate of fire)?

I use very fast projectiles, irl velocities, and have zero issues with them interfering with character movement.

Projectile component structure matters here as does the collision settings.

Component Structure:

  • Collision component (root)
  • Static mesh (if needed for visuals)
  • Projectile movement component (PMC)

Only the collision component (root) should have collision applied. All other collisions on any additional components should be disabled.

Collision component settings should be:

  • Query ONLY (No physics), unless simulating physics in PMC…which isn’t needed.
  • Can step on (False)
  • Simulate hit events (true)
  • All the normal blocking setup

I have gun projectiles and tower projectiles and their speeds are roughly 25k and 6k. Here’s the slow moving tower projectile which fire at a rate of .6 seconds.


It’s colliding with a moving pawn’s collision capsule, which is also set to the root and is also set to query only. I have also tried it set to collide instead with the character mesh and the same problem arises, which is that the moving pawn stutter’s in it’s movement.

Currently I have a minor hack in place where the player’s gun projectile is set to overlap and then on overlap I fire a line trace behind the projectile to generate a hit event because I need the phys material and a hit location but I would really like to be able to just use hit events on the projectile to clean up the code.

I fixed it! It was “can ever affect navigation” on the projectile.

1 Like

Oh man I never thought about the Navmesh. Good catch! And thanks for letting us know you solved it! Make sure to mark it as a solution!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.